@lightconexyz/lightcone-sdk 0.7.1 → 0.8.1-rc.2

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 (109) hide show
  1. package/README.md +20 -0
  2. package/dist/auth/client.d.ts +3 -3
  3. package/dist/auth/client.d.ts.map +1 -1
  4. package/dist/auth/client.js +19 -38
  5. package/dist/auth/client.js.map +1 -1
  6. package/dist/auth/index.d.ts +95 -54
  7. package/dist/auth/index.d.ts.map +1 -1
  8. package/dist/auth/index.js +82 -7
  9. package/dist/auth/index.js.map +1 -1
  10. package/dist/client.d.ts +0 -2
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +0 -4
  13. package/dist/client.js.map +1 -1
  14. package/dist/domain/index.d.ts +0 -1
  15. package/dist/domain/index.d.ts.map +1 -1
  16. package/dist/domain/index.js +1 -2
  17. package/dist/domain/index.js.map +1 -1
  18. package/dist/domain/market/tokens.d.ts +2 -0
  19. package/dist/domain/market/tokens.d.ts.map +1 -1
  20. package/dist/domain/market/tokens.js +8 -0
  21. package/dist/domain/market/tokens.js.map +1 -1
  22. package/dist/domain/market/wire.d.ts +1 -0
  23. package/dist/domain/market/wire.d.ts.map +1 -1
  24. package/dist/domain/market/wire.js.map +1 -1
  25. package/dist/domain/metrics/client.d.ts +8 -2
  26. package/dist/domain/metrics/client.d.ts.map +1 -1
  27. package/dist/domain/metrics/client.js +48 -1
  28. package/dist/domain/metrics/client.js.map +1 -1
  29. package/dist/domain/metrics/wire.d.ts +107 -4
  30. package/dist/domain/metrics/wire.d.ts.map +1 -1
  31. package/dist/domain/metrics/wire.js.map +1 -1
  32. package/dist/domain/order/client.d.ts +2 -0
  33. package/dist/domain/order/client.d.ts.map +1 -1
  34. package/dist/domain/order/client.js.map +1 -1
  35. package/dist/domain/orderbook/aggregation.d.ts +50 -0
  36. package/dist/domain/orderbook/aggregation.d.ts.map +1 -0
  37. package/dist/domain/orderbook/aggregation.js +85 -0
  38. package/dist/domain/orderbook/aggregation.js.map +1 -0
  39. package/dist/domain/orderbook/client.d.ts +11 -1
  40. package/dist/domain/orderbook/client.d.ts.map +1 -1
  41. package/dist/domain/orderbook/client.js +24 -3
  42. package/dist/domain/orderbook/client.js.map +1 -1
  43. package/dist/domain/orderbook/index.d.ts +1 -0
  44. package/dist/domain/orderbook/index.d.ts.map +1 -1
  45. package/dist/domain/orderbook/index.js +1 -0
  46. package/dist/domain/orderbook/index.js.map +1 -1
  47. package/dist/domain/orderbook/state.d.ts +29 -31
  48. package/dist/domain/orderbook/state.d.ts.map +1 -1
  49. package/dist/domain/orderbook/state.js +20 -67
  50. package/dist/domain/orderbook/state.js.map +1 -1
  51. package/dist/domain/orderbook/wire.d.ts +32 -0
  52. package/dist/domain/orderbook/wire.d.ts.map +1 -1
  53. package/dist/domain/orderbook/wire.js.map +1 -1
  54. package/dist/env.d.ts +18 -3
  55. package/dist/env.d.ts.map +1 -1
  56. package/dist/env.js +28 -4
  57. package/dist/env.js.map +1 -1
  58. package/dist/http/client.d.ts +1 -4
  59. package/dist/http/client.d.ts.map +1 -1
  60. package/dist/http/client.js +56 -22
  61. package/dist/http/client.js.map +1 -1
  62. package/dist/index.d.ts +3 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +8 -1
  65. package/dist/index.js.map +1 -1
  66. package/dist/prelude.d.ts +9 -8
  67. package/dist/prelude.d.ts.map +1 -1
  68. package/dist/prelude.js +20 -4
  69. package/dist/prelude.js.map +1 -1
  70. package/dist/shared/fmt/index.d.ts +1 -0
  71. package/dist/shared/fmt/index.d.ts.map +1 -1
  72. package/dist/shared/fmt/index.js +2 -1
  73. package/dist/shared/fmt/index.js.map +1 -1
  74. package/dist/shared/fmt/str.d.ts +8 -0
  75. package/dist/shared/fmt/str.d.ts.map +1 -0
  76. package/dist/shared/fmt/str.js +17 -0
  77. package/dist/shared/fmt/str.js.map +1 -0
  78. package/dist/shared/index.d.ts +1 -1
  79. package/dist/shared/index.d.ts.map +1 -1
  80. package/dist/shared/index.js +11 -1
  81. package/dist/shared/index.js.map +1 -1
  82. package/dist/shared/rejection.d.ts.map +1 -1
  83. package/dist/shared/rejection.js +11 -0
  84. package/dist/shared/rejection.js.map +1 -1
  85. package/dist/shared/types.d.ts +41 -0
  86. package/dist/shared/types.d.ts.map +1 -1
  87. package/dist/shared/types.js +85 -1
  88. package/dist/shared/types.js.map +1 -1
  89. package/dist/ws/index.d.ts +25 -2
  90. package/dist/ws/index.d.ts.map +1 -1
  91. package/dist/ws/index.js +23 -2
  92. package/dist/ws/index.js.map +1 -1
  93. package/dist/ws/subscriptions.d.ts +12 -0
  94. package/dist/ws/subscriptions.d.ts.map +1 -1
  95. package/dist/ws/subscriptions.js +14 -4
  96. package/dist/ws/subscriptions.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/domain/admin/client.d.ts +0 -63
  99. package/dist/domain/admin/client.d.ts.map +0 -1
  100. package/dist/domain/admin/client.js +0 -234
  101. package/dist/domain/admin/client.js.map +0 -1
  102. package/dist/domain/admin/index.d.ts +0 -16
  103. package/dist/domain/admin/index.d.ts.map +0 -1
  104. package/dist/domain/admin/index.js +0 -19
  105. package/dist/domain/admin/index.js.map +0 -1
  106. package/dist/domain/admin/wire.d.ts +0 -450
  107. package/dist/domain/admin/wire.d.ts.map +0 -1
  108. package/dist/domain/admin/wire.js +0 -3
  109. package/dist/domain/admin/wire.js.map +0 -1
