Package Exports
- @semiotic-labs/graph-tables
- @semiotic-labs/graph-tables/dist/cjs/index.js
- @semiotic-labs/graph-tables/dist/esm/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@semiotic-labs/graph-tables) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
graph-tables
Postgres database schema parser for Graph Protocol subgraph schema
Highlights
- Simple layout parse function
- Exact same identifier (table, column, enum, etc..) naming from graph-node implementation of postgres schema generation.
- JS mappings used for fast table and column search
- Enum definitions
- Detailed column types including enum and foreign key references
- One to one and one to many table relations
block$
orblock_range
column based on the GraphQL entity mutability.- Package include CommonJS, ES Modules, UMD version and TypeScript declaration files.
Install
npm install graph-tables
Usage
import {parse} from 'graph-tables';
const simple_schema = `
type SomeComplexTableErc20Name @entity {
"Some description about a string field"
id: ID!,
nullableField:Boolean,
booleanField:Boolean!,
bigIntField:BigInt!,
bytesField:Bytes!,
bigDecimalField:BigDecimal!,
intField:Int!,
int8Field:Int8!,
stringField:String!
}
`;
const layout = parse(simple_schema);
Examples
The examples folder contains sample subgraph search and parsing example using the library.
What is the name of the subgraph? uniswap-v3
First 20 subgraphs found:
1. hype-pool-uniswap-v3-arbitrum
2. uniswap-v3-mainnet
3. polygon-uniswap-v3
4. uniswap-v3-optimism
5. uniswap-v3-polygon
6. uniswap-v3-arbitrum
7. uniswap-v3-ethereum
8. uniswap-v3-avalanche
9. uniswap-v3-polygon
Enter subgraph index to view the database layout: 7
Selected subgraph: uniswap-v3-ethereum
Fetching layout... QmZ1y5FfQkxxFXydm1jvpUgC2bC719wvTm9AAfTy5WeKiR-QmcBpDfSAt3jxFZCenUCVnyuNgPkRhz1aD3MA4SiNKPyRR
Database layout:
Enums:
Tables:
fee_amount_enabled
block$
vid
id
fee
tick_spacing
block_number
block_timestamp
transaction_hash
owner_changed
block$
vid
id
old_owner
new_owner
block_number
block_timestamp
transaction_hash
pool_created
block$
vid
id
token_0
token_1
fee
tick_spacing
pool
block_number
block_timestamp
transaction_hash