@codex-data/sdk 0.5.7
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/README.md +104 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +32 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/graphql.d.ts +7438 -0
- package/dist/resources/graphql.d.ts.map +1 -0
- package/dist/resources/graphql.js +1314 -0
- package/dist/resources/graphql.js.map +1 -0
- package/dist/resources/graphql.schema.json +50830 -0
- package/dist/resources/graphql.ts +7976 -0
- package/dist/resources/schema.graphql +10393 -0
- package/dist/sdk/Mutation.d.ts +14 -0
- package/dist/sdk/Mutation.d.ts.map +1 -0
- package/dist/sdk/Mutation.js +22 -0
- package/dist/sdk/Mutation.js.map +1 -0
- package/dist/sdk/Query.d.ts +22 -0
- package/dist/sdk/Query.d.ts.map +1 -0
- package/dist/sdk/Query.js +35 -0
- package/dist/sdk/Query.js.map +1 -0
- package/dist/sdk/Query.test.d.ts +2 -0
- package/dist/sdk/Query.test.d.ts.map +1 -0
- package/dist/sdk/Query.test.js +50 -0
- package/dist/sdk/Query.test.js.map +1 -0
- package/dist/sdk/Subscribe.d.ts +17 -0
- package/dist/sdk/Subscribe.d.ts.map +1 -0
- package/dist/sdk/Subscribe.js +28 -0
- package/dist/sdk/Subscribe.js.map +1 -0
- package/dist/sdk/generated/fragment-masking.d.ts +16 -0
- package/dist/sdk/generated/fragment-masking.d.ts.map +1 -0
- package/dist/sdk/generated/fragment-masking.js +23 -0
- package/dist/sdk/generated/fragment-masking.js.map +1 -0
- package/dist/sdk/generated/gql.d.ts +243 -0
- package/dist/sdk/generated/gql.d.ts.map +1 -0
- package/dist/sdk/generated/gql.js +70 -0
- package/dist/sdk/generated/gql.js.map +1 -0
- package/dist/sdk/generated/graphql.d.ts +11765 -0
- package/dist/sdk/generated/graphql.d.ts.map +1 -0
- package/dist/sdk/generated/graphql.js +1338 -0
- package/dist/sdk/generated/graphql.js.map +1 -0
- package/dist/sdk/generated/index.d.ts +3 -0
- package/dist/sdk/generated/index.d.ts.map +1 -0
- package/dist/sdk/generated/index.js +19 -0
- package/dist/sdk/generated/index.js.map +1 -0
- package/dist/sdk/index.d.ts +23 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/index.js +76 -0
- package/dist/sdk/index.js.map +1 -0
- package/dist/sdk/index.test.d.ts +2 -0
- package/dist/sdk/index.test.d.ts.map +1 -0
- package/dist/sdk/index.test.js +78 -0
- package/dist/sdk/index.test.js.map +1 -0
- package/dist/sdk/invariant.d.ts +2 -0
- package/dist/sdk/invariant.d.ts.map +1 -0
- package/dist/sdk/invariant.js +31 -0
- package/dist/sdk/invariant.js.map +1 -0
- package/package.json +60 -0
- package/src/index.ts +2 -0
- package/src/resources/.keep +0 -0
- package/src/resources/graphql.schema.json +50830 -0
- package/src/resources/graphql.ts +7976 -0
- package/src/resources/schema.graphql +10393 -0
- package/src/sdk/Mutation.ts +15 -0
- package/src/sdk/Query.test.ts +40 -0
- package/src/sdk/Query.ts +65 -0
- package/src/sdk/Subscribe.ts +61 -0
- package/src/sdk/generated/fragment-masking.ts +66 -0
- package/src/sdk/generated/gql.ts +157 -0
- package/src/sdk/generated/graphql.ts +8215 -0
- package/src/sdk/generated/index.ts +2 -0
- package/src/sdk/graphql/CreateWebhooks.graphql +1145 -0
- package/src/sdk/graphql/DeleteWebhooks.graphql +5 -0
- package/src/sdk/graphql/FilterExchanges.graphql +23 -0
- package/src/sdk/graphql/FilterPairs.graphql +124 -0
- package/src/sdk/graphql/FilterTokens.graphql +129 -0
- package/src/sdk/graphql/GetBars.graphql +32 -0
- package/src/sdk/graphql/GetDetailedPairStats.graphql +941 -0
- package/src/sdk/graphql/GetNetworkStatus.graphql +7 -0
- package/src/sdk/graphql/GetNetworks.graphql +6 -0
- package/src/sdk/graphql/GetPairEvents.graphql +28 -0
- package/src/sdk/graphql/GetPrice.graphql +9 -0
- package/src/sdk/graphql/GetSparklines.graphql +10 -0
- package/src/sdk/graphql/GetSymbol.graphql +11 -0
- package/src/sdk/graphql/GetTokens.graphql +14 -0
- package/src/sdk/graphql/GetWebhooks.graphql +168 -0
- package/src/sdk/graphql/ListPairsForToken.graphql +105 -0
- package/src/sdk/graphql/ListTopTokens.graphql +48 -0
- package/src/sdk/graphql/OnBarsUpdated.graphql +183 -0
- package/src/sdk/graphql/OnDetailedStatsUpdated.graphql +324 -0
- package/src/sdk/graphql/OnEventsCreated.graphql +62 -0
- package/src/sdk/graphql/OnNftAssetsCreated.graphql +29 -0
- package/src/sdk/graphql/OnNftEventsCreated.graphql +83 -0
- package/src/sdk/graphql/OnPairMetadataUpdated.graphql +55 -0
- package/src/sdk/graphql/OnPriceUpdated.graphql +9 -0
- package/src/sdk/index.test.ts +78 -0
- package/src/sdk/index.ts +100 -0
- package/src/sdk/invariant.ts +34 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/generated/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,OAAO,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./fragment-masking"), exports);
|
|
18
|
+
__exportStar(require("./gql"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdk/generated/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAmC;AACnC,wCAAsB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TypedDocumentNode } from "@graphql-typed-document-node/core";
|
|
2
|
+
import { Variables } from "graphql-request";
|
|
3
|
+
import { ExecutionResult, Sink } from "graphql-ws";
|
|
4
|
+
import { Mutation } from "./Mutation";
|
|
5
|
+
import { Query } from "./Query";
|
|
6
|
+
import { Subscribe } from "./Subscribe";
|
|
7
|
+
export type CleanupFunction = () => void;
|
|
8
|
+
export declare class Codex {
|
|
9
|
+
private apiKey;
|
|
10
|
+
private apiUrl;
|
|
11
|
+
private apiRealtimeUrl;
|
|
12
|
+
private client;
|
|
13
|
+
private wsClient;
|
|
14
|
+
queries: Query;
|
|
15
|
+
mutations: Mutation;
|
|
16
|
+
subscriptions: Subscribe;
|
|
17
|
+
constructor(apiKey: string, apiUrl?: string, apiRealtimeUrl?: string);
|
|
18
|
+
query<TResults, TVars extends Variables>(doc: TypedDocumentNode<TResults, TVars>, args?: TVars): Promise<TResults>;
|
|
19
|
+
mutation<TResults, TVars extends Variables>(doc: TypedDocumentNode<TResults, TVars>, args?: TVars): Promise<TResults>;
|
|
20
|
+
send<TResults, V extends Variables = Variables>(gqlString: string, args?: V): Promise<TResults>;
|
|
21
|
+
subscribe<TResults, TVars extends Record<string, unknown> = Record<string, never>>(doc: string, args: TVars, sink: Sink<ExecutionResult<TResults>>): CleanupFunction;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAiB,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EAGL,eAAe,EACf,IAAI,EACL,MAAM,YAAY,CAAC;AAIpB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC;AAEzC,qBAAa,KAAK;IAQd,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,cAAc;IATxB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,QAAQ,CAAkB;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,SAAS,EAAE,QAAQ,CAAC;IACpB,aAAa,EAAE,SAAS,CAAC;gBAGtB,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,MAAyC,EACjD,cAAc,GAAE,MAAuC;IAuBpD,KAAK,CAAC,QAAQ,EAAE,KAAK,SAAS,SAAS,EAClD,GAAG,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EACvC,IAAI,GAAE,KAAmB;IASd,QAAQ,CAAC,QAAQ,EAAE,KAAK,SAAS,SAAS,EACrD,GAAG,EAAE,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,EACvC,IAAI,GAAE,KAAmB;IAUd,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,SAAS,GAAG,SAAS,EACzD,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,CAAW;IAMZ,SAAS,CACd,QAAQ,EACR,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAE7D,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,GACpC,eAAe;CAUnB"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.Codex = void 0;
|
|
16
|
+
const graphql_request_1 = require("graphql-request");
|
|
17
|
+
const graphql_ws_1 = require("graphql-ws");
|
|
18
|
+
const isomorphic_ws_1 = __importDefault(require("isomorphic-ws"));
|
|
19
|
+
const invariant_1 = require("./invariant");
|
|
20
|
+
const Mutation_1 = require("./Mutation");
|
|
21
|
+
const Query_1 = require("./Query");
|
|
22
|
+
const Subscribe_1 = require("./Subscribe");
|
|
23
|
+
class Codex {
|
|
24
|
+
constructor(apiKey, apiUrl = `https://graph.codex.io/graphql`, apiRealtimeUrl = `wss://graph.codex.io/graphql`) {
|
|
25
|
+
this.apiKey = apiKey;
|
|
26
|
+
this.apiUrl = apiUrl;
|
|
27
|
+
this.apiRealtimeUrl = apiRealtimeUrl;
|
|
28
|
+
(0, invariant_1.invariant)(this.apiKey, "apiKey must be defined");
|
|
29
|
+
this.queries = new Query_1.Query(this);
|
|
30
|
+
this.mutations = new Mutation_1.Mutation(this);
|
|
31
|
+
this.subscriptions = new Subscribe_1.Subscribe(this);
|
|
32
|
+
this.client = new graphql_request_1.GraphQLClient(this.apiUrl, {
|
|
33
|
+
method: "POST",
|
|
34
|
+
headers: new Headers({
|
|
35
|
+
"Content-Type": "application/json",
|
|
36
|
+
Authorization: this.apiKey,
|
|
37
|
+
"X-Apollo-Operation-Name": "query",
|
|
38
|
+
}),
|
|
39
|
+
});
|
|
40
|
+
this.wsClient = (0, graphql_ws_1.createClient)({
|
|
41
|
+
webSocketImpl: isomorphic_ws_1.default,
|
|
42
|
+
url: this.apiRealtimeUrl,
|
|
43
|
+
connectionParams: {
|
|
44
|
+
Authorization: this.apiKey,
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
query(doc, args = {}) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
const res = yield this.client.request(doc, ...[args]);
|
|
51
|
+
return res;
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
mutation(doc, args = {}) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
56
|
+
const res = yield this.client.request(doc, ...[args]);
|
|
57
|
+
return res;
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
// Very simple network based fetch implementation, no compilation required
|
|
61
|
+
send(gqlString, args = {}) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
const res = yield this.client.request(gqlString, args);
|
|
64
|
+
return res;
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
subscribe(doc, args, sink) {
|
|
68
|
+
const cleanup = this.wsClient.subscribe({
|
|
69
|
+
query: doc,
|
|
70
|
+
variables: args,
|
|
71
|
+
}, sink);
|
|
72
|
+
return cleanup;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.Codex = Codex;
|
|
76
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,qDAA2D;AAE3D,2CAKoB;AACpB,kEAAsC;AAEtC,2CAAwC;AACxC,yCAAsC;AACtC,mCAAgC;AAChC,2CAAwC;AAIxC,MAAa,KAAK;IAOhB,YACU,MAAc,EACd,SAAiB,gCAAgC,EACjD,iBAAyB,8BAA8B;QAFvD,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAA2C;QACjD,mBAAc,GAAd,cAAc,CAAyC;QAE/D,IAAA,qBAAS,EAAC,IAAI,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,MAAM,EAAE;YAC3C,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,IAAI,OAAO,CAAC;gBACnB,cAAc,EAAE,kBAAkB;gBAClC,aAAa,EAAE,IAAI,CAAC,MAAM;gBAC1B,yBAAyB,EAAE,OAAO;aACnC,CAAC;SACH,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,IAAA,yBAAY,EAAC;YAC3B,aAAa,EAAE,uBAAS;YACxB,GAAG,EAAE,IAAI,CAAC,cAAc;YACxB,gBAAgB,EAAE;gBAChB,aAAa,EAAE,IAAI,CAAC,MAAM;aAC3B;SACF,CAAC,CAAC;IACL,CAAC;IAEY,KAAK,CAChB,GAAuC,EACvC,OAAc,EAAW;;YAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACnC,GAAG,EACH,GAAI,CAAC,IAAI,CAAsD,CAChE,CAAC;YACF,OAAO,GAAe,CAAC;QACzB,CAAC;KAAA;IAEY,QAAQ,CACnB,GAAuC,EACvC,OAAc,EAAW;;YAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CACnC,GAAG,EACH,GAAI,CAAC,IAAI,CAAsD,CAChE,CAAC;YACF,OAAO,GAAe,CAAC;QACzB,CAAC;KAAA;IAED,0EAA0E;IAC7D,IAAI,CACf,SAAiB,EACjB,OAAU,EAAO;;YAEjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAW,SAAS,EAAE,IAAI,CAAC,CAAC;YACjE,OAAO,GAAG,CAAC;QACb,CAAC;KAAA;IAEM,SAAS,CAId,GAAW,EACX,IAAW,EACX,IAAqC;QAErC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CACrC;YACE,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,IAAI;SAChB,EACD,IAAI,CACL,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAjFD,sBAiFC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/sdk/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const index_1 = require("./index");
|
|
13
|
+
const getNetworksDocument = {
|
|
14
|
+
kind: "Document",
|
|
15
|
+
definitions: [
|
|
16
|
+
{
|
|
17
|
+
kind: "OperationDefinition",
|
|
18
|
+
operation: "query",
|
|
19
|
+
name: { kind: "Name", value: "Networks" },
|
|
20
|
+
selectionSet: {
|
|
21
|
+
kind: "SelectionSet",
|
|
22
|
+
selections: [
|
|
23
|
+
{
|
|
24
|
+
kind: "Field",
|
|
25
|
+
name: { kind: "Name", value: "getNetworks" },
|
|
26
|
+
selectionSet: {
|
|
27
|
+
kind: "SelectionSet",
|
|
28
|
+
selections: [
|
|
29
|
+
{ kind: "Field", name: { kind: "Name", value: "id" } },
|
|
30
|
+
{ kind: "Field", name: { kind: "Name", value: "name" } },
|
|
31
|
+
],
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
},
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
const getNetworksString = `query GetNetworks { getNetworks { id } }`;
|
|
40
|
+
const subscribePriceUpdatedString = `subscription onPriceUpdated($address: String!, $networkId: Int!) { onPriceUpdated(address: $address, networkId: $networkId) { address networkId priceUsd timestamp } }`;
|
|
41
|
+
describe("Codex", () => {
|
|
42
|
+
let sdk;
|
|
43
|
+
beforeEach(() => {
|
|
44
|
+
sdk = new index_1.Codex("dummy-key");
|
|
45
|
+
});
|
|
46
|
+
describe("query", () => {
|
|
47
|
+
it("send a fetch request with the correct params", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
|
+
const fetchSpy = jest
|
|
49
|
+
.spyOn(sdk["client"], "request")
|
|
50
|
+
.mockResolvedValue({});
|
|
51
|
+
yield sdk.query(getNetworksDocument, {});
|
|
52
|
+
expect(fetchSpy).toHaveBeenCalledWith(getNetworksDocument, {});
|
|
53
|
+
}));
|
|
54
|
+
});
|
|
55
|
+
describe("send", () => {
|
|
56
|
+
it("should return the results of the query", () => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
|
+
const fetchSpy = jest
|
|
58
|
+
.spyOn(sdk["client"], "request")
|
|
59
|
+
.mockResolvedValue({});
|
|
60
|
+
yield sdk.send(getNetworksString, {});
|
|
61
|
+
expect(fetchSpy).toHaveBeenCalledWith(getNetworksString, {});
|
|
62
|
+
}));
|
|
63
|
+
});
|
|
64
|
+
describe("subscribe", () => {
|
|
65
|
+
it("should return a cleanup function", () => {
|
|
66
|
+
const next = jest.fn(), error = jest.fn(), complete = jest.fn();
|
|
67
|
+
const sink = {
|
|
68
|
+
next,
|
|
69
|
+
error,
|
|
70
|
+
complete,
|
|
71
|
+
};
|
|
72
|
+
jest.spyOn(sdk["wsClient"], "subscribe").mockReturnValue(() => { });
|
|
73
|
+
const cleanup = sdk.subscribe(subscribePriceUpdatedString, { address: "0xtoken", networkId: 1 }, sink);
|
|
74
|
+
expect(typeof cleanup).toBe("function");
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
//# sourceMappingURL=index.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/sdk/index.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invariant.d.ts","sourceRoot":"","sources":["../../src/sdk/invariant.ts"],"names":[],"mappings":"AAMA,wBAAgB,SAAS,CACvB,SAAS,EAAE,OAAO,EAGlB,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAChC,OAAO,CAAC,SAAS,CAsBnB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.invariant = void 0;
|
|
4
|
+
const isProduction = process.env.NODE_ENV === "production";
|
|
5
|
+
const prefix = "Invariant failed";
|
|
6
|
+
// Throw an error if the condition fails
|
|
7
|
+
// Strip out error messages for production
|
|
8
|
+
// > Not providing an inline default argument for message as the result is smaller
|
|
9
|
+
function invariant(condition,
|
|
10
|
+
// Can provide a string, or a function that returns a string for cases where
|
|
11
|
+
// the message takes a fair amount of effort to compute
|
|
12
|
+
message) {
|
|
13
|
+
if (condition) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
// Condition not passed
|
|
17
|
+
// In production we strip the message but still throw
|
|
18
|
+
if (isProduction) {
|
|
19
|
+
throw new Error(prefix);
|
|
20
|
+
}
|
|
21
|
+
// When not in production we allow the message to pass through
|
|
22
|
+
// *This block will be removed in production builds*
|
|
23
|
+
const provided = typeof message === "function" ? message() : message;
|
|
24
|
+
// Options:
|
|
25
|
+
// 1. message provided: `${prefix}: ${provided}`
|
|
26
|
+
// 2. message not provided: prefix
|
|
27
|
+
const value = provided ? `${prefix}: ${provided}` : prefix;
|
|
28
|
+
throw new Error(value);
|
|
29
|
+
}
|
|
30
|
+
exports.invariant = invariant;
|
|
31
|
+
//# sourceMappingURL=invariant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invariant.js","sourceRoot":"","sources":["../../src/sdk/invariant.ts"],"names":[],"mappings":";;;AAAA,MAAM,YAAY,GAAY,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;AACpE,MAAM,MAAM,GAAG,kBAAkB,CAAC;AAElC,wCAAwC;AACxC,0CAA0C;AAC1C,kFAAkF;AAClF,SAAgB,SAAS,CACvB,SAAkB;AAClB,4EAA4E;AAC5E,uDAAuD;AACvD,OAAiC;IAEjC,IAAI,SAAS,EAAE;QACb,OAAO;KACR;IACD,uBAAuB;IAEvB,qDAAqD;IACrD,IAAI,YAAY,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;KACzB;IAED,8DAA8D;IAC9D,oDAAoD;IAEpD,MAAM,QAAQ,GACZ,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;IAEtD,WAAW;IACX,gDAAgD;IAChD,kCAAkC;IAClC,MAAM,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACnE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;AACzB,CAAC;AA3BD,8BA2BC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@codex-data/sdk",
|
|
3
|
+
"version": "0.5.7",
|
|
4
|
+
"engines": {
|
|
5
|
+
"node": ">=17.5.0"
|
|
6
|
+
},
|
|
7
|
+
"main": "dist/index.js",
|
|
8
|
+
"types": "dist/index.d.ts",
|
|
9
|
+
"scripts": {
|
|
10
|
+
"build": "bun run fetch:schema && bun run codegen && bun run tsc",
|
|
11
|
+
"fetch:schema": "curl -s https://graph.codex.io/schema/latest.graphql --output src/resources/schema.graphql",
|
|
12
|
+
"codegen": "graphql-codegen --config codegen.ts",
|
|
13
|
+
"prepack": "cp src/resources/* dist/resources/",
|
|
14
|
+
"lint": "eslint --ext .ts src",
|
|
15
|
+
"test": "jest"
|
|
16
|
+
},
|
|
17
|
+
"files": [
|
|
18
|
+
"dist",
|
|
19
|
+
"src"
|
|
20
|
+
],
|
|
21
|
+
"keywords": [
|
|
22
|
+
"crypto",
|
|
23
|
+
"charting",
|
|
24
|
+
"sdk",
|
|
25
|
+
"analytics",
|
|
26
|
+
"blockchain",
|
|
27
|
+
"api"
|
|
28
|
+
],
|
|
29
|
+
"repository": "github:codex-data/sdk",
|
|
30
|
+
"author": "Codex",
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"homepage": "https://docs.codex.io",
|
|
33
|
+
"description": "The Codex SDK for JavaScript/Typescript. It provides generated types and convenient ways to access the graphql api.",
|
|
34
|
+
"dependencies": {
|
|
35
|
+
"@types/jest": "^29.5.4",
|
|
36
|
+
"@types/node": "^20.5.7",
|
|
37
|
+
"graphql": "^16.8.0",
|
|
38
|
+
"graphql-request": "^6.1.0",
|
|
39
|
+
"graphql-ws": "^5.14.0",
|
|
40
|
+
"isomorphic-ws": "^5.0.0",
|
|
41
|
+
"typescript": "^5.2.2"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@graphql-codegen/cli": "5.0.0",
|
|
45
|
+
"@graphql-codegen/client-preset": "^4.1.0",
|
|
46
|
+
"@graphql-codegen/introspection": "4.0.0",
|
|
47
|
+
"@graphql-codegen/typescript": "4.0.1",
|
|
48
|
+
"@typescript-eslint/eslint-plugin": "^6.7.3",
|
|
49
|
+
"@typescript-eslint/parser": "^6.7.3",
|
|
50
|
+
"eslint": "^8.50.0",
|
|
51
|
+
"eslint-config-prettier": "^9.0.0",
|
|
52
|
+
"eslint-plugin-import": "^2.28.1",
|
|
53
|
+
"eslint-plugin-prettier": "^5.0.0",
|
|
54
|
+
"eslint-plugin-simple-import-sort": "^10.0.0",
|
|
55
|
+
"jest": "^29.6.4",
|
|
56
|
+
"merge": "^2.1.1",
|
|
57
|
+
"prettier": "^3.0.3",
|
|
58
|
+
"ts-jest": "^29.1.1"
|
|
59
|
+
}
|
|
60
|
+
}
|
package/src/index.ts
ADDED
|
File without changes
|