package/dist/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;AAsBA,wBASC;AAGD,sBASC;AAGD,wBASC;AAQD,8BAaC;AA5ED,6CAA4C;AAE5C;;;;;;;;;;;;GAYG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,6BAAa,CAAA;AACf,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAED,mDAAmD;AACnD,SAAgB,MAAM,CAAC,WAAyB;IAC9C,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,iCAAiC,CAAC;QAC3C,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,mCAAmC,CAAC;QAC7C,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,2BAA2B,CAAC;IACvC,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,SAAgB,KAAK,CAAC,WAAyB;IAC7C,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,iCAAiC,CAAC;QAC3C,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,mCAAmC,CAAC;QAC7C,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,2BAA2B,CAAC;IACvC,CAAC;AACH,CAAC;AAED,gDAAgD;AAChD,SAAgB,MAAM,CAAC,WAAyB;IAC9C,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,+BAA+B,CAAC;QACzC,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,+BAA+B,CAAC;QACzC,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,+BAA+B,CAAC;IAC3C,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,WAAyB;IACjD,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,mBAAS,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IACD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;QACvE,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;QACvE,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACU,QAAA,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC","sourcesContent":["import { PublicKey } from \"@solana/web3.js\";\n\n/**\n * Lightcone deployment environment.\n *\n * Pass to `LightconeClientBuilder.env()` to configure the client for a\n * specific deployment. Defaults to `Prod` when not specified.\n *\n * @example\n * ```ts\n * const client = LightconeClient.builder()\n * .env(LightconeEnv.Staging)\n * .build();\n * ```\n */\nexport enum LightconeEnv {\n Local = \"local\",\n Staging = \"staging\",\n Prod = \"prod\",\n}\n\n/** REST API base URL for the given environment. */\nexport function apiUrl(environment: LightconeEnv): string {\n switch (environment) {\n case LightconeEnv.Local:\n return \"https://api.local.lightcone.xyz\";\n case LightconeEnv.Staging:\n return \"https://api.staging.lightcone.xyz\";\n case LightconeEnv.Prod:\n return \"https://api.lightcone.xyz\";\n }\n}\n\n/** WebSocket URL for the given environment. */\nexport function wsUrl(environment: LightconeEnv): string {\n switch (environment) {\n case LightconeEnv.Local:\n return \"wss://ws.local.lightcone.xyz/ws\";\n case LightconeEnv.Staging:\n return \"wss://ws.staging.lightcone.xyz/ws\";\n case LightconeEnv.Prod:\n return \"wss://ws.lightcone.xyz/ws\";\n }\n}\n\n/** Solana RPC URL for the given environment. */\nexport function rpcUrl(environment: LightconeEnv): string {\n switch (environment) {\n case LightconeEnv.Local:\n return \"https://api.devnet.solana.com\";\n case LightconeEnv.Staging:\n return \"https://api.devnet.solana.com\";\n case LightconeEnv.Prod:\n return \"https://api.devnet.solana.com\";\n }\n}\n\n/**\n * On-chain Lightcone program ID for the given environment.\n *\n * If the `SDK_PROGRAM_ID` environment variable is set, its value is used\n * regardless of the selected environment.\n */\nexport function programId(environment: LightconeEnv): PublicKey {\n const override_id = typeof process !== \"undefined\" ? process.env.SDK_PROGRAM_ID : undefined;\n if (override_id) {\n return new PublicKey(override_id);\n }\n switch (environment) {\n case LightconeEnv.Local:\n return new PublicKey(\"HQZW84F7WbpDLDdd6eaDsBh6LjDQ2uCxpkZgkLakcago\");\n case LightconeEnv.Staging:\n return new PublicKey(\"FAq4NbwPVWNzoaNjcJGhWz4VFT5CbdysLPo7ZWWiWuuE\");\n case LightconeEnv.Prod:\n return new PublicKey(\"B9rCvafkkjh749284jfDu5UB268pHeRLkzFpFf7t4mxK\");\n }\n}\n\n/**\n * Default program ID (production). Used as the default argument in PDA and\n * instruction helper functions. When targeting a non-production environment,\n * always pass `programId` explicitly via `LightconeClient.programId` or\n * `programId(env)`.\n */\nexport const PROGRAM_ID = programId(LightconeEnv.Prod);\n"]}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;AA2BA,wBAWC;AAQD,sBAWC;AAQD,wBAWC;AAQD,8BAaC;AAjGD,6CAA4C;AAE5C;;;;;;;;;;;;GAYG;AACH,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,6BAAa,CAAA;AACf,CAAC,EAJW,YAAY,4BAAZ,YAAY,QAIvB;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAC,WAAyB;IAC9C,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,iCAAiC,CAAC;QAC3C,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,mCAAmC,CAAC;QAC7C,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,2BAA2B,CAAC;IACvC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,KAAK,CAAC,WAAyB;IAC7C,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACxF,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,iCAAiC,CAAC;QAC3C,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,mCAAmC,CAAC;QAC7C,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,2BAA2B,CAAC;IACvC,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAC,WAAyB;IAC9C,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,+BAA+B,CAAC;QACzC,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,+BAA+B,CAAC;QACzC,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,qCAAqC,CAAC;IACjD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,SAAS,CAAC,WAAyB;IACjD,MAAM,WAAW,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,mBAAS,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IACD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK;YACrB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;QACvE,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;QACvE,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,IAAI,mBAAS,CAAC,8CAA8C,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACU,QAAA,UAAU,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC","sourcesContent":["import { PublicKey } from \"@solana/web3.js\";\n\n/**\n * Lightcone deployment environment.\n *\n * Pass to `LightconeClientBuilder.env()` to configure the client for a\n * specific deployment. Defaults to `Prod` when not specified.\n *\n * @example\n * ```ts\n * const client = LightconeClient.builder()\n * .env(LightconeEnv.Staging)\n * .build();\n * ```\n */\nexport enum LightconeEnv {\n Local = \"local\",\n Staging = \"staging\",\n Prod = \"prod\",\n}\n\n/**\n * REST API base URL for the given environment.\n *\n * If the `SDK_API_URL` environment variable is set, its value is used\n * regardless of the selected environment.\n */\nexport function apiUrl(environment: LightconeEnv): string {\n const overrideUrl = typeof process !== \"undefined\" ? process.env.SDK_API_URL : undefined;\n if (overrideUrl) return overrideUrl;\n switch (environment) {\n case LightconeEnv.Local:\n return \"https://api.local.lightcone.xyz\";\n case LightconeEnv.Staging:\n return \"https://api.staging.lightcone.xyz\";\n case LightconeEnv.Prod:\n return \"https://api.lightcone.xyz\";\n }\n}\n\n/**\n * WebSocket URL for the given environment.\n *\n * If the `SDK_WS_URL` environment variable is set, its value is used\n * regardless of the selected environment.\n */\nexport function wsUrl(environment: LightconeEnv): string {\n const overrideUrl = typeof process !== \"undefined\" ? process.env.SDK_WS_URL : undefined;\n if (overrideUrl) return overrideUrl;\n switch (environment) {\n case LightconeEnv.Local:\n return \"wss://ws.local.lightcone.xyz/ws\";\n case LightconeEnv.Staging:\n return \"wss://ws.staging.lightcone.xyz/ws\";\n case LightconeEnv.Prod:\n return \"wss://ws.lightcone.xyz/ws\";\n }\n}\n\n/**\n * Solana RPC URL for the given environment.\n *\n * If the `SDK_RPC_URL` environment variable is set, its value is used\n * regardless of the selected environment.\n */\nexport function rpcUrl(environment: LightconeEnv): string {\n const overrideUrl = typeof process !== \"undefined\" ? process.env.SDK_RPC_URL : undefined;\n if (overrideUrl) return overrideUrl;\n switch (environment) {\n case LightconeEnv.Local:\n return \"https://api.devnet.solana.com\";\n case LightconeEnv.Staging:\n return \"https://api.devnet.solana.com\";\n case LightconeEnv.Prod:\n return \"https://api.mainnet-beta.solana.com\";\n }\n}\n\n/**\n * On-chain Lightcone program ID for the given environment.\n *\n * If the `SDK_PROGRAM_ID` environment variable is set, its value is used\n * regardless of the selected environment.\n */\nexport function programId(environment: LightconeEnv): PublicKey {\n const override_id = typeof process !== \"undefined\" ? process.env.SDK_PROGRAM_ID : undefined;\n if (override_id) {\n return new PublicKey(override_id);\n }\n switch (environment) {\n case LightconeEnv.Local:\n return new PublicKey(\"HQZW84F7WbpDLDdd6eaDsBh6LjDQ2uCxpkZgkLakcago\");\n case LightconeEnv.Staging:\n return new PublicKey(\"FAq4NbwPVWNzoaNjcJGhWz4VFT5CbdysLPo7ZWWiWuuE\");\n case LightconeEnv.Prod:\n return new PublicKey(\"B9rCvafkkjh749284jfDu5UB268pHeRLkzFpFf7t4mxK\");\n }\n}\n\n/**\n * Default program ID (production). Used as the default argument in PDA and\n * instruction helper functions. When targeting a non-production environment,\n * always pass `programId` explicitly via `LightconeClient.programId` or\n * `programId(env)`.\n */\nexport const PROGRAM_ID = programId(LightconeEnv.Prod);\n"]}
@@ -2,14 +2,10 @@ import { type RetryPolicy } from "./retry";
2
2
  export declare class LightconeHttp {
3
3
  private readonly normalizedBaseUrl;
4
4
  private authToken;
5
- private adminToken;
6
5
  constructor(baseUrl: string);
7
6
  baseUrl(): string;
8
7
  clearAuthToken(): Promise<void>;
9
8
  authTokenRef(): () => Promise<string | undefined>;
10
- clearAdminToken(): void;
11
- adminGet<T>(url: string, retry: RetryPolicy): Promise<T>;
12
- adminPost<T, B extends object>(url: string, body: B, retry: RetryPolicy): Promise<T>;
13
9
  get<T>(url: string, retry: RetryPolicy): Promise<T>;
14
10
  post<T, B extends object>(url: string, body: B, retry: RetryPolicy): Promise<T>;
15
11
  /**
@@ -28,5 +24,6 @@ export declare class LightconeHttp {
28
24
  private captureCookies;
29
25
  private cookieHeader;
30
26
  private mapStatusError;
27
+ private statusErrorToSdk;
31
28
  }
32
29
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"AAMA,OAAO,EAAyC,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AASlF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,UAAU,CAAqB;gBAE3B,OAAO,EAAE,MAAM;IAI3B,OAAO,IAAI,MAAM;IAIX,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,YAAY,IAAI,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAIjD,eAAe,IAAI,IAAI;IAIjB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAUxD,SAAS,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAIpF,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAInD,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAIrF;;;;;;;OAOG;IACG,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;YAU5E,gBAAgB;YA8ChB,WAAW;YAoBX,YAAY;YAeZ,WAAW;IAgEzB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,YAAY;IAiBpB,OAAO,CAAC,cAAc;CAevB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"AAMA,OAAO,EAAyC,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAwBlF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,SAAS,CAAqB;gBAE1B,OAAO,EAAE,MAAM;IAI3B,OAAO,IAAI,MAAM;IAIX,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrC,YAAY,IAAI,MAAM,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI3C,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAInD,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC;IAIrF;;;;;;;OAOG;IACG,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;YAU5E,gBAAgB;YAmEhB,WAAW;YAiBX,YAAY;YAeZ,WAAW;IAgEzB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,gBAAgB;CAOzB"}
@@ -5,10 +5,23 @@ const error_1 = require("../error");
5
5
  const api_response_1 = require("../shared/api_response");
6
6
  const retry_1 = require("./retry");
7
7
  const DEFAULT_HTTP_TIMEOUT_MS = 180_000;
8
+ class HttpStatusError extends Error {
9
+ status;
10
+ body;
11
+ headers;
12
+ requestId;
13
+ constructor(status, body, headers, requestId) {
14
+ super(`HTTP status ${status}: ${body}`);
15
+ this.name = "HttpStatusError";
16
+ this.status = status;
17
+ this.body = body;
18
+ this.headers = headers;
19
+ this.requestId = requestId;
20
+ }
21
+ }
8
22
  class LightconeHttp {
9
23
  normalizedBaseUrl;
10
24
  authToken;
11
- adminToken;
12
25
  constructor(baseUrl) {
13
26
  this.normalizedBaseUrl = baseUrl.replace(/\/+$/, "");
14
27
  }
@@ -21,15 +34,6 @@ class LightconeHttp {
21
34
  authTokenRef() {
22
35
  return async () => this.authToken;
23
36
  }
24
- clearAdminToken() {
25
- this.adminToken = undefined;
26
- }
27
- async adminGet(url, retry) {
28
- return this.requestWithRetry("GET", url, undefined, retry, { kind: "adminCookie" });
29
- }
30
- async adminPost(url, body, retry) {
31
- return this.requestWithRetry("POST", url, body, retry, { kind: "adminCookie" });
32
- }
33
37
  async get(url, retry) {
34
38
  return this.requestWithRetry("GET", url, undefined, retry, { kind: "cookie" });
35
39
  }
@@ -50,7 +54,15 @@ class LightconeHttp {
50
54
  async requestWithRetry(method, url, body, policy, authMode) {
51
55
  const config = (0, retry_1.retryConfigForPolicy)(policy);
52
56
  if (!config) {
53
- return this.sendAndParse(method, url, body, authMode);
57
+ try {
58
+ return await this.sendAndParse(method, url, body, authMode);
59
+ }
60
+ catch (error) {
61
+ if (error instanceof HttpStatusError) {
62
+ throw this.statusErrorToSdk(error);
63
+ }
64
+ throw error;
65
+ }
54
66
  }
55
67
  let lastError;
56
68
  for (let attempt = 0; attempt <= config.maxRetries; attempt += 1) {
@@ -59,6 +71,17 @@ class LightconeHttp {
59
71
  return parseApiResponse(apiResponse, requestId);
60
72
  }
61
73
  catch (error) {
74
+ if (error instanceof HttpStatusError) {
75
+ const shouldRetry = config.retryableStatuses.includes(error.status);
76
+ if (!shouldRetry || attempt >= config.maxRetries) {
77
+ throw this.statusErrorToSdk(error);
78
+ }
79
+ lastError = error_1.HttpError.serverError(error.status, error.body);
80
+ const retryAfter = retryAfterMs(error.headers);
81
+ const delay = retryAfter ?? (0, retry_1.delayForAttempt)(config, attempt);
82
+ await sleep(delay);
83
+ continue;
84
+ }
62
85
  if (!(error instanceof error_1.HttpError)) {
63
86
  throw error;
64
87
  }
@@ -79,10 +102,7 @@ class LightconeHttp {
79
102
  case "Request":
80
103
  return true;
81
104
  case "RateLimited":
82
- if (error.retryAfterMs !== undefined) {
83
- await sleep(error.retryAfterMs);
84
- }
85
- return true;
105
+ return retryableStatuses.includes(429);
86
106
  case "ServerError":
87
107
  return error.status !== undefined && retryableStatuses.includes(error.status);
88
108
  default:
@@ -143,7 +163,7 @@ class LightconeHttp {
143
163
  return [payload, requestId];
144
164
  }
145
165
  const bodyText = await response.text().catch(() => "");
146
- throw this.mapStatusError(response.status, bodyText, response.headers);
166
+ throw new HttpStatusError(response.status, bodyText, response.headers, requestId);
147
167
  }
148
168
  captureCookies(response) {
149
169
  for (const cookieHeader of getSetCookieHeaders(response.headers)) {
@@ -151,10 +171,6 @@ class LightconeHttp {
151
171
  if (authToken) {
152
172
  this.authToken = authToken;
153
173
  }
154
- const adminToken = extractCookieValue(cookieHeader, "admin_token");
155
- if (adminToken) {
156
- this.adminToken = adminToken;
157
- }
158
174
  }
159
175
  }
160
176
  cookieHeader(authMode) {
@@ -162,8 +178,6 @@ class LightconeHttp {
162
178
  return undefined;
163
179
  }
164
180
  switch (authMode.kind) {
165
- case "adminCookie":
166
- return this.adminToken ? `admin_token=${this.adminToken}` : undefined;
167
181
  case "cookieOverride":
168
182
  // Forward the supplied Cookie header verbatim (may carry privy-token
169
183
  // and/or lightcone-token).
@@ -187,6 +201,13 @@ class LightconeHttp {
187
201
  }
188
202
  return error_1.HttpError.serverError(statusCode, bodyText);
189
203
  }
204
+ statusErrorToSdk(error) {
205
+ const rejected = parseRejectedBody(error.body, error.requestId);
206
+ if (rejected) {
207
+ return rejected;
208
+ }
209
+ return this.mapStatusError(error.status, error.body, error.headers);
210
+ }
190
211
  }
191
212
  exports.LightconeHttp = LightconeHttp;
192
213
  function sleep(ms) {
@@ -203,6 +224,19 @@ function parseApiResponse(payload, requestId) {
203
224
  }
204
225
  throw error_1.SdkError.apiRejected(api_response_1.ApiRejectedDetails.fromWire(payload.error_details, requestId));
205
226
  }
227
+ function parseRejectedBody(body, requestId) {
228
+ let payload;
229
+ try {
230
+ payload = JSON.parse(body);
231
+ }
232
+ catch {
233
+ return undefined;
234
+ }
235
+ if (!(0, api_response_1.isApiResponse)(payload) || payload.status !== "error") {
236
+ return undefined;
237
+ }
238
+ return error_1.SdkError.apiRejected(api_response_1.ApiRejectedDetails.fromWire(payload.error_details, requestId));
239
+ }
206
240
  function generateRequestId() {
207
241
  if (typeof globalThis.crypto?.randomUUID === "function") {
208
242
  return globalThis.crypto.randomUUID();
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { HttpError, SdkError } from \"../error\";\nimport {\n ApiRejectedDetails,\n isApiResponse,\n type ApiResponse,\n} from \"../shared/api_response\";\nimport { delayForAttempt, retryConfigForPolicy, type RetryPolicy } from \"./retry\";\n\ntype AuthMode =\n | { kind: \"cookie\" }\n | { kind: \"cookieOverride\"; cookieHeader: string }\n | { kind: \"adminCookie\" };\n\nconst DEFAULT_HTTP_TIMEOUT_MS = 180_000;\n\nexport class LightconeHttp {\n private readonly normalizedBaseUrl: string;\n private authToken: string | undefined;\n private adminToken: string | undefined;\n\n constructor(baseUrl: string) {\n this.normalizedBaseUrl = baseUrl.replace(/\\/+$/, \"\");\n }\n\n baseUrl(): string {\n return this.normalizedBaseUrl;\n }\n\n async clearAuthToken(): Promise<void> {\n this.authToken = undefined;\n }\n\n authTokenRef(): () => Promise<string | undefined> {\n return async () => this.authToken;\n }\n\n clearAdminToken(): void {\n this.adminToken = undefined;\n }\n\n async adminGet<T>(url: string, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\n \"GET\",\n url,\n undefined,\n retry,\n { kind: \"adminCookie\" }\n );\n }\n\n async adminPost<T, B extends object>(url: string, body: B, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\"POST\", url, body, retry, { kind: \"adminCookie\" });\n }\n\n async get<T>(url: string, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\"GET\", url, undefined, retry, { kind: \"cookie\" });\n }\n\n async post<T, B extends object>(url: string, body: B, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\"POST\", url, body, retry, { kind: \"cookie\" });\n }\n\n /**\n * GET with retry, forwarding an explicit per-call raw `Cookie` header\n * (e.g. `privy-token=…; lightcone-token=…`) instead of the SDK's process-wide\n * cookie store. Intended for server-side cookie forwarding (SSR / server\n * functions) where the per-request browser cookies can't propagate to the\n * shared client. In a browser context this is equivalent to {@link get} — the\n * runtime is already attaching cookies via `credentials: \"include\"`.\n */\n async getWithCookies<T>(url: string, retry: RetryPolicy, cookieHeader: string): Promise<T> {\n return this.requestWithRetry<T>(\n \"GET\",\n url,\n undefined,\n retry,\n { kind: \"cookieOverride\", cookieHeader }\n );\n }\n\n private async requestWithRetry<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body: object | undefined,\n policy: RetryPolicy,\n authMode: AuthMode\n ): Promise<T> {\n const config = retryConfigForPolicy(policy);\n if (!config) {\n return this.sendAndParse<T>(method, url, body, authMode);\n }\n\n let lastError: HttpError | undefined;\n\n for (let attempt = 0; attempt <= config.maxRetries; attempt += 1) {\n try {\n const [apiResponse, requestId] = await this.sendRequest<ApiResponse<T>>(\n method,\n url,\n body,\n authMode\n );\n return parseApiResponse<T>(apiResponse, requestId);\n } catch (error) {\n if (!(error instanceof HttpError)) {\n throw error;\n }\n\n const shouldRetry = await this.shouldRetry(\n error,\n config.retryableStatuses\n );\n if (!shouldRetry || attempt >= config.maxRetries) {\n throw error;\n }\n\n lastError = error;\n const delay = delayForAttempt(config, attempt);\n\n await sleep(delay);\n }\n }\n\n throw HttpError.maxRetriesExceeded(config.maxRetries + 1, lastError?.message ?? \"unknown\");\n }\n\n private async shouldRetry(\n error: HttpError,\n retryableStatuses: readonly number[]\n ): Promise<boolean> {\n switch (error.variant) {\n case \"Timeout\":\n case \"Request\":\n return true;\n case \"RateLimited\":\n if (error.retryAfterMs !== undefined) {\n await sleep(error.retryAfterMs);\n }\n return true;\n case \"ServerError\":\n return error.status !== undefined && retryableStatuses.includes(error.status);\n default:\n return false;\n }\n }\n\n private async sendAndParse<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body?: object,\n authMode: AuthMode = { kind: \"cookie\" }\n ): Promise<T> {\n const [apiResponse, requestId] = await this.sendRequest<ApiResponse<T>>(\n method,\n url,\n body,\n authMode\n );\n return parseApiResponse<T>(apiResponse, requestId);\n }\n\n private async sendRequest<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body?: object,\n authMode: AuthMode = { kind: \"cookie\" }\n ): Promise<[T, string]> {\n const requestId = generateRequestId();\n const headers: Record<string, string> = {};\n\n if (body) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n headers[\"x-request-id\"] = requestId;\n\n if (!hasBrowserWindow()) {\n const cookie = this.cookieHeader(authMode);\n if (cookie) {\n headers.Cookie = cookie;\n }\n }\n\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), DEFAULT_HTTP_TIMEOUT_MS);\n\n let response: Response;\n\n try {\n response = await fetch(url, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n signal: controller.signal,\n ...(hasBrowserWindow() ? { credentials: \"include\" as RequestCredentials } : {}),\n });\n } catch (error) {\n clearTimeout(timeoutId);\n if (error instanceof Error && error.name === \"AbortError\") {\n throw HttpError.timeout();\n }\n throw HttpError.request(error instanceof Error ? error.message : String(error));\n } finally {\n clearTimeout(timeoutId);\n }\n\n if (response.ok) {\n if (!hasBrowserWindow()) {\n this.captureCookies(response);\n }\n\n const text = await response.text();\n let payload: T;\n try {\n payload = JSON.parse(text) as T;\n } catch (e) {\n throw HttpError.request(e instanceof Error ? e.message : \"JSON parse failed\");\n }\n\n return [payload, requestId];\n }\n\n const bodyText = await response.text().catch(() => \"\");\n throw this.mapStatusError(response.status, bodyText, response.headers);\n }\n\n private captureCookies(response: Response): void {\n for (const cookieHeader of getSetCookieHeaders(response.headers)) {\n const authToken = extractCookieValue(cookieHeader, \"lightcone-token\");\n if (authToken) {\n this.authToken = authToken;\n }\n\n const adminToken = extractCookieValue(cookieHeader, \"admin_token\");\n if (adminToken) {\n this.adminToken = adminToken;\n }\n }\n }\n\n private cookieHeader(authMode: AuthMode): string | undefined {\n if (hasBrowserWindow()) {\n return undefined;\n }\n\n switch (authMode.kind) {\n case \"adminCookie\":\n return this.adminToken ? `admin_token=${this.adminToken}` : undefined;\n case \"cookieOverride\":\n // Forward the supplied Cookie header verbatim (may carry privy-token\n // and/or lightcone-token).\n return authMode.cookieHeader;\n case \"cookie\":\n return this.authToken ? `lightcone-token=${this.authToken}` : undefined;\n }\n }\n\n private mapStatusError(statusCode: number, bodyText: string, headers: Headers): HttpError {\n if (statusCode === 401) {\n return HttpError.unauthorized();\n }\n if (statusCode === 404) {\n return HttpError.notFound(bodyText);\n }\n if (statusCode === 429) {\n return HttpError.rateLimited(retryAfterMs(headers));\n }\n if (statusCode >= 400 && statusCode < 500) {\n return HttpError.badRequest(bodyText);\n }\n return HttpError.serverError(statusCode, bodyText);\n }\n}\n\nfunction sleep(ms: number): Promise<void> {\n return new Promise((resolve) => {\n setTimeout(resolve, ms);\n });\n}\n\nfunction parseApiResponse<T>(payload: unknown, requestId: string): T {\n if (!isApiResponse<T>(payload)) {\n throw SdkError.serde(\"Invalid ApiResponse envelope\");\n }\n\n if (payload.status === \"success\") {\n return payload.body;\n }\n\n throw SdkError.apiRejected(\n ApiRejectedDetails.fromWire(payload.error_details, requestId)\n );\n}\n\nfunction generateRequestId(): string {\n if (typeof globalThis.crypto?.randomUUID === \"function\") {\n return globalThis.crypto.randomUUID();\n }\n\n return `lc-${Date.now()}-${Math.random().toString(16).slice(2)}`;\n}\n\nfunction getSetCookieHeaders(headers: Headers): string[] {\n const headersWithCookies = headers as Headers & {\n getSetCookie?: () => string[];\n };\n\n if (typeof headersWithCookies.getSetCookie === \"function\") {\n const values = headersWithCookies.getSetCookie();\n if (values.length > 0) {\n return values;\n }\n }\n\n const combined = headers.get(\"set-cookie\");\n return combined ? [combined] : [];\n}\n\nfunction retryAfterMs(headers: Headers): number | undefined {\n const retryAfterMsValue = headers.get(\"retry-after-ms\");\n if (retryAfterMsValue) {\n const parsed = Number.parseInt(retryAfterMsValue, 10);\n if (Number.isFinite(parsed)) {\n return parsed;\n }\n }\n\n const retryAfterValue = headers.get(\"retry-after\");\n if (retryAfterValue) {\n const parsed = Number.parseFloat(retryAfterValue);\n if (Number.isFinite(parsed)) {\n return Math.round(parsed * 1000);\n }\n }\n\n return undefined;\n}\n\nfunction extractCookieValue(header: string, name: string): string | undefined {\n const match = header.match(\n new RegExp(`(?:^|,\\\\s*)${escapeRegExp(name)}=([^;,]+)`)\n );\n return match?.[1];\n}\n\nfunction escapeRegExp(value: string): string {\n return value.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n}\n\nfunction hasBrowserWindow(): boolean {\n return typeof globalThis !== \"undefined\" && \"window\" in globalThis;\n}\n"]}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/http/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { HttpError, SdkError } from \"../error\";\nimport {\n ApiRejectedDetails,\n isApiResponse,\n type ApiResponse,\n} from \"../shared/api_response\";\nimport { delayForAttempt, retryConfigForPolicy, type RetryPolicy } from \"./retry\";\n\ntype AuthMode =\n | { kind: \"cookie\" }\n | { kind: \"cookieOverride\"; cookieHeader: string };\n\nconst DEFAULT_HTTP_TIMEOUT_MS = 180_000;\n\nclass HttpStatusError extends Error {\n readonly status: number;\n readonly body: string;\n readonly headers: Headers;\n readonly requestId: string;\n\n constructor(status: number, body: string, headers: Headers, requestId: string) {\n super(`HTTP status ${status}: ${body}`);\n this.name = \"HttpStatusError\";\n this.status = status;\n this.body = body;\n this.headers = headers;\n this.requestId = requestId;\n }\n}\n\nexport class LightconeHttp {\n private readonly normalizedBaseUrl: string;\n private authToken: string | undefined;\n\n constructor(baseUrl: string) {\n this.normalizedBaseUrl = baseUrl.replace(/\\/+$/, \"\");\n }\n\n baseUrl(): string {\n return this.normalizedBaseUrl;\n }\n\n async clearAuthToken(): Promise<void> {\n this.authToken = undefined;\n }\n\n authTokenRef(): () => Promise<string | undefined> {\n return async () => this.authToken;\n }\n\n async get<T>(url: string, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\"GET\", url, undefined, retry, { kind: \"cookie\" });\n }\n\n async post<T, B extends object>(url: string, body: B, retry: RetryPolicy): Promise<T> {\n return this.requestWithRetry<T>(\"POST\", url, body, retry, { kind: \"cookie\" });\n }\n\n /**\n * GET with retry, forwarding an explicit per-call raw `Cookie` header\n * (e.g. `privy-token=…; lightcone-token=…`) instead of the SDK's process-wide\n * cookie store. Intended for server-side cookie forwarding (SSR / server\n * functions) where the per-request browser cookies can't propagate to the\n * shared client. In a browser context this is equivalent to {@link get} — the\n * runtime is already attaching cookies via `credentials: \"include\"`.\n */\n async getWithCookies<T>(url: string, retry: RetryPolicy, cookieHeader: string): Promise<T> {\n return this.requestWithRetry<T>(\n \"GET\",\n url,\n undefined,\n retry,\n { kind: \"cookieOverride\", cookieHeader }\n );\n }\n\n private async requestWithRetry<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body: object | undefined,\n policy: RetryPolicy,\n authMode: AuthMode\n ): Promise<T> {\n const config = retryConfigForPolicy(policy);\n if (!config) {\n try {\n return await this.sendAndParse<T>(method, url, body, authMode);\n } catch (error) {\n if (error instanceof HttpStatusError) {\n throw this.statusErrorToSdk(error);\n }\n throw error;\n }\n }\n\n let lastError: HttpError | undefined;\n\n for (let attempt = 0; attempt <= config.maxRetries; attempt += 1) {\n try {\n const [apiResponse, requestId] = await this.sendRequest<ApiResponse<T>>(\n method,\n url,\n body,\n authMode\n );\n return parseApiResponse<T>(apiResponse, requestId);\n } catch (error) {\n if (error instanceof HttpStatusError) {\n const shouldRetry = config.retryableStatuses.includes(error.status);\n if (!shouldRetry || attempt >= config.maxRetries) {\n throw this.statusErrorToSdk(error);\n }\n\n lastError = HttpError.serverError(error.status, error.body);\n const retryAfter = retryAfterMs(error.headers);\n const delay = retryAfter ?? delayForAttempt(config, attempt);\n\n await sleep(delay);\n continue;\n }\n\n if (!(error instanceof HttpError)) {\n throw error;\n }\n\n const shouldRetry = await this.shouldRetry(\n error,\n config.retryableStatuses\n );\n if (!shouldRetry || attempt >= config.maxRetries) {\n throw error;\n }\n\n lastError = error;\n const delay = delayForAttempt(config, attempt);\n\n await sleep(delay);\n }\n }\n\n throw HttpError.maxRetriesExceeded(config.maxRetries + 1, lastError?.message ?? \"unknown\");\n }\n\n private async shouldRetry(\n error: HttpError,\n retryableStatuses: readonly number[]\n ): Promise<boolean> {\n switch (error.variant) {\n case \"Timeout\":\n case \"Request\":\n return true;\n case \"RateLimited\":\n return retryableStatuses.includes(429);\n case \"ServerError\":\n return error.status !== undefined && retryableStatuses.includes(error.status);\n default:\n return false;\n }\n }\n\n private async sendAndParse<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body?: object,\n authMode: AuthMode = { kind: \"cookie\" }\n ): Promise<T> {\n const [apiResponse, requestId] = await this.sendRequest<ApiResponse<T>>(\n method,\n url,\n body,\n authMode\n );\n return parseApiResponse<T>(apiResponse, requestId);\n }\n\n private async sendRequest<T>(\n method: \"GET\" | \"POST\",\n url: string,\n body?: object,\n authMode: AuthMode = { kind: \"cookie\" }\n ): Promise<[T, string]> {\n const requestId = generateRequestId();\n const headers: Record<string, string> = {};\n\n if (body) {\n headers[\"Content-Type\"] = \"application/json\";\n }\n headers[\"x-request-id\"] = requestId;\n\n if (!hasBrowserWindow()) {\n const cookie = this.cookieHeader(authMode);\n if (cookie) {\n headers.Cookie = cookie;\n }\n }\n\n const controller = new AbortController();\n const timeoutId = setTimeout(() => controller.abort(), DEFAULT_HTTP_TIMEOUT_MS);\n\n let response: Response;\n\n try {\n response = await fetch(url, {\n method,\n headers,\n body: body ? JSON.stringify(body) : undefined,\n signal: controller.signal,\n ...(hasBrowserWindow() ? { credentials: \"include\" as RequestCredentials } : {}),\n });\n } catch (error) {\n clearTimeout(timeoutId);\n if (error instanceof Error && error.name === \"AbortError\") {\n throw HttpError.timeout();\n }\n throw HttpError.request(error instanceof Error ? error.message : String(error));\n } finally {\n clearTimeout(timeoutId);\n }\n\n if (response.ok) {\n if (!hasBrowserWindow()) {\n this.captureCookies(response);\n }\n\n const text = await response.text();\n let payload: T;\n try {\n payload = JSON.parse(text) as T;\n } catch (e) {\n throw HttpError.request(e instanceof Error ? e.message : \"JSON parse failed\");\n }\n\n return [payload, requestId];\n }\n\n const bodyText = await response.text().catch(() => \"\");\n throw new HttpStatusError(response.status, bodyText, response.headers, requestId);\n }\n\n private captureCookies(response: Response): void {\n for (const cookieHeader of getSetCookieHeaders(response.headers)) {\n const authToken = extractCookieValue(cookieHeader, \"lightcone-token\");\n if (authToken) {\n this.authToken = authToken;\n }\n }\n }\n\n private cookieHeader(authMode: AuthMode): string | undefined {\n if (hasBrowserWindow()) {\n return undefined;\n }\n\n switch (authMode.kind) {\n case \"cookieOverride\":\n // Forward the supplied Cookie header verbatim (may carry privy-token\n // and/or lightcone-token).\n return authMode.cookieHeader;\n case \"cookie\":\n return this.authToken ? `lightcone-token=${this.authToken}` : undefined;\n }\n }\n\n private mapStatusError(statusCode: number, bodyText: string, headers: Headers): HttpError {\n if (statusCode === 401) {\n return HttpError.unauthorized();\n }\n if (statusCode === 404) {\n return HttpError.notFound(bodyText);\n }\n if (statusCode === 429) {\n return HttpError.rateLimited(retryAfterMs(headers));\n }\n if (statusCode >= 400 && statusCode < 500) {\n return HttpError.badRequest(bodyText);\n }\n return HttpError.serverError(statusCode, bodyText);\n }\n\n private statusErrorToSdk(error: HttpStatusError): Error {\n const rejected = parseRejectedBody(error.body, error.requestId);\n if (rejected) {\n return rejected;\n }\n return this.mapStatusError(error.status, error.body, error.headers);\n }\n}\n\nfunction sleep(ms: number): Promise<void> {\n return new Promise((resolve) => {\n setTimeout(resolve, ms);\n });\n}\n\nfunction parseApiResponse<T>(payload: unknown, requestId: string): T {\n if (!isApiResponse<T>(payload)) {\n throw SdkError.serde(\"Invalid ApiResponse envelope\");\n }\n\n if (payload.status === \"success\") {\n return payload.body;\n }\n\n throw SdkError.apiRejected(\n ApiRejectedDetails.fromWire(payload.error_details, requestId)\n );\n}\n\nfunction parseRejectedBody(body: string, requestId: string): SdkError | undefined {\n let payload: unknown;\n try {\n payload = JSON.parse(body);\n } catch {\n return undefined;\n }\n\n if (!isApiResponse<unknown>(payload) || payload.status !== \"error\") {\n return undefined;\n }\n\n return SdkError.apiRejected(\n ApiRejectedDetails.fromWire(payload.error_details, requestId)\n );\n}\n\nfunction generateRequestId(): string {\n if (typeof globalThis.crypto?.randomUUID === \"function\") {\n return globalThis.crypto.randomUUID();\n }\n\n return `lc-${Date.now()}-${Math.random().toString(16).slice(2)}`;\n}\n\nfunction getSetCookieHeaders(headers: Headers): string[] {\n const headersWithCookies = headers as Headers & {\n getSetCookie?: () => string[];\n };\n\n if (typeof headersWithCookies.getSetCookie === \"function\") {\n const values = headersWithCookies.getSetCookie();\n if (values.length > 0) {\n return values;\n }\n }\n\n const combined = headers.get(\"set-cookie\");\n return combined ? [combined] : [];\n}\n\nfunction retryAfterMs(headers: Headers): number | undefined {\n const retryAfterMsValue = headers.get(\"retry-after-ms\");\n if (retryAfterMsValue) {\n const parsed = Number.parseInt(retryAfterMsValue, 10);\n if (Number.isFinite(parsed)) {\n return parsed;\n }\n }\n\n const retryAfterValue = headers.get(\"retry-after\");\n if (retryAfterValue) {\n const parsed = Number.parseFloat(retryAfterValue);\n if (Number.isFinite(parsed)) {\n return Math.round(parsed * 1000);\n }\n }\n\n return undefined;\n}\n\nfunction extractCookieValue(header: string, name: string): string | undefined {\n const match = header.match(\n new RegExp(`(?:^|,\\\\s*)${escapeRegExp(name)}=([^;,]+)`)\n );\n return match?.[1];\n}\n\nfunction escapeRegExp(value: string): string {\n return value.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n}\n\nfunction hasBrowserWindow(): boolean {\n return typeof globalThis !== \"undefined\" && \"window\" in globalThis;\n}\n"]}
package/dist/index.d.ts CHANGED
@@ -15,7 +15,8 @@ export { LightconeClient, LightconeClientBuilder } from "./client";
15
15
  export { Rpc } from "./rpc";
