@d8x/perpetuals-sdk 2.0.9-alpha → 2.0.11-alpha

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.
@@ -2714,6 +2714,52 @@
2714
2714
  "stateMutability": "view",
2715
2715
  "type": "function"
2716
2716
  },
2717
+ {
2718
+ "inputs": [
2719
+ {
2720
+ "internalType": "uint24[]",
2721
+ "name": "_perpetualIds",
2722
+ "type": "uint24[]"
2723
+ },
2724
+ {
2725
+ "internalType": "address",
2726
+ "name": "_traderAddress",
2727
+ "type": "address"
2728
+ }
2729
+ ],
2730
+ "name": "getMarginAccounts",
2731
+ "outputs": [
2732
+ {
2733
+ "components": [
2734
+ {
2735
+ "internalType": "int128",
2736
+ "name": "fLockedInValueQC",
2737
+ "type": "int128"
2738
+ },
2739
+ {
2740
+ "internalType": "int128",
2741
+ "name": "fCashCC",
2742
+ "type": "int128"
2743
+ },
2744
+ {
2745
+ "internalType": "int128",
2746
+ "name": "fPositionBC",
2747
+ "type": "int128"
2748
+ },
2749
+ {
2750
+ "internalType": "int128",
2751
+ "name": "fUnitAccumulatedFundingStart",
2752
+ "type": "int128"
2753
+ }
2754
+ ],
2755
+ "internalType": "struct PerpStorage.MarginAccount[]",
2756
+ "name": "",
2757
+ "type": "tuple[]"
2758
+ }
2759
+ ],
2760
+ "stateMutability": "view",
2761
+ "type": "function"
2762
+ },
2717
2763
  {
2718
2764
  "inputs": [
2719
2765
  {
@@ -409,6 +409,9 @@ export interface LiquidityPoolData {
409
409
  totalSupplyShareToken: number;
410
410
  fBrokerFundCashCC: number;
411
411
  }
412
+ export declare const referralDomain: {
413
+ name: string;
414
+ };
412
415
  export declare const referralTypes: {
413
416
  NewCode: {
414
417
  name: string;
@@ -1,29 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.referralTypes = void 0;
3
+ exports.referralTypes = exports.referralDomain = void 0;
4
4
  // referral types:
5
+ exports.referralDomain = {
6
+ name: "Referral System",
7
+ };
5
8
  exports.referralTypes = {
6
9
  // ["string", "address", "uint32", "uint256"],
7
10
  // [rc.code, rc.referrerAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
8
11
  NewCode: [
9
- { name: "code", type: "string" },
10
- { name: "referrerAddr", type: "address" },
11
- { name: "passOnPercTDF", type: "uint32" },
12
- { name: "createdOn", type: "uint256" },
12
+ { name: "Code", type: "string" },
13
+ { name: "ReferrerAddr", type: "address" },
14
+ { name: "PassOnPercTDF", type: "uint32" },
15
+ { name: "CreatedOn", type: "uint256" },
13
16
  ],
14
17
  // ["address", "address", "uint32", "uint256"],
15
18
  // [rc.parentAddr, rc.referToAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
16
19
  NewReferral: [
17
- { name: "parentAddr", type: "address" },
18
- { name: "referToAddr", type: "address" },
19
- { name: "passOnPercTDF", type: "uint32" },
20
- { name: "createdOn", type: "uint256" },
20
+ { name: "ParentAddr", type: "address" },
21
+ { name: "ReferToAddr", type: "address" },
22
+ { name: "PassOnPercTDF", type: "uint32" },
23
+ { name: "CreatedOn", type: "uint256" },
21
24
  ],
22
25
  // ["string", "address", "uint256"], [rc.code, rc.traderAddr, Math.round(rc.createdOn)]
23
26
  CodeSelection: [
24
- { name: "code", type: "string" },
25
- { name: "traderAddr", type: "address" },
26
- { name: "createdOn", type: "uint256" },
27
+ { name: "Code", type: "string" },
28
+ { name: "TraderAddr", type: "address" },
29
+ { name: "CreatedOn", type: "uint256" },
27
30
  ],
28
31
  };
29
32
  //# sourceMappingURL=nodeSDKTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodeSDKTypes.js","sourceRoot":"","sources":["../../src/nodeSDKTypes.ts"],"names":[],"mappings":";;;AAofA,kBAAkB;AAEL,QAAA,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,mFAAmF;IACnF,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;QACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,+CAA+C;IAC/C,uFAAuF;IACvF,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;QACxC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,uFAAuF;IACvF,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;CACF,CAAC"}
1
+ {"version":3,"file":"nodeSDKTypes.js","sourceRoot":"","sources":["../../src/nodeSDKTypes.ts"],"names":[],"mappings":";;;AAofA,kBAAkB;AACL,QAAA,cAAc,GAAG;IAC5B,IAAI,EAAE,iBAAiB;CACxB,CAAC;AACW,QAAA,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,mFAAmF;IACnF,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;QACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,+CAA+C;IAC/C,uFAAuF;IACvF,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;QACxC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,uFAAuF;IACvF,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;CACF,CAAC"}
@@ -30,7 +30,8 @@ class PolyMktsPxFeed {
30
30
  if (mkt == undefined) {
31
31
  throw new Error(`symbol not in polymarket universe: ${sym}`);
32
32
  }
33
- return this.fetchPrice(mkt.idDec);
33
+ const px = await this.fetchPrice(mkt.idDec);
34
+ return px;
34
35
  }
35
36
  async fetchPrice(tokenIdDec) {
36
37
  const query = "https://clob.polymarket.com/midpoint?token_id=" + tokenIdDec;
@@ -1 +1 @@
1
- {"version":3,"file":"polyMktsPxFeed.js","sourceRoot":"","sources":["../../src/polyMktsPxFeed.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AASxC;;;;GAIG;AACH,MAAqB,cAAc;IAGjC,YAAY,MAAuB;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,EAAE;gBACtC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjC,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAe;oBACrB,GAAG,EAAE,GAAG;oBACR,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;oBACpB,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;aACvB;SACF;IACH,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,SAAS,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;SAC9D;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,UAAkB;QACxC,MAAM,KAAK,GAAG,gDAAgD,GAAG,UAAU,CAAC;QAC5E,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC,CAAC;SAChG;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,IAAA,qBAAW,EAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,SAAiB;QACzC,sCAAsC;QACtC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,qCAAqC;QACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;QAE7C,yCAAyC;QACzC,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;CACF;AAzDD,iCAyDC"}
1
+ {"version":3,"file":"polyMktsPxFeed.js","sourceRoot":"","sources":["../../src/polyMktsPxFeed.ts"],"names":[],"mappings":";;AAAA,uCAAwC;AASxC;;;;GAIG;AACH,MAAqB,cAAc;IAGjC,YAAY,MAAuB;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,EAAE;gBACtC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjC,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAe;oBACrB,GAAG,EAAE,GAAG;oBACR,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;oBACpB,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;aACvB;SACF;IACH,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,SAAS,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;SAC9D;QACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,UAAkB;QACxC,MAAM,KAAK,GAAG,gDAAgD,GAAG,UAAU,CAAC;QAC5E,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC,CAAC;SAChG;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,IAAA,qBAAW,EAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,SAAiB;QACzC,sCAAsC;QACtC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,qCAAqC;QACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;QAE7C,yCAAyC;QACzC,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;CACF;AA1DD,iCA0DC"}
@@ -1,4 +1,4 @@
1
- import { Signer } from "ethers";
1
+ import { Signer, TypedDataDomain, TypedDataField } from "ethers";
2
2
  import { APIReferPayload, APIReferralCodePayload, APIReferralCodeSelectionPayload } from "./nodeSDKTypes";
3
3
  /**
4
4
  * This is a 'standalone' class that deals with signatures
@@ -14,8 +14,9 @@ export default class ReferralCodeSigner {
14
14
  private provider;
15
15
  private rpcURL;
16
16
  private signingFun;
17
+ private signingTypedDataFun;
17
18
  private address;
18
- constructor(signer: Signer | string | ((x: string | Uint8Array) => Promise<string>), address: string, _rpcURL: string);
19
+ constructor(signer: Signer | string | ((x: string | Uint8Array) => Promise<string>) | ((domain: TypedDataDomain, types: Record<string, TypedDataField[]>, value: Record<string, any>) => Promise<string>), address: string, _rpcURL: string);
19
20
  createSignerInstance(_privateKey: string): Signer;
20
21
  getSignatureForNewReferral(rp: APIReferPayload): Promise<string>;
21
22
  getSignatureForNewCode(rc: APIReferralCodePayload): Promise<string>;
@@ -45,10 +46,10 @@ export default class ReferralCodeSigner {
45
46
  * @returns typed data
46
47
  */
47
48
  static newReferralPayloadToTypedData(rc: APIReferPayload): {
48
- parentAddr: `0x${string}`;
49
- referToAddr: `0x${string}`;
50
- passOnPercTDF: number;
51
- createdOn: bigint;
49
+ ParentAddr: `0x${string}`;
50
+ ReferToAddr: `0x${string}`;
51
+ PassOnPercTDF: number;
52
+ CreatedOn: bigint;
52
53
  };
53
54
  /**
54
55
  * Create digest for referralCodePayload that is to be signed
@@ -62,10 +63,10 @@ export default class ReferralCodeSigner {
62
63
  * @returns typed data
63
64
  */
64
65
  static referralCodeNewCodePayloadToTypedData(rc: APIReferralCodePayload): {
65
- code: string;
66
- referrerAddr: `0x${string}`;
67
- passOnPercTDF: number;
68
- createdOn: bigint;
66
+ Code: string;
67
+ ReferrerAddr: `0x${string}`;
68
+ PassOnPercTDF: number;
69
+ CreatedOn: bigint;
69
70
  };
70
71
  /**
71
72
  * Create digest for APIReferralCodeSelectionPayload that is to be signed
@@ -79,9 +80,9 @@ export default class ReferralCodeSigner {
79
80
  * @returns typed data
80
81
  */
81
82
  static codeSelectionPayloadToTypedData(rc: APIReferralCodeSelectionPayload): {
82
- code: string;
83
- traderAddr: `0x${string}`;
84
- createdOn: bigint;
83
+ Code: string;
84
+ TraderAddr: `0x${string}`;
85
+ CreatedOn: bigint;
85
86
  };
86
87
  /**
87
88
  * Check whether signature is correct on payload:
@@ -19,36 +19,65 @@ class ReferralCodeSigner {
19
19
  if (typeof signer == "string") {
20
20
  const wallet = this.createSignerInstance(signer);
21
21
  this.signingFun = (x) => wallet.signMessage(x);
22
+ this.signingTypedDataFun = (domain, types, value) => wallet.signTypedData(domain, types, value);
22
23
  }
23
24
  else if ("signMessage" in signer) {
24
25
  this.signingFun = (x) => signer.signMessage(x);
26
+ this.signingTypedDataFun = (domain, types, value) => signer.signTypedData(domain, types, value);
25
27
  }
26
- else {
28
+ else if (signer.length === 1) {
27
29
  this.signingFun = signer;
28
30
  }
31
+ else {
32
+ this.signingTypedDataFun = signer;
33
+ }
29
34
  }
30
35
  createSignerInstance(_privateKey) {
31
36
  this.provider = new ethers_1.JsonRpcProvider(this.rpcURL);
32
37
  const wallet = new ethers_1.Wallet(_privateKey);
33
- return wallet.connect(this.provider);
38
+ wallet.connect(this.provider);
39
+ this.signingFun = (x) => wallet.signMessage(x);
40
+ this.signingTypedDataFun = (domain, types, value) => wallet.signTypedData(domain, types, value);
41
+ return wallet;
34
42
  }
35
43
  async getSignatureForNewReferral(rp) {
36
- if (this.signingFun == undefined) {
44
+ if (this.signingTypedDataFun != undefined) {
45
+ return await this.signingTypedDataFun(nodeSDKTypes_1.referralDomain, {
46
+ NewReferral: nodeSDKTypes_1.referralTypes.NewReferral,
47
+ }, ReferralCodeSigner.newReferralPayloadToTypedData(rp));
48
+ }
49
+ else if (this.signingFun != undefined) {
50
+ return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
51
+ }
52
+ else {
37
53
  throw Error("no signer defined, call createSignerInstance()");
38
54
  }
39
- return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
40
55
  }
41
56
  async getSignatureForNewCode(rc) {
42
- if (this.signingFun == undefined) {
57
+ if (this.signingTypedDataFun != undefined) {
58
+ return await this.signingTypedDataFun(nodeSDKTypes_1.referralDomain, {
59
+ NewCode: nodeSDKTypes_1.referralTypes.NewCode,
60
+ }, ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc));
61
+ }
62
+ else if (this.signingFun != undefined) {
63
+ return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
64
+ }
65
+ else {
43
66
  throw Error("no signer defined, call createSignerInstance()");
44
67
  }
45
- return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
46
68
  }
47
69
  async getSignatureForCodeSelection(rc) {
48
- if (this.signingFun == undefined) {
70
+ if (this.signingTypedDataFun != undefined) {
71
+ return await this.signingTypedDataFun(nodeSDKTypes_1.referralDomain, {
72
+ CodeSelection: nodeSDKTypes_1.referralTypes.CodeSelection,
73
+ }, ReferralCodeSigner.codeSelectionPayloadToTypedData(rc));
74
+ }
75
+ else if (this.signingFun != undefined) {
76
+ return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
77
+ }
78
+ else {
49
79
  throw Error("no signer defined, call createSignerInstance()");
50
80
  }
51
- return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
52
81
  }
53
82
  async getAddress() {
54
83
  if (this.signingFun == undefined) {
@@ -104,10 +133,10 @@ class ReferralCodeSigner {
104
133
  */
105
134
  static newReferralPayloadToTypedData(rc) {
106
135
  return {
107
- parentAddr: rc.parentAddr,
108
- referToAddr: rc.referToAddr,
109
- passOnPercTDF: Math.round(rc.passOnPercTDF),
110
- createdOn: BigInt(Math.round(rc.createdOn)),
136
+ ParentAddr: rc.parentAddr,
137
+ ReferToAddr: rc.referToAddr,
138
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
139
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
111
140
  };
112
141
  }
113
142
  /**
@@ -128,10 +157,10 @@ class ReferralCodeSigner {
128
157
  */
129
158
  static referralCodeNewCodePayloadToTypedData(rc) {
130
159
  return {
131
- code: rc.code,
132
- referrerAddr: rc.referrerAddr,
133
- passOnPercTDF: Math.round(rc.passOnPercTDF),
134
- createdOn: BigInt(Math.round(rc.createdOn)),
160
+ Code: rc.code,
161
+ ReferrerAddr: rc.referrerAddr,
162
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
163
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
135
164
  };
136
165
  }
137
166
  /**
@@ -151,9 +180,9 @@ class ReferralCodeSigner {
151
180
  */
152
181
  static codeSelectionPayloadToTypedData(rc) {
153
182
  return {
154
- code: rc.code,
155
- traderAddr: rc.traderAddr,
156
- createdOn: BigInt(Math.round(rc.createdOn)),
183
+ Code: rc.code,
184
+ TraderAddr: rc.traderAddr,
185
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
157
186
  };
158
187
  }
159
188
  /**
@@ -170,7 +199,7 @@ class ReferralCodeSigner {
170
199
  try {
171
200
  // typed-data (^2.x.x)
172
201
  const typedData = ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc);
173
- const signerAddress = (0, ethers_1.verifyTypedData)({}, { NewCode: nodeSDKTypes_1.referralTypes.NewCode }, typedData, rc.signature);
202
+ const signerAddress = (0, ethers_1.verifyTypedData)(nodeSDKTypes_1.referralDomain, { NewCode: nodeSDKTypes_1.referralTypes.NewCode }, typedData, rc.signature);
174
203
  return rc.referrerAddr.toLowerCase() == signerAddress.toLowerCase();
175
204
  }
176
205
  catch (err) {
@@ -195,7 +224,7 @@ class ReferralCodeSigner {
195
224
  try {
196
225
  // typed-data (^2.x.x)
197
226
  const typedData = ReferralCodeSigner.codeSelectionPayloadToTypedData(rc);
198
- const signerAddress = (0, ethers_1.verifyTypedData)({}, { CodeSelection: nodeSDKTypes_1.referralTypes.CodeSelection }, typedData, rc.signature);
227
+ const signerAddress = (0, ethers_1.verifyTypedData)(nodeSDKTypes_1.referralDomain, { CodeSelection: nodeSDKTypes_1.referralTypes.CodeSelection }, typedData, rc.signature);
199
228
  return rc.traderAddr.toLowerCase() == signerAddress.toLowerCase();
200
229
  }
201
230
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"referralCodeSigner.js","sourceRoot":"","sources":["../../src/referralCodeSigner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"referralCodeSigner.js","sourceRoot":"","sources":["../../src/referralCodeSigner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const D8X_SDK_VERSION = "2.0.9-alpha";
1
+ export declare const D8X_SDK_VERSION = "2.0.11-alpha";
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.D8X_SDK_VERSION = void 0;
4
- exports.D8X_SDK_VERSION = "2.0.9-alpha";
4
+ exports.D8X_SDK_VERSION = "2.0.11-alpha";
5
5
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,cAAc,CAAC"}
@@ -2714,6 +2714,52 @@
2714
2714
  "stateMutability": "view",
2715
2715
  "type": "function"
2716
2716
  },
2717
+ {
2718
+ "inputs": [
2719
+ {
2720
+ "internalType": "uint24[]",
2721
+ "name": "_perpetualIds",
2722
+ "type": "uint24[]"
2723
+ },
2724
+ {
2725
+ "internalType": "address",
2726
+ "name": "_traderAddress",
2727
+ "type": "address"
2728
+ }
2729
+ ],
2730
+ "name": "getMarginAccounts",
2731
+ "outputs": [
2732
+ {
2733
+ "components": [
2734
+ {
2735
+ "internalType": "int128",
2736
+ "name": "fLockedInValueQC",
2737
+ "type": "int128"
2738
+ },
2739
+ {
2740
+ "internalType": "int128",
2741
+ "name": "fCashCC",
2742
+ "type": "int128"
2743
+ },
2744
+ {
2745
+ "internalType": "int128",
2746
+ "name": "fPositionBC",
2747
+ "type": "int128"
2748
+ },
2749
+ {
2750
+ "internalType": "int128",
2751
+ "name": "fUnitAccumulatedFundingStart",
2752
+ "type": "int128"
2753
+ }
2754
+ ],
2755
+ "internalType": "struct PerpStorage.MarginAccount[]",
2756
+ "name": "",
2757
+ "type": "tuple[]"
2758
+ }
2759
+ ],
2760
+ "stateMutability": "view",
2761
+ "type": "function"
2762
+ },
2717
2763
  {
2718
2764
  "inputs": [
2719
2765
  {
@@ -409,6 +409,9 @@ export interface LiquidityPoolData {
409
409
  totalSupplyShareToken: number;
410
410
  fBrokerFundCashCC: number;
411
411
  }
412
+ export declare const referralDomain: {
413
+ name: string;
414
+ };
412
415
  export declare const referralTypes: {
413
416
  NewCode: {
414
417
  name: string;
@@ -1,26 +1,29 @@
1
1
  // referral types:
2
+ export const referralDomain = {
3
+ name: "Referral System",
4
+ };
2
5
  export const referralTypes = {
3
6
  // ["string", "address", "uint32", "uint256"],
4
7
  // [rc.code, rc.referrerAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
5
8
  NewCode: [
6
- { name: "code", type: "string" },
7
- { name: "referrerAddr", type: "address" },
8
- { name: "passOnPercTDF", type: "uint32" },
9
- { name: "createdOn", type: "uint256" },
9
+ { name: "Code", type: "string" },
10
+ { name: "ReferrerAddr", type: "address" },
11
+ { name: "PassOnPercTDF", type: "uint32" },
12
+ { name: "CreatedOn", type: "uint256" },
10
13
  ],
11
14
  // ["address", "address", "uint32", "uint256"],
12
15
  // [rc.parentAddr, rc.referToAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
13
16
  NewReferral: [
14
- { name: "parentAddr", type: "address" },
15
- { name: "referToAddr", type: "address" },
16
- { name: "passOnPercTDF", type: "uint32" },
17
- { name: "createdOn", type: "uint256" },
17
+ { name: "ParentAddr", type: "address" },
18
+ { name: "ReferToAddr", type: "address" },
19
+ { name: "PassOnPercTDF", type: "uint32" },
20
+ { name: "CreatedOn", type: "uint256" },
18
21
  ],
19
22
  // ["string", "address", "uint256"], [rc.code, rc.traderAddr, Math.round(rc.createdOn)]
20
23
  CodeSelection: [
21
- { name: "code", type: "string" },
22
- { name: "traderAddr", type: "address" },
23
- { name: "createdOn", type: "uint256" },
24
+ { name: "Code", type: "string" },
25
+ { name: "TraderAddr", type: "address" },
26
+ { name: "CreatedOn", type: "uint256" },
24
27
  ],
25
28
  };
26
29
  //# sourceMappingURL=nodeSDKTypes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"nodeSDKTypes.js","sourceRoot":"","sources":["../../src/nodeSDKTypes.ts"],"names":[],"mappings":"AAofA,kBAAkB;AAElB,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,mFAAmF;IACnF,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;QACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,+CAA+C;IAC/C,uFAAuF;IACvF,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;QACxC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,uFAAuF;IACvF,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;CACF,CAAC"}
1
+ {"version":3,"file":"nodeSDKTypes.js","sourceRoot":"","sources":["../../src/nodeSDKTypes.ts"],"names":[],"mappings":"AAofA,kBAAkB;AAClB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,iBAAiB;CACxB,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,+CAA+C;IAC/C,mFAAmF;IACnF,OAAO,EAAE;QACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE;QACzC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,+CAA+C;IAC/C,uFAAuF;IACvF,WAAW,EAAE;QACX,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE;QACxC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;IACD,uFAAuF;IACvF,aAAa,EAAE;QACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;QACvC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE;KACvC;CACF,CAAC"}
@@ -28,7 +28,8 @@ export default class PolyMktsPxFeed {
28
28
  if (mkt == undefined) {
29
29
  throw new Error(`symbol not in polymarket universe: ${sym}`);
30
30
  }
31
- return this.fetchPrice(mkt.idDec);
31
+ const px = await this.fetchPrice(mkt.idDec);
32
+ return px;
32
33
  }
33
34
  async fetchPrice(tokenIdDec) {
34
35
  const query = "https://clob.polymarket.com/midpoint?token_id=" + tokenIdDec;
@@ -1 +1 @@
1
- {"version":3,"file":"polyMktsPxFeed.js","sourceRoot":"","sources":["../../src/polyMktsPxFeed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AASxC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IAGjC,YAAY,MAAuB;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,EAAE;gBACtC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjC,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAe;oBACrB,GAAG,EAAE,GAAG;oBACR,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;oBACpB,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;aACvB;SACF;IACH,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,SAAS,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;SAC9D;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,UAAkB;QACxC,MAAM,KAAK,GAAG,gDAAgD,GAAG,UAAU,CAAC;QAC5E,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC,CAAC;SAChG;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,WAAW,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,SAAiB;QACzC,sCAAsC;QACtC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,qCAAqC;QACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;QAE7C,yCAAyC;QACzC,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;CACF"}
1
+ {"version":3,"file":"polyMktsPxFeed.js","sourceRoot":"","sources":["../../src/polyMktsPxFeed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AASxC;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IAGjC,YAAY,MAAuB;QACjC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAsB,CAAC;QACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,YAAY,EAAE;gBACtC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gBACjC,MAAM,KAAK,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClE,MAAM,EAAE,GAAe;oBACrB,GAAG,EAAE,GAAG;oBACR,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;oBACpB,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;aACvB;SACF;IACH,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IACxC,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,GAAW;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,GAAG,IAAI,SAAS,EAAE;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;SAC9D;QACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,UAAkB;QACxC,MAAM,KAAK,GAAG,gDAAgD,GAAG,UAAU,CAAC;QAC5E,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,IAAI,KAAK,EAAE,CAAC,CAAC;SAChG;QACD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC5B,OAAO,WAAW,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,SAAiB;QACzC,sCAAsC;QACtC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC9B,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAChC;QAED,qCAAqC;QACrC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;QAE7C,yCAAyC;QACzC,OAAO,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;CACF"}
@@ -1,4 +1,4 @@
1
- import { Signer } from "ethers";
1
+ import { Signer, TypedDataDomain, TypedDataField } from "ethers";
2
2
  import { APIReferPayload, APIReferralCodePayload, APIReferralCodeSelectionPayload } from "./nodeSDKTypes";
3
3
  /**
4
4
  * This is a 'standalone' class that deals with signatures
@@ -14,8 +14,9 @@ export default class ReferralCodeSigner {
14
14
  private provider;
15
15
  private rpcURL;
16
16
  private signingFun;
17
+ private signingTypedDataFun;
17
18
  private address;
18
- constructor(signer: Signer | string | ((x: string | Uint8Array) => Promise<string>), address: string, _rpcURL: string);
19
+ constructor(signer: Signer | string | ((x: string | Uint8Array) => Promise<string>) | ((domain: TypedDataDomain, types: Record<string, TypedDataField[]>, value: Record<string, any>) => Promise<string>), address: string, _rpcURL: string);
19
20
  createSignerInstance(_privateKey: string): Signer;
20
21
  getSignatureForNewReferral(rp: APIReferPayload): Promise<string>;
21
22
  getSignatureForNewCode(rc: APIReferralCodePayload): Promise<string>;
@@ -45,10 +46,10 @@ export default class ReferralCodeSigner {
45
46
  * @returns typed data
46
47
  */
47
48
  static newReferralPayloadToTypedData(rc: APIReferPayload): {
48
- parentAddr: `0x${string}`;
49
- referToAddr: `0x${string}`;
50
- passOnPercTDF: number;
51
- createdOn: bigint;
49
+ ParentAddr: `0x${string}`;
50
+ ReferToAddr: `0x${string}`;
51
+ PassOnPercTDF: number;
52
+ CreatedOn: bigint;
52
53
  };
53
54
  /**
54
55
  * Create digest for referralCodePayload that is to be signed
@@ -62,10 +63,10 @@ export default class ReferralCodeSigner {
62
63
  * @returns typed data
63
64
  */
64
65
  static referralCodeNewCodePayloadToTypedData(rc: APIReferralCodePayload): {
65
- code: string;
66
- referrerAddr: `0x${string}`;
67
- passOnPercTDF: number;
68
- createdOn: bigint;
66
+ Code: string;
67
+ ReferrerAddr: `0x${string}`;
68
+ PassOnPercTDF: number;
69
+ CreatedOn: bigint;
69
70
  };
70
71
  /**
71
72
  * Create digest for APIReferralCodeSelectionPayload that is to be signed
@@ -79,9 +80,9 @@ export default class ReferralCodeSigner {
79
80
  * @returns typed data
80
81
  */
81
82
  static codeSelectionPayloadToTypedData(rc: APIReferralCodeSelectionPayload): {
82
- code: string;
83
- traderAddr: `0x${string}`;
84
- createdOn: bigint;
83
+ Code: string;
84
+ TraderAddr: `0x${string}`;
85
+ CreatedOn: bigint;
85
86
  };
86
87
  /**
87
88
  * Check whether signature is correct on payload:
@@ -1,5 +1,5 @@
1
- import { AbiCoder, JsonRpcProvider, keccak256, verifyMessage, verifyTypedData, Wallet } from "ethers";
2
- import { referralTypes, } from "./nodeSDKTypes";
1
+ import { AbiCoder, JsonRpcProvider, keccak256, verifyMessage, verifyTypedData, Wallet, } from "ethers";
2
+ import { referralDomain, referralTypes, } from "./nodeSDKTypes";
3
3
  /**
4
4
  * This is a 'standalone' class that deals with signatures
5
5
  * required for referral codes:
@@ -17,36 +17,65 @@ export default class ReferralCodeSigner {
17
17
  if (typeof signer == "string") {
18
18
  const wallet = this.createSignerInstance(signer);
19
19
  this.signingFun = (x) => wallet.signMessage(x);
20
+ this.signingTypedDataFun = (domain, types, value) => wallet.signTypedData(domain, types, value);
20
21
  }
21
22
  else if ("signMessage" in signer) {
22
23
  this.signingFun = (x) => signer.signMessage(x);
24
+ this.signingTypedDataFun = (domain, types, value) => signer.signTypedData(domain, types, value);
23
25
  }
24
- else {
26
+ else if (signer.length === 1) {
25
27
  this.signingFun = signer;
26
28
  }
29
+ else {
30
+ this.signingTypedDataFun = signer;
31
+ }
27
32
  }
28
33
  createSignerInstance(_privateKey) {
29
34
  this.provider = new JsonRpcProvider(this.rpcURL);
30
35
  const wallet = new Wallet(_privateKey);
31
- return wallet.connect(this.provider);
36
+ wallet.connect(this.provider);
37
+ this.signingFun = (x) => wallet.signMessage(x);
38
+ this.signingTypedDataFun = (domain, types, value) => wallet.signTypedData(domain, types, value);
39
+ return wallet;
32
40
  }
33
41
  async getSignatureForNewReferral(rp) {
34
- if (this.signingFun == undefined) {
42
+ if (this.signingTypedDataFun != undefined) {
43
+ return await this.signingTypedDataFun(referralDomain, {
44
+ NewReferral: referralTypes.NewReferral,
45
+ }, ReferralCodeSigner.newReferralPayloadToTypedData(rp));
46
+ }
47
+ else if (this.signingFun != undefined) {
48
+ return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
49
+ }
50
+ else {
35
51
  throw Error("no signer defined, call createSignerInstance()");
36
52
  }
37
- return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
38
53
  }
39
54
  async getSignatureForNewCode(rc) {
40
- if (this.signingFun == undefined) {
55
+ if (this.signingTypedDataFun != undefined) {
56
+ return await this.signingTypedDataFun(referralDomain, {
57
+ NewCode: referralTypes.NewCode,
58
+ }, ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc));
59
+ }
60
+ else if (this.signingFun != undefined) {
61
+ return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
62
+ }
63
+ else {
41
64
  throw Error("no signer defined, call createSignerInstance()");
42
65
  }
43
- return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
44
66
  }
45
67
  async getSignatureForCodeSelection(rc) {
46
- if (this.signingFun == undefined) {
68
+ if (this.signingTypedDataFun != undefined) {
69
+ return await this.signingTypedDataFun(referralDomain, {
70
+ CodeSelection: referralTypes.CodeSelection,
71
+ }, ReferralCodeSigner.codeSelectionPayloadToTypedData(rc));
72
+ }
73
+ else if (this.signingFun != undefined) {
74
+ return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
75
+ }
76
+ else {
47
77
  throw Error("no signer defined, call createSignerInstance()");
48
78
  }
49
- return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
50
79
  }
51
80
  async getAddress() {
52
81
  if (this.signingFun == undefined) {
@@ -102,10 +131,10 @@ export default class ReferralCodeSigner {
102
131
  */
103
132
  static newReferralPayloadToTypedData(rc) {
104
133
  return {
105
- parentAddr: rc.parentAddr,
106
- referToAddr: rc.referToAddr,
107
- passOnPercTDF: Math.round(rc.passOnPercTDF),
108
- createdOn: BigInt(Math.round(rc.createdOn)),
134
+ ParentAddr: rc.parentAddr,
135
+ ReferToAddr: rc.referToAddr,
136
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
137
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
109
138
  };
110
139
  }
111
140
  /**
@@ -126,10 +155,10 @@ export default class ReferralCodeSigner {
126
155
  */
127
156
  static referralCodeNewCodePayloadToTypedData(rc) {
128
157
  return {
129
- code: rc.code,
130
- referrerAddr: rc.referrerAddr,
131
- passOnPercTDF: Math.round(rc.passOnPercTDF),
132
- createdOn: BigInt(Math.round(rc.createdOn)),
158
+ Code: rc.code,
159
+ ReferrerAddr: rc.referrerAddr,
160
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
161
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
133
162
  };
134
163
  }
135
164
  /**
@@ -149,9 +178,9 @@ export default class ReferralCodeSigner {
149
178
  */
150
179
  static codeSelectionPayloadToTypedData(rc) {
151
180
  return {
152
- code: rc.code,
153
- traderAddr: rc.traderAddr,
154
- createdOn: BigInt(Math.round(rc.createdOn)),
181
+ Code: rc.code,
182
+ TraderAddr: rc.traderAddr,
183
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
155
184
  };
156
185
  }
157
186
  /**
@@ -168,7 +197,7 @@ export default class ReferralCodeSigner {
168
197
  try {
169
198
  // typed-data (^2.x.x)
170
199
  const typedData = ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc);
171
- const signerAddress = verifyTypedData({}, { NewCode: referralTypes.NewCode }, typedData, rc.signature);
200
+ const signerAddress = verifyTypedData(referralDomain, { NewCode: referralTypes.NewCode }, typedData, rc.signature);
172
201
  return rc.referrerAddr.toLowerCase() == signerAddress.toLowerCase();
173
202
  }
174
203
  catch (err) {
@@ -193,7 +222,7 @@ export default class ReferralCodeSigner {
193
222
  try {
194
223
  // typed-data (^2.x.x)
195
224
  const typedData = ReferralCodeSigner.codeSelectionPayloadToTypedData(rc);
196
- const signerAddress = verifyTypedData({}, { CodeSelection: referralTypes.CodeSelection }, typedData, rc.signature);
225
+ const signerAddress = verifyTypedData(referralDomain, { CodeSelection: referralTypes.CodeSelection }, typedData, rc.signature);
197
226
  return rc.traderAddr.toLowerCase() == signerAddress.toLowerCase();
198
227
  }
199
228
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"referralCodeSigner.js","sourceRoot":"","sources":["../../src/referralCodeSigner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"referralCodeSigner.js","sourceRoot":"","sources":["../../src/referralCodeSigner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- export declare const D8X_SDK_VERSION = "2.0.9-alpha";
1
+ export declare const D8X_SDK_VERSION = "2.0.11-alpha";
@@ -1,2 +1,2 @@
1
- export const D8X_SDK_VERSION = "2.0.9-alpha";
1
+ export const D8X_SDK_VERSION = "2.0.11-alpha";
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@d8x/perpetuals-sdk",
3
- "version": "2.0.9-alpha",
3
+ "version": "2.0.11-alpha",
4
4
  "description": "Node TypeScript SDK for D8X Perpetual Futures",
5
5
  "author": "D8X",
6
6
  "homepage": "https://github.com/D8-X/d8x-futures-node-sdk#readme",
@@ -31,7 +31,7 @@
31
31
  "prepublish": "yarn build",
32
32
  "prepare": "npm run build",
33
33
  "typechain": "typechain --target ethers-v6 --out-dir ./src/contracts './src/abi/**/*.json'",
34
- "postinstall": "patch-package"
34
+ "postinstall": "npx patch-package"
35
35
  },
36
36
  "main": "./dist/cjs/index.js",
37
37
  "module": "./dist/esm/index.js",
@@ -2714,6 +2714,52 @@
2714
2714
  "stateMutability": "view",
2715
2715
  "type": "function"
2716
2716
  },
2717
+ {
2718
+ "inputs": [
2719
+ {
2720
+ "internalType": "uint24[]",
2721
+ "name": "_perpetualIds",
2722
+ "type": "uint24[]"
2723
+ },
2724
+ {
2725
+ "internalType": "address",
2726
+ "name": "_traderAddress",
2727
+ "type": "address"
2728
+ }
2729
+ ],
2730
+ "name": "getMarginAccounts",
2731
+ "outputs": [
2732
+ {
2733
+ "components": [
2734
+ {
2735
+ "internalType": "int128",
2736
+ "name": "fLockedInValueQC",
2737
+ "type": "int128"
2738
+ },
2739
+ {
2740
+ "internalType": "int128",
2741
+ "name": "fCashCC",
2742
+ "type": "int128"
2743
+ },
2744
+ {
2745
+ "internalType": "int128",
2746
+ "name": "fPositionBC",
2747
+ "type": "int128"
2748
+ },
2749
+ {
2750
+ "internalType": "int128",
2751
+ "name": "fUnitAccumulatedFundingStart",
2752
+ "type": "int128"
2753
+ }
2754
+ ],
2755
+ "internalType": "struct PerpStorage.MarginAccount[]",
2756
+ "name": "",
2757
+ "type": "tuple[]"
2758
+ }
2759
+ ],
2760
+ "stateMutability": "view",
2761
+ "type": "function"
2762
+ },
2717
2763
  {
2718
2764
  "inputs": [
2719
2765
  {
@@ -499,28 +499,30 @@ export interface LiquidityPoolData {
499
499
  }
500
500
 
501
501
  // referral types:
502
-
502
+ export const referralDomain = {
503
+ name: "Referral System",
504
+ };
503
505
  export const referralTypes = {
504
506
  // ["string", "address", "uint32", "uint256"],
505
507
  // [rc.code, rc.referrerAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
506
508
  NewCode: [
507
- { name: "code", type: "string" },
508
- { name: "referrerAddr", type: "address" },
509
- { name: "passOnPercTDF", type: "uint32" },
510
- { name: "createdOn", type: "uint256" },
509
+ { name: "Code", type: "string" },
510
+ { name: "ReferrerAddr", type: "address" },
511
+ { name: "PassOnPercTDF", type: "uint32" },
512
+ { name: "CreatedOn", type: "uint256" },
511
513
  ],
512
514
  // ["address", "address", "uint32", "uint256"],
513
515
  // [rc.parentAddr, rc.referToAddr, passOnPercTwoDigitsFormat, Math.round(rc.createdOn)]
514
516
  NewReferral: [
515
- { name: "parentAddr", type: "address" },
516
- { name: "referToAddr", type: "address" },
517
- { name: "passOnPercTDF", type: "uint32" },
518
- { name: "createdOn", type: "uint256" },
517
+ { name: "ParentAddr", type: "address" },
518
+ { name: "ReferToAddr", type: "address" },
519
+ { name: "PassOnPercTDF", type: "uint32" },
520
+ { name: "CreatedOn", type: "uint256" },
519
521
  ],
520
522
  // ["string", "address", "uint256"], [rc.code, rc.traderAddr, Math.round(rc.createdOn)]
521
523
  CodeSelection: [
522
- { name: "code", type: "string" },
523
- { name: "traderAddr", type: "address" },
524
- { name: "createdOn", type: "uint256" },
524
+ { name: "Code", type: "string" },
525
+ { name: "TraderAddr", type: "address" },
526
+ { name: "CreatedOn", type: "uint256" },
525
527
  ],
526
528
  };
@@ -40,7 +40,8 @@ export default class PolyMktsPxFeed {
40
40
  if (mkt == undefined) {
41
41
  throw new Error(`symbol not in polymarket universe: ${sym}`);
42
42
  }
43
- return this.fetchPrice(mkt.idDec);
43
+ const px = await this.fetchPrice(mkt.idDec);
44
+ return px;
44
45
  }
45
46
 
46
47
  public async fetchPrice(tokenIdDec: string): Promise<number> {
@@ -1,8 +1,20 @@
1
- import { AbiCoder, JsonRpcProvider, keccak256, Provider, Signer, verifyMessage, verifyTypedData, Wallet } from "ethers";
1
+ import {
2
+ AbiCoder,
3
+ JsonRpcProvider,
4
+ keccak256,
5
+ Provider,
6
+ Signer,
7
+ TypedDataDomain,
8
+ TypedDataField,
9
+ verifyMessage,
10
+ verifyTypedData,
11
+ Wallet,
12
+ } from "ethers";
2
13
  import {
3
14
  APIReferPayload,
4
15
  APIReferralCodePayload,
5
16
  APIReferralCodeSelectionPayload,
17
+ referralDomain,
6
18
  referralTypes,
7
19
  } from "./nodeSDKTypes";
8
20
 
@@ -19,11 +31,26 @@ import {
19
31
  export default class ReferralCodeSigner {
20
32
  private provider: Provider | undefined;
21
33
  private rpcURL: string;
22
- private signingFun: (x: string | Uint8Array) => Promise<string>;
34
+ private signingFun: ((x: string | Uint8Array) => Promise<string>) | undefined;
35
+ private signingTypedDataFun:
36
+ | ((
37
+ domain: TypedDataDomain,
38
+ types: Record<string, TypedDataField[]>,
39
+ value: Record<string, any>
40
+ ) => Promise<string>)
41
+ | undefined;
23
42
  private address: string;
24
43
 
25
44
  constructor(
26
- signer: Signer | string | ((x: string | Uint8Array) => Promise<string>),
45
+ signer:
46
+ | Signer
47
+ | string
48
+ | ((x: string | Uint8Array) => Promise<string>)
49
+ | ((
50
+ domain: TypedDataDomain,
51
+ types: Record<string, TypedDataField[]>,
52
+ value: Record<string, any>
53
+ ) => Promise<string>),
27
54
  address: string,
28
55
  _rpcURL: string
29
56
  ) {
@@ -32,38 +59,88 @@ export default class ReferralCodeSigner {
32
59
  if (typeof signer == "string") {
33
60
  const wallet = this.createSignerInstance(signer);
34
61
  this.signingFun = (x: string | Uint8Array) => wallet.signMessage(x);
62
+ this.signingTypedDataFun = (
63
+ domain: TypedDataDomain,
64
+ types: Record<string, TypedDataField[]>,
65
+ value: Record<string, any>
66
+ ) => wallet.signTypedData(domain, types, value);
35
67
  } else if ("signMessage" in signer) {
36
68
  this.signingFun = (x: string | Uint8Array) => signer.signMessage(x);
69
+ this.signingTypedDataFun = (
70
+ domain: TypedDataDomain,
71
+ types: Record<string, TypedDataField[]>,
72
+ value: Record<string, any>
73
+ ) => signer.signTypedData(domain, types, value);
74
+ } else if (signer.length === 1) {
75
+ this.signingFun = signer as (x: string | Uint8Array) => Promise<string>;
37
76
  } else {
38
- this.signingFun = signer;
77
+ this.signingTypedDataFun = signer as (
78
+ domain: TypedDataDomain,
79
+ types: Record<string, TypedDataField[]>,
80
+ value: Record<string, any>
81
+ ) => Promise<string>;
39
82
  }
40
83
  }
41
84
 
42
85
  public createSignerInstance(_privateKey: string): Signer {
43
86
  this.provider = new JsonRpcProvider(this.rpcURL);
44
87
  const wallet = new Wallet(_privateKey);
45
- return wallet.connect(this.provider);
88
+ wallet.connect(this.provider);
89
+ this.signingFun = (x: string | Uint8Array) => wallet.signMessage(x);
90
+ this.signingTypedDataFun = (
91
+ domain: TypedDataDomain,
92
+ types: Record<string, TypedDataField[]>,
93
+ value: Record<string, any>
94
+ ) => wallet.signTypedData(domain, types, value);
95
+ return wallet;
46
96
  }
47
97
 
48
98
  public async getSignatureForNewReferral(rp: APIReferPayload): Promise<string> {
49
- if (this.signingFun == undefined) {
99
+ if (this.signingTypedDataFun != undefined) {
100
+ return await this.signingTypedDataFun(
101
+ referralDomain,
102
+ {
103
+ NewReferral: referralTypes.NewReferral,
104
+ },
105
+ ReferralCodeSigner.newReferralPayloadToTypedData(rp)
106
+ );
107
+ } else if (this.signingFun != undefined) {
108
+ return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
109
+ } else {
50
110
  throw Error("no signer defined, call createSignerInstance()");
51
111
  }
52
- return await ReferralCodeSigner.getSignatureForNewReferral(rp, this.signingFun);
53
112
  }
54
113
 
55
114
  public async getSignatureForNewCode(rc: APIReferralCodePayload): Promise<string> {
56
- if (this.signingFun == undefined) {
115
+ if (this.signingTypedDataFun != undefined) {
116
+ return await this.signingTypedDataFun(
117
+ referralDomain,
118
+ {
119
+ NewCode: referralTypes.NewCode,
120
+ },
121
+ ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc)
122
+ );
123
+ } else if (this.signingFun != undefined) {
124
+ return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
125
+ } else {
57
126
  throw Error("no signer defined, call createSignerInstance()");
58
127
  }
59
- return await ReferralCodeSigner.getSignatureForNewCode(rc, this.signingFun);
60
128
  }
61
129
 
62
130
  public async getSignatureForCodeSelection(rc: APIReferralCodeSelectionPayload): Promise<string> {
63
- if (this.signingFun == undefined) {
131
+ if (this.signingTypedDataFun != undefined) {
132
+ return await this.signingTypedDataFun(
133
+ referralDomain,
134
+ {
135
+ CodeSelection: referralTypes.CodeSelection,
136
+ },
137
+ ReferralCodeSigner.codeSelectionPayloadToTypedData(rc)
138
+ );
139
+ } else if (this.signingFun != undefined) {
140
+ return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
141
+ } else {
64
142
  throw Error("no signer defined, call createSignerInstance()");
65
143
  }
66
- return await ReferralCodeSigner.getSignatureForCodeSelection(rc, this.signingFun);
67
144
  }
68
145
 
69
146
  public async getAddress(): Promise<string> {
@@ -139,10 +216,10 @@ export default class ReferralCodeSigner {
139
216
  */
140
217
  public static newReferralPayloadToTypedData(rc: APIReferPayload) {
141
218
  return {
142
- parentAddr: rc.parentAddr as `0x${string}`,
143
- referToAddr: rc.referToAddr as `0x${string}`,
144
- passOnPercTDF: Math.round(rc.passOnPercTDF),
145
- createdOn: BigInt(Math.round(rc.createdOn)),
219
+ ParentAddr: rc.parentAddr as `0x${string}`,
220
+ ReferToAddr: rc.referToAddr as `0x${string}`,
221
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
222
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
146
223
  };
147
224
  }
148
225
 
@@ -170,10 +247,10 @@ export default class ReferralCodeSigner {
170
247
  */
171
248
  public static referralCodeNewCodePayloadToTypedData(rc: APIReferralCodePayload) {
172
249
  return {
173
- code: rc.code,
174
- referrerAddr: rc.referrerAddr as `0x${string}`,
175
- passOnPercTDF: Math.round(rc.passOnPercTDF),
176
- createdOn: BigInt(Math.round(rc.createdOn)),
250
+ Code: rc.code,
251
+ ReferrerAddr: rc.referrerAddr as `0x${string}`,
252
+ PassOnPercTDF: Math.round(rc.passOnPercTDF),
253
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
177
254
  };
178
255
  }
179
256
 
@@ -197,9 +274,9 @@ export default class ReferralCodeSigner {
197
274
  */
198
275
  public static codeSelectionPayloadToTypedData(rc: APIReferralCodeSelectionPayload) {
199
276
  return {
200
- code: rc.code,
201
- traderAddr: rc.traderAddr as `0x${string}`,
202
- createdOn: BigInt(Math.round(rc.createdOn)),
277
+ Code: rc.code,
278
+ TraderAddr: rc.traderAddr as `0x${string}`,
279
+ CreatedOn: BigInt(Math.round(rc.createdOn)),
203
280
  };
204
281
  }
205
282
 
@@ -217,7 +294,12 @@ export default class ReferralCodeSigner {
217
294
  try {
218
295
  // typed-data (^2.x.x)
219
296
  const typedData = ReferralCodeSigner.referralCodeNewCodePayloadToTypedData(rc);
220
- const signerAddress = verifyTypedData({}, { NewCode: referralTypes.NewCode }, typedData, rc.signature);
297
+ const signerAddress = verifyTypedData(
298
+ referralDomain,
299
+ { NewCode: referralTypes.NewCode },
300
+ typedData,
301
+ rc.signature
302
+ );
221
303
  return rc.referrerAddr.toLowerCase() == signerAddress.toLowerCase();
222
304
  } catch (err) {
223
305
  console.log(err);
@@ -242,7 +324,7 @@ export default class ReferralCodeSigner {
242
324
  // typed-data (^2.x.x)
243
325
  const typedData = ReferralCodeSigner.codeSelectionPayloadToTypedData(rc);
244
326
  const signerAddress = verifyTypedData(
245
- {},
327
+ referralDomain,
246
328
  { CodeSelection: referralTypes.CodeSelection },
247
329
  typedData,
248
330
  rc.signature
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const D8X_SDK_VERSION = "2.0.9-alpha";
1
+ export const D8X_SDK_VERSION = "2.0.11-alpha";