@quicknode/sdk 1.1.3 → 1.1.5

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/cjs/index.js CHANGED
@@ -8,6 +8,7 @@ var exchangeGraphcache = require('@urql/exchange-graphcache');
8
8
  var tslib = require('tslib');
9
9
  var zod = require('zod');
10
10
  var graphql = require('graphql');
11
+ var klona = require('klona');
11
12
  var viem = require('viem');
12
13
  var chains = require('viem/chains');
13
14
 
@@ -407,8 +408,10 @@ function ValidateInput(schema) {
407
408
  };
408
409
  }
409
410
 
410
- // Takes the generated query document and modifies the chain name to the one passed in
411
- function modifyQueryForChain(chainName, documentNode) {
411
+ function modifyQueryForChain(chainName, originalDocumentNode) {
412
+ // We need to deep clone the document node in order to not mutate the query so it is consistent
413
+ // across multiple calls to the same query with different chains
414
+ const documentNode = klona.klona(originalDocumentNode);
412
415
  documentNode.definitions = documentNode.definitions.map((doc) => {
413
416
  if (doc.kind === graphql.Kind.OPERATION_DEFINITION) {
414
417
  doc.selectionSet.selections = doc.selectionSet.selections.map((selection) => {
@@ -417,9 +420,7 @@ function modifyQueryForChain(chainName, documentNode) {
417
420
  selection.name.value === 'ethereum') {
418
421
  const updatedChainSelection = {
419
422
  ...selection,
420
- ...{
421
- name: { ...selection.name, value: chainName },
422
- },
423
+ name: { ...selection.name, value: chainName },
423
424
  };
424
425
  return updatedChainSelection;
425
426
  }
@@ -1065,7 +1066,7 @@ tslib.__decorate([
1065
1066
  tslib.__metadata("design:returntype", Promise)
1066
1067
  ], TransactionsController.prototype, "getByHash", null);
1067
1068
 
1068
- var name="@quicknode/sdk";var repository={type:"git",url:"https://github.com/quiknode-labs/qn-oss.git",directory:"packages/libs/sdk"};var license="MIT";var version="1.1.3";var main="./cjs/index.js";var module$1="./esm/src/index.js";var types="./index.d.ts";var sideEffects=false;var dependencies={"@urql/core":"^4.0.7","@urql/exchange-graphcache":"^6.0.4","cross-fetch":"^3.1.6",graphql:"^16.6.0",tslib:"^2.5.3",viem:"^1.2.0",zod:"^3.21.4"};var devDependencies={"@graphql-codegen/cli":"4.0.1","@graphql-codegen/fragment-matcher":"^3.3.1","@graphql-codegen/typed-document-node":"^4.0.1","@graphql-codegen/typescript":"2.8.0","@graphql-codegen/typescript-operations":"^2.5.5","@pollyjs/adapter-node-http":"^6.0.5","@pollyjs/core":"^6.0.5","@pollyjs/persister-fs":"^6.0.5","@types/jest":"^29.5.1","@types/mocha":"^10.0.1","@types/node":"^18.13.0","@types/supertest":"^2.0.12",dotenv:"^16.0.3","eslint-plugin-no-only-tests":"^3.1.0",supertest:"^6.3.3"};var scripts={codegen:"npx graphql-codegen --require dotenv/config"};var exports$1={".":{"import":"./esm/src/index.js",require:"./cjs/index.js"},"./api":{"import":"./esm/src/api/index.js","default":"./cjs/src/api/index.js",types:"./esm/src/api/index.d.ts"},"./core":{"import":"./esm/src/core/index.js","default":"./cjs/src/core/index.js",types:"./esm/src/core/index.d.ts"}};var typesVersions={"*":{api:["./esm/src/api/index.d.ts"],core:["./esm/src/core/index.d.ts"]}};var packageJson = {name:name,repository:repository,license:license,version:version,main:main,module:module$1,types:types,sideEffects:sideEffects,dependencies:dependencies,devDependencies:devDependencies,scripts:scripts,exports:exports$1,typesVersions:typesVersions};
1069
+ var name="@quicknode/sdk";var repository={type:"git",url:"https://github.com/quiknode-labs/qn-oss.git",directory:"packages/libs/sdk"};var license="MIT";var version="1.1.5";var main="./cjs/index.js";var module$1="./esm/src/index.js";var types="./index.d.ts";var sideEffects=false;var dependencies={"@urql/core":"^4.2.0","@urql/exchange-graphcache":"^6.4.0","cross-fetch":"^3.1.6",graphql:"^16.6.0",klona:"^2.0.6",tslib:"^2.5.3",viem:"^1.2.0",zod:"^3.21.4"};var devDependencies={"@graphql-codegen/cli":"4.0.1","@graphql-codegen/fragment-matcher":"^3.3.1","@graphql-codegen/typed-document-node":"^4.0.1","@graphql-codegen/typescript":"2.8.0","@graphql-codegen/typescript-operations":"^2.5.5","@pollyjs/adapter-node-http":"^6.0.5","@pollyjs/core":"^6.0.5","@pollyjs/persister-fs":"^6.0.5","@types/jest":"^29.5.1","@types/mocha":"^10.0.1","@types/node":"^18.13.0","@types/supertest":"^2.0.12",dotenv:"^16.0.3","eslint-plugin-no-only-tests":"^3.1.0",supertest:"^6.3.3"};var scripts={codegen:"npx graphql-codegen --require dotenv/config"};var exports$1={".":{"import":"./esm/src/index.js",require:"./cjs/index.js"},"./api":{"import":"./esm/src/api/index.js","default":"./cjs/src/api/index.js",types:"./esm/src/api/index.d.ts"},"./core":{"import":"./esm/src/core/index.js","default":"./cjs/src/core/index.js",types:"./esm/src/core/index.d.ts"}};var typesVersions={"*":{api:["./esm/src/api/index.d.ts"],core:["./esm/src/core/index.d.ts"]}};var packageJson = {name:name,repository:repository,license:license,version:version,main:main,module:module$1,types:types,sideEffects:sideEffects,dependencies:dependencies,devDependencies:devDependencies,scripts:scripts,exports:exports$1,typesVersions:typesVersions};
1069
1070
 
1070
1071
  class API {
1071
1072
  constructor({ graphApiKey, additionalHeaders, defaultChain, } = {}) {
@@ -1096,6 +1097,17 @@ class API {
1096
1097
  const useAddressAsKey = (data) => `${data['address']}`;
1097
1098
  const useTransactionHashAndIndex = (data) => `${data['transactionHash']}:${data['transferIndex']}`;
1098
1099
  const urqlCache = exchangeGraphcache.cacheExchange({
1100
+ logger: (severity, message) => {
1101
+ if (severity === 'warn' && process.env['SHOW_URQL_WARNINGS']) {
1102
+ console.warn(message);
1103
+ }
1104
+ if (severity === 'debug' && process.env['SHOW_URQL_DEBUG']) {
1105
+ console.debug(message);
1106
+ }
1107
+ if (severity === 'error') {
1108
+ console.error(message);
1109
+ }
1110
+ },
1099
1111
  keys: {
1100
1112
  EVMSchemaType: () => null,
1101
1113
  Collection: useAddressAsKey,
@@ -1,3 +1,3 @@
1
- var name="@quicknode/sdk";var repository={type:"git",url:"https://github.com/quiknode-labs/qn-oss.git",directory:"packages/libs/sdk"};var license="MIT";var version="1.1.3";var main="./cjs/index.js";var module="./esm/src/index.js";var types="./index.d.ts";var sideEffects=false;var dependencies={"@urql/core":"^4.0.7","@urql/exchange-graphcache":"^6.0.4","cross-fetch":"^3.1.6",graphql:"^16.6.0",tslib:"^2.5.3",viem:"^1.2.0",zod:"^3.21.4"};var devDependencies={"@graphql-codegen/cli":"4.0.1","@graphql-codegen/fragment-matcher":"^3.3.1","@graphql-codegen/typed-document-node":"^4.0.1","@graphql-codegen/typescript":"2.8.0","@graphql-codegen/typescript-operations":"^2.5.5","@pollyjs/adapter-node-http":"^6.0.5","@pollyjs/core":"^6.0.5","@pollyjs/persister-fs":"^6.0.5","@types/jest":"^29.5.1","@types/mocha":"^10.0.1","@types/node":"^18.13.0","@types/supertest":"^2.0.12",dotenv:"^16.0.3","eslint-plugin-no-only-tests":"^3.1.0",supertest:"^6.3.3"};var scripts={codegen:"npx graphql-codegen --require dotenv/config"};var exports={".":{"import":"./esm/src/index.js",require:"./cjs/index.js"},"./api":{"import":"./esm/src/api/index.js","default":"./cjs/src/api/index.js",types:"./esm/src/api/index.d.ts"},"./core":{"import":"./esm/src/core/index.js","default":"./cjs/src/core/index.js",types:"./esm/src/core/index.d.ts"}};var typesVersions={"*":{api:["./esm/src/api/index.d.ts"],core:["./esm/src/core/index.d.ts"]}};var packageJson = {name:name,repository:repository,license:license,version:version,main:main,module:module,types:types,sideEffects:sideEffects,dependencies:dependencies,devDependencies:devDependencies,scripts:scripts,exports:exports,typesVersions:typesVersions};
1
+ var name="@quicknode/sdk";var repository={type:"git",url:"https://github.com/quiknode-labs/qn-oss.git",directory:"packages/libs/sdk"};var license="MIT";var version="1.1.5";var main="./cjs/index.js";var module="./esm/src/index.js";var types="./index.d.ts";var sideEffects=false;var dependencies={"@urql/core":"^4.2.0","@urql/exchange-graphcache":"^6.4.0","cross-fetch":"^3.1.6",graphql:"^16.6.0",klona:"^2.0.6",tslib:"^2.5.3",viem:"^1.2.0",zod:"^3.21.4"};var devDependencies={"@graphql-codegen/cli":"4.0.1","@graphql-codegen/fragment-matcher":"^3.3.1","@graphql-codegen/typed-document-node":"^4.0.1","@graphql-codegen/typescript":"2.8.0","@graphql-codegen/typescript-operations":"^2.5.5","@pollyjs/adapter-node-http":"^6.0.5","@pollyjs/core":"^6.0.5","@pollyjs/persister-fs":"^6.0.5","@types/jest":"^29.5.1","@types/mocha":"^10.0.1","@types/node":"^18.13.0","@types/supertest":"^2.0.12",dotenv:"^16.0.3","eslint-plugin-no-only-tests":"^3.1.0",supertest:"^6.3.3"};var scripts={codegen:"npx graphql-codegen --require dotenv/config"};var exports={".":{"import":"./esm/src/index.js",require:"./cjs/index.js"},"./api":{"import":"./esm/src/api/index.js","default":"./cjs/src/api/index.js",types:"./esm/src/api/index.d.ts"},"./core":{"import":"./esm/src/core/index.js","default":"./cjs/src/core/index.js",types:"./esm/src/core/index.d.ts"}};var typesVersions={"*":{api:["./esm/src/api/index.d.ts"],core:["./esm/src/core/index.d.ts"]}};var packageJson = {name:name,repository:repository,license:license,version:version,main:main,module:module,types:types,sideEffects:sideEffects,dependencies:dependencies,devDependencies:devDependencies,scripts:scripts,exports:exports,typesVersions:typesVersions};
2
2
 
3
3
  export { packageJson as default, dependencies, devDependencies, exports, license, main, module, name, repository, scripts, sideEffects, types, typesVersions, version };
@@ -40,6 +40,17 @@ class API {
40
40
  const useAddressAsKey = (data) => `${data['address']}`;
41
41
  const useTransactionHashAndIndex = (data) => `${data['transactionHash']}:${data['transferIndex']}`;
42
42
  const urqlCache = cacheExchange({
43
+ logger: (severity, message) => {
44
+ if (severity === 'warn' && process.env['SHOW_URQL_WARNINGS']) {
45
+ console.warn(message);
46
+ }
47
+ if (severity === 'debug' && process.env['SHOW_URQL_DEBUG']) {
48
+ console.debug(message);
49
+ }
50
+ if (severity === 'error') {
51
+ console.error(message);
52
+ }
53
+ },
43
54
  keys: {
44
55
  EVMSchemaType: () => null,
45
56
  Collection: useAddressAsKey,
@@ -1,7 +1,10 @@
1
1
  import { Kind } from 'graphql';
2
+ import { klona } from 'klona';
2
3
 
3
- // Takes the generated query document and modifies the chain name to the one passed in
4
- function modifyQueryForChain(chainName, documentNode) {
4
+ function modifyQueryForChain(chainName, originalDocumentNode) {
5
+ // We need to deep clone the document node in order to not mutate the query so it is consistent
6
+ // across multiple calls to the same query with different chains
7
+ const documentNode = klona(originalDocumentNode);
5
8
  documentNode.definitions = documentNode.definitions.map((doc) => {
6
9
  if (doc.kind === Kind.OPERATION_DEFINITION) {
7
10
  doc.selectionSet.selections = doc.selectionSet.selections.map((selection) => {
@@ -10,9 +13,7 @@ function modifyQueryForChain(chainName, documentNode) {
10
13
  selection.name.value === 'ethereum') {
11
14
  const updatedChainSelection = {
12
15
  ...selection,
13
- ...{
14
- name: { ...selection.name, value: chainName },
15
- },
16
+ name: { ...selection.name, value: chainName },
16
17
  };
17
18
  return updatedChainSelection;
18
19
  }
package/package.json CHANGED
@@ -6,16 +6,17 @@
6
6
  "directory": "packages/libs/sdk"
7
7
  },
8
8
  "license": "MIT",
9
- "version": "1.1.3",
9
+ "version": "1.1.5",
10
10
  "main": "./cjs/index.js",
11
11
  "module": "./esm/src/index.js",
12
12
  "types": "./index.d.ts",
13
13
  "sideEffects": false,
14
14
  "dependencies": {
15
- "@urql/core": "^4.0.7",
16
- "@urql/exchange-graphcache": "^6.0.4",
15
+ "@urql/core": "^4.2.0",
16
+ "@urql/exchange-graphcache": "^6.4.0",
17
17
  "cross-fetch": "^3.1.6",
18
18
  "graphql": "^16.6.0",
19
+ "klona": "^2.0.6",
19
20
  "tslib": "^2.5.3",
20
21
  "viem": "^1.2.0",
21
22
  "zod": "^3.21.4"