@bananapus/nana-sdk-core 1.8.0 → 1.9.0

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.
@@ -1,7 +1,25 @@
1
1
  export declare const BENDYSTRAW_TIMEOUT_MS = 15000;
2
2
  export declare const MAX_BENDYSTRAW_RESPONSE_BYTES: number;
3
3
  export declare const BENDYSTRAW_PROJECT_REF_BATCH_SIZE = 200;
4
+ export declare const BENDYSTRAW_CACHE_TTL_MS: {
5
+ readonly live: 15000;
6
+ readonly standard: 30000;
7
+ readonly stable: 60000;
8
+ };
4
9
  export type BendystrawFilter = Record<string, unknown>;
10
+ export type BendystrawNetwork = "mainnet" | "testnet";
11
+ export type BendystrawCachePolicy = keyof typeof BENDYSTRAW_CACHE_TTL_MS;
12
+ export type BendystrawValidator<T> = (value: unknown) => value is T;
13
+ export type BendystrawNetworkSelection = {
14
+ chainId?: number;
15
+ defaultNetwork?: BendystrawNetwork;
16
+ network?: BendystrawNetwork;
17
+ variables?: unknown;
18
+ };
19
+ export type BendystrawEndpoints = {
20
+ mainnet: string;
21
+ testnet: string;
22
+ };
5
23
  export type BendystrawProjectRef = {
6
24
  chainId: number;
7
25
  projectId: number;
@@ -16,13 +34,43 @@ export declare class BendystrawRequestError extends Error {
16
34
  readonly status?: number | undefined;
17
35
  constructor(message: string, status?: number | undefined);
18
36
  }
19
- export type BendystrawRequestOptions = {
37
+ export type BendystrawRequestOptions<TResult = unknown, TVariables extends object = Record<string, never>> = {
20
38
  fetch?: typeof fetch;
21
39
  maxResponseBytes?: number;
40
+ operationName?: string;
22
41
  retryDelaysMs?: readonly number[];
23
42
  signal?: AbortSignal;
24
43
  timeoutMs?: number;
44
+ validateData?: BendystrawValidator<TResult>;
45
+ validateVariables?: BendystrawValidator<TVariables>;
25
46
  };
47
+ /**
48
+ * Resolve the Bendystraw network for an operation from every chain selector in
49
+ * its variables. Unknown chains, mixed networks, and explicit contradictions
50
+ * fail closed instead of silently querying the wrong index.
51
+ */
52
+ export declare function resolveBendystrawNetwork(selection?: BendystrawNetworkSelection): BendystrawNetwork;
53
+ /** Normalize a Bendystraw origin or endpoint to one canonical GraphQL URL. */
54
+ export declare function normalizeBendystrawEndpoint(endpoint: string): string;
55
+ /** Select and normalize the endpoint for the operation's resolved network. */
56
+ export declare function selectBendystrawEndpoint(endpoints: BendystrawEndpoints, selection?: BendystrawNetworkSelection): string;
57
+ export declare function isBendystrawRecord(value: unknown): value is Record<string, unknown>;
58
+ /** Build a lightweight guard for the required root fields of an operation. */
59
+ export declare function bendystrawDataHasFields<const TKey extends string>(...fields: readonly TKey[]): BendystrawValidator<Record<TKey, unknown>>;
60
+ export declare function assertBendystrawData<T>(value: unknown, validator: BendystrawValidator<T>, operationName?: string): T;
61
+ export declare function assertBendystrawVariables<T extends object>(value: unknown, validator: BendystrawValidator<T>, operationName?: string): T;
62
+ /**
63
+ * Shared freshness vocabulary for clients. The transport does not cache.
64
+ *
65
+ * - `live`: balances, activity, and mutable project state.
66
+ * - `standard`: lists, search, and aggregate charts.
67
+ * - `stable`: metadata and historical records.
68
+ *
69
+ * Writes should invalidate affected reads. An indexer failure may fall back to
70
+ * an authoritative RPC read only when the fallback preserves the same scoped
71
+ * identity; failures must never be converted into zero or empty data.
72
+ */
73
+ export declare function bendystrawCacheTtl(policy: BendystrawCachePolicy): number;
26
74
  /**
27
75
  * Build an explicit conjunction for one versioned deployment. Keeping each
28
76
  * identity field in its own `AND` member prevents accidental project/chain
@@ -53,5 +101,5 @@ export declare function matchesBendystrawProjectRef(row: BendystrawProjectRow, r
53
101
  * invalid envelopes, invalid content types, oversized bodies, and caller
54
102
  * cancellation fail closed without being retried.
55
103
  */
56
- export declare function requestBendystraw<TResult, TVariables extends object = Record<string, never>>(endpoint: string, query: string, variables: TVariables, options?: BendystrawRequestOptions): Promise<TResult>;
104
+ export declare function requestBendystraw<TResult, TVariables extends object = Record<string, never>>(endpoint: string, query: string, variables: TVariables, options?: BendystrawRequestOptions<TResult, TVariables>): Promise<TResult>;
57
105
  //# sourceMappingURL=bendystraw.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bendystraw.d.ts","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAC5C,eAAO,MAAM,6BAA6B,QAAkB,CAAC;AAC7D,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAKrD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvD,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,KAAK;IAG7C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;gBADxB,OAAO,EAAE,MAAM,EACN,MAAM,CAAC,EAAE,MAAM,YAAA;CAK3B;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAmBF;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,oBAAoB,GACxB,gBAAgB,CASlB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,SAAS,oBAAoB,EAAE,GACpC,gBAAgB,CAgBlB;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,SAAS,oBAAoB,EAAE,EACrC,SAAS,SAAoC,GAC5C,gBAAgB,EAAE,CAwBpB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,oBAAoB,EACzB,IAAI,EAAE,SAAS,oBAAoB,EAAE,GACpC,OAAO,CAmBT;AA6DD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EACP,UAAU,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAEjD,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,UAAU,EACrB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,OAAO,CAAC,CA+FlB"}
1
+ {"version":3,"file":"bendystraw.d.ts","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BendystrawRequestError = exports.BENDYSTRAW_PROJECT_REF_BATCH_SIZE = exports.MAX_BENDYSTRAW_RESPONSE_BYTES = exports.BENDYSTRAW_TIMEOUT_MS = void 0;
3
+ exports.BendystrawRequestError = exports.BENDYSTRAW_CACHE_TTL_MS = exports.BENDYSTRAW_PROJECT_REF_BATCH_SIZE = exports.MAX_BENDYSTRAW_RESPONSE_BYTES = exports.BENDYSTRAW_TIMEOUT_MS = void 0;
4
+ exports.resolveBendystrawNetwork = resolveBendystrawNetwork;
5
+ exports.normalizeBendystrawEndpoint = normalizeBendystrawEndpoint;
6
+ exports.selectBendystrawEndpoint = selectBendystrawEndpoint;
7
+ exports.isBendystrawRecord = isBendystrawRecord;
8
+ exports.bendystrawDataHasFields = bendystrawDataHasFields;
9
+ exports.assertBendystrawData = assertBendystrawData;
10
+ exports.assertBendystrawVariables = assertBendystrawVariables;
11
+ exports.bendystrawCacheTtl = bendystrawCacheTtl;
4
12
  exports.bendystrawProjectRefFilter = bendystrawProjectRefFilter;
5
13
  exports.bendystrawProjectRefsFilter = bendystrawProjectRefsFilter;
6
14
  exports.bendystrawProjectRefsFilters = bendystrawProjectRefsFilters;
7
15
  exports.matchesBendystrawProjectRef = matchesBendystrawProjectRef;
8
16
  exports.requestBendystraw = requestBendystraw;
17
+ const constants_js_1 = require("../constants.js");
9
18
  exports.BENDYSTRAW_TIMEOUT_MS = 15_000;
10
19
  exports.MAX_BENDYSTRAW_RESPONSE_BYTES = 5 * 1024 * 1024;
11
20
  exports.BENDYSTRAW_PROJECT_REF_BATCH_SIZE = 200;
21
+ exports.BENDYSTRAW_CACHE_TTL_MS = {
22
+ live: 15_000,
23
+ standard: 30_000,
24
+ stable: 60_000,
25
+ };
12
26
  const RETRY_DELAYS_MS = [250, 750];
13
27
  const RETRYABLE_STATUSES = new Set([408, 429, 500, 502, 503, 504]);
14
28
  class BendystrawRequestError extends Error {
@@ -19,6 +33,123 @@ class BendystrawRequestError extends Error {
19
33
  }
20
34
  }
21
35
  exports.BendystrawRequestError = BendystrawRequestError;
36
+ function collectBendystrawChainIds(value, chainIds, depth = 0) {
37
+ if (value === null || typeof value !== "object")
38
+ return;
39
+ if (depth > 12) {
40
+ throw new TypeError("Bendystraw variables exceed the nesting limit");
41
+ }
42
+ if (Array.isArray(value)) {
43
+ for (const item of value) {
44
+ collectBendystrawChainIds(item, chainIds, depth + 1);
45
+ }
46
+ return;
47
+ }
48
+ for (const [key, item] of Object.entries(value)) {
49
+ if (key === "chainId" || key === "chainId_in") {
50
+ const candidates = Array.isArray(item) ? item : [item];
51
+ for (const candidate of candidates) {
52
+ const chainId = typeof candidate === "string" && candidate.trim()
53
+ ? Number(candidate)
54
+ : candidate;
55
+ if (!Number.isSafeInteger(chainId) || Number(chainId) <= 0) {
56
+ throw new TypeError(`Invalid Bendystraw ${key}`);
57
+ }
58
+ chainIds.add(Number(chainId));
59
+ }
60
+ }
61
+ else {
62
+ collectBendystrawChainIds(item, chainIds, depth + 1);
63
+ }
64
+ }
65
+ }
66
+ function networkForChainId(chainId) {
67
+ const metadata = constants_js_1.JB_CHAINS[chainId];
68
+ if (!metadata) {
69
+ throw new TypeError(`Unsupported Bendystraw chain ID: ${chainId}`);
70
+ }
71
+ return metadata.chain.testnet ? "testnet" : "mainnet";
72
+ }
73
+ /**
74
+ * Resolve the Bendystraw network for an operation from every chain selector in
75
+ * its variables. Unknown chains, mixed networks, and explicit contradictions
76
+ * fail closed instead of silently querying the wrong index.
77
+ */
78
+ function resolveBendystrawNetwork(selection = {}) {
79
+ const chainIds = new Set();
80
+ if (selection.chainId !== undefined) {
81
+ if (!Number.isSafeInteger(selection.chainId) || selection.chainId <= 0) {
82
+ throw new TypeError("Invalid Bendystraw chainId");
83
+ }
84
+ chainIds.add(selection.chainId);
85
+ }
86
+ collectBendystrawChainIds(selection.variables, chainIds);
87
+ const inferred = new Set([...chainIds].map((chainId) => networkForChainId(chainId)));
88
+ if (inferred.size > 1) {
89
+ throw new TypeError("A Bendystraw request cannot mix mainnet and testnet chains");
90
+ }
91
+ const inferredNetwork = [...inferred][0];
92
+ if (selection.network &&
93
+ inferredNetwork &&
94
+ selection.network !== inferredNetwork) {
95
+ throw new TypeError(`Bendystraw network ${selection.network} conflicts with ${inferredNetwork} chain variables`);
96
+ }
97
+ return (selection.network ??
98
+ inferredNetwork ??
99
+ selection.defaultNetwork ??
100
+ "mainnet");
101
+ }
102
+ /** Normalize a Bendystraw origin or endpoint to one canonical GraphQL URL. */
103
+ function normalizeBendystrawEndpoint(endpoint) {
104
+ const url = new URL(endpoint);
105
+ if (url.protocol !== "https:" && url.protocol !== "http:") {
106
+ throw new TypeError("Bendystraw endpoint must use HTTP or HTTPS");
107
+ }
108
+ url.pathname = `${url.pathname
109
+ .replace(/\/graphql\/?$/u, "")
110
+ .replace(/\/$/u, "")}/graphql`;
111
+ url.search = "";
112
+ url.hash = "";
113
+ return url.toString();
114
+ }
115
+ /** Select and normalize the endpoint for the operation's resolved network. */
116
+ function selectBendystrawEndpoint(endpoints, selection = {}) {
117
+ return normalizeBendystrawEndpoint(endpoints[resolveBendystrawNetwork(selection)]);
118
+ }
119
+ function isBendystrawRecord(value) {
120
+ return value !== null && typeof value === "object" && !Array.isArray(value);
121
+ }
122
+ /** Build a lightweight guard for the required root fields of an operation. */
123
+ function bendystrawDataHasFields(...fields) {
124
+ return (value) => isBendystrawRecord(value) &&
125
+ fields.every((field) => Object.prototype.hasOwnProperty.call(value, field));
126
+ }
127
+ function assertBendystrawData(value, validator, operationName = "Bendystraw operation") {
128
+ if (!validator(value)) {
129
+ throw new BendystrawRequestError(`${operationName} returned invalid data`, 502);
130
+ }
131
+ return value;
132
+ }
133
+ function assertBendystrawVariables(value, validator, operationName = "Bendystraw operation") {
134
+ if (!validator(value)) {
135
+ throw new BendystrawRequestError(`${operationName} received invalid variables`, 400);
136
+ }
137
+ return value;
138
+ }
139
+ /**
140
+ * Shared freshness vocabulary for clients. The transport does not cache.
141
+ *
142
+ * - `live`: balances, activity, and mutable project state.
143
+ * - `standard`: lists, search, and aggregate charts.
144
+ * - `stable`: metadata and historical records.
145
+ *
146
+ * Writes should invalidate affected reads. An indexer failure may fall back to
147
+ * an authoritative RPC read only when the fallback preserves the same scoped
148
+ * identity; failures must never be converted into zero or empty data.
149
+ */
150
+ function bendystrawCacheTtl(policy) {
151
+ return exports.BENDYSTRAW_CACHE_TTL_MS[policy];
152
+ }
22
153
  function normalizeProjectRef(ref) {
23
154
  const version = ref.version ?? 6;
24
155
  if (!Number.isSafeInteger(ref.chainId) ||
@@ -171,6 +302,9 @@ async function requestBendystraw(endpoint, query, variables, options = {}) {
171
302
  if (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {
172
303
  throw new TypeError("timeoutMs must be positive");
173
304
  }
305
+ if (options.validateVariables) {
306
+ assertBendystrawVariables(variables, options.validateVariables, options.operationName);
307
+ }
174
308
  for (let attempt = 0;; attempt += 1) {
175
309
  const controller = new AbortController();
176
310
  const abort = () => controller.abort(options.signal?.reason);
@@ -185,7 +319,13 @@ async function requestBendystraw(endpoint, query, variables, options = {}) {
185
319
  Accept: "application/graphql-response+json, application/json",
186
320
  "Content-Type": "application/json",
187
321
  },
188
- body: JSON.stringify({ query, variables }),
322
+ body: JSON.stringify({
323
+ query,
324
+ variables,
325
+ ...(options.operationName
326
+ ? { operationName: options.operationName }
327
+ : {}),
328
+ }),
189
329
  signal: controller.signal,
190
330
  });
191
331
  if (RETRYABLE_STATUSES.has(response.status) &&
@@ -213,7 +353,10 @@ async function requestBendystraw(endpoint, query, variables, options = {}) {
213
353
  if (!Object.prototype.hasOwnProperty.call(envelope, "data")) {
214
354
  throw new BendystrawRequestError("Bendystraw response is missing data", 502);
215
355
  }
216
- return envelope.data;
356
+ const data = envelope.data;
357
+ return options.validateData
358
+ ? assertBendystrawData(data, options.validateData, options.operationName)
359
+ : data;
217
360
  }
218
361
  }
219
362
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"bendystraw.js","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bendystraw.js","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,25 @@
1
1
  export declare const BENDYSTRAW_TIMEOUT_MS = 15000;
2
2
  export declare const MAX_BENDYSTRAW_RESPONSE_BYTES: number;
3
3
  export declare const BENDYSTRAW_PROJECT_REF_BATCH_SIZE = 200;
4
+ export declare const BENDYSTRAW_CACHE_TTL_MS: {
5
+ readonly live: 15000;
6
+ readonly standard: 30000;
7
+ readonly stable: 60000;
8
+ };
4
9
  export type BendystrawFilter = Record<string, unknown>;
10
+ export type BendystrawNetwork = "mainnet" | "testnet";
11
+ export type BendystrawCachePolicy = keyof typeof BENDYSTRAW_CACHE_TTL_MS;
12
+ export type BendystrawValidator<T> = (value: unknown) => value is T;
13
+ export type BendystrawNetworkSelection = {
14
+ chainId?: number;
15
+ defaultNetwork?: BendystrawNetwork;
16
+ network?: BendystrawNetwork;
17
+ variables?: unknown;
18
+ };
19
+ export type BendystrawEndpoints = {
20
+ mainnet: string;
21
+ testnet: string;
22
+ };
5
23
  export type BendystrawProjectRef = {
6
24
  chainId: number;
7
25
  projectId: number;
@@ -16,13 +34,43 @@ export declare class BendystrawRequestError extends Error {
16
34
  readonly status?: number | undefined;
17
35
  constructor(message: string, status?: number | undefined);
18
36
  }
19
- export type BendystrawRequestOptions = {
37
+ export type BendystrawRequestOptions<TResult = unknown, TVariables extends object = Record<string, never>> = {
20
38
  fetch?: typeof fetch;
21
39
  maxResponseBytes?: number;
40
+ operationName?: string;
22
41
  retryDelaysMs?: readonly number[];
23
42
  signal?: AbortSignal;
24
43
  timeoutMs?: number;
44
+ validateData?: BendystrawValidator<TResult>;
45
+ validateVariables?: BendystrawValidator<TVariables>;
25
46
  };
47
+ /**
48
+ * Resolve the Bendystraw network for an operation from every chain selector in
49
+ * its variables. Unknown chains, mixed networks, and explicit contradictions
50
+ * fail closed instead of silently querying the wrong index.
51
+ */
52
+ export declare function resolveBendystrawNetwork(selection?: BendystrawNetworkSelection): BendystrawNetwork;
53
+ /** Normalize a Bendystraw origin or endpoint to one canonical GraphQL URL. */
54
+ export declare function normalizeBendystrawEndpoint(endpoint: string): string;
55
+ /** Select and normalize the endpoint for the operation's resolved network. */
56
+ export declare function selectBendystrawEndpoint(endpoints: BendystrawEndpoints, selection?: BendystrawNetworkSelection): string;
57
+ export declare function isBendystrawRecord(value: unknown): value is Record<string, unknown>;
58
+ /** Build a lightweight guard for the required root fields of an operation. */
59
+ export declare function bendystrawDataHasFields<const TKey extends string>(...fields: readonly TKey[]): BendystrawValidator<Record<TKey, unknown>>;
60
+ export declare function assertBendystrawData<T>(value: unknown, validator: BendystrawValidator<T>, operationName?: string): T;
61
+ export declare function assertBendystrawVariables<T extends object>(value: unknown, validator: BendystrawValidator<T>, operationName?: string): T;
62
+ /**
63
+ * Shared freshness vocabulary for clients. The transport does not cache.
64
+ *
65
+ * - `live`: balances, activity, and mutable project state.
66
+ * - `standard`: lists, search, and aggregate charts.
67
+ * - `stable`: metadata and historical records.
68
+ *
69
+ * Writes should invalidate affected reads. An indexer failure may fall back to
70
+ * an authoritative RPC read only when the fallback preserves the same scoped
71
+ * identity; failures must never be converted into zero or empty data.
72
+ */
73
+ export declare function bendystrawCacheTtl(policy: BendystrawCachePolicy): number;
26
74
  /**
27
75
  * Build an explicit conjunction for one versioned deployment. Keeping each
28
76
  * identity field in its own `AND` member prevents accidental project/chain
@@ -53,5 +101,5 @@ export declare function matchesBendystrawProjectRef(row: BendystrawProjectRow, r
53
101
  * invalid envelopes, invalid content types, oversized bodies, and caller
54
102
  * cancellation fail closed without being retried.
55
103
  */
56
- export declare function requestBendystraw<TResult, TVariables extends object = Record<string, never>>(endpoint: string, query: string, variables: TVariables, options?: BendystrawRequestOptions): Promise<TResult>;
104
+ export declare function requestBendystraw<TResult, TVariables extends object = Record<string, never>>(endpoint: string, query: string, variables: TVariables, options?: BendystrawRequestOptions<TResult, TVariables>): Promise<TResult>;
57
105
  //# sourceMappingURL=bendystraw.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bendystraw.d.ts","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAC5C,eAAO,MAAM,6BAA6B,QAAkB,CAAC;AAC7D,eAAO,MAAM,iCAAiC,MAAM,CAAC;AAKrD,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEvD,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,qBAAa,sBAAuB,SAAQ,KAAK;IAG7C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;gBADxB,OAAO,EAAE,MAAM,EACN,MAAM,CAAC,EAAE,MAAM,YAAA;CAK3B;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAmBF;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,oBAAoB,GACxB,gBAAgB,CASlB;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,SAAS,oBAAoB,EAAE,GACpC,gBAAgB,CAgBlB;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,SAAS,oBAAoB,EAAE,EACrC,SAAS,SAAoC,GAC5C,gBAAgB,EAAE,CAwBpB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,oBAAoB,EACzB,IAAI,EAAE,SAAS,oBAAoB,EAAE,GACpC,OAAO,CAmBT;AA6DD;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EACP,UAAU,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAEjD,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,UAAU,EACrB,OAAO,GAAE,wBAA6B,GACrC,OAAO,CAAC,OAAO,CAAC,CA+FlB"}
1
+ {"version":3,"file":"bendystraw.d.ts","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
+ import { JB_CHAINS } from "../constants.js";
1
2
  export const BENDYSTRAW_TIMEOUT_MS = 15_000;
2
3
  export const MAX_BENDYSTRAW_RESPONSE_BYTES = 5 * 1024 * 1024;
3
4
  export const BENDYSTRAW_PROJECT_REF_BATCH_SIZE = 200;
5
+ export const BENDYSTRAW_CACHE_TTL_MS = {
6
+ live: 15_000,
7
+ standard: 30_000,
8
+ stable: 60_000,
9
+ };
4
10
  const RETRY_DELAYS_MS = [250, 750];
5
11
  const RETRYABLE_STATUSES = new Set([408, 429, 500, 502, 503, 504]);
6
12
  export class BendystrawRequestError extends Error {
@@ -10,6 +16,123 @@ export class BendystrawRequestError extends Error {
10
16
  this.name = "BendystrawRequestError";
11
17
  }
12
18
  }
19
+ function collectBendystrawChainIds(value, chainIds, depth = 0) {
20
+ if (value === null || typeof value !== "object")
21
+ return;
22
+ if (depth > 12) {
23
+ throw new TypeError("Bendystraw variables exceed the nesting limit");
24
+ }
25
+ if (Array.isArray(value)) {
26
+ for (const item of value) {
27
+ collectBendystrawChainIds(item, chainIds, depth + 1);
28
+ }
29
+ return;
30
+ }
31
+ for (const [key, item] of Object.entries(value)) {
32
+ if (key === "chainId" || key === "chainId_in") {
33
+ const candidates = Array.isArray(item) ? item : [item];
34
+ for (const candidate of candidates) {
35
+ const chainId = typeof candidate === "string" && candidate.trim()
36
+ ? Number(candidate)
37
+ : candidate;
38
+ if (!Number.isSafeInteger(chainId) || Number(chainId) <= 0) {
39
+ throw new TypeError(`Invalid Bendystraw ${key}`);
40
+ }
41
+ chainIds.add(Number(chainId));
42
+ }
43
+ }
44
+ else {
45
+ collectBendystrawChainIds(item, chainIds, depth + 1);
46
+ }
47
+ }
48
+ }
49
+ function networkForChainId(chainId) {
50
+ const metadata = JB_CHAINS[chainId];
51
+ if (!metadata) {
52
+ throw new TypeError(`Unsupported Bendystraw chain ID: ${chainId}`);
53
+ }
54
+ return metadata.chain.testnet ? "testnet" : "mainnet";
55
+ }
56
+ /**
57
+ * Resolve the Bendystraw network for an operation from every chain selector in
58
+ * its variables. Unknown chains, mixed networks, and explicit contradictions
59
+ * fail closed instead of silently querying the wrong index.
60
+ */
61
+ export function resolveBendystrawNetwork(selection = {}) {
62
+ const chainIds = new Set();
63
+ if (selection.chainId !== undefined) {
64
+ if (!Number.isSafeInteger(selection.chainId) || selection.chainId <= 0) {
65
+ throw new TypeError("Invalid Bendystraw chainId");
66
+ }
67
+ chainIds.add(selection.chainId);
68
+ }
69
+ collectBendystrawChainIds(selection.variables, chainIds);
70
+ const inferred = new Set([...chainIds].map((chainId) => networkForChainId(chainId)));
71
+ if (inferred.size > 1) {
72
+ throw new TypeError("A Bendystraw request cannot mix mainnet and testnet chains");
73
+ }
74
+ const inferredNetwork = [...inferred][0];
75
+ if (selection.network &&
76
+ inferredNetwork &&
77
+ selection.network !== inferredNetwork) {
78
+ throw new TypeError(`Bendystraw network ${selection.network} conflicts with ${inferredNetwork} chain variables`);
79
+ }
80
+ return (selection.network ??
81
+ inferredNetwork ??
82
+ selection.defaultNetwork ??
83
+ "mainnet");
84
+ }
85
+ /** Normalize a Bendystraw origin or endpoint to one canonical GraphQL URL. */
86
+ export function normalizeBendystrawEndpoint(endpoint) {
87
+ const url = new URL(endpoint);
88
+ if (url.protocol !== "https:" && url.protocol !== "http:") {
89
+ throw new TypeError("Bendystraw endpoint must use HTTP or HTTPS");
90
+ }
91
+ url.pathname = `${url.pathname
92
+ .replace(/\/graphql\/?$/u, "")
93
+ .replace(/\/$/u, "")}/graphql`;
94
+ url.search = "";
95
+ url.hash = "";
96
+ return url.toString();
97
+ }
98
+ /** Select and normalize the endpoint for the operation's resolved network. */
99
+ export function selectBendystrawEndpoint(endpoints, selection = {}) {
100
+ return normalizeBendystrawEndpoint(endpoints[resolveBendystrawNetwork(selection)]);
101
+ }
102
+ export function isBendystrawRecord(value) {
103
+ return value !== null && typeof value === "object" && !Array.isArray(value);
104
+ }
105
+ /** Build a lightweight guard for the required root fields of an operation. */
106
+ export function bendystrawDataHasFields(...fields) {
107
+ return (value) => isBendystrawRecord(value) &&
108
+ fields.every((field) => Object.prototype.hasOwnProperty.call(value, field));
109
+ }
110
+ export function assertBendystrawData(value, validator, operationName = "Bendystraw operation") {
111
+ if (!validator(value)) {
112
+ throw new BendystrawRequestError(`${operationName} returned invalid data`, 502);
113
+ }
114
+ return value;
115
+ }
116
+ export function assertBendystrawVariables(value, validator, operationName = "Bendystraw operation") {
117
+ if (!validator(value)) {
118
+ throw new BendystrawRequestError(`${operationName} received invalid variables`, 400);
119
+ }
120
+ return value;
121
+ }
122
+ /**
123
+ * Shared freshness vocabulary for clients. The transport does not cache.
124
+ *
125
+ * - `live`: balances, activity, and mutable project state.
126
+ * - `standard`: lists, search, and aggregate charts.
127
+ * - `stable`: metadata and historical records.
128
+ *
129
+ * Writes should invalidate affected reads. An indexer failure may fall back to
130
+ * an authoritative RPC read only when the fallback preserves the same scoped
131
+ * identity; failures must never be converted into zero or empty data.
132
+ */
133
+ export function bendystrawCacheTtl(policy) {
134
+ return BENDYSTRAW_CACHE_TTL_MS[policy];
135
+ }
13
136
  function normalizeProjectRef(ref) {
14
137
  const version = ref.version ?? 6;
15
138
  if (!Number.isSafeInteger(ref.chainId) ||
@@ -162,6 +285,9 @@ export async function requestBendystraw(endpoint, query, variables, options = {}
162
285
  if (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {
163
286
  throw new TypeError("timeoutMs must be positive");
164
287
  }
288
+ if (options.validateVariables) {
289
+ assertBendystrawVariables(variables, options.validateVariables, options.operationName);
290
+ }
165
291
  for (let attempt = 0;; attempt += 1) {
166
292
  const controller = new AbortController();
167
293
  const abort = () => controller.abort(options.signal?.reason);
@@ -176,7 +302,13 @@ export async function requestBendystraw(endpoint, query, variables, options = {}
176
302
  Accept: "application/graphql-response+json, application/json",
177
303
  "Content-Type": "application/json",
178
304
  },
179
- body: JSON.stringify({ query, variables }),
305
+ body: JSON.stringify({
306
+ query,
307
+ variables,
308
+ ...(options.operationName
309
+ ? { operationName: options.operationName }
310
+ : {}),
311
+ }),
180
312
  signal: controller.signal,
181
313
  });
182
314
  if (RETRYABLE_STATUSES.has(response.status) &&
@@ -204,7 +336,10 @@ export async function requestBendystraw(endpoint, query, variables, options = {}
204
336
  if (!Object.prototype.hasOwnProperty.call(envelope, "data")) {
205
337
  throw new BendystrawRequestError("Bendystraw response is missing data", 502);
206
338
  }
207
- return envelope.data;
339
+ const data = envelope.data;
340
+ return options.validateData
341
+ ? assertBendystrawData(data, options.validateData, options.operationName)
342
+ : data;
208
343
  }
209
344
  }
210
345
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"bendystraw.js","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bendystraw.js","sourceRoot":"","sources":["../../../src/utils/bendystraw.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bananapus/nana-sdk-core",
3
- "version": "1.8.0",
3
+ "version": "1.9.0",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",