@lightconexyz/lightcone-sdk 0.4.13 → 0.4.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts +9 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +20 -7
- package/dist/client.js.map +1 -1
- package/dist/domain/admin/wire.d.ts +2 -1
- package/dist/domain/admin/wire.d.ts.map +1 -1
- package/dist/domain/admin/wire.js.map +1 -1
- package/dist/domain/market/tokens.js +6 -4
- package/dist/domain/market/tokens.js.map +1 -1
- package/dist/domain/market/wire.d.ts +3 -1
- package/dist/domain/market/wire.d.ts.map +1 -1
- package/dist/domain/market/wire.js.map +1 -1
- package/dist/env.d.ts +35 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +78 -0
- package/dist/env.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/network.d.ts +6 -4
- package/dist/network.d.ts.map +1 -1
- package/dist/network.js +8 -5
- package/dist/network.js.map +1 -1
- package/dist/prelude.d.ts +1 -1
- package/dist/prelude.d.ts.map +1 -1
- package/dist/prelude.js +7 -4
- package/dist/prelude.js.map +1 -1
- package/dist/program/constants.d.ts +0 -4
- package/dist/program/constants.d.ts.map +1 -1
- package/dist/program/constants.js +1 -5
- package/dist/program/constants.js.map +1 -1
- package/dist/program/index.d.ts +2 -1
- package/dist/program/index.d.ts.map +1 -1
- package/dist/program/index.js +2 -1
- package/dist/program/index.js.map +1 -1
- package/dist/program/instructions.js +47 -46
- package/dist/program/instructions.js.map +1 -1
- package/dist/program/pda.d.ts.map +1 -1
- package/dist/program/pda.js +13 -12
- package/dist/program/pda.js.map +1 -1
- package/dist/ws/index.js +2 -2
- package/dist/ws/index.js.map +1 -1
- package/package.json +1 -2
package/dist/client.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ import { PriceHistoryClient } from "./domain/price_history";
|
|
|
11
11
|
import { Referrals } from "./domain/referral";
|
|
12
12
|
import { Trades } from "./domain/trade";
|
|
13
13
|
import { LightconeHttp } from "./http";
|
|
14
|
+
import { LightconeEnv } from "./env";
|
|
14
15
|
import { Privy } from "./privy";
|
|
15
16
|
import { Rpc } from "./rpc";
|
|
16
17
|
import { DepositSource } from "./shared";
|
|
@@ -77,6 +78,14 @@ export declare class LightconeClientBuilder {
|
|
|
77
78
|
private depositSourceValue;
|
|
78
79
|
private signingStrategyValue?;
|
|
79
80
|
private rpcUrlValue?;
|
|
81
|
+
/**
|
|
82
|
+
* Set the deployment environment. Configures the API URL, WebSocket URL,
|
|
83
|
+
* RPC URL, and program ID for the given environment.
|
|
84
|
+
*
|
|
85
|
+
* Individual URL overrides (e.g. `.baseUrl()`) take precedence when
|
|
86
|
+
* called **after** `.env()`.
|
|
87
|
+
*/
|
|
88
|
+
env(environment: LightconeEnv): LightconeClientBuilder;
|
|
80
89
|
baseUrl(url: string): LightconeClientBuilder;
|
|
81
90
|
withBaseUrl(url: string): LightconeClientBuilder;
|
|
82
91
|
wsUrl(url: string): LightconeClientBuilder;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,KAAK,eAAe,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,YAAY,EAAoD,MAAM,OAAO,CAAC;AACvF,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,MAAM,CAAC;AAE/C,cAAM,SAAS;IACb,OAAO,CAAC,gBAAgB,CAA8B;gBAE1C,OAAO,CAAC,EAAE,eAAe;IAIrC,cAAc,IAAI,eAAe,GAAG,SAAS;IAI7C,cAAc,CAAC,WAAW,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI;IAIxD,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC;AAED,qBAAa,eAAgB,YAAW,aAAa;IACnD,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAC/C,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAW;IACzC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAY;gBAE/B,MAAM,EAAE;QAClB,IAAI,EAAE,aAAa,CAAC;QACpB,QAAQ,EAAE,QAAQ,CAAC;QACnB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,SAAS,CAAC,EAAE,SAAS,CAAC;KACvB;IAeD,IAAI,aAAa,IAAI,aAAa,CAEjC;IAED,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAM7C,IAAI,eAAe,IAAI,eAAe,GAAG,SAAS,CAEjD;IAED,kBAAkB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAInD,oBAAoB,IAAI,IAAI;IAM5B,UAAU,IAAI,MAAM,GAAG,SAAS;IAIhC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIlC,eAAe,IAAI,IAAI;IAMjB,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAIvD,MAAM,CAAC,OAAO,IAAI,sBAAsB;IAMxC,OAAO,IAAI,OAAO;IAIlB,UAAU,IAAI,UAAU;IAIxB,MAAM,IAAI,MAAM;IAIhB,SAAS,IAAI,SAAS;IAItB,MAAM,IAAI,MAAM;IAIhB,YAAY,IAAI,kBAAkB;IAIlC,aAAa,IAAI,aAAa;IAI9B,KAAK,IAAI,KAAK;IAId,IAAI,IAAI,IAAI;IAOZ,KAAK,IAAI,KAAK;IAId,SAAS,IAAI,SAAS;IAItB,GAAG,IAAI,GAAG;IAIV,QAAQ,IAAI,QAAQ;IAIpB,EAAE,IAAI,QAAQ;IAId,KAAK,IAAI,eAAe;CAczB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,YAAY,CAAqC;IACzD,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAA8C;IACpE,OAAO,CAAC,kBAAkB,CAAuC;IACjE,OAAO,CAAC,oBAAoB,CAAC,CAAkB;IAC/C,OAAO,CAAC,WAAW,CAAC,CAAqC;IAEzD;;;;;;OAMG;IACH,GAAG,CAAC,WAAW,EAAE,YAAY,GAAG,sBAAsB;IAQtD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAI5C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAKhD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAI1C,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAK9C,IAAI,CAAC,WAAW,EAAE,eAAe,GAAG,sBAAsB;IAI1D,QAAQ,CAAC,WAAW,EAAE,eAAe,GAAG,sBAAsB;IAK9D,SAAS,CAAC,EAAE,EAAE,SAAS,GAAG,sBAAsB;IAKhD,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,sBAAsB;IAK5D,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,sBAAsB;IAKtD,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,sBAAsB;IAK9D,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB;IAKvD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB;IAK3C,KAAK,IAAI,eAAe;CAoBzB"}
|
package/dist/client.js
CHANGED
|
@@ -14,9 +14,8 @@ const price_history_1 = require("./domain/price_history");
|
|
|
14
14
|
const referral_1 = require("./domain/referral");
|
|
15
15
|
const trade_1 = require("./domain/trade");
|
|
16
16
|
const http_1 = require("./http");
|
|
17
|
-
const
|
|
17
|
+
const env_1 = require("./env");
|
|
18
18
|
const privy_1 = require("./privy");
|
|
19
|
-
const constants_1 = require("./program/constants");
|
|
20
19
|
const rpc_1 = require("./rpc");
|
|
21
20
|
const shared_1 = require("./shared");
|
|
22
21
|
const ws_1 = require("./ws");
|
|
@@ -46,7 +45,7 @@ class LightconeClient {
|
|
|
46
45
|
authStateStore;
|
|
47
46
|
constructor(params) {
|
|
48
47
|
this.http = params.http;
|
|
49
|
-
this.programId = params.programId ??
|
|
48
|
+
this.programId = params.programId ?? (0, env_1.programId)(env_1.LightconeEnv.Prod);
|
|
50
49
|
this.connection = params.connection;
|
|
51
50
|
this.depositSourceValue = params.depositSource ?? shared_1.DepositSource.Global;
|
|
52
51
|
this.signingStrategyValue = params.signingStrategy;
|
|
@@ -153,13 +152,27 @@ class LightconeClient {
|
|
|
153
152
|
}
|
|
154
153
|
exports.LightconeClient = LightconeClient;
|
|
155
154
|
class LightconeClientBuilder {
|
|
156
|
-
baseUrlValue =
|
|
157
|
-
wsUrlValue =
|
|
155
|
+
baseUrlValue = (0, env_1.apiUrl)(env_1.LightconeEnv.Prod);
|
|
156
|
+
wsUrlValue = (0, env_1.wsUrl)(env_1.LightconeEnv.Prod);
|
|
158
157
|
authCredentials;
|
|
159
|
-
programIdValue =
|
|
158
|
+
programIdValue = (0, env_1.programId)(env_1.LightconeEnv.Prod);
|
|
160
159
|
depositSourceValue = shared_1.DepositSource.Global;
|
|
161
160
|
signingStrategyValue;
|
|
162
|
-
rpcUrlValue;
|
|
161
|
+
rpcUrlValue = (0, env_1.rpcUrl)(env_1.LightconeEnv.Prod);
|
|
162
|
+
/**
|
|
163
|
+
* Set the deployment environment. Configures the API URL, WebSocket URL,
|
|
164
|
+
* RPC URL, and program ID for the given environment.
|
|
165
|
+
*
|
|
166
|
+
* Individual URL overrides (e.g. `.baseUrl()`) take precedence when
|
|
167
|
+
* called **after** `.env()`.
|
|
168
|
+
*/
|
|
169
|
+
env(environment) {
|
|
170
|
+
this.baseUrlValue = (0, env_1.apiUrl)(environment);
|
|
171
|
+
this.wsUrlValue = (0, env_1.wsUrl)(environment);
|
|
172
|
+
this.programIdValue = (0, env_1.programId)(environment);
|
|
173
|
+
this.rpcUrlValue = (0, env_1.rpcUrl)(environment);
|
|
174
|
+
return this;
|
|
175
|
+
}
|
|
163
176
|
baseUrl(url) {
|
|
164
177
|
return this.withBaseUrl(url);
|
|
165
178
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { Connection, Keypair, PublicKey, Transaction } from \"@solana/web3.js\";\nimport { Auth, type AuthCredentials } from \"./auth\";\nimport type { ClientContext } from \"./context\";\nimport { signAndSubmitTx as signAndSubmitTxFn } from \"./context\";\nimport { Admin } from \"./domain/admin\";\nimport { Markets } from \"./domain/market\";\nimport { Notifications } from \"./domain/notification\";\nimport { Orders } from \"./domain/order\";\nimport { Orderbooks } from \"./domain/orderbook\";\nimport { Positions } from \"./domain/position\";\nimport { PriceHistoryClient } from \"./domain/price_history\";\nimport { Referrals } from \"./domain/referral\";\nimport { Trades } from \"./domain/trade\";\nimport { LightconeHttp } from \"./http\";\nimport { DEFAULT_API_URL, DEFAULT_WS_URL } from \"./network\";\nimport { Privy } from \"./privy\";\nimport { PROGRAM_ID } from \"./program/constants\";\nimport { Rpc } from \"./rpc\";\nimport { DepositSource } from \"./shared\";\nimport { type ExternalSigner, type SigningStrategy } from \"./shared/signing\";\nimport { WsClient, type WsConfig } from \"./ws\";\n\nclass AuthState {\n private credentialsValue: AuthCredentials | undefined;\n\n constructor(initial?: AuthCredentials) {\n this.credentialsValue = initial;\n }\n\n getCredentials(): AuthCredentials | undefined {\n return this.credentialsValue;\n }\n\n setCredentials(credentials: AuthCredentials | undefined): void {\n this.credentialsValue = credentials;\n }\n\n async clearCaches(): Promise<void> {\n // No caches to clear — decimals are derived locally from orderbook metadata.\n }\n}\n\nexport class LightconeClient implements ClientContext {\n readonly http: LightconeHttp;\n readonly programId: PublicKey;\n readonly connection?: Connection;\n private depositSourceValue: DepositSource;\n private signingStrategyValue?: SigningStrategy;\n private orderNonceValue: number | undefined;\n private readonly wsConfigValue: WsConfig;\n private readonly authStateStore: AuthState;\n\n constructor(params: {\n http: LightconeHttp;\n wsConfig: WsConfig;\n programId?: PublicKey;\n connection?: Connection;\n depositSource?: DepositSource;\n signingStrategy?: SigningStrategy;\n orderNonce?: number;\n authCredentials?: AuthCredentials;\n authState?: AuthState;\n }) {\n this.http = params.http;\n this.programId = params.programId ?? PROGRAM_ID;\n this.connection = params.connection;\n this.depositSourceValue = params.depositSource ?? DepositSource.Global;\n this.signingStrategyValue = params.signingStrategy;\n this.orderNonceValue = params.orderNonce;\n this.wsConfigValue = params.wsConfig;\n this.authStateStore =\n params.authState ??\n new AuthState(params.authCredentials);\n }\n\n // ── Deposit source ──────────────────────────────────────────────────\n\n get depositSource(): DepositSource {\n return this.depositSourceValue;\n }\n\n setDepositSource(source: DepositSource): void {\n this.depositSourceValue = source;\n }\n\n // ── Signing strategy ────────────────────────────────────────────────\n\n get signingStrategy(): SigningStrategy | undefined {\n return this.signingStrategyValue;\n }\n\n setSigningStrategy(strategy: SigningStrategy): void {\n this.signingStrategyValue = strategy;\n }\n\n clearSigningStrategy(): void {\n this.signingStrategyValue = undefined;\n }\n\n // ── Nonce cache ──────────────────────────────────────────────────────\n\n orderNonce(): number | undefined {\n return this.orderNonceValue;\n }\n\n setOrderNonce(nonce: number): void {\n this.orderNonceValue = nonce;\n }\n\n clearOrderNonce(): void {\n this.orderNonceValue = undefined;\n }\n\n // ── Transaction signing + submission ────────────────────────────────\n\n async signAndSubmitTx(tx: Transaction): Promise<string> {\n return signAndSubmitTxFn(this, tx);\n }\n\n static builder(): LightconeClientBuilder {\n return new LightconeClientBuilder();\n }\n\n // ── Sub-client accessors ─────────────────────────────────────────────\n\n markets(): Markets {\n return new Markets(this);\n }\n\n orderbooks(): Orderbooks {\n return new Orderbooks(this);\n }\n\n orders(): Orders {\n return new Orders(this);\n }\n\n positions(): Positions {\n return new Positions(this);\n }\n\n trades(): Trades {\n return new Trades(this);\n }\n\n priceHistory(): PriceHistoryClient {\n return new PriceHistoryClient(this);\n }\n\n notifications(): Notifications {\n return new Notifications(this);\n }\n\n admin(): Admin {\n return new Admin(this);\n }\n\n auth(): Auth {\n return new Auth({\n http: this.http,\n authState: this.authStateStore,\n });\n }\n\n privy(): Privy {\n return new Privy(this);\n }\n\n referrals(): Referrals {\n return new Referrals(this);\n }\n\n rpc(): Rpc {\n return new Rpc(this);\n }\n\n wsConfig(): WsConfig {\n return this.wsConfigValue;\n }\n\n ws(): WsClient {\n return new WsClient(this.wsConfigValue, this.http.authTokenRef());\n }\n\n clone(): LightconeClient {\n return new LightconeClient({\n http: this.http,\n wsConfig: { ...this.wsConfigValue },\n programId: this.programId,\n connection: this.connection\n ? new Connection(this.connection.rpcEndpoint)\n : undefined,\n depositSource: this.depositSourceValue,\n signingStrategy: this.signingStrategyValue,\n orderNonce: this.orderNonceValue,\n authState: this.authStateStore,\n });\n }\n}\n\nexport class LightconeClientBuilder {\n private baseUrlValue: string = DEFAULT_API_URL;\n private wsUrlValue: string = DEFAULT_WS_URL;\n private authCredentials?: AuthCredentials;\n private programIdValue: PublicKey = PROGRAM_ID;\n private depositSourceValue: DepositSource = DepositSource.Global;\n private signingStrategyValue?: SigningStrategy;\n private rpcUrlValue?: string;\n\n baseUrl(url: string): LightconeClientBuilder {\n return this.withBaseUrl(url);\n }\n\n withBaseUrl(url: string): LightconeClientBuilder {\n this.baseUrlValue = url;\n return this;\n }\n\n wsUrl(url: string): LightconeClientBuilder {\n return this.withWsUrl(url);\n }\n\n withWsUrl(url: string): LightconeClientBuilder {\n this.wsUrlValue = url;\n return this;\n }\n\n auth(credentials: AuthCredentials): LightconeClientBuilder {\n return this.withAuth(credentials);\n }\n\n withAuth(credentials: AuthCredentials): LightconeClientBuilder {\n this.authCredentials = credentials;\n return this;\n }\n\n programId(id: PublicKey): LightconeClientBuilder {\n this.programIdValue = id;\n return this;\n }\n\n depositSource(source: DepositSource): LightconeClientBuilder {\n this.depositSourceValue = source;\n return this;\n }\n\n nativeSigner(keypair: Keypair): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"native\", keypair };\n return this;\n }\n\n externalSigner(signer: ExternalSigner): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"walletAdapter\", signer };\n return this;\n }\n\n privyWalletId(walletId: string): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"privy\", walletId };\n return this;\n }\n\n rpcUrl(url: string): LightconeClientBuilder {\n this.rpcUrlValue = url;\n return this;\n }\n\n build(): LightconeClient {\n return new LightconeClient({\n http: new LightconeHttp(this.baseUrlValue),\n wsConfig: {\n url: this.wsUrlValue,\n reconnect: true,\n maxReconnectAttempts: 10,\n baseReconnectDelayMs: 1_000,\n pingIntervalMs: 30_000,\n pongTimeoutMs: 10_000,\n },\n programId: this.programIdValue,\n depositSource: this.depositSourceValue,\n signingStrategy: this.signingStrategyValue,\n connection: this.rpcUrlValue\n ? new Connection(this.rpcUrlValue)\n : undefined,\n authCredentials: this.authCredentials,\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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","sourcesContent":["import { Connection, Keypair, PublicKey, Transaction } from \"@solana/web3.js\";\nimport { Auth, type AuthCredentials } from \"./auth\";\nimport type { ClientContext } from \"./context\";\nimport { signAndSubmitTx as signAndSubmitTxFn } from \"./context\";\nimport { Admin } from \"./domain/admin\";\nimport { Markets } from \"./domain/market\";\nimport { Notifications } from \"./domain/notification\";\nimport { Orders } from \"./domain/order\";\nimport { Orderbooks } from \"./domain/orderbook\";\nimport { Positions } from \"./domain/position\";\nimport { PriceHistoryClient } from \"./domain/price_history\";\nimport { Referrals } from \"./domain/referral\";\nimport { Trades } from \"./domain/trade\";\nimport { LightconeHttp } from \"./http\";\nimport { LightconeEnv, apiUrl, wsUrl, rpcUrl, programId as envProgramId } from \"./env\";\nimport { Privy } from \"./privy\";\nimport { Rpc } from \"./rpc\";\nimport { DepositSource } from \"./shared\";\nimport { type ExternalSigner, type SigningStrategy } from \"./shared/signing\";\nimport { WsClient, type WsConfig } from \"./ws\";\n\nclass AuthState {\n private credentialsValue: AuthCredentials | undefined;\n\n constructor(initial?: AuthCredentials) {\n this.credentialsValue = initial;\n }\n\n getCredentials(): AuthCredentials | undefined {\n return this.credentialsValue;\n }\n\n setCredentials(credentials: AuthCredentials | undefined): void {\n this.credentialsValue = credentials;\n }\n\n async clearCaches(): Promise<void> {\n // No caches to clear — decimals are derived locally from orderbook metadata.\n }\n}\n\nexport class LightconeClient implements ClientContext {\n readonly http: LightconeHttp;\n readonly programId: PublicKey;\n readonly connection?: Connection;\n private depositSourceValue: DepositSource;\n private signingStrategyValue?: SigningStrategy;\n private orderNonceValue: number | undefined;\n private readonly wsConfigValue: WsConfig;\n private readonly authStateStore: AuthState;\n\n constructor(params: {\n http: LightconeHttp;\n wsConfig: WsConfig;\n programId?: PublicKey;\n connection?: Connection;\n depositSource?: DepositSource;\n signingStrategy?: SigningStrategy;\n orderNonce?: number;\n authCredentials?: AuthCredentials;\n authState?: AuthState;\n }) {\n this.http = params.http;\n this.programId = params.programId ?? envProgramId(LightconeEnv.Prod);\n this.connection = params.connection;\n this.depositSourceValue = params.depositSource ?? DepositSource.Global;\n this.signingStrategyValue = params.signingStrategy;\n this.orderNonceValue = params.orderNonce;\n this.wsConfigValue = params.wsConfig;\n this.authStateStore =\n params.authState ??\n new AuthState(params.authCredentials);\n }\n\n // ── Deposit source ──────────────────────────────────────────────────\n\n get depositSource(): DepositSource {\n return this.depositSourceValue;\n }\n\n setDepositSource(source: DepositSource): void {\n this.depositSourceValue = source;\n }\n\n // ── Signing strategy ────────────────────────────────────────────────\n\n get signingStrategy(): SigningStrategy | undefined {\n return this.signingStrategyValue;\n }\n\n setSigningStrategy(strategy: SigningStrategy): void {\n this.signingStrategyValue = strategy;\n }\n\n clearSigningStrategy(): void {\n this.signingStrategyValue = undefined;\n }\n\n // ── Nonce cache ──────────────────────────────────────────────────────\n\n orderNonce(): number | undefined {\n return this.orderNonceValue;\n }\n\n setOrderNonce(nonce: number): void {\n this.orderNonceValue = nonce;\n }\n\n clearOrderNonce(): void {\n this.orderNonceValue = undefined;\n }\n\n // ── Transaction signing + submission ────────────────────────────────\n\n async signAndSubmitTx(tx: Transaction): Promise<string> {\n return signAndSubmitTxFn(this, tx);\n }\n\n static builder(): LightconeClientBuilder {\n return new LightconeClientBuilder();\n }\n\n // ── Sub-client accessors ─────────────────────────────────────────────\n\n markets(): Markets {\n return new Markets(this);\n }\n\n orderbooks(): Orderbooks {\n return new Orderbooks(this);\n }\n\n orders(): Orders {\n return new Orders(this);\n }\n\n positions(): Positions {\n return new Positions(this);\n }\n\n trades(): Trades {\n return new Trades(this);\n }\n\n priceHistory(): PriceHistoryClient {\n return new PriceHistoryClient(this);\n }\n\n notifications(): Notifications {\n return new Notifications(this);\n }\n\n admin(): Admin {\n return new Admin(this);\n }\n\n auth(): Auth {\n return new Auth({\n http: this.http,\n authState: this.authStateStore,\n });\n }\n\n privy(): Privy {\n return new Privy(this);\n }\n\n referrals(): Referrals {\n return new Referrals(this);\n }\n\n rpc(): Rpc {\n return new Rpc(this);\n }\n\n wsConfig(): WsConfig {\n return this.wsConfigValue;\n }\n\n ws(): WsClient {\n return new WsClient(this.wsConfigValue, this.http.authTokenRef());\n }\n\n clone(): LightconeClient {\n return new LightconeClient({\n http: this.http,\n wsConfig: { ...this.wsConfigValue },\n programId: this.programId,\n connection: this.connection\n ? new Connection(this.connection.rpcEndpoint)\n : undefined,\n depositSource: this.depositSourceValue,\n signingStrategy: this.signingStrategyValue,\n orderNonce: this.orderNonceValue,\n authState: this.authStateStore,\n });\n }\n}\n\nexport class LightconeClientBuilder {\n private baseUrlValue: string = apiUrl(LightconeEnv.Prod);\n private wsUrlValue: string = wsUrl(LightconeEnv.Prod);\n private authCredentials?: AuthCredentials;\n private programIdValue: PublicKey = envProgramId(LightconeEnv.Prod);\n private depositSourceValue: DepositSource = DepositSource.Global;\n private signingStrategyValue?: SigningStrategy;\n private rpcUrlValue?: string = rpcUrl(LightconeEnv.Prod);\n\n /**\n * Set the deployment environment. Configures the API URL, WebSocket URL,\n * RPC URL, and program ID for the given environment.\n *\n * Individual URL overrides (e.g. `.baseUrl()`) take precedence when\n * called **after** `.env()`.\n */\n env(environment: LightconeEnv): LightconeClientBuilder {\n this.baseUrlValue = apiUrl(environment);\n this.wsUrlValue = wsUrl(environment);\n this.programIdValue = envProgramId(environment);\n this.rpcUrlValue = rpcUrl(environment);\n return this;\n }\n\n baseUrl(url: string): LightconeClientBuilder {\n return this.withBaseUrl(url);\n }\n\n withBaseUrl(url: string): LightconeClientBuilder {\n this.baseUrlValue = url;\n return this;\n }\n\n wsUrl(url: string): LightconeClientBuilder {\n return this.withWsUrl(url);\n }\n\n withWsUrl(url: string): LightconeClientBuilder {\n this.wsUrlValue = url;\n return this;\n }\n\n auth(credentials: AuthCredentials): LightconeClientBuilder {\n return this.withAuth(credentials);\n }\n\n withAuth(credentials: AuthCredentials): LightconeClientBuilder {\n this.authCredentials = credentials;\n return this;\n }\n\n programId(id: PublicKey): LightconeClientBuilder {\n this.programIdValue = id;\n return this;\n }\n\n depositSource(source: DepositSource): LightconeClientBuilder {\n this.depositSourceValue = source;\n return this;\n }\n\n nativeSigner(keypair: Keypair): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"native\", keypair };\n return this;\n }\n\n externalSigner(signer: ExternalSigner): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"walletAdapter\", signer };\n return this;\n }\n\n privyWalletId(walletId: string): LightconeClientBuilder {\n this.signingStrategyValue = { type: \"privy\", walletId };\n return this;\n }\n\n rpcUrl(url: string): LightconeClientBuilder {\n this.rpcUrlValue = url;\n return this;\n }\n\n build(): LightconeClient {\n return new LightconeClient({\n http: new LightconeHttp(this.baseUrlValue),\n wsConfig: {\n url: this.wsUrlValue,\n reconnect: true,\n maxReconnectAttempts: 10,\n baseReconnectDelayMs: 1_000,\n pingIntervalMs: 30_000,\n pongTimeoutMs: 10_000,\n },\n programId: this.programIdValue,\n depositSource: this.depositSourceValue,\n signingStrategy: this.signingStrategyValue,\n connection: this.rpcUrlValue\n ? new Connection(this.rpcUrlValue)\n : undefined,\n authCredentials: this.authCredentials,\n });\n }\n}\n"]}
|
|
@@ -35,9 +35,10 @@ export interface OutcomeMetadataPayload {
|
|
|
35
35
|
export interface ConditionalTokenMetadataPayload {
|
|
36
36
|
conditional_mint_id: number;
|
|
37
37
|
outcome_index?: number;
|
|
38
|
+
display_name?: string;
|
|
38
39
|
outcome?: string;
|
|
39
40
|
deposit_symbol?: string;
|
|
40
|
-
|
|
41
|
+
short_name?: string;
|
|
41
42
|
description?: string;
|
|
42
43
|
icon_url?: string;
|
|
43
44
|
metadata_uri?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/admin/wire.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAClC,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACpC,kBAAkB,CAAC,EAAE,+BAA+B,EAAE,CAAC;IACvD,cAAc,CAAC,EAAE,2BAA2B,EAAE,CAAC;CAChD;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,+BAA+B;IAC9C,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/admin/wire.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/admin/wire.ts"],"names":[],"mappings":"","sourcesContent":["export interface UnifiedMetadataRequest {\n markets?: MarketMetadataPayload[];\n outcomes?: OutcomeMetadataPayload[];\n conditional_tokens?: ConditionalTokenMetadataPayload[];\n deposit_tokens?: DepositTokenMetadataPayload[];\n}\n\nexport interface MarketMetadataPayload {\n market_id: number;\n market_name?: string;\n slug?: string;\n description?: string;\n definition?: string;\n banner_image_url?: string;\n icon_url?: string;\n category?: string;\n subcategory?: string;\n tags?: string[];\n featured_rank?: number;\n metadata_uri?: string;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n}\n\nexport interface OutcomeMetadataPayload {\n market_id: number;\n outcome_index: number;\n name?: string;\n icon_url?: string;\n description?: string;\n metadata_uri?: string;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n}\n\nexport interface ConditionalTokenMetadataPayload {\n conditional_mint_id: number;\n outcome_index?: number;\n outcome?: string;\n deposit_symbol?: string;\n
|
|
1
|
+
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/admin/wire.ts"],"names":[],"mappings":"","sourcesContent":["export interface UnifiedMetadataRequest {\n markets?: MarketMetadataPayload[];\n outcomes?: OutcomeMetadataPayload[];\n conditional_tokens?: ConditionalTokenMetadataPayload[];\n deposit_tokens?: DepositTokenMetadataPayload[];\n}\n\nexport interface MarketMetadataPayload {\n market_id: number;\n market_name?: string;\n slug?: string;\n description?: string;\n definition?: string;\n banner_image_url?: string;\n icon_url?: string;\n category?: string;\n subcategory?: string;\n tags?: string[];\n featured_rank?: number;\n metadata_uri?: string;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n}\n\nexport interface OutcomeMetadataPayload {\n market_id: number;\n outcome_index: number;\n name?: string;\n icon_url?: string;\n description?: string;\n metadata_uri?: string;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n}\n\nexport interface ConditionalTokenMetadataPayload {\n conditional_mint_id: number;\n outcome_index?: number;\n display_name?: string;\n outcome?: string;\n deposit_symbol?: string;\n short_name?: string;\n description?: string;\n icon_url?: string;\n metadata_uri?: string;\n decimals?: number;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n}\n\nexport interface DepositTokenMetadataPayload {\n deposit_asset: string;\n display_name?: string;\n symbol?: string;\n token_symbol?: string;\n description?: string;\n icon_url?: string;\n metadata_uri?: string;\n decimals?: number;\n s3_synced?: boolean;\n s3_synced_at?: string;\n s3_error?: string;\n binance_symbol?: string;\n binance_enabled?: boolean;\n}\n\nexport interface MarketMetadataResponse extends MarketMetadataPayload {\n id: number;\n created_at: string;\n updated_at: string;\n}\n\nexport interface OutcomeMetadataResponse extends OutcomeMetadataPayload {\n id: number;\n created_at: string;\n updated_at: string;\n}\n\nexport interface ConditionalTokenMetadataResponse extends ConditionalTokenMetadataPayload {\n id: number;\n created_at: string;\n updated_at: string;\n}\n\nexport interface DepositTokenMetadataResponse {\n id: number;\n deposit_asset: string;\n display_name: string;\n symbol: string;\n token_symbol: string | null;\n binance_symbol: string | null;\n binance_enabled: boolean;\n description: string | null;\n icon_url: string | null;\n metadata_uri: string | null;\n decimals: number | null;\n s3_synced: boolean;\n s3_synced_at: string | null;\n s3_error: string | null;\n created_at: string;\n updated_at: string;\n}\n\nexport interface UnifiedMetadataResponse {\n status: string;\n markets?: MarketMetadataResponse[];\n outcomes?: OutcomeMetadataResponse[];\n conditional_tokens?: ConditionalTokenMetadataResponse[];\n deposit_tokens?: DepositTokenMetadataResponse[];\n}\n\nexport type TargetSpec =\n | \"all\"\n | { user_id: string }\n | { wallet_address: string }\n | { code: string }\n | { batch_id: string };\n\nexport interface AllocateCodesRequest {\n target: TargetSpec;\n batch_id?: string;\n vanity_codes?: string[];\n count?: number;\n max_uses?: number;\n}\n\nexport interface AllocateCodesResponse {\n status: string;\n users_count?: number;\n codes_allocated?: number;\n user_id?: string;\n codes?: string[];\n}\n\nexport interface WhitelistRequest {\n wallet_addresses: string[];\n allocate_codes?: boolean;\n}\n\nexport interface WhitelistResponse {\n status: string;\n wallets_added: number;\n codes_allocated: number;\n}\n\nexport interface RevokeRequest {\n target: TargetSpec;\n reason?: string;\n}\n\nexport interface RevokeResponse {\n revoked_count: number;\n user_ids: string[];\n}\n\nexport interface UnrevokeRequest {\n target: TargetSpec;\n}\n\nexport interface UnrevokeResponse {\n restored_count: number;\n user_ids: string[];\n}\n\nexport interface CreateNotificationRequest {\n title: string;\n message: string;\n expires_at?: string;\n}\n\nexport interface CreateNotificationResponse {\n status: string;\n}\n\nexport interface DismissNotificationRequest {\n notification_id: string;\n}\n\nexport interface DismissNotificationResponse {\n status: string;\n}\n"]}
|
|
@@ -80,8 +80,10 @@ function conditionalFromWire(source, depositAsset, depositSymbol, iconUrl) {
|
|
|
80
80
|
const errors = [];
|
|
81
81
|
if (source.decimals === undefined)
|
|
82
82
|
errors.push("Missing decimals");
|
|
83
|
-
if (!source.
|
|
84
|
-
errors.push("Missing
|
|
83
|
+
if (!source.short_name)
|
|
84
|
+
errors.push("Missing short_name");
|
|
85
|
+
if (!source.display_name)
|
|
86
|
+
errors.push("Missing display_name");
|
|
85
87
|
if (!source.outcome)
|
|
86
88
|
errors.push("Missing outcome");
|
|
87
89
|
if (errors.length > 0) {
|
|
@@ -94,8 +96,8 @@ function conditionalFromWire(source, depositAsset, depositSymbol, iconUrl) {
|
|
|
94
96
|
depositAsset: (0, shared_1.asPubkeyStr)(depositAsset),
|
|
95
97
|
depositSymbol,
|
|
96
98
|
pubkey: (0, shared_1.asPubkeyStr)(source.token_address),
|
|
97
|
-
name: source.
|
|
98
|
-
symbol: source.
|
|
99
|
+
name: source.display_name ?? "",
|
|
100
|
+
symbol: source.short_name ?? "",
|
|
99
101
|
description: source.description,
|
|
100
102
|
decimals: source.decimals ?? 0,
|
|
101
103
|
iconUrl,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../src/domain/market/tokens.ts"],"names":[],"mappings":";;;AAuDA,0CAEC;AAED,wCAEC;AAED,0DAyDC;AAvHD,yCAA2C;AAwC3C,MAAa,oBAAqB,SAAQ,KAAK;IACpC,OAAO,CAAW;IAE3B,YAAY,IAAY,EAAE,OAAiB;QACzC,KAAK,CAAC,4BAA4B,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF;AARD,oDAQC;AAED,MAAM,YAAY,GAAG,8CAA8C,CAAC;AACpE,MAAM,YAAY,GAAG,8CAA8C,CAAC;AACpE,MAAM,cAAc,GAAG,8CAA8C,CAAC;AAEtE,SAAgB,eAAe,CAAC,MAAc;IAC5C,OAAO,MAAM,KAAK,YAAY,IAAI,MAAM,KAAK,YAAY,IAAI,MAAM,KAAK,cAAc,CAAC;AACzF,CAAC;AAED,SAAgB,cAAc,CAAC,MAAc;IAC3C,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5C,CAAC;AAED,SAAgB,uBAAuB,CAAC,MAA4B;IAClE,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAkC,EAAE,CAAC;IAEnD,MAAM,aAAa,GAAG,IAAA,oBAAW,EAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAEjC,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC9C,IAAI,CAAC,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC/C,IAAI,CAAC,MAAM;QAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3C,IAAI,QAAQ,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAE5D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG;QAC/B,MAAM,EAAE,aAAa;QACrB,MAAM,EAAE,MAAM,IAAI,EAAE;QACpB,QAAQ,EAAE,QAAQ,IAAI,CAAC;QACvB,OAAO,EAAE,OAAO,IAAI,EAAE;QACtB,IAAI,EAAE,IAAI,IAAI,EAAE;KACjB,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAChE,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,IAAI,EAAE,EAAE,OAAO,IAAI,EAAE,CAAC,CACpF,CAAC;IAEF,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG;YAC7B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ;YAC9B,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,IAAI,EAAE,WAAW,CAAC,IAAI;SACvB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK,EAAE;YACL,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,SAAS,EAAE,IAAA,oBAAW,EAAC,MAAM,CAAC,aAAa,CAAC;YAC5C,YAAY,EAAE,aAAa;YAC3B,WAAW,EAAE,MAAM,CAAC,YAAY;YAChC,MAAM,EAAE,aAAa;YACrB,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,MAAM,EAAE,MAAM,IAAI,EAAE;YACpB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,QAAQ,IAAI,CAAC;YACvB,OAAO,EAAE,OAAO,IAAI,EAAE;SACvB;QACD,YAAY;QACZ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAgC,EAChC,YAAoB,EACpB,aAAqB,EACrB,OAAe;IAEf,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnE,IAAI,CAAC,MAAM,CAAC,YAAY;QAAE,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9D,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,oBAAoB,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,YAAY,EAAE,MAAM,CAAC,aAAa;QAClC,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,EAAE;QAC7B,YAAY,EAAE,IAAA,oBAAW,EAAC,YAAY,CAAC;QACvC,aAAa;QACb,MAAM,EAAE,IAAA,oBAAW,EAAC,MAAM,CAAC,aAAa,CAAC;QACzC,IAAI,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../src/domain/market/tokens.ts"],"names":[],"mappings":"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","sourcesContent":["import type { PubkeyStr } from \"../../shared\";\nimport { asPubkeyStr } from \"../../shared\";\nimport type { ConditionalTokenResponse, DepositAssetResponse } from \"./wire\";\n\nexport interface Token {\n id: number;\n pubkey: PubkeyStr;\n name: string;\n symbol: string;\n description?: string;\n decimals: number;\n iconUrl: string;\n}\n\nexport interface ConditionalToken extends Token {\n outcomeIndex: number;\n outcome: string;\n depositAsset: PubkeyStr;\n depositSymbol: string;\n}\n\nexport interface DepositAsset extends Token {\n marketPda: PubkeyStr;\n depositAsset: PubkeyStr;\n numOutcomes: number;\n}\n\nexport interface TokenMetadata {\n pubkey: PubkeyStr;\n symbol: string;\n decimals: number;\n iconUrl: string;\n name: string;\n}\n\nexport interface ValidatedTokens {\n token: DepositAsset;\n conditionals: ConditionalToken[];\n metadata: Record<string, TokenMetadata>;\n}\n\nexport class TokenValidationError extends Error {\n readonly details: string[];\n\n constructor(mint: string, details: string[]) {\n super(`Token validation errors (${mint}): ${details.join(\"; \")}`);\n this.name = \"TokenValidationError\";\n this.details = details;\n }\n}\n\nconst USDC_MAINNET = \"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v\";\nconst USDT_MAINNET = \"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB\";\nconst USDC_DEVNET_LC = \"7SrxsoXjNR7Y8T3koJCt1yV4FrNUumoAUrJExDt6tQez\";\n\nexport function isUsdStablecoin(pubkey: string): boolean {\n return pubkey === USDC_MAINNET || pubkey === USDT_MAINNET || pubkey === USDC_DEVNET_LC;\n}\n\nexport function currencySymbol(pubkey: string): \"\" | \"$\" {\n return isUsdStablecoin(pubkey) ? \"$\" : \"\";\n}\n\nexport function validatedTokensFromWire(source: DepositAssetResponse): ValidatedTokens {\n const errors: string[] = [];\n const metadata: Record<string, TokenMetadata> = {};\n\n const depositPubkey = asPubkeyStr(source.deposit_asset);\n const iconUrl = source.icon_url;\n const name = source.display_name;\n const symbol = source.symbol;\n const decimals = source.decimals;\n\n if (!iconUrl) errors.push(\"Missing icon URL\");\n if (!name) errors.push(\"Missing display name\");\n if (!symbol) errors.push(\"Missing symbol\");\n if (decimals === undefined) errors.push(\"Missing decimals\");\n\n if (errors.length > 0) {\n throw new TokenValidationError(source.deposit_asset, errors);\n }\n\n metadata[source.deposit_asset] = {\n pubkey: depositPubkey,\n symbol: symbol ?? \"\",\n decimals: decimals ?? 0,\n iconUrl: iconUrl ?? \"\",\n name: name ?? \"\",\n };\n\n const conditionals = source.conditional_mints.map((conditional) =>\n conditionalFromWire(conditional, source.deposit_asset, symbol ?? \"\", iconUrl ?? \"\")\n );\n\n for (const conditional of conditionals) {\n metadata[conditional.pubkey] = {\n pubkey: conditional.pubkey,\n symbol: conditional.symbol,\n decimals: conditional.decimals,\n iconUrl: conditional.iconUrl,\n name: conditional.name,\n };\n }\n\n return {\n token: {\n id: source.id,\n marketPda: asPubkeyStr(source.market_pubkey),\n depositAsset: depositPubkey,\n numOutcomes: source.num_outcomes,\n pubkey: depositPubkey,\n name: name ?? \"\",\n symbol: symbol ?? \"\",\n description: source.description,\n decimals: decimals ?? 0,\n iconUrl: iconUrl ?? \"\",\n },\n conditionals,\n metadata,\n };\n}\n\nfunction conditionalFromWire(\n source: ConditionalTokenResponse,\n depositAsset: string,\n depositSymbol: string,\n iconUrl: string\n): ConditionalToken {\n const errors: string[] = [];\n if (source.decimals === undefined) errors.push(\"Missing decimals\");\n if (!source.short_name) errors.push(\"Missing short_name\");\n if (!source.display_name) errors.push(\"Missing display_name\");\n if (!source.outcome) errors.push(\"Missing outcome\");\n\n if (errors.length > 0) {\n throw new TokenValidationError(source.token_address, errors);\n }\n\n return {\n id: source.id,\n outcomeIndex: source.outcome_index,\n outcome: source.outcome ?? \"\",\n depositAsset: asPubkeyStr(depositAsset),\n depositSymbol,\n pubkey: asPubkeyStr(source.token_address),\n name: source.display_name ?? \"\",\n symbol: source.short_name ?? \"\",\n description: source.description,\n decimals: source.decimals ?? 0,\n iconUrl,\n };\n}\n"]}
|
|
@@ -9,11 +9,13 @@ export interface ConditionalTokenResponse {
|
|
|
9
9
|
id: number;
|
|
10
10
|
outcome_index: number;
|
|
11
11
|
token_address: string;
|
|
12
|
+
name?: string;
|
|
12
13
|
symbol?: string;
|
|
13
14
|
uri?: string;
|
|
15
|
+
display_name?: string;
|
|
14
16
|
outcome?: string;
|
|
15
17
|
deposit_symbol?: string;
|
|
16
|
-
|
|
18
|
+
short_name?: string;
|
|
17
19
|
description?: string;
|
|
18
20
|
icon_url?: string;
|
|
19
21
|
metadata_uri?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/market/wire.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../../src/domain/market/wire.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/market/wire.ts"],"names":[],"mappings":"","sourcesContent":["import type { OrderBookId, PubkeyStr } from \"../../shared\";\nimport type { Status } from \"./index\";\n\nexport interface OutcomeResponse {\n index: number;\n name: string;\n icon_url?: string;\n}\n\nexport interface ConditionalTokenResponse {\n id: number;\n outcome_index: number;\n token_address: string;\n symbol?: string;\n uri?: string;\n outcome?: string;\n deposit_symbol?: string;\n
|
|
1
|
+
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/domain/market/wire.ts"],"names":[],"mappings":"","sourcesContent":["import type { OrderBookId, PubkeyStr } from \"../../shared\";\nimport type { Status } from \"./index\";\n\nexport interface OutcomeResponse {\n index: number;\n name: string;\n icon_url?: string;\n}\n\nexport interface ConditionalTokenResponse {\n id: number;\n outcome_index: number;\n token_address: string;\n name?: string;\n symbol?: string;\n uri?: string;\n display_name?: string;\n outcome?: string;\n deposit_symbol?: string;\n short_name?: string;\n description?: string;\n icon_url?: string;\n metadata_uri?: string;\n decimals?: number;\n created_at: string;\n}\n\nexport interface DepositAssetResponse {\n display_name?: string;\n token_symbol?: string;\n symbol?: string;\n deposit_asset: string;\n id: number;\n market_pubkey: string;\n vault: string;\n num_outcomes: number;\n description?: string;\n icon_url?: string;\n metadata_uri?: string;\n decimals?: number;\n conditional_mints: ConditionalTokenResponse[];\n created_at: string;\n}\n\nexport interface MarketResponse {\n market_name?: string;\n slug?: string;\n description?: string;\n definition?: string;\n outcomes: OutcomeResponse[];\n banner_image_url?: string;\n icon_url?: string;\n category?: string;\n tags?: string[];\n featured_rank?: number;\n market_pubkey: string;\n market_id: number;\n oracle: string;\n question_id: string;\n condition_id: string;\n market_status: string;\n winning_outcome?: number;\n has_winning_outcome: boolean;\n created_at: string;\n activated_at?: string;\n settled_at?: string;\n deposit_assets: DepositAssetResponse[];\n orderbooks: import(\"../orderbook/wire\").OrderbookResponse[];\n}\n\nexport interface MarketsResponse {\n markets: MarketResponse[];\n next_cursor?: number;\n has_more?: boolean;\n}\n\nexport interface SingleMarketResponse {\n market: MarketResponse;\n}\n\nexport interface SearchOrderbook {\n orderbook_id: OrderBookId;\n outcome_name: string;\n outcome_index: number;\n deposit_base_asset: PubkeyStr;\n deposit_quote_asset: PubkeyStr;\n deposit_base_symbol: string;\n deposit_quote_symbol: string;\n base_icon_url: string;\n quote_icon_url: string;\n conditional_base_mint: PubkeyStr;\n conditional_quote_mint: PubkeyStr;\n latest_mid_price?: string;\n}\n\nexport interface MarketSearchResult {\n slug: string;\n market_name: string;\n market_status: Status;\n category?: string;\n tags: string[];\n featured_rank: number;\n description?: string;\n icon_url?: string;\n orderbooks: SearchOrderbook[];\n}\n\nexport type MarketEvent =\n | { event_type: \"settled\"; market_pubkey: string }\n | { event_type: \"created\"; market_pubkey: string }\n | { event_type: \"opened\"; market_pubkey: string }\n | { event_type: \"paused\"; market_pubkey: string }\n | { event_type: \"orderbook_created\"; market_pubkey: string; orderbook_id: string };\n"]}
|
package/dist/env.d.ts
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PublicKey } from "@solana/web3.js";
|
|
2
|
+
/**
|
|
3
|
+
* Lightcone deployment environment.
|
|
4
|
+
*
|
|
5
|
+
* Pass to `LightconeClientBuilder.env()` to configure the client for a
|
|
6
|
+
* specific deployment. Defaults to `Prod` when not specified.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* const client = LightconeClient.builder()
|
|
11
|
+
* .env(LightconeEnv.Staging)
|
|
12
|
+
* .build();
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare enum LightconeEnv {
|
|
16
|
+
Local = "local",
|
|
17
|
+
Staging = "staging",
|
|
18
|
+
Prod = "prod"
|
|
19
|
+
}
|
|
20
|
+
/** REST API base URL for the given environment. */
|
|
21
|
+
export declare function apiUrl(environment: LightconeEnv): string;
|
|
22
|
+
/** WebSocket URL for the given environment. */
|
|
23
|
+
export declare function wsUrl(environment: LightconeEnv): string;
|
|
24
|
+
/** Solana RPC URL for the given environment. */
|
|
25
|
+
export declare function rpcUrl(environment: LightconeEnv): string;
|
|
26
|
+
/** On-chain Lightcone program ID for the given environment. */
|
|
27
|
+
export declare function programId(environment: LightconeEnv): PublicKey;
|
|
28
|
+
/**
|
|
29
|
+
* Default program ID (production). Used as the default argument in PDA and
|
|
30
|
+
* instruction helper functions. When targeting a non-production environment,
|
|
31
|
+
* always pass `programId` explicitly via `LightconeClient.programId` or
|
|
32
|
+
* `programId(env)`.
|
|
33
|
+
*/
|
|
34
|
+
export declare const PROGRAM_ID: PublicKey;
|
|
35
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;;;;;;;;GAYG;AACH,oBAAY,YAAY;IACtB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,IAAI,SAAS;CACd;AAED,mDAAmD;AACnD,wBAAgB,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,MAAM,CASxD;AAED,+CAA+C;AAC/C,wBAAgB,KAAK,CAAC,WAAW,EAAE,YAAY,GAAG,MAAM,CASvD;AAED,gDAAgD;AAChD,wBAAgB,MAAM,CAAC,WAAW,EAAE,YAAY,GAAG,MAAM,CASxD;AAED,+DAA+D;AAC/D,wBAAgB,SAAS,CAAC,WAAW,EAAE,YAAY,GAAG,SAAS,CAQ9D;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,WAA+B,CAAC"}
|
package/dist/env.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PROGRAM_ID = exports.LightconeEnv = void 0;
|
|
4
|
+
exports.apiUrl = apiUrl;
|
|
5
|
+
exports.wsUrl = wsUrl;
|
|
6
|
+
exports.rpcUrl = rpcUrl;
|
|
7
|
+
exports.programId = programId;
|
|
8
|
+
const web3_js_1 = require("@solana/web3.js");
|
|
9
|
+
/**
|
|
10
|
+
* Lightcone deployment environment.
|
|
11
|
+
*
|
|
12
|
+
* Pass to `LightconeClientBuilder.env()` to configure the client for a
|
|
13
|
+
* specific deployment. Defaults to `Prod` when not specified.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* const client = LightconeClient.builder()
|
|
18
|
+
* .env(LightconeEnv.Staging)
|
|
19
|
+
* .build();
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
var LightconeEnv;
|
|
23
|
+
(function (LightconeEnv) {
|
|
24
|
+
LightconeEnv["Local"] = "local";
|
|
25
|
+
LightconeEnv["Staging"] = "staging";
|
|
26
|
+
LightconeEnv["Prod"] = "prod";
|
|
27
|
+
})(LightconeEnv || (exports.LightconeEnv = LightconeEnv = {}));
|
|
28
|
+
/** REST API base URL for the given environment. */
|
|
29
|
+
function apiUrl(environment) {
|
|
30
|
+
switch (environment) {
|
|
31
|
+
case LightconeEnv.Local:
|
|
32
|
+
return "https://local-api.lightcone.xyz";
|
|
33
|
+
case LightconeEnv.Staging:
|
|
34
|
+
return "https://tapi2.lightcone.xyz";
|
|
35
|
+
case LightconeEnv.Prod:
|
|
36
|
+
return "https://tapi.lightcone.xyz";
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** WebSocket URL for the given environment. */
|
|
40
|
+
function wsUrl(environment) {
|
|
41
|
+
switch (environment) {
|
|
42
|
+
case LightconeEnv.Local:
|
|
43
|
+
return "wss://local-ws.lightcone.xyz/ws";
|
|
44
|
+
case LightconeEnv.Staging:
|
|
45
|
+
return "wss://tws2.lightcone.xyz/ws";
|
|
46
|
+
case LightconeEnv.Prod:
|
|
47
|
+
return "wss://tws.lightcone.xyz/ws";
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** Solana RPC URL for the given environment. */
|
|
51
|
+
function rpcUrl(environment) {
|
|
52
|
+
switch (environment) {
|
|
53
|
+
case LightconeEnv.Local:
|
|
54
|
+
return "https://api.devnet.solana.com";
|
|
55
|
+
case LightconeEnv.Staging:
|
|
56
|
+
return "https://api.devnet.solana.com";
|
|
57
|
+
case LightconeEnv.Prod:
|
|
58
|
+
return "https://api.devnet.solana.com";
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** On-chain Lightcone program ID for the given environment. */
|
|
62
|
+
function programId(environment) {
|
|
63
|
+
switch (environment) {
|
|
64
|
+
case LightconeEnv.Local:
|
|
65
|
+
case LightconeEnv.Staging:
|
|
66
|
+
return new web3_js_1.PublicKey("H3qkHTWUDUUw4ZvGNPdwdU4CYqks69bijo1CzVR12mq");
|
|
67
|
+
case LightconeEnv.Prod:
|
|
68
|
+
return new web3_js_1.PublicKey("8nzsoyHZFYig3uN3M717Q47MtLqzx2V2UAKaPTqDy5rV");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Default program ID (production). Used as the default argument in PDA and
|
|
73
|
+
* instruction helper functions. When targeting a non-production environment,
|
|
74
|
+
* always pass `programId` explicitly via `LightconeClient.programId` or
|
|
75
|
+
* `programId(env)`.
|
|
76
|
+
*/
|
|
77
|
+
exports.PROGRAM_ID = programId(LightconeEnv.Prod);
|
|
78
|
+
//# sourceMappingURL=env.js.map
|
package/dist/env.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;AAsBA,wBASC;AAGD,sBASC;AAGD,wBASC;AAGD,8BAQC;AAlED,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,6BAA6B,CAAC;QACvC,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,4BAA4B,CAAC;IACxC,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,6BAA6B,CAAC;QACvC,KAAK,YAAY,CAAC,IAAI;YACpB,OAAO,4BAA4B,CAAC;IACxC,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,+DAA+D;AAC/D,SAAgB,SAAS,CAAC,WAAyB;IACjD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,YAAY,CAAC,KAAK,CAAC;QACxB,KAAK,YAAY,CAAC,OAAO;YACvB,OAAO,IAAI,mBAAS,CAAC,6CAA6C,CAAC,CAAC;QACtE,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://local-api.lightcone.xyz\";\n case LightconeEnv.Staging:\n return \"https://tapi2.lightcone.xyz\";\n case LightconeEnv.Prod:\n return \"https://tapi.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://local-ws.lightcone.xyz/ws\";\n case LightconeEnv.Staging:\n return \"wss://tws2.lightcone.xyz/ws\";\n case LightconeEnv.Prod:\n return \"wss://tws.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/** On-chain Lightcone program ID for the given environment. */\nexport function programId(environment: LightconeEnv): PublicKey {\n switch (environment) {\n case LightconeEnv.Local:\n case LightconeEnv.Staging:\n return new PublicKey(\"H3qkHTWUDUUw4ZvGNPdwdU4CYqks69bijo1CzVR12mq\");\n case LightconeEnv.Prod:\n return new PublicKey(\"8nzsoyHZFYig3uN3M717Q47MtLqzx2V2UAKaPTqDy5rV\");\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"]}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -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,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,SAAS,EACT,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,IAAI,GACL,MAAM,QAAQ,CAAC;AAEhB,YAAY,EACV,WAAW,EACX,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,SAAS,EACT,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,IAAI,GACL,MAAM,QAAQ,CAAC;AAEhB,YAAY,EACV,WAAW,EACX,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
|
@@ -45,6 +45,7 @@ exports.shared = __importStar(require("./shared"));
|
|
|
45
45
|
exports.domain = __importStar(require("./domain"));
|
|
46
46
|
exports.program = __importStar(require("./program"));
|
|
47
47
|
__exportStar(require("./error"), exports);
|
|
48
|
+
__exportStar(require("./env"), exports);
|
|
48
49
|
__exportStar(require("./network"), exports);
|
|
49
50
|
// Layer 2: Auth + Privy
|
|
50
51
|
exports.auth = __importStar(require("./auth"));
|
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,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;AAwBzF,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 \"./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 ChainType,\n EmbeddedWallet,\n LinkedAccount,\n LinkedAccountType,\n User,\n} from \"./auth\";\n\nexport type {\n AdminClient,\n MarketsClient,\n MarketsResult,\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;AAwBzF,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 ChainType,\n EmbeddedWallet,\n LinkedAccount,\n LinkedAccountType,\n User,\n} from \"./auth\";\n\nexport type {\n AdminClient,\n MarketsClient,\n MarketsResult,\n OrdersClient,\n OrderbooksClient,\n PositionsClient,\n PriceHistorySubClient,\n ReferralsClient,\n TradesClient,\n} from \"./prelude\";\n\nexport * from \"./prelude\";\n"]}
|
package/dist/network.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Network configuration.
|
|
3
|
+
*
|
|
4
|
+
* See {@link LightconeEnv} for environment-specific URLs and program IDs.
|
|
5
|
+
*/
|
|
6
|
+
export { LightconeEnv } from "./env";
|
|
5
7
|
//# sourceMappingURL=network.d.ts.map
|
package/dist/network.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"network.d.ts","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC"}
|
package/dist/network.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Network configuration.
|
|
4
|
+
*
|
|
5
|
+
* See {@link LightconeEnv} for environment-specific URLs and program IDs.
|
|
6
|
+
*/
|
|
2
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
exports
|
|
6
|
-
/** Default WebSocket URL. */
|
|
7
|
-
exports.DEFAULT_WS_URL = "wss://tws.lightcone.xyz/ws";
|
|
8
|
+
exports.LightconeEnv = void 0;
|
|
9
|
+
var env_1 = require("./env");
|
|
10
|
+
Object.defineProperty(exports, "LightconeEnv", { enumerable: true, get: function () { return env_1.LightconeEnv; } });
|
|
8
11
|
//# sourceMappingURL=network.js.map
|
package/dist/network.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAqC;AAA5B,mGAAA,YAAY,OAAA","sourcesContent":["/**\n * Network configuration.\n *\n * See {@link LightconeEnv} for environment-specific URLs and program IDs.\n */\n\nexport { LightconeEnv } from \"./env\";\n"]}
|
package/dist/prelude.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { asOrderBookId, asPubkeyStr, DepositSource, deriveOrderbookId, OrderUpdateType, Resolution, Side, TimeInForce, TriggerResultStatus, TriggerStatus, TriggerType, TriggerUpdateType, type OrderBookId, type PubkeyStr, type SubmitOrderRequest, } from "./shared";
|
|
2
2
|
export { SdkError } from "./error";
|
|
3
|
-
export {
|
|
3
|
+
export { LightconeEnv, apiUrl, wsUrl, rpcUrl, programId } from "./env";
|
|
4
4
|
export { LightconeClient, LightconeClientBuilder, } from "./client";
|
|
5
5
|
export { Rpc } from "./rpc";
|
|
6
6
|
export type { ClientContext } from "./context";
|
package/dist/prelude.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prelude.d.ts","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,UAAU,EACV,IAAI,EACJ,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,kBAAkB,GACxB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"prelude.d.ts","sourceRoot":"","sources":["../src/prelude.ts"],"names":[],"mappings":"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"}
|