@clober/v2-sdk 1.0.0-beta.8 → 1.0.0-beta.9

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.
@@ -23,21 +23,42 @@ class Subgraph {
23
23
  if (!primary) {
24
24
  throw new Error('Unsupported chain for subgraph');
25
25
  }
26
- try {
27
- const res = await axios_1.default.post(primary, { query, variables, operationName }, { timeout });
28
- return res.data;
26
+ const safePost = async (url) => {
27
+ try {
28
+ const res = await axios_1.default.post(url, { query, variables, operationName }, {
29
+ timeout,
30
+ validateStatus: () => true,
31
+ });
32
+ return { ok: true, status: res.status, data: res.data };
33
+ }
34
+ catch (err) {
35
+ return {
36
+ ok: false,
37
+ status: null,
38
+ error: err.message || 'Network error',
39
+ };
40
+ }
41
+ };
42
+ const primaryRes = await safePost(primary);
43
+ if (!primaryRes.ok) {
44
+ throw new Error(`Network error: ${primaryRes.error}`);
45
+ }
46
+ if (primaryRes.status === 200) {
47
+ return primaryRes.data;
29
48
  }
30
- catch (err) {
31
- const status = err?.response?.status;
32
- if (status !== 429) {
33
- throw err;
49
+ if (primaryRes.status === 429 && fallback) {
50
+ const fallbackRes = await safePost(fallback);
51
+ if (!fallbackRes.ok) {
52
+ throw new Error(`Fallback network error: ${fallbackRes.error}`);
34
53
  }
35
- if (!fallback) {
36
- throw err;
54
+ if (fallbackRes.status === 200) {
55
+ return fallbackRes.data;
37
56
  }
38
- const res = await axios_1.default.post(fallback, { query, variables, operationName }, { timeout });
39
- return res.data;
57
+ throw new Error(fallbackRes.data?.errors ||
58
+ `Fallback failed with status ${fallbackRes.status}`);
40
59
  }
60
+ throw new Error(primaryRes.data?.errors ||
61
+ `Failed with status ${primaryRes.status}`);
41
62
  }
42
63
  }
43
64
  exports.Subgraph = Subgraph;
@@ -1 +1 @@
1
- {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":";;;AAAA,iCAAyB;AAEzB,mCAAmC;AAEtB,QAAA,YAAY,GAErB;IACF,CAAC,iBAAS,CAAC,cAAc,CAAC,EACxB,wFAAwF;IAC1F,CAAC,iBAAS,CAAC,gBAAgB,CAAC,EAC1B,wFAAwF;IAG1F,CAAC,iBAAS,CAAC,iBAAiB,CAAC,EAC3B,yFAAyF;IAC3F,CAAC,iBAAS,CAAC,YAAY,CAAC,EACtB,mHAAmH;IACrH,CAAC,iBAAS,CAAC,YAAY,CAAC,EACtB,qEAAqE;IACvE,CAAC,iBAAS,CAAC,aAAa,CAAC,EACvB,oHAAoH;IACtH,CAAC,iBAAS,CAAC,aAAa,CAAC,EACvB,yHAAyH;CAG5H,CAAA;AAEY,QAAA,qBAAqB,GAE9B;IACF,CAAC,iBAAS,CAAC,aAAa,CAAC,EACvB,4GAA4G;CAC/G,CAAA;AAED,MAAa,QAAQ;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CACrB,OAAkB,EAClB,aAAqB,EACrB,KAAa,EACb,SAAa;QAEb,MAAM,OAAO,GAAG,IAAI,CAAA;QACpB,MAAM,OAAO,GAAG,oBAAY,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,6BAAqB,CAAC,OAAO,CAAC,CAAA;QAE/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,eAAK,CAAC,IAAI,CAC1B,OAAO,EACP,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EACnC,EAAE,OAAO,EAAE,CACZ,CAAA;YACD,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAA;YAEpC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,MAAM,GAAG,CAAA;YACX,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,GAAG,CAAA;YACX,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,eAAK,CAAC,IAAI,CAC1B,QAAQ,EACR,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EACnC,EAAE,OAAO,EAAE,CACZ,CAAA;YACD,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;IACH,CAAC;CACF;AAzCD,4BAyCC"}
1
+ {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":"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"}
@@ -24,21 +24,42 @@ export class Subgraph {
24
24
  if (!primary) {
25
25
  throw new Error('Unsupported chain for subgraph');
26
26
  }
27
- try {
28
- const res = await axios.post(primary, { query, variables, operationName }, { timeout });
29
- return res.data;
27
+ const safePost = async (url) => {
28
+ try {
29
+ const res = await axios.post(url, { query, variables, operationName }, {
30
+ timeout,
31
+ validateStatus: () => true,
32
+ });
33
+ return { ok: true, status: res.status, data: res.data };
34
+ }
35
+ catch (err) {
36
+ return {
37
+ ok: false,
38
+ status: null,
39
+ error: err.message || 'Network error',
40
+ };
41
+ }
42
+ };
43
+ const primaryRes = await safePost(primary);
44
+ if (!primaryRes.ok) {
45
+ throw new Error(`Network error: ${primaryRes.error}`);
46
+ }
47
+ if (primaryRes.status === 200) {
48
+ return primaryRes.data;
30
49
  }
31
- catch (err) {
32
- const status = err?.response?.status;
33
- if (status !== 429) {
34
- throw err;
50
+ if (primaryRes.status === 429 && fallback) {
51
+ const fallbackRes = await safePost(fallback);
52
+ if (!fallbackRes.ok) {
53
+ throw new Error(`Fallback network error: ${fallbackRes.error}`);
35
54
  }
36
- if (!fallback) {
37
- throw err;
55
+ if (fallbackRes.status === 200) {
56
+ return fallbackRes.data;
38
57
  }
39
- const res = await axios.post(fallback, { query, variables, operationName }, { timeout });
40
- return res.data;
58
+ throw new Error(fallbackRes.data?.errors ||
59
+ `Fallback failed with status ${fallbackRes.status}`);
41
60
  }
61
+ throw new Error(primaryRes.data?.errors ||
62
+ `Failed with status ${primaryRes.status}`);
42
63
  }
43
64
  }
44
65
  //# sourceMappingURL=subgraph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,YAAY,GAErB;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EACxB,wFAAwF;IAC1F,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC1B,wFAAwF;IAC1F,oBAAoB;IACpB,uFAAuF;IACvF,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAC3B,yFAAyF;IAC3F,CAAC,SAAS,CAAC,YAAY,CAAC,EACtB,mHAAmH;IACrH,CAAC,SAAS,CAAC,YAAY,CAAC,EACtB,qEAAqE;IACvE,CAAC,SAAS,CAAC,aAAa,CAAC,EACvB,oHAAoH;IACtH,CAAC,SAAS,CAAC,aAAa,CAAC,EACvB,yHAAyH;IAC3H,6BAA6B;IAC7B,gGAAgG;CACjG,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAE9B;IACF,CAAC,SAAS,CAAC,aAAa,CAAC,EACvB,4GAA4G;CAC/G,CAAA;AAED,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CACrB,OAAkB,EAClB,aAAqB,EACrB,KAAa,EACb,SAAa;QAEb,MAAM,OAAO,GAAG,IAAI,CAAA;QACpB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;QACrC,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;QAE/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAC1B,OAAO,EACP,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EACnC,EAAE,OAAO,EAAE,CACZ,CAAA;YACD,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAA;YAEpC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,MAAM,GAAG,CAAA;YACX,CAAC;YAED,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,GAAG,CAAA;YACX,CAAC;YAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,IAAI,CAC1B,QAAQ,EACR,EAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,EACnC,EAAE,OAAO,EAAE,CACZ,CAAA;YACD,OAAO,GAAG,CAAC,IAAI,CAAA;QACjB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":"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"}