Skip to content
This repository was archived by the owner on Sep 5, 2024. It is now read-only.

Commit 19c20a6

Browse files
authored
Add more predefined queries (#9)
* feat: add more predefined queries * feat: add the filterExchanges query * feat: add the bars updated subscription * feat: add the onUpdateBars subscription * fix: symbol rename
1 parent 961e63d commit 19c20a6

19 files changed

+549
-77
lines changed

codegen.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ const config: CodegenConfig = {
55
overwrite: true,
66
schema: "./src/resources/schema.graphql",
77
generates: {
8-
"src/sdk/gql/": {
8+
"src/sdk/generated/": {
99
preset: "client",
1010
documents: "src/sdk/**/*",
1111
},

examples/simple/filterTest.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { Defined } from '@definedfi/sdk'
2+
3+
const sdk = new Defined(process.env.DEFINED_API_KEY || "")
4+
5+
sdk.queries.filterTokens({
6+
filters: {
7+
liquidity: { gt: 100000 },
8+
txnCount24: { gt: 200 },
9+
network: [1],
10+
},
11+
limit: 10
12+
}).then(console.log)

examples/simple/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ const sdk = new Defined(process.env.DEFINED_API_KEY || "")
66
sdk.send<{ getNetworks: Network[] }>(`query GetNetworks { getNetworks { id name } }`, {}).then(res => {
77
console.log("Networks: ", res.getNetworks)
88
})
9-
109
sdk.queries.price({ inputs: [{ address: "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c", networkId: 56 }]}).then(console.log)
1110
sdk.queries.pairEvents({ query: { address: "0xd99c7f6c65857ac913a8f880a4cb84032ab2fc5b", networkId: 56 } }).then(console.log)
1211
sdk.queries.sparklines({ input: { ids: ["0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c:56"] } }).then(console.log)
1312
sdk.queries.token({ input: { address: "0xbb4cdb9cbd36b01bd1cbaebf2de08d9173bc095c", networkId: 56 } }).then(console.log)
13+
sdk.queries.symbol({ symbol: "0xd99c7f6c65857ac913a8f880a4cb84032ab2fc5b:56" }).then(console.log)

src/resources/graphql.schema.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16370,6 +16370,12 @@
1637016370
"isDeprecated": false,
1637116371
"deprecationReason": null
1637216372
},
16373+
{
16374+
"name": "BLEND",
16375+
"description": null,
16376+
"isDeprecated": false,
16377+
"deprecationReason": null
16378+
},
1637316379
{
1637416380
"name": "BLUR",
1637516381
"description": null,
@@ -16448,6 +16454,12 @@
1644816454
"isDeprecated": false,
1644916455
"deprecationReason": null
1645016456
},
16457+
{
16458+
"name": "SUDOSWAPAMMV2",
16459+
"description": null,
16460+
"isDeprecated": false,
16461+
"deprecationReason": null
16462+
},
1645116463
{
1645216464
"name": "SUDOSWAPV2",
1645316465
"description": null,

src/resources/graphql.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2667,6 +2667,7 @@ export type NftEventsConnection = {
26672667
export enum NftExchange {
26682668
Alto = 'ALTO',
26692669
Bitkeep = 'BITKEEP',
2670+
Blend = 'BLEND',
26702671
Blur = 'BLUR',
26712672
Blurv2 = 'BLURV2',
26722673
Cryptopunks = 'CRYPTOPUNKS',
@@ -2680,6 +2681,7 @@ export enum NftExchange {
26802681
Quixotic = 'QUIXOTIC',
26812682
Seaport = 'SEAPORT',
26822683
Stratos = 'STRATOS',
2684+
Sudoswapammv2 = 'SUDOSWAPAMMV2',
26832685
Sudoswapv2 = 'SUDOSWAPV2',
26842686
Tofunft = 'TOFUNFT',
26852687
Treasure = 'TREASURE',

src/resources/schema.graphql

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3207,6 +3207,8 @@ enum NftExchange {
32073207
ALTO
32083208
PROVENANT
32093209
BLURV2
3210+
BLEND
3211+
SUDOSWAPAMMV2
32103212
}
32113213

32123214
"""Number metrics for NFT fillsource stats."""

src/sdk/Query.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,16 @@
11
import { Defined } from "./index";
2-
import { GetSparklinesDocument, GetSparklinesQueryVariables, GetTokenPriceDocument, GetTokensDocument, GetTokensQuery, QueryGetTokenPricesArgs, SubscriptionOnPriceUpdatedArgs, PairEventsDocument, PairEventsQueryVariables, QueryTokenArgs } from "./gql/graphql";
2+
import { GetSparklinesDocument, GetSparklinesQueryVariables, GetTokenPriceDocument, GetTokensDocument, GetTokensQuery, QueryGetTokenPricesArgs, SubscriptionOnPriceUpdatedArgs, PairEventsDocument, PairEventsQueryVariables, QueryTokenArgs, GetBarsDocument, QueryListTopTokensArgs, ListTopTokensDocument, FilterTokensQueryVariables, FilterTokensDocument, FilterExchangesQueryVariables, FilterExchangesDocument, GetSymbolQueryVariables, GetSymbolDocument } from "./generated/graphql";
3+
import { QueryGetBarsArgs } from "../resources/graphql";
34

45
export class Query {
56
constructor(private sdk: Defined) { }
6-
pairEvents = async (vars: PairEventsQueryVariables) => { return this.sdk.query(PairEventsDocument, vars) }
7-
sparklines = async (vars: GetSparklinesQueryVariables) => { return this.sdk.query(GetSparklinesDocument, vars) }
8-
token = async (vars: QueryTokenArgs) => { return this.sdk.query(GetTokensDocument, vars) }
9-
price = async (vars: QueryGetTokenPricesArgs) => { return this.sdk.query(GetTokenPriceDocument, vars) }
7+
pairEvents = async (vars: PairEventsQueryVariables) => this.sdk.query(PairEventsDocument, vars)
8+
sparklines = async (vars: GetSparklinesQueryVariables) => this.sdk.query(GetSparklinesDocument, vars)
9+
token = async (vars: QueryTokenArgs) => this.sdk.query(GetTokensDocument, vars)
10+
price = async (vars: QueryGetTokenPricesArgs) => this.sdk.query(GetTokenPriceDocument, vars)
11+
bars = async (vars: QueryGetBarsArgs) => this.sdk.query(GetBarsDocument, vars)
12+
topTokens = async (vars: QueryListTopTokensArgs) => this.sdk.query(ListTopTokensDocument, vars)
13+
filterTokens = async (vars: FilterTokensQueryVariables) => this.sdk.query(FilterTokensDocument, vars)
14+
filterExchanges = async (vars: FilterExchangesQueryVariables) => this.sdk.query(FilterExchangesDocument, vars)
15+
symbol = async (vars: GetSymbolQueryVariables) => this.sdk.query(GetSymbolDocument, vars)
1016
}

src/sdk/Subscribe.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11

22
import { Defined } from "./index";
33
import { print } from 'graphql'
4-
import { OnEventsCreatedDocument, OnPriceUpdatedDocument, SubscriptionOnEventsCreatedArgs, SubscriptionOnPriceUpdatedArgs } from "./gql/graphql";
4+
import { OnBarsUpdatedDocument, OnEventsCreatedDocument, OnPriceUpdatedDocument, SubscriptionOnBarsUpdatedArgs, SubscriptionOnEventsCreatedArgs, SubscriptionOnPriceUpdatedArgs } from "./generated/graphql";
55
import { Sink } from "graphql-ws";
66

77
export class Subscribe {
88
constructor(private sdk: Defined) { }
9-
tokenPrices = async (vars: SubscriptionOnPriceUpdatedArgs, sink: Sink) => { return this.sdk.subscribe(print(OnPriceUpdatedDocument), vars, sink)}
10-
tokenEvents = async (vars: SubscriptionOnEventsCreatedArgs, sink: Sink) => { return this.sdk.subscribe(print(OnEventsCreatedDocument), vars, sink)}
9+
tokenPrices = async (vars: SubscriptionOnPriceUpdatedArgs, sink: Sink) => this.sdk.subscribe(print(OnPriceUpdatedDocument), vars, sink)
10+
tokenEvents = async (vars: SubscriptionOnEventsCreatedArgs, sink: Sink) => this.sdk.subscribe(print(OnEventsCreatedDocument), vars, sink)
11+
bars = async (vars: SubscriptionOnBarsUpdatedArgs, sink: Sink) => this.sdk.subscribe(print(OnBarsUpdatedDocument), vars, sink)
1112
}
File renamed without changes.

0 commit comments

Comments
 (0)