16
16
  export type { ClientContext } from "./context";
17
17
  export { requireConnection, requireSigningStrategy, resolveDepositSource, signAndSubmitTx } from "./context";
18
- export type { AuthCredentials, AuthMethod, ChainType, EmbeddedWallet, LinkedAccount, LinkedAccountType, User, } from "./auth";
19
- export type { AdminClient, GlobalDepositAssetsResult, MarketsClient, MarketsResult, MetricsClient, OrdersClient, OrderbooksClient, PositionsClient, PriceHistorySubClient, ReferralsClient, TradesClient, } from "./prelude";
18
+ export type { AuthCredentials, AuthMethod, ChainType, GoogleAccountData, PrivyEmbeddedWallet, SessionResponse, User, UserIdentity, UserPrivyData, XAccountData, } from "./auth";
19
+ export { avatarUrl, displayName, identityText, tradingWallet, userPrivy, userXAccount } from "./auth";
20
+ export type { GlobalDepositAssetsResult, MarketsClient, MarketsResult, MetricsClient, OrdersClient, OrderbooksClient, PositionsClient, PriceHistorySubClient, ReferralsClient, TradesClient, } from "./prelude";
20
21
  export * from "./prelude";
21
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAG1B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAG/B,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG7G,YAAY,EACV,eAAe,EACf,UAAU,EACV,SAAS,EACT,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,IAAI,GACL,MAAM,QAAQ,CAAC;AAEhB,YAAY,EACV,WAAW,EACX,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,YAAY,GACb,MAAM,WAAW,CAAC;AAEnB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,cAAc,SAAS,CAAC;AACxB,cAAc,OAAO,CAAC;AACtB,cAAc,WAAW,CAAC;AAG1B,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAG/B,OAAO,KAAK,EAAE,MAAM,MAAM,CAAC;AAG3B,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AACnE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG7G,YAAY,EACV,eAAe,EACf,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,aAAa,EACb,YAAY,GACb,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtG,YAAY,EACV,yBAAyB,EACzB,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,eAAe,EACf,YAAY,GACb,MAAM,WAAW,CAAC;AAEnB,cAAc,WAAW,CAAC"}
package/dist/index.js CHANGED
@@ -39,7 +39,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
39
39
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
40
40
  };
41
41
  Object.defineProperty(exports, "__esModule", { value: true });
42
- exports.signAndSubmitTx = exports.resolveDepositSource = exports.requireSigningStrategy = exports.requireConnection = exports.Rpc = exports.LightconeClientBuilder = exports.LightconeClient = exports.ws = exports.http = exports.privy = exports.auth = exports.program = exports.domain = exports.shared = void 0;
42
+ exports.userXAccount = exports.userPrivy = exports.tradingWallet = exports.identityText = exports.displayName = exports.avatarUrl = exports.signAndSubmitTx = exports.resolveDepositSource = exports.requireSigningStrategy = exports.requireConnection = exports.Rpc = exports.LightconeClientBuilder = exports.LightconeClient = exports.ws = exports.http = exports.privy = exports.auth = exports.program = exports.domain = exports.shared = void 0;
43
43
  // Layer 1: Core
44
44
  exports.shared = __importStar(require("./shared"));
45
45
  exports.domain = __importStar(require("./domain"));
@@ -65,5 +65,12 @@ Object.defineProperty(exports, "requireConnection", { enumerable: true, get: fun
65
65
  Object.defineProperty(exports, "requireSigningStrategy", { enumerable: true, get: function () { return context_1.requireSigningStrategy; } });
66
66
  Object.defineProperty(exports, "resolveDepositSource", { enumerable: true, get: function () { return context_1.resolveDepositSource; } });
67
67
  Object.defineProperty(exports, "signAndSubmitTx", { enumerable: true, get: function () { return context_1.signAndSubmitTx; } });
68
+ var auth_1 = require("./auth");
69
+ Object.defineProperty(exports, "avatarUrl", { enumerable: true, get: function () { return auth_1.avatarUrl; } });
70
+ Object.defineProperty(exports, "displayName", { enumerable: true, get: function () { return auth_1.displayName; } });
71
+ Object.defineProperty(exports, "identityText", { enumerable: true, get: function () { return auth_1.identityText; } });
72
+ Object.defineProperty(exports, "tradingWallet", { enumerable: true, get: function () { return auth_1.tradingWallet; } });
73
+ Object.defineProperty(exports, "userPrivy", { enumerable: true, get: function () { return auth_1.userPrivy; } });
74
+ Object.defineProperty(exports, "userXAccount", { enumerable: true, get: function () { return auth_1.userXAccount; } });
68
75
  __exportStar(require("./prelude"), exports);
69
76
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,gBAAgB;AAChB,mDAAmC;AACnC,mDAAmC;AACnC,qDAAqC;AACrC,0CAAwB;AACxB,wCAAsB;AACtB,4CAA0B;AAE1B,wBAAwB;AACxB,+CAA+B;AAC/B,iDAAiC;AAEjC,gBAAgB;AAChB,+CAA+B;AAE/B,qBAAqB;AACrB,2CAA2B;AAE3B,6BAA6B;AAC7B,mCAAmE;AAA1D,yGAAA,eAAe,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AAChD,6BAA4B;AAAnB,0FAAA,GAAG,OAAA;AAEZ,qCAA6G;AAApG,4GAAA,iBAAiB,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AAAE,+GAAA,oBAAoB,OAAA;AAAE,0GAAA,eAAe,OAAA;AA2BzF,4CAA0B","sourcesContent":["/**\n * Lightcone SDK v2 - TypeScript implementation mirroring Rust SDK v2 layers.\n */\n\n// Layer 1: Core\nexport * as shared from \"./shared\";\nexport * as domain from \"./domain\";\nexport * as program from \"./program\";\nexport * from \"./error\";\nexport * from \"./env\";\nexport * from \"./network\";\n\n// Layer 2: Auth + Privy\nexport * as auth from \"./auth\";\nexport * as privy from \"./privy\";\n\n// Layer 3: HTTP\nexport * as http from \"./http\";\n\n// Layer 4: WebSocket\nexport * as ws from \"./ws\";\n\n// Layer 5: High-level client\nexport { LightconeClient, LightconeClientBuilder } from \"./client\";\nexport { Rpc } from \"./rpc\";\nexport type { ClientContext } from \"./context\";\nexport { requireConnection, requireSigningStrategy, resolveDepositSource, signAndSubmitTx } from \"./context\";\n\n// Convenience top-level type exports\nexport type {\n AuthCredentials,\n AuthMethod,\n ChainType,\n EmbeddedWallet,\n LinkedAccount,\n LinkedAccountType,\n User,\n} from \"./auth\";\n\nexport type {\n AdminClient,\n GlobalDepositAssetsResult,\n MarketsClient,\n MarketsResult,\n MetricsClient,\n OrdersClient,\n OrderbooksClient,\n PositionsClient,\n PriceHistorySubClient,\n ReferralsClient,\n TradesClient,\n} from \"./prelude\";\n\nexport * from \"./prelude\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,gBAAgB;AAChB,mDAAmC;AACnC,mDAAmC;AACnC,qDAAqC;AACrC,0CAAwB;AACxB,wCAAsB;AACtB,4CAA0B;AAE1B,wBAAwB;AACxB,+CAA+B;AAC/B,iDAAiC;AAEjC,gBAAgB;AAChB,+CAA+B;AAE/B,qBAAqB;AACrB,2CAA2B;AAE3B,6BAA6B;AAC7B,mCAAmE;AAA1D,yGAAA,eAAe,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AAChD,6BAA4B;AAAnB,0FAAA,GAAG,OAAA;AAEZ,qCAA6G;AAApG,4GAAA,iBAAiB,OAAA;AAAE,iHAAA,sBAAsB,OAAA;AAAE,+GAAA,oBAAoB,OAAA;AAAE,0GAAA,eAAe,OAAA;AAezF,+BAAsG;AAA7F,iGAAA,SAAS,OAAA;AAAE,mGAAA,WAAW,OAAA;AAAE,oGAAA,YAAY,OAAA;AAAE,qGAAA,aAAa,OAAA;AAAE,iGAAA,SAAS,OAAA;AAAE,oGAAA,YAAY,OAAA;AAerF,4CAA0B","sourcesContent":["/**\n * Lightcone SDK v2 - TypeScript implementation mirroring Rust SDK v2 layers.\n */\n\n// Layer 1: Core\nexport * as shared from \"./shared\";\nexport * as domain from \"./domain\";\nexport * as program from \"./program\";\nexport * from \"./error\";\nexport * from \"./env\";\nexport * from \"./network\";\n\n// Layer 2: Auth + Privy\nexport * as auth from \"./auth\";\nexport * as privy from \"./privy\";\n\n// Layer 3: HTTP\nexport * as http from \"./http\";\n\n// Layer 4: WebSocket\nexport * as ws from \"./ws\";\n\n// Layer 5: High-level client\nexport { LightconeClient, LightconeClientBuilder } from \"./client\";\nexport { Rpc } from \"./rpc\";\nexport type { ClientContext } from \"./context\";\nexport { requireConnection, requireSigningStrategy, resolveDepositSource, signAndSubmitTx } from \"./context\";\n\n// Convenience top-level type exports\nexport type {\n AuthCredentials,\n AuthMethod,\n ChainType,\n GoogleAccountData,\n PrivyEmbeddedWallet,\n SessionResponse,\n User,\n UserIdentity,\n UserPrivyData,\n XAccountData,\n} from \"./auth\";\nexport { avatarUrl, displayName, identityText, tradingWallet, userPrivy, userXAccount } from \"./auth\";\n\nexport type {\n GlobalDepositAssetsResult,\n MarketsClient,\n MarketsResult,\n MetricsClient,\n OrdersClient,\n OrderbooksClient,\n PositionsClient,\n PriceHistorySubClient,\n ReferralsClient,\n TradesClient,\n} from \"./prelude\";\n\nexport * from \"./prelude\";\n"]}
package/dist/prelude.d.ts CHANGED
@@ -5,7 +5,6 @@ export { LightconeClient, LightconeClientBuilder, } from "./client";
5
5
  export { Rpc } from "./rpc";
6
6
  export type { ClientContext } from "./context";
7
7
  export { Auth } from "./auth";
8
- export { Admin } from "./domain/admin";
9
8
  export { Markets } from "./domain/market";
10
9
  export { Metrics } from "./domain/metrics";
11
10
  export { Orderbooks } from "./domain/orderbook";
@@ -15,17 +14,18 @@ export { Trades } from "./domain/trade";
15
14
  export { PriceHistoryClient } from "./domain/price_history";
16
15
  export { Notifications } from "./domain/notification";
17
16
  export { Referrals } from "./domain/referral";
18
- export type { AdminLogEvent, AdminLogEventsQuery, AdminLogEventsResponse, AdminLogMetricBreakdown, AdminLogMetricHistoryQuery, AdminLogMetricHistoryResponse, AdminLogMetricPoint, AdminLogMetricSummary, AdminLogMetricsQuery, AdminLogMetricsResponse, CodeListEntry, ListCodesRequest, ListCodesResponse, ReferralConfig, UpdateCodeRequest, UpdateCodeResponse, UpdateConfigRequest, } from "./domain/admin";
19
- export type { CategoriesMetrics, CategoryVolumeMetrics, DepositTokenVolumeMetrics, DepositTokensMetrics, HistoryPoint, Leaderboard, LeaderboardEntry, MarketDetailMetrics, MarketOrderbookVolumeMetrics, MarketVolumeMetrics, MarketsMetrics, MetricsHistory, MetricsHistoryQuery, OrderbookTickerEntry, OrderbookTickersResponse, OrderbookVolumeMetrics, OutcomeVolumeMetrics, PlatformMetrics, } from "./domain/metrics";
17
+ export type { CategoriesMetrics, CategoryVolumeMetrics, DepositTokenVolumeHistory, DepositTokenVolumeHistoryPoint, DepositTokenVolumeHistoryPointToken, DepositTokenVolumeHistoryQuery, DepositTokenVolumeHistoryToken, DepositTokenVolumeMetrics, DepositTokensMetrics, HistoryPoint, Leaderboard, LeaderboardEntry, MarketDetailMetrics, MarketOrderbookVolumeMetrics, MarketVolumeMetrics, MarketsMetrics, MetricsHistory, MetricsHistoryQuery, OpenInterestHistory, OpenInterestHistoryDepositAsset, OpenInterestHistoryPoint, OpenInterestHistoryPointDepositAsset, OpenInterestHistoryQuery, OrderbookTickerEntry, OrderbookTickersResponse, OrderbookVolumeMetrics, OutcomeVolumeMetrics, PlatformMetrics, UniqueTradersHistory, UniqueTradersHistoryPoint, UniqueTradersHistoryQuery, UniqueTradersHistoryScope, } from "./domain/metrics";
20
18
  export type { FaucetRequest, FaucetResponse, FaucetToken, } from "./domain/faucet";
21
19
  export type { ConditionalTokenResponse, DepositAssetResponse, DepositMintsResponse, MarketResolutionPayout, MarketResolutionResponse, } from "./domain/market/wire";
22
20
  export { Status, MarketResolutionKind, hasSingleWinningOutcome, isMarketResolved, singleWinningOutcome, } from "./domain/market";
23
21
  export type { Market, MarketResolutionContainer, Outcome, ConditionalToken, DepositAsset, GlobalDepositAsset, Token, TokenMetadata, ValidatedTokens, } from "./domain/market";
24
- export type { OrderBook, OrderBookPair, OutcomeImpact, TickerData, WsBookLevel, } from "./domain/orderbook";
22
+ export type { OrderBook, OrderBookPair, OrderbookDepthDecimals, OutcomeImpact, TickerData, WsBookLevel, } from "./domain/orderbook";
25
23
  export { OrderBookValidationError } from "./domain/orderbook";
24
+ export type { BookAggregation } from "./domain/orderbook/aggregation";
25
+ export { aggregationFromFrame, aggregationKeySuffix, aggregationsEqual, FULL_PRECISION, isFullPrecision, normalizeAggregation, validateAggregation, } from "./domain/orderbook/aggregation";
26
26
  export { OrderbookState } from "./domain/orderbook/state";
27
- export type { OrderbookApplyResult, OrderbookIgnoreReason, OrderbookRefreshReason, } from "./domain/orderbook/state";
28
- export type { CancelAllBody, CancelAllSuccess, CancelBody, CancelSuccess, ConditionalBalance, FillInfo, GlobalDepositUpdate, NonceUpdate, LimitOrder, OrderEvent, OrderStatus, OrderType, SubmitOrderResponse, UserSnapshotBalance, UserSnapshotOrder, UserOrdersResponse, } from "./domain/order";
27
+ export type { OrderbookApplyResult, OrderbookRefreshReason, } from "./domain/orderbook/state";
28
+ export type { CancelAllBody, CancelAllSuccess, CancelBody, CancelSuccess, ConditionalBalance, FillInfo, GlobalDepositUpdate, NonceUpdate, LimitOrder, OrderEvent, OrderStatus, OrderType, SubmitOrderResponse, SubmitOrderStatus, UserSnapshotBalance, UserSnapshotOrder, UserOrdersResponse, } from "./domain/order";
29
29
  export type { UserOpenLimitOrders } from "./domain/order/state";
30
30
  export type { Portfolio, Position, PositionOutcome, WalletHolding, TokenBalance, TokenBalanceComputedBase, TokenBalanceTokenType, DepositAssetMetadata, DepositTokenBalance, } from "./domain/position";
31
31
  export { DepositBuilder, WithdrawBuilder, RedeemWinningsBuilder, WithdrawFromPositionBuilder, InitPositionTokensBuilder, ExtendPositionTokensBuilder, DepositToGlobalBuilder, WithdrawFromGlobalBuilder, GlobalToMarketDepositBuilder, } from "./domain/position";
@@ -33,7 +33,8 @@ export type { Trade, WsTrade } from "./domain/trade";
33
33
  export { TradeHistory } from "./domain/trade/state";
34
34
  export type { DepositPrice, DepositPriceCandleUpdate, DepositPriceHistoryQuery, DepositPriceKey, DepositPriceSnapshot, DepositPriceTick, DepositTokenCandle, DepositTokenPriceHistoryResponse, DepositAssetPriceEvent, DepositAssetPriceSnapshot, DepositAssetPriceTick, DepositAssetPricesSnapshotResponse, LineData, MidpointPriceCandle, OhlcvPriceCandle, OrderbookPriceHistoryQuery, OrderbookPriceHistoryResponse, PriceCandle, PriceHistory, PriceHistoryRestResponse, PriceHistorySnapshot, PriceHistoryUpdate, } from "./domain/price_history";
35
35
  export { DepositPriceState, PriceHistoryState } from "./domain/price_history";
36
- export type { AuthCredentials, AuthMethod, ChainType, EmbeddedWallet, LinkedAccount, LinkedAccountType, User, } from "./auth";
36
+ export type { AuthCredentials, AuthMethod, ChainType, GoogleAccountData, PrivyEmbeddedWallet, SessionResponse, User, UserIdentity, UserPrivyData, XAccountData, } from "./auth";
37
+ export { avatarUrl, displayName, identityText, tradingWallet, userPrivy, userXAccount } from "./auth";
37
38
  export { LimitOrderEnvelope, type OrderEnvelope, type OrderPayload, } from "./program";
38
39
  export type { ExportWalletRequest, ExportWalletResponse, PrivyOrderEnvelope, SignAndSendOrderRequest, SignAndSendTxRequest, SignAndSendTxResponse, } from "./privy";
39
40
  export { isUserCancellation, type ExternalSigner, type SigningStrategy, } from "./shared/signing";
@@ -42,8 +43,8 @@ export type { Notification, NotificationKind, MarketResolvedData, OrderFilledDat
42
43
  export type { RedeemResult, ReferralCodeInfo, ReferralStatus, } from "./domain/referral";
43
44
  export { RetryPolicy, type RetryConfig, } from "./http";
44
45
  export type { IWsClient, Kind, MessageIn, MessageOut, SubscribeParams, UnsubscribeParams, WsConfig, WsEvent, } from "./ws";
46
+ export { subscribeBooks, unsubscribeBooks } from "./ws";
45
47
  export type AuthClient = import("./auth").Auth;
46
- export type AdminClient = import("./domain/admin").Admin;
47
48
  export type MarketsClient = import("./domain/market").Markets;
48
49
  export type MarketsResult = import("./domain/market").MarketsResult;
49
50
  export type GlobalDepositAssetsResult = import("./domain/market").GlobalDepositAssetsResult;
@@ -1 +1 @@
1
- {"version":3,"file":"prelude.d.ts","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prelude.d.ts","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":"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"}
package/dist/prelude.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LimitOrderEnvelope = exports.PriceHistoryState = exports.DepositPriceState = exports.TradeHistory = exports.GlobalToMarketDepositBuilder = exports.WithdrawFromGlobalBuilder = exports.DepositToGlobalBuilder = exports.ExtendPositionTokensBuilder = exports.InitPositionTokensBuilder = exports.WithdrawFromPositionBuilder = exports.RedeemWinningsBuilder = exports.WithdrawBuilder = exports.DepositBuilder = exports.OrderbookState = exports.OrderBookValidationError = exports.singleWinningOutcome = exports.isMarketResolved = exports.hasSingleWinningOutcome = exports.MarketResolutionKind = exports.Status = exports.Referrals = exports.Notifications = exports.PriceHistoryClient = exports.Trades = exports.Positions = exports.Orders = exports.Orderbooks = exports.Metrics = exports.Markets = exports.Admin = exports.Auth = exports.Rpc = exports.LightconeClientBuilder = exports.LightconeClient = exports.programId = exports.rpcUrl = exports.wsUrl = exports.apiUrl = exports.LightconeEnv = exports.SdkError = exports.TimeInForce = exports.Side = exports.Resolution = exports.OrderUpdateType = exports.deriveOrderbookId = exports.DepositSource = exports.asPubkeyStr = exports.asOrderBookId = exports.RejectionCode = exports.ApiRejectedDetails = void 0;
4
- exports.RetryPolicy = exports.MergeBuilder = exports.isUserCancellation = void 0;
3
+ exports.DepositToGlobalBuilder = exports.ExtendPositionTokensBuilder = exports.InitPositionTokensBuilder = exports.WithdrawFromPositionBuilder = exports.RedeemWinningsBuilder = exports.WithdrawBuilder = exports.DepositBuilder = exports.OrderbookState = exports.validateAggregation = exports.normalizeAggregation = exports.isFullPrecision = exports.FULL_PRECISION = exports.aggregationsEqual = exports.aggregationKeySuffix = exports.aggregationFromFrame = exports.OrderBookValidationError = exports.singleWinningOutcome = exports.isMarketResolved = exports.hasSingleWinningOutcome = exports.MarketResolutionKind = exports.Status = exports.Referrals = exports.Notifications = exports.PriceHistoryClient = exports.Trades = exports.Positions = exports.Orders = exports.Orderbooks = exports.Metrics = exports.Markets = exports.Auth = exports.Rpc = exports.LightconeClientBuilder = exports.LightconeClient = exports.programId = exports.rpcUrl = exports.wsUrl = exports.apiUrl = exports.LightconeEnv = exports.SdkError = exports.TimeInForce = exports.Side = exports.Resolution = exports.OrderUpdateType = exports.deriveOrderbookId = exports.DepositSource = exports.asPubkeyStr = exports.asOrderBookId = exports.RejectionCode = exports.ApiRejectedDetails = void 0;
4
+ exports.unsubscribeBooks = exports.subscribeBooks = exports.RetryPolicy = exports.MergeBuilder = exports.isUserCancellation = exports.LimitOrderEnvelope = exports.userXAccount = exports.userPrivy = exports.tradingWallet = exports.identityText = exports.displayName = exports.avatarUrl = exports.PriceHistoryState = exports.DepositPriceState = exports.TradeHistory = exports.GlobalToMarketDepositBuilder = exports.WithdrawFromGlobalBuilder = void 0;
5
5
  var shared_1 = require("./shared");
6
6
  Object.defineProperty(exports, "ApiRejectedDetails", { enumerable: true, get: function () { return shared_1.ApiRejectedDetails; } });
7
7
  Object.defineProperty(exports, "RejectionCode", { enumerable: true, get: function () { return shared_1.RejectionCode; } });
@@ -28,8 +28,6 @@ var rpc_1 = require("./rpc");
28
28
  Object.defineProperty(exports, "Rpc", { enumerable: true, get: function () { return rpc_1.Rpc; } });
29
29
  var auth_1 = require("./auth");
30
30
  Object.defineProperty(exports, "Auth", { enumerable: true, get: function () { return auth_1.Auth; } });
31
- var admin_1 = require("./domain/admin");
32
- Object.defineProperty(exports, "Admin", { enumerable: true, get: function () { return admin_1.Admin; } });
33
31
  var market_1 = require("./domain/market");
34
32
  Object.defineProperty(exports, "Markets", { enumerable: true, get: function () { return market_1.Markets; } });
35
33
  var metrics_1 = require("./domain/metrics");
@@ -56,6 +54,14 @@ Object.defineProperty(exports, "isMarketResolved", { enumerable: true, get: func
56
54
  Object.defineProperty(exports, "singleWinningOutcome", { enumerable: true, get: function () { return market_2.singleWinningOutcome; } });
57
55
  var orderbook_2 = require("./domain/orderbook");
58
56
  Object.defineProperty(exports, "OrderBookValidationError", { enumerable: true, get: function () { return orderbook_2.OrderBookValidationError; } });
57
+ var aggregation_1 = require("./domain/orderbook/aggregation");
58
+ Object.defineProperty(exports, "aggregationFromFrame", { enumerable: true, get: function () { return aggregation_1.aggregationFromFrame; } });
59
+ Object.defineProperty(exports, "aggregationKeySuffix", { enumerable: true, get: function () { return aggregation_1.aggregationKeySuffix; } });
60
+ Object.defineProperty(exports, "aggregationsEqual", { enumerable: true, get: function () { return aggregation_1.aggregationsEqual; } });
61
+ Object.defineProperty(exports, "FULL_PRECISION", { enumerable: true, get: function () { return aggregation_1.FULL_PRECISION; } });
62
+ Object.defineProperty(exports, "isFullPrecision", { enumerable: true, get: function () { return aggregation_1.isFullPrecision; } });
63
+ Object.defineProperty(exports, "normalizeAggregation", { enumerable: true, get: function () { return aggregation_1.normalizeAggregation; } });
64
+ Object.defineProperty(exports, "validateAggregation", { enumerable: true, get: function () { return aggregation_1.validateAggregation; } });
59
65
  var state_1 = require("./domain/orderbook/state");
60
66
  Object.defineProperty(exports, "OrderbookState", { enumerable: true, get: function () { return state_1.OrderbookState; } });
61
67
  var position_2 = require("./domain/position");
@@ -73,6 +79,13 @@ Object.defineProperty(exports, "TradeHistory", { enumerable: true, get: function
73
79
  var price_history_2 = require("./domain/price_history");
74
80
  Object.defineProperty(exports, "DepositPriceState", { enumerable: true, get: function () { return price_history_2.DepositPriceState; } });
75
81
  Object.defineProperty(exports, "PriceHistoryState", { enumerable: true, get: function () { return price_history_2.PriceHistoryState; } });
82
+ var auth_2 = require("./auth");
83
+ Object.defineProperty(exports, "avatarUrl", { enumerable: true, get: function () { return auth_2.avatarUrl; } });
84
+ Object.defineProperty(exports, "displayName", { enumerable: true, get: function () { return auth_2.displayName; } });
85
+ Object.defineProperty(exports, "identityText", { enumerable: true, get: function () { return auth_2.identityText; } });
86
+ Object.defineProperty(exports, "tradingWallet", { enumerable: true, get: function () { return auth_2.tradingWallet; } });
87
+ Object.defineProperty(exports, "userPrivy", { enumerable: true, get: function () { return auth_2.userPrivy; } });
88
+ Object.defineProperty(exports, "userXAccount", { enumerable: true, get: function () { return auth_2.userXAccount; } });
76
89
  var program_1 = require("./program");
77
90
  Object.defineProperty(exports, "LimitOrderEnvelope", { enumerable: true, get: function () { return program_1.LimitOrderEnvelope; } });
78
91
  var signing_1 = require("./shared/signing");
@@ -81,4 +94,7 @@ var position_3 = require("./domain/position");
81
94
  Object.defineProperty(exports, "MergeBuilder", { enumerable: true, get: function () { return position_3.MergeBuilder; } });
82
95
  var http_1 = require("./http");
83
96
  Object.defineProperty(exports, "RetryPolicy", { enumerable: true, get: function () { return http_1.RetryPolicy; } });
97
+ var ws_1 = require("./ws");
98
+ Object.defineProperty(exports, "subscribeBooks", { enumerable: true, get: function () { return ws_1.subscribeBooks; } });
99
+ Object.defineProperty(exports, "unsubscribeBooks", { enumerable: true, get: function () { return ws_1.unsubscribeBooks; } });
84
100
  //# sourceMappingURL=prelude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"prelude.js","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":";;;;AAAA,mCAekB;AAdhB,4GAAA,kBAAkB,OAAA;AAClB,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,2GAAA,iBAAiB,OAAA;AACjB,yGAAA,eAAe,OAAA;AACf,oGAAA,UAAU,OAAA;AACV,8FAAA,IAAI,OAAA;AACJ,qGAAA,WAAW,OAAA;AAOb,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AACjB,6BAAuE;AAA9D,mGAAA,YAAY,OAAA;AAAE,6FAAA,MAAM,OAAA;AAAE,4FAAA,KAAK,OAAA;AAAE,6FAAA,MAAM,OAAA;AAAE,gGAAA,SAAS,OAAA;AAEvD,mCAGkB;AAFhB,yGAAA,eAAe,OAAA;AACf,gHAAA,sBAAsB,OAAA;AAGxB,6BAA4B;AAAnB,0FAAA,GAAG,OAAA;AAGZ,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,wCAAuC;AAA9B,8FAAA,KAAK,OAAA;AACd,0CAA0C;AAAjC,iGAAA,OAAO,OAAA;AAChB,4CAA2C;AAAlC,kGAAA,OAAO,OAAA;AAChB,gDAAgD;AAAvC,uGAAA,UAAU,OAAA;AACnB,wCAAwC;AAA/B,+FAAA,MAAM,OAAA;AACf,8CAA8C;AAArC,qGAAA,SAAS,OAAA;AAClB,wCAAwC;AAA/B,+FAAA,MAAM,OAAA;AACf,wDAA4D;AAAnD,mHAAA,kBAAkB,OAAA;AAC3B,sDAAsD;AAA7C,6GAAA,aAAa,OAAA;AACtB,8CAA8C;AAArC,qGAAA,SAAS,OAAA;AAyDlB,0CAMyB;AALvB,gGAAA,MAAM,OAAA;AACN,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AACvB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AAsBtB,gDAA8D;AAArD,qHAAA,wBAAwB,OAAA;AACjC,kDAA0D;AAAjD,uGAAA,cAAc,OAAA;AAuCvB,8CAU2B;AATzB,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AACf,iHAAA,qBAAqB,OAAA;AACrB,uHAAA,2BAA2B,OAAA;AAC3B,qHAAA,yBAAyB,OAAA;AACzB,uHAAA,2BAA2B,OAAA;AAC3B,kHAAA,sBAAsB,OAAA;AACtB,qHAAA,yBAAyB,OAAA;AACzB,wHAAA,4BAA4B,OAAA;AAI9B,8CAAoD;AAA3C,qGAAA,YAAY,OAAA;AAyBrB,wDAA8E;AAArE,kHAAA,iBAAiB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAY7C,qCAImB;AAHjB,6GAAA,kBAAkB,OAAA;AAcpB,4CAI0B;AAHxB,6GAAA,kBAAkB,OAAA;AAKpB,8CAE2B;AADzB,wGAAA,YAAY,OAAA;AAiBd,+BAGgB;AAFd,mGAAA,WAAW,OAAA","sourcesContent":["export {\n ApiRejectedDetails,\n RejectionCode,\n asOrderBookId,\n asPubkeyStr,\n DepositSource,\n deriveOrderbookId,\n OrderUpdateType,\n Resolution,\n Side,\n TimeInForce,\n type ApiResponse,\n type OrderBookId,\n type PubkeyStr,\n type SubmitOrderRequest,\n} from \"./shared\";\n\nexport { SdkError } from \"./error\";\nexport { LightconeEnv, apiUrl, wsUrl, rpcUrl, programId } from \"./env\";\n\nexport {\n LightconeClient,\n LightconeClientBuilder,\n} from \"./client\";\n\nexport { Rpc } from \"./rpc\";\nexport type { ClientContext } from \"./context\";\n\nexport { Auth } from \"./auth\";\nexport { Admin } from \"./domain/admin\";\nexport { Markets } from \"./domain/market\";\nexport { Metrics } from \"./domain/metrics\";\nexport { Orderbooks } from \"./domain/orderbook\";\nexport { Orders } from \"./domain/order\";\nexport { Positions } from \"./domain/position\";\nexport { Trades } from \"./domain/trade\";\nexport { PriceHistoryClient } from \"./domain/price_history\";\nexport { Notifications } from \"./domain/notification\";\nexport { Referrals } from \"./domain/referral\";\n\nexport type {\n AdminLogEvent,\n AdminLogEventsQuery,\n AdminLogEventsResponse,\n AdminLogMetricBreakdown,\n AdminLogMetricHistoryQuery,\n AdminLogMetricHistoryResponse,\n AdminLogMetricPoint,\n AdminLogMetricSummary,\n AdminLogMetricsQuery,\n AdminLogMetricsResponse,\n CodeListEntry,\n ListCodesRequest,\n ListCodesResponse,\n ReferralConfig,\n UpdateCodeRequest,\n UpdateCodeResponse,\n UpdateConfigRequest,\n} from \"./domain/admin\";\n\nexport type {\n CategoriesMetrics,\n CategoryVolumeMetrics,\n DepositTokenVolumeMetrics,\n DepositTokensMetrics,\n HistoryPoint,\n Leaderboard,\n LeaderboardEntry,\n MarketDetailMetrics,\n MarketOrderbookVolumeMetrics,\n MarketVolumeMetrics,\n MarketsMetrics,\n MetricsHistory,\n MetricsHistoryQuery,\n OrderbookTickerEntry,\n OrderbookTickersResponse,\n OrderbookVolumeMetrics,\n OutcomeVolumeMetrics,\n PlatformMetrics,\n} from \"./domain/metrics\";\n\nexport type {\n FaucetRequest,\n FaucetResponse,\n FaucetToken,\n} from \"./domain/faucet\";\n\nexport type {\n ConditionalTokenResponse,\n DepositAssetResponse,\n DepositMintsResponse,\n MarketResolutionPayout,\n MarketResolutionResponse,\n} from \"./domain/market/wire\";\n\nexport {\n Status,\n MarketResolutionKind,\n hasSingleWinningOutcome,\n isMarketResolved,\n singleWinningOutcome,\n} from \"./domain/market\";\n\nexport type {\n Market,\n MarketResolutionContainer,\n Outcome,\n ConditionalToken,\n DepositAsset,\n GlobalDepositAsset,\n Token,\n TokenMetadata,\n ValidatedTokens,\n} from \"./domain/market\";\n\nexport type {\n OrderBook,\n OrderBookPair,\n OutcomeImpact,\n TickerData,\n WsBookLevel,\n} from \"./domain/orderbook\";\nexport { OrderBookValidationError } from \"./domain/orderbook\";\nexport { OrderbookState } from \"./domain/orderbook/state\";\nexport type {\n OrderbookApplyResult,\n OrderbookIgnoreReason,\n OrderbookRefreshReason,\n} from \"./domain/orderbook/state\";\n\nexport type {\n CancelAllBody,\n CancelAllSuccess,\n CancelBody,\n CancelSuccess,\n ConditionalBalance,\n FillInfo,\n GlobalDepositUpdate,\n NonceUpdate,\n LimitOrder,\n OrderEvent,\n OrderStatus,\n OrderType,\n SubmitOrderResponse,\n UserSnapshotBalance,\n UserSnapshotOrder,\n UserOrdersResponse,\n} from \"./domain/order\";\nexport type { UserOpenLimitOrders } from \"./domain/order/state\";\n\nexport type {\n Portfolio,\n Position,\n PositionOutcome,\n WalletHolding,\n TokenBalance,\n TokenBalanceComputedBase,\n TokenBalanceTokenType,\n DepositAssetMetadata,\n DepositTokenBalance,\n} from \"./domain/position\";\n\nexport {\n DepositBuilder,\n WithdrawBuilder,\n RedeemWinningsBuilder,\n WithdrawFromPositionBuilder,\n InitPositionTokensBuilder,\n ExtendPositionTokensBuilder,\n DepositToGlobalBuilder,\n WithdrawFromGlobalBuilder,\n GlobalToMarketDepositBuilder,\n} from \"./domain/position\";\n\nexport type { Trade, WsTrade } from \"./domain/trade\";\nexport { TradeHistory } from \"./domain/trade/state\";\nexport type {\n DepositPrice,\n DepositPriceCandleUpdate,\n DepositPriceHistoryQuery,\n DepositPriceKey,\n DepositPriceSnapshot,\n DepositPriceTick,\n DepositTokenCandle,\n DepositTokenPriceHistoryResponse,\n DepositAssetPriceEvent,\n DepositAssetPriceSnapshot,\n DepositAssetPriceTick,\n DepositAssetPricesSnapshotResponse,\n LineData,\n MidpointPriceCandle,\n OhlcvPriceCandle,\n OrderbookPriceHistoryQuery,\n OrderbookPriceHistoryResponse,\n PriceCandle,\n PriceHistory,\n PriceHistoryRestResponse,\n PriceHistorySnapshot,\n PriceHistoryUpdate,\n} from \"./domain/price_history\";\nexport { DepositPriceState, PriceHistoryState } from \"./domain/price_history\";\n\nexport type {\n AuthCredentials,\n AuthMethod,\n ChainType,\n EmbeddedWallet,\n LinkedAccount,\n LinkedAccountType,\n User,\n} from \"./auth\";\n\nexport {\n LimitOrderEnvelope,\n type OrderEnvelope,\n type OrderPayload,\n} from \"./program\";\n\nexport type {\n ExportWalletRequest,\n ExportWalletResponse,\n PrivyOrderEnvelope,\n SignAndSendOrderRequest,\n SignAndSendTxRequest,\n SignAndSendTxResponse,\n} from \"./privy\";\n\nexport {\n isUserCancellation,\n type ExternalSigner,\n type SigningStrategy,\n} from \"./shared/signing\";\n\nexport {\n MergeBuilder,\n} from \"./domain/position\";\n\nexport type {\n Notification,\n NotificationKind,\n MarketResolvedData,\n OrderFilledData,\n MarketData,\n} from \"./domain/notification\";\n\nexport type {\n RedeemResult,\n ReferralCodeInfo,\n ReferralStatus,\n} from \"./domain/referral\";\n\nexport {\n RetryPolicy,\n type RetryConfig,\n} from \"./http\";\n\nexport type {\n IWsClient,\n Kind,\n MessageIn,\n MessageOut,\n SubscribeParams,\n UnsubscribeParams,\n WsConfig,\n WsEvent,\n} from \"./ws\";\n\nexport type AuthClient = import(\"./auth\").Auth;\nexport type AdminClient = import(\"./domain/admin\").Admin;\nexport type MarketsClient = import(\"./domain/market\").Markets;\nexport type MarketsResult = import(\"./domain/market\").MarketsResult;\nexport type GlobalDepositAssetsResult = import(\"./domain/market\").GlobalDepositAssetsResult;\nexport type MetricsClient = import(\"./domain/metrics\").Metrics;\nexport type OrderbooksClient = import(\"./domain/orderbook\").Orderbooks;\nexport type OrdersClient = import(\"./domain/order\").Orders;\nexport type PositionsClient = import(\"./domain/position\").Positions;\nexport type TradesClient = import(\"./domain/trade\").Trades;\nexport type PriceHistorySubClient = import(\"./domain/price_history\").PriceHistoryClient;\nexport type NotificationsClient = import(\"./domain/notification\").Notifications;\nexport type ReferralsClient = import(\"./domain/referral\").Referrals;\nexport type RpcClient = import(\"./rpc\").Rpc;\n"]}
1
+ {"version":3,"file":"prelude.js","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":";;;;AAAA,mCAekB;AAdhB,4GAAA,kBAAkB,OAAA;AAClB,uGAAA,aAAa,OAAA;AACb,uGAAA,aAAa,OAAA;AACb,qGAAA,WAAW,OAAA;AACX,uGAAA,aAAa,OAAA;AACb,2GAAA,iBAAiB,OAAA;AACjB,yGAAA,eAAe,OAAA;AACf,oGAAA,UAAU,OAAA;AACV,8FAAA,IAAI,OAAA;AACJ,qGAAA,WAAW,OAAA;AAOb,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AACjB,6BAAuE;AAA9D,mGAAA,YAAY,OAAA;AAAE,6FAAA,MAAM,OAAA;AAAE,4FAAA,KAAK,OAAA;AAAE,6FAAA,MAAM,OAAA;AAAE,gGAAA,SAAS,OAAA;AAEvD,mCAGkB;AAFhB,yGAAA,eAAe,OAAA;AACf,gHAAA,sBAAsB,OAAA;AAGxB,6BAA4B;AAAnB,0FAAA,GAAG,OAAA;AAGZ,+BAA8B;AAArB,4FAAA,IAAI,OAAA;AACb,0CAA0C;AAAjC,iGAAA,OAAO,OAAA;AAChB,4CAA2C;AAAlC,kGAAA,OAAO,OAAA;AAChB,gDAAgD;AAAvC,uGAAA,UAAU,OAAA;AACnB,wCAAwC;AAA/B,+FAAA,MAAM,OAAA;AACf,8CAA8C;AAArC,qGAAA,SAAS,OAAA;AAClB,wCAAwC;AAA/B,+FAAA,MAAM,OAAA;AACf,wDAA4D;AAAnD,mHAAA,kBAAkB,OAAA;AAC3B,sDAAsD;AAA7C,6GAAA,aAAa,OAAA;AACtB,8CAA8C;AAArC,qGAAA,SAAS,OAAA;AAmDlB,0CAMyB;AALvB,gGAAA,MAAM,OAAA;AACN,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AACvB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AAuBtB,gDAA8D;AAArD,qHAAA,wBAAwB,OAAA;AAEjC,8DAQwC;AAPtC,mHAAA,oBAAoB,OAAA;AACpB,mHAAA,oBAAoB,OAAA;AACpB,gHAAA,iBAAiB,OAAA;AACjB,6GAAA,cAAc,OAAA;AACd,8GAAA,eAAe,OAAA;AACf,mHAAA,oBAAoB,OAAA;AACpB,kHAAA,mBAAmB,OAAA;AAErB,kDAA0D;AAAjD,uGAAA,cAAc,OAAA;AAuCvB,8CAU2B;AATzB,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AACf,iHAAA,qBAAqB,OAAA;AACrB,uHAAA,2BAA2B,OAAA;AAC3B,qHAAA,yBAAyB,OAAA;AACzB,uHAAA,2BAA2B,OAAA;AAC3B,kHAAA,sBAAsB,OAAA;AACtB,qHAAA,yBAAyB,OAAA;AACzB,wHAAA,4BAA4B,OAAA;AAI9B,8CAAoD;AAA3C,qGAAA,YAAY,OAAA;AAyBrB,wDAA8E;AAArE,kHAAA,iBAAiB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAc7C,+BAAsG;AAA7F,iGAAA,SAAS,OAAA;AAAE,mGAAA,WAAW,OAAA;AAAE,oGAAA,YAAY,OAAA;AAAE,qGAAA,aAAa,OAAA;AAAE,iGAAA,SAAS,OAAA;AAAE,oGAAA,YAAY,OAAA;AAErF,qCAImB;AAHjB,6GAAA,kBAAkB,OAAA;AAcpB,4CAI0B;AAHxB,6GAAA,kBAAkB,OAAA;AAKpB,8CAE2B;AADzB,wGAAA,YAAY,OAAA;AAiBd,+BAGgB;AAFd,mGAAA,WAAW,OAAA;AAcb,2BAAwD;AAA/C,oGAAA,cAAc,OAAA;AAAE,sGAAA,gBAAgB,OAAA","sourcesContent":["export {\n ApiRejectedDetails,\n RejectionCode,\n asOrderBookId,\n asPubkeyStr,\n DepositSource,\n deriveOrderbookId,\n OrderUpdateType,\n Resolution,\n Side,\n TimeInForce,\n type ApiResponse,\n type OrderBookId,\n type PubkeyStr,\n type SubmitOrderRequest,\n} from \"./shared\";\n\nexport { SdkError } from \"./error\";\nexport { LightconeEnv, apiUrl, wsUrl, rpcUrl, programId } from \"./env\";\n\nexport {\n LightconeClient,\n LightconeClientBuilder,\n} from \"./client\";\n\nexport { Rpc } from \"./rpc\";\nexport type { ClientContext } from \"./context\";\n\nexport { Auth } from \"./auth\";\nexport { Markets } from \"./domain/market\";\nexport { Metrics } from \"./domain/metrics\";\nexport { Orderbooks } from \"./domain/orderbook\";\nexport { Orders } from \"./domain/order\";\nexport { Positions } from \"./domain/position\";\nexport { Trades } from \"./domain/trade\";\nexport { PriceHistoryClient } from \"./domain/price_history\";\nexport { Notifications } from \"./domain/notification\";\nexport { Referrals } from \"./domain/referral\";\n\nexport type {\n CategoriesMetrics,\n CategoryVolumeMetrics,\n DepositTokenVolumeHistory,\n DepositTokenVolumeHistoryPoint,\n DepositTokenVolumeHistoryPointToken,\n DepositTokenVolumeHistoryQuery,\n DepositTokenVolumeHistoryToken,\n DepositTokenVolumeMetrics,\n DepositTokensMetrics,\n HistoryPoint,\n Leaderboard,\n LeaderboardEntry,\n MarketDetailMetrics,\n MarketOrderbookVolumeMetrics,\n MarketVolumeMetrics,\n MarketsMetrics,\n MetricsHistory,\n MetricsHistoryQuery,\n OpenInterestHistory,\n OpenInterestHistoryDepositAsset,\n OpenInterestHistoryPoint,\n OpenInterestHistoryPointDepositAsset,\n OpenInterestHistoryQuery,\n OrderbookTickerEntry,\n OrderbookTickersResponse,\n OrderbookVolumeMetrics,\n OutcomeVolumeMetrics,\n PlatformMetrics,\n UniqueTradersHistory,\n UniqueTradersHistoryPoint,\n UniqueTradersHistoryQuery,\n UniqueTradersHistoryScope,\n} from \"./domain/metrics\";\n\nexport type {\n FaucetRequest,\n FaucetResponse,\n FaucetToken,\n} from \"./domain/faucet\";\n\nexport type {\n ConditionalTokenResponse,\n DepositAssetResponse,\n DepositMintsResponse,\n MarketResolutionPayout,\n MarketResolutionResponse,\n} from \"./domain/market/wire\";\n\nexport {\n Status,\n MarketResolutionKind,\n hasSingleWinningOutcome,\n isMarketResolved,\n singleWinningOutcome,\n} from \"./domain/market\";\n\nexport type {\n Market,\n MarketResolutionContainer,\n Outcome,\n ConditionalToken,\n DepositAsset,\n GlobalDepositAsset,\n Token,\n TokenMetadata,\n ValidatedTokens,\n} from \"./domain/market\";\n\nexport type {\n OrderBook,\n OrderBookPair,\n OrderbookDepthDecimals,\n OutcomeImpact,\n TickerData,\n WsBookLevel,\n} from \"./domain/orderbook\";\nexport { OrderBookValidationError } from \"./domain/orderbook\";\nexport type { BookAggregation } from \"./domain/orderbook/aggregation\";\nexport {\n aggregationFromFrame,\n aggregationKeySuffix,\n aggregationsEqual,\n FULL_PRECISION,\n isFullPrecision,\n normalizeAggregation,\n validateAggregation,\n} from \"./domain/orderbook/aggregation\";\nexport { OrderbookState } from \"./domain/orderbook/state\";\nexport type {\n OrderbookApplyResult,\n OrderbookRefreshReason,\n} from \"./domain/orderbook/state\";\n\nexport type {\n CancelAllBody,\n CancelAllSuccess,\n CancelBody,\n CancelSuccess,\n ConditionalBalance,\n FillInfo,\n GlobalDepositUpdate,\n NonceUpdate,\n LimitOrder,\n OrderEvent,\n OrderStatus,\n OrderType,\n SubmitOrderResponse,\n SubmitOrderStatus,\n UserSnapshotBalance,\n UserSnapshotOrder,\n UserOrdersResponse,\n} from \"./domain/order\";\nexport type { UserOpenLimitOrders } from \"./domain/order/state\";\n\nexport type {\n Portfolio,\n Position,\n PositionOutcome,\n WalletHolding,\n TokenBalance,\n TokenBalanceComputedBase,\n TokenBalanceTokenType,\n DepositAssetMetadata,\n DepositTokenBalance,\n} from \"./domain/position\";\n\nexport {\n DepositBuilder,\n WithdrawBuilder,\n RedeemWinningsBuilder,\n WithdrawFromPositionBuilder,\n InitPositionTokensBuilder,\n ExtendPositionTokensBuilder,\n DepositToGlobalBuilder,\n WithdrawFromGlobalBuilder,\n GlobalToMarketDepositBuilder,\n} from \"./domain/position\";\n\nexport type { Trade, WsTrade } from \"./domain/trade\";\nexport { TradeHistory } from \"./domain/trade/state\";\nexport type {\n DepositPrice,\n DepositPriceCandleUpdate,\n DepositPriceHistoryQuery,\n DepositPriceKey,\n DepositPriceSnapshot,\n DepositPriceTick,\n DepositTokenCandle,\n DepositTokenPriceHistoryResponse,\n DepositAssetPriceEvent,\n DepositAssetPriceSnapshot,\n DepositAssetPriceTick,\n DepositAssetPricesSnapshotResponse,\n LineData,\n MidpointPriceCandle,\n OhlcvPriceCandle,\n OrderbookPriceHistoryQuery,\n OrderbookPriceHistoryResponse,\n PriceCandle,\n PriceHistory,\n PriceHistoryRestResponse,\n PriceHistorySnapshot,\n PriceHistoryUpdate,\n} from \"./domain/price_history\";\nexport { DepositPriceState, PriceHistoryState } from \"./domain/price_history\";\n\nexport type {\n AuthCredentials,\n AuthMethod,\n ChainType,\n GoogleAccountData,\n PrivyEmbeddedWallet,\n SessionResponse,\n User,\n UserIdentity,\n UserPrivyData,\n XAccountData,\n} from \"./auth\";\nexport { avatarUrl, displayName, identityText, tradingWallet, userPrivy, userXAccount } from \"./auth\";\n\nexport {\n LimitOrderEnvelope,\n type OrderEnvelope,\n type OrderPayload,\n} from \"./program\";\n\nexport type {\n ExportWalletRequest,\n ExportWalletResponse,\n PrivyOrderEnvelope,\n SignAndSendOrderRequest,\n SignAndSendTxRequest,\n SignAndSendTxResponse,\n} from \"./privy\";\n\nexport {\n isUserCancellation,\n type ExternalSigner,\n type SigningStrategy,\n} from \"./shared/signing\";\n\nexport {\n MergeBuilder,\n} from \"./domain/position\";\n\nexport type {\n Notification,\n NotificationKind,\n MarketResolvedData,\n OrderFilledData,\n MarketData,\n} from \"./domain/notification\";\n\nexport type {\n RedeemResult,\n ReferralCodeInfo,\n ReferralStatus,\n} from \"./domain/referral\";\n\nexport {\n RetryPolicy,\n type RetryConfig,\n} from \"./http\";\n\nexport type {\n IWsClient,\n Kind,\n MessageIn,\n MessageOut,\n SubscribeParams,\n UnsubscribeParams,\n WsConfig,\n WsEvent,\n} from \"./ws\";\nexport { subscribeBooks, unsubscribeBooks } from \"./ws\";\n\nexport type AuthClient = import(\"./auth\").Auth;\nexport type MarketsClient = import(\"./domain/market\").Markets;\nexport type MarketsResult = import(\"./domain/market\").MarketsResult;\nexport type GlobalDepositAssetsResult = import(\"./domain/market\").GlobalDepositAssetsResult;\nexport type MetricsClient = import(\"./domain/metrics\").Metrics;\nexport type OrderbooksClient = import(\"./domain/orderbook\").Orderbooks;\nexport type OrdersClient = import(\"./domain/order\").Orders;\nexport type PositionsClient = import(\"./domain/position\").Positions;\nexport type TradesClient = import(\"./domain/trade\").Trades;\nexport type PriceHistorySubClient = import(\"./domain/price_history\").PriceHistoryClient;\nexport type NotificationsClient = import(\"./domain/notification\").Notifications;\nexport type ReferralsClient = import(\"./domain/referral\").Referrals;\nexport type RpcClient = import(\"./rpc\").Rpc;\n"]}
@@ -1,3 +1,4 @@
1
1
  export * as decimal from "./decimal";
2
2
  export * as num from "./num";
3
+ export * as str from "./str";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/fmt/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/fmt/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAC7B,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC"}
@@ -33,7 +33,8 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.num = exports.decimal = void 0;
36
+ exports.str = exports.num = exports.decimal = void 0;
37
37
  exports.decimal = __importStar(require("./decimal"));
38
38
  exports.num = __importStar(require("./num"));
39
+ exports.str = __importStar(require("./str"));
39
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/fmt/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,6CAA6B","sourcesContent":["export * as decimal from \"./decimal\";\nexport * as num from \"./num\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/fmt/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,6CAA6B;AAC7B,6CAA6B","sourcesContent":["export * as decimal from \"./decimal\";\nexport * as num from \"./num\";\nexport * as str from \"./str\";\n"]}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Shorten a string to its first and last `qty / 2` characters joined by an
3
+ * ellipsis — e.g. `shorten("FRGkJho6fY7XivWsEBjousTaZBT6eUBkkrDyCN4nWcPR", 8)`
4
+ * → `"FRGk...WcPR"`. Strings of `qty` characters or fewer are returned
5
+ * unchanged.
6
+ */
7
+ export declare function shorten(value: string, qty: number): string;
8
+ //# sourceMappingURL=str.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"str.d.ts","sourceRoot":"","sources":["../../../src/shared/fmt/str.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAM1D"}