@win-trader/config 0.0.1 → 0.1.1

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/addresses.json CHANGED
@@ -52,36 +52,40 @@
52
52
  ],
53
53
  "contracts": {
54
54
  "vault": {
55
- "address": "CAX5JF7U7WFQDSX7CNEV6DDAQ5J5Q655NLATEUPU5D5GWIWT7T6SGYVO",
56
- "startLedger": 2627197
55
+ "address": "CD5NG2BM4X44DS7XN24DDJ73C23WSCJUIFG55JB3EAWOIUYHARAPWN2K",
56
+ "startLedger": 3202932
57
57
  },
58
58
  "positionManager": {
59
- "address": "CBKWIM7PG2RYZAURKIJIIDN33U4HJ5AK5FTUMPVVWSM5AHVUKZS47TTJ",
60
- "startLedger": 2627199
59
+ "address": "CALAG3KKOP7QA4XTIUHPU3DJ5GGJE2HRWK5MAVD326XHEGEE5EVHFF7L",
60
+ "startLedger": 3202930
61
61
  },
62
62
  "configManager": {
63
- "address": "CDDOA6JJWVH4Q7SXTL7P6S56VFCVSIUKNPTBBXQYVD27V3P3PWSKBNBP",
64
- "startLedger": 2627189
63
+ "address": "CBZZENU4QRE7DXRW3M3OH6SFDSREIKQGDJGCW5ZQ5UWDTKNCO4PGR5NI",
64
+ "startLedger": 3202921
65
65
  },
66
66
  "oracleRouter": {
67
- "address": "CCA6SWSBBNDVQRWYGYP7T6644K5OR3L35O7YGYLODDT2R2ZV7HG4GKBX",
68
- "startLedger": 2627191
67
+ "address": "CAK5NAXHH5PSBQ63LDMZ3FHYKFV76TJRPKKCLYOI7VIUKLS6OH63ZDP2",
68
+ "startLedger": 3202923
69
69
  },
70
70
  "oracle": {
71
- "address": "CAACOFUFNVWOMBQU7MDKUKB3IGDW4EJGUZTTHN2Q4IDIA7WVDYXE54DG",
72
- "startLedger": 2627193
71
+ "address": "CAQLDGZP6ADGOHDUHOFNWC7L24JQ2A2MQBAULYWUAHCHY3KGHG5466F7",
72
+ "startLedger": 3202924
73
73
  },
74
74
  "binanceOracle": {
75
- "address": "CBTVRC6X5Q6KJGAC7SOQHAKBQS4RS5MTOERWKPH5M5OF6FLGVCO6OOHC",
76
- "startLedger": 2627236
75
+ "address": "CDLZH2XWR46NF6EGV2JBEARYBOJQ5II2RZLNFBP63LCXBL524Y7ZNMOC",
76
+ "startLedger": 3202949
77
77
  },
78
78
  "kucoinOracle": {
79
- "address": "CCNNEIHURTEROE7T34V2E5BDEPOLRBGZEB3V3A5F6A563IQR2E6VA5RV",
80
- "startLedger": 2627237
79
+ "address": "CBPTENMW52BBQUZE4EJ73XO3PJKPOL3F5XPGYMV26OCEVL64WEDL5TZQ",
80
+ "startLedger": 3202951
81
81
  },
82
82
  "mockToken": {
83
- "address": "CBI2GEK27L4OCKBSKUF3XW3EZYO5WAI4NKYOWO5ZXSIBRUY5ELTDVLQA",
84
- "startLedger": 2627195
83
+ "address": "CDQEF3UM6PCJ4I3IYI47YJNBJUUUXBXZT2AYQENOIXAY6I3MPVLETXEN",
84
+ "startLedger": 3202928
85
+ },
86
+ "oracle2": {
87
+ "address": "CDPBMUYEBA6HPL3SPG4XWYF4Y7R35UGE46J62QN4L7YWXVML75CFD3KQ",
88
+ "startLedger": 3202926
85
89
  }
86
90
  }
87
91
  },
package/dist/index.d.ts CHANGED
@@ -11,6 +11,8 @@ export interface NetworkContracts {
11
11
  configManager: ContractInfo;
12
12
  oracleRouter: ContractInfo;
13
13
  oracle: ContractInfo;
14
+ /** Secondary admin-published oracle used before live CEX sources are wired. */
15
+ oracle2?: ContractInfo;
14
16
  /** Per-source oracle instances populated by scripts/deploy-cex-oracles.sh. */
15
17
  binanceOracle: ContractInfo;
16
18
  kucoinOracle: ContractInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,eAAe,EAAE,YAAY,CAAC;IAC9B,aAAa,EAAE,YAAY,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,8EAA8E;IAC9E,aAAa,EAAE,YAAY,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,2DAA2D;IAC3D,SAAS,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B;kFAC8E;IAC9E,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAgCvD,eAAO,MAAM,MAAM,EAAE,SAA2B,CAAC;AAEjD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAEhE;AAED,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtD,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,eAAe,EAAE,YAAY,CAAC;IAC9B,aAAa,EAAE,YAAY,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,8EAA8E;IAC9E,aAAa,EAAE,YAAY,CAAC;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,2DAA2D;IAC3D,SAAS,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B;kFAC8E;IAC9E,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,gBAAgB,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAiDvD,eAAO,MAAM,MAAM,EAAE,SAA2B,CAAC;AAEjD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,aAAa,CAIhE;AAED,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,17 +1,23 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import { dirname, resolve } from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
- // Read the source addresses.json at runtime (not bundled into dist), so that
5
- // `make deploy` updates are picked up without rebuilding this package.
6
- //
7
4
  // __dirname resolves to:
8
5
  // - packages/config/dist when consumed as a built package (the normal case)
9
6
  // - packages/config when imported directly from source (e.g. via bun)
10
7
  const here = dirname(fileURLToPath(import.meta.url));
8
+ // The current network. Deployed services set NETWORK; defaults to local for dev.
9
+ const NETWORK = process.env.NETWORK || "local";
10
+ function isSingleNetwork(x) {
11
+ return (typeof x === "object" && x !== null && "contracts" in x && "rpcUrl" in x);
12
+ }
13
+ // A per-network file injected via ADDRESSES_JSON is the chosen network — kept
14
+ // here so getNetworkConfig returns it regardless of the requested key.
15
+ let injected = null;
11
16
  // Resolution order for the address/network registry:
12
- // 1. ADDRESSES_JSON env path — the deployment-provided registry (per network).
13
- // 2. the in-package addresses.json local-dev fallback so the workspace runs
14
- // without any env wiring.
17
+ // 1. ADDRESSES_JSON env path — deployment-provided. Either a single-network
18
+ // file (deployments/<network>.json) or the combined record.
19
+ // 2. the in-package addresses.json — local-dev / fallback (combined record),
20
+ // a generated artifact so `make deploy` updates are picked up at runtime.
15
21
  function loadAddresses() {
16
22
  const candidates = [
17
23
  process.env.ADDRESSES_JSON,
@@ -19,18 +25,26 @@ function loadAddresses() {
19
25
  resolve(here, "addresses.json"),
20
26
  ].filter((p) => Boolean(p));
21
27
  for (const path of candidates) {
28
+ let data;
22
29
  try {
23
- return JSON.parse(readFileSync(path, "utf8"));
30
+ data = JSON.parse(readFileSync(path, "utf8"));
24
31
  }
25
32
  catch {
26
- // try next
33
+ continue;
34
+ }
35
+ if (isSingleNetwork(data)) {
36
+ injected = data;
37
+ return { [NETWORK]: data };
27
38
  }
39
+ return data;
28
40
  }
29
- throw new Error(`@win-trader/config: addresses.json not found. Looked in:\n ${candidates.join("\n ")}`);
41
+ throw new Error(`@win-trader/config: address registry not found. Looked in:\n ${candidates.join("\n ")}`);
30
42
  }
31
43
  export const config = loadAddresses();
32
44
  export function getNetworkConfig(network) {
33
- return config[network];
45
+ // When ADDRESSES_JSON injected a single-network file, that file IS the
46
+ // selected network — return it regardless of the requested key.
47
+ return injected ?? config[network];
34
48
  }
35
49
  export * from "./constants.js";
36
50
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAmCzC,6EAA6E;AAC7E,uEAAuE;AACvE,EAAE;AACF,yBAAyB;AACzB,+EAA+E;AAC/E,8EAA8E;AAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAErD,qDAAqD;AACrD,iFAAiF;AACjF,gFAAgF;AAChF,+BAA+B;AAC/B,SAAS,aAAa;IACpB,MAAM,UAAU,GAAG;QACjB,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACrC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC;KAChC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAc,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,WAAW;QACb,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CACb,+DAA+D,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CACzF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAc,aAAa,EAAE,CAAC;AAEjD,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAqCzC,yBAAyB;AACzB,+EAA+E;AAC/E,8EAA8E;AAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAErD,iFAAiF;AACjF,MAAM,OAAO,GAAa,OAAO,CAAC,GAAG,CAAC,OAAmB,IAAI,OAAO,CAAC;AAErE,SAAS,eAAe,CAAC,CAAU;IACjC,OAAO,CACL,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,WAAW,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,CACzE,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,uEAAuE;AACvE,IAAI,QAAQ,GAAyB,IAAI,CAAC;AAE1C,qDAAqD;AACrD,8EAA8E;AAC9E,iEAAiE;AACjE,+EAA+E;AAC/E,+EAA+E;AAC/E,SAAS,aAAa;IACpB,MAAM,UAAU,GAAG;QACjB,OAAO,CAAC,GAAG,CAAC,cAAc;QAC1B,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC;QACrC,OAAO,CAAC,IAAI,EAAE,gBAAgB,CAAC;KAChC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,QAAQ,GAAG,IAAI,CAAC;YAChB,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,EAAe,CAAC;QAC1C,CAAC;QACD,OAAO,IAAiB,CAAC;IAC3B,CAAC;IACD,MAAM,IAAI,KAAK,CACb,iEAAiE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAC3F,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAc,aAAa,EAAE,CAAC;AAEjD,MAAM,UAAU,gBAAgB,CAAC,OAAgB;IAC/C,uEAAuE;IACvE,gEAAgE;IAChE,OAAO,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,cAAc,gBAAgB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@win-trader/config",
3
- "version": "0.0.1",
3
+ "version": "0.1.1",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",