@sablier/indexers 3.1.0-beta.0 → 3.1.0-beta.1

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 CHANGED
@@ -45,3 +45,5 @@ feedback.
45
45
  ## License 📄
46
46
 
47
47
  This repo is licensed under GPL 3-0 or later.
48
+
49
+ v2
@@ -43,7 +43,7 @@ exports.envioDeployments = {
43
43
  explorerURL: "https://envio.dev/app/sablier-labs/streams-envio",
44
44
  protocol: "streams",
45
45
  endpoint: {
46
- id: "0dbf2ab",
46
+ id: "e835646",
47
47
  get url() {
48
48
  return getURL(this.id);
49
49
  },
@@ -1 +1 @@
1
- {"version":3,"file":"envio-deployments.js","sourceRoot":"","sources":["../../../src/indexers/envio-deployments.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAGvC,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,kCAAkC,EAAE,aAAa,CAAC;AAC3D,CAAC;AAEY,QAAA,gBAAgB,GAA0D;IACrF,QAAQ,EAAE;QACR,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,cAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,cAAQ,CAAC,IAAI;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,cAAQ,CAAC,MAAM;QACzB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,OAAO,EAAE;QACP,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;CACF,CAAC","sourcesContent":["import { Protocol } from \"sablier/evm\";\nimport type { Indexer } from \"../types.js\";\n\nfunction getURL(id: string) {\n return `https://indexer.hyperindex.xyz/${id}/v1/graphql`;\n}\n\nexport const envioDeployments: Record<Indexer.DataProtocol, Indexer.EnvioDeployment> = {\n airdrops: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/merkle-envio\",\n protocol: Protocol.Airdrops,\n endpoint: {\n id: \"508d217\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n flow: {\n createdOn: 1_731_318_958, // November 1, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/flow-envio\",\n protocol: Protocol.Flow,\n endpoint: {\n id: \"3b4ea6b\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n lockup: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/lockup-envio\",\n protocol: Protocol.Lockup,\n endpoint: {\n id: \"53b7e25\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n streams: {\n explorerURL: \"https://envio.dev/app/sablier-labs/streams-envio\",\n protocol: \"streams\",\n endpoint: {\n id: \"0dbf2ab\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n};\n"]}
1
+ {"version":3,"file":"envio-deployments.js","sourceRoot":"","sources":["../../../src/indexers/envio-deployments.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAGvC,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,kCAAkC,EAAE,aAAa,CAAC;AAC3D,CAAC;AAEY,QAAA,gBAAgB,GAA0D;IACrF,QAAQ,EAAE;QACR,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,cAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,cAAQ,CAAC,IAAI;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,cAAQ,CAAC,MAAM;QACzB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,OAAO,EAAE;QACP,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;CACF,CAAC","sourcesContent":["import { Protocol } from \"sablier/evm\";\nimport type { Indexer } from \"../types.js\";\n\nfunction getURL(id: string) {\n return `https://indexer.hyperindex.xyz/${id}/v1/graphql`;\n}\n\nexport const envioDeployments: Record<Indexer.DataProtocol, Indexer.EnvioDeployment> = {\n airdrops: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/merkle-envio\",\n protocol: Protocol.Airdrops,\n endpoint: {\n id: \"508d217\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n flow: {\n createdOn: 1_731_318_958, // November 1, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/flow-envio\",\n protocol: Protocol.Flow,\n endpoint: {\n id: \"3b4ea6b\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n lockup: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/lockup-envio\",\n protocol: Protocol.Lockup,\n endpoint: {\n id: \"53b7e25\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n streams: {\n explorerURL: \"https://envio.dev/app/sablier-labs/streams-envio\",\n protocol: \"streams\",\n endpoint: {\n id: \"e835646\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n};"]}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Use this file to define new indexers for The Graph.\n *\n */\nimport { sablier } from \"sablier\";\nimport { chains, Protocol } from \"sablier/evm\";\nimport { SUBGRAPH_STUDIO_USER_ID } from \"../constants.js\";\nimport { Vendor } from \"../enums.js\";\nimport type { Indexer } from \"../types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* CONSTANTS */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Custom chain slugs used by The Graph.\n *\n * ⚠️ NOTE: not all chain names used by The Graph are the same as the chain's slug defined in the Sablier SDK.\n * @see https://thegraph.com/docs/en/supported-networks\n */\nconst CHAIN_SLUG_GRAPH_OVERRIDES: { [chainId: number]: string } = {\n [chains.arbitrum.id]: \"arbitrum-one\",\n [chains.denergy.id]: \"denergychain\",\n [chains.polygon.id]: \"matic\",\n [chains.zksync.id]: \"zksync-era\",\n};\n\n/**\n * Custom chain slugs used by Sablier subgraphs.\n */\nconst CHAIN_SLUG_SABLIER_OVERRIDES: { [chainId: number]: string } = {\n [chains.denergy.id]: \"denergychain\",\n [chains.mainnet.id]: \"ethereum\",\n};\n\n/**\n * Some chains have made the really bad design choice of using custom network identifiers\n * in their subgraph.yaml files.\n */\nconst CHAIN_SLUG_SUBGRAPH_YAML: { [chainId: number]: string } = {\n [chains.lightlink.id]: \"mainnet\",\n};\n\nconst NAME_TEMPLATING_VAR = \"{SUBGRAPH_NAME}\";\n\n/* -------------------------------------------------------------------------- */\n/* HELPERS */\n/* -------------------------------------------------------------------------- */\n\nexport function getGraphChainSlug(chainId: number): string {\n return CHAIN_SLUG_GRAPH_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSablierChainSlug(chainId: number): string {\n return CHAIN_SLUG_SABLIER_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSubgraphYamlChainSlug(chainId: number): string {\n return CHAIN_SLUG_SUBGRAPH_YAML[chainId] ?? getGraphChainSlug(chainId);\n}\n\nfunction getSubgraphName(chainId: number, protocol: Indexer.DataProtocol): string {\n const graphChainName = getSablierChainSlug(chainId);\n return `sablier-${protocol}-${graphChainName}`;\n}\n\n/**\n * Sort indexers alphabetically by chain name.\n */\nfunction resolveCustom(protocol: Indexer.DataProtocol, chainId: number, templateURL: string): Indexer {\n if (!templateURL.includes(NAME_TEMPLATING_VAR)) {\n throw new Error(\n `Template URL for custom Graph indexer does not include ${NAME_TEMPLATING_VAR}`\n );\n }\n const subgraphName = getSubgraphName(chainId, protocol);\n\n const endpointUrl = templateURL.replace(NAME_TEMPLATING_VAR, subgraphName);\n return {\n chainId,\n explorerURL: `${endpointUrl}/graphql`,\n kind: \"custom\",\n name: subgraphName,\n endpoint: {\n url: endpointUrl,\n },\n protocol,\n vendor: Vendor.Graph,\n };\n}\n\nfunction resolveOfficial(protocol: Indexer.DataProtocol, chainId: number, subgraphId: string): Indexer {\n const subgraphName = getSubgraphName(chainId, protocol);\n return {\n chainId,\n explorerURL: `https://thegraph.com/explorer/subgraphs/${subgraphId}`,\n kind: \"official\",\n name: subgraphName,\n endpoint: {\n id: subgraphId,\n url: `https://gateway.thegraph.com/api/subgraphs/id/${subgraphId}`,\n },\n protocol,\n testingURL: `https://api.studio.thegraph.com/query/${SUBGRAPH_STUDIO_USER_ID}/${subgraphName}/version/latest`,\n vendor: Vendor.Graph,\n };\n}\n\n/* -------------------------------------------------------------------------- */\n/* DEFINITIONS */\n/* -------------------------------------------------------------------------- */\n\ntype SubgraphId = string;\ntype LegacyProtocol = Indexer.Protocol;\ntype SubgraphIdMap = Record<LegacyProtocol, SubgraphId>;\ntype IndexerGraphMap = Record<LegacyProtocol, Indexer>;\n\nfunction custom(chainId: number, baseURL: string): IndexerGraphMap {\n return {\n airdrops: resolveCustom(Protocol.Airdrops, chainId, baseURL),\n flow: resolveCustom(Protocol.Flow, chainId, baseURL),\n lockup: resolveCustom(Protocol.Lockup, chainId, baseURL),\n };\n}\n\nfunction official(chainId: number, idMap: SubgraphIdMap): IndexerGraphMap {\n return {\n airdrops: resolveOfficial(Protocol.Airdrops, chainId, idMap.airdrops),\n flow: resolveOfficial(Protocol.Flow, chainId, idMap.flow),\n lockup: resolveOfficial(Protocol.Lockup, chainId, idMap.lockup),\n };\n}\n\nconst CUSTOMS: IndexerGraphMap[] = [\n custom(\n chains.lightlink.id,\n \"https://graph.phoenix.lightlink.io/query/subgraphs/name/lightlink/{SUBGRAPH_NAME}\"\n ),\n custom(\n chains.denergy.id,\n \"https://thegraph.denergychain.com/subgraphs/name/denergychain/{SUBGRAPH_NAME}\"\n ),\n];\n\nconst OFFICIALS: IndexerGraphMap[] = [\n /* -------------------------------------------------------------------------- */\n /* MAINNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.mainnet.id, {\n airdrops: \"DFD73EcSue44R7mpHvXeyvcgaT8tR1iKakZFjBsiFpjs\",\n flow: \"ECxBJhKceBGaVvK6vqmK3VQAncKwPeAQutEb8TeiUiod\",\n lockup: \"AvDAMYYHGaEwn9F9585uqq6MM5CfvRtYcb7KjK7LKPCt\",\n }),\n official(chains.abstract.id, {\n airdrops: \"DRrf6mYEhRt9QieKvTjDHnSWcBm3GW96hpedMKVxLABx\",\n flow: \"Gq3e1gihMoSynURwGXQnPoKGVZzdsyomdrMH934vQHuG\",\n lockup: \"2QjTdDFY233faXksUruMERMiDoQDdtGG5hBLC27aT1Pw\",\n }),\n official(chains.arbitrum.id, {\n airdrops: \"HkHDg6NVVVeobhpcU4pTPMktyC25zd6xAQBGpYrWDgRr\",\n flow: \"C3kBBUVtW2rxqGpAgSgEuSaT49izkH6Q8UibRt7XFTyW\",\n lockup: \"yvDXXHSyv6rGPSzfpbBcbQmMFrECac3Q2zADkYsMxam\",\n }),\n official(chains.avalanche.id, {\n airdrops: \"CpbN5Ps25UzqfdoqYdrjoSK4Him6nwDvdLK6a2sGS1PA\",\n flow: \"6PAizjTALVqLLB7Ycq6XnpTeck8Z8QUpDFnVznMnisUh\",\n lockup: \"FTDmonvFEm1VGkzECcnDY2CPHcW5dSmHRurSjEEfTkCX\",\n }),\n official(chains.base.id, {\n airdrops: \"4SxPXkQNifgBYqje2C4yP5gz69erZwtD7GuLWgXHSLGe\",\n flow: \"4XSxXh8ZgkzaA35nrbQG9Ry3FYz3ZFD8QBdWwVg5pF9W\",\n lockup: \"778GfecD9tsyB4xNnz4wfuAyfHU6rqGr79VCPZKu3t2F\",\n }),\n official(chains.berachain.id, {\n airdrops: \"CnYsdmzuY3Mebwywvqv1WrXw9UZuPMTrxoGgR2UdThJE\",\n flow: \"J87eaBLfTe7kKWgUGqe5TxntNCzA4pyWmqJowMddehuh\",\n lockup: \"C2r13APcUemQtVdPFm7p7T3aJkU2rH2EvdZzrQ53zi14\",\n }),\n official(chains.bsc.id, {\n airdrops: \"FXQT42kQPvpMJgsF5Bs6CqpxVvPP1LBqEhWThCCLMeGL\",\n flow: \"2vU8KF4yWh3vvFjtg7MrRXMnYF3hPX2T3cvVBdaiXhNb\",\n lockup: \"A8Vc9hi7j45u7P8Uw5dg4uqYJgPo4x1rB4oZtTVaiccK\",\n }),\n official(chains.chiliz.id, {\n airdrops: \"6LK1aqrhzZCp6c88MEBDAR1VDLpZQiXpBKkceJ5Lu4LU\",\n flow: \"7QX7tJsANNFpxFLLjqzmXRzfY1wPGp3Lty5xGbhgADa6\",\n lockup: \"4KsXUFvsKFHH7Q8k3BPgEv2NhCJJGwG78gCPAUpncYb\",\n }),\n official(chains.gnosis.id, {\n airdrops: \"kQEY5PYbjx4SMKyMUwqJHRLDzKH1aUqGsf1cnibU7Kn\",\n flow: \"4KiJ53cTNKdFWPBPmDNQ55tYj8hn1WQg8R4UcTY2STLL\",\n lockup: \"DtKniy1RvB19q1r2g1WLN4reMNKDacEnuAjh284rW2iK\",\n }),\n official(chains.linea.id, {\n airdrops: \"6koYFSd8FQizdQWLTdRpL1yTmAbpMgN1vZN5W6ajZiTN\",\n flow: \"DV9XgcCCPKzUn6pgetg4yPetpW2fNoRKBUQC43aNeLG6\",\n lockup: \"GvpecytqVzLzuwuQB3enozXoaZRFoVx8Kr7qrfMiE9bs\",\n }),\n official(chains.optimism.id, {\n airdrops: \"CHJtCNDzPqngpa1YJoaVrjuufZL6k6VkEkG9ZFUMQzF7\",\n flow: \"AygPgsehNGSB4K7DYYtvBPhTpEiU4dCu3nt95bh9FhRf\",\n lockup: \"NZHzd2JNFKhHP5EWUiDxa5TaxGCFbSD4g6YnYr8JGi6\",\n }),\n official(chains.polygon.id, {\n airdrops: \"FRbBKiDyM5YpFAqHLXRfQWwQdMGzFL82hqoPXPpXzAHE\",\n flow: \"ykp38sLarwz3cpmjSSPqo7UuTjYtkZ1KiL4PM2qwmT8\",\n lockup: \"8fgeQMEQ8sskVeWE5nvtsVL2VpezDrAkx2d1VeiHiheu\",\n }),\n official(chains.scroll.id, {\n airdrops: \"Ev4xS8VxuoUcpgqz5A2BkTgQxQeskm4Fg41XzVJ2DX9\",\n flow: \"HFpTrPzJyrHKWZ9ebb4VFRQSxRwpepyfz5wd138daFkF\",\n lockup: \"GycpYx8c9eRqxvEAfqnpNd1ZfXeuLzjRhnG7vvYaqEE1\",\n }),\n official(chains.sonic.id, {\n airdrops: \"5g8orwpm5Rf83G8eqDzDjodt3sG2D64cbiLC98Utmv4Q\",\n flow: \"HkQKZKuM6dZ7Vc4FGC1gZTVVTniYJWRhTRmDDMNzN8zk\",\n lockup: \"GnaSPX9XLkPn219CqbGFU1NgveuQk2Hh3c8WxjtesaEh\",\n }),\n official(chains.unichain.id, {\n airdrops: \"4rQMJ85hKNhcaDyirGipGvcqS4auGU3QCFRBnpiexyNy\",\n flow: \"Cb5uDYfy4ukN9fjhQ3PQZgDzyo6G66ztn1e847rS7Xa8\",\n lockup: \"3MUG4H3gZcp9fpGLiJMTMeUFcQQ6QdT317P4wYKyns9M\",\n }),\n official(chains.zksync.id, {\n airdrops: \"64iDUwNVWKukw67nqTXif5taEfLug4Qf1c2suAv5hrqN\",\n flow: \"9DRgWhDAMovpkej3eT8izum6jxEKHE62ciArffsTAScx\",\n lockup: \"7SuEYGYwZ835LjVGB85ZE8z5zmqdKgmRh8kAEeJefWQN\",\n }),\n /* -------------------------------------------------------------------------- */\n /* TESTNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.baseSepolia.id, {\n airdrops: \"4R2hm27YJ7CVEJ97BbBJz2r4KTKYc8sTqqzrD8UzEfJt\",\n flow: \"AsnKT1waQMvuQxZAqfFuYwtRtAfN8uekDu75jPttfyLh\",\n lockup: \"DdiYENuyh5ztSybRJnBnCZuUgESkFasjGFHZUbURpKHz\",\n }),\n official(chains.sepolia.id, {\n airdrops: \"8PLGDyXEsPgRTAnozL7MAjmTUFY4TBzs8i4F9Pq3wwSh\",\n flow: \"EU9AWmJjrjMRkjxcdHfuWPZvPTNAL3hiXfNGN5MwUpvm\",\n lockup: \"5yDtFSxyRuqyjvGJyyuQhMEW3Uah7Ddy2KFSKVhy9VMa\",\n }),\n];\n\nconst ALL: IndexerGraphMap[] = [...CUSTOMS, ...OFFICIALS];\n\nfunction toSortedArray(indexerMaps: IndexerGraphMap[], protocol: LegacyProtocol): Indexer[] {\n return indexerMaps\n .map((indexerMap) => indexerMap[protocol])\n .sort((a, b) => {\n const chainNameA = sablier.chains.getOrThrow(a.chainId).name;\n const chainNameB = sablier.chains.getOrThrow(b.chainId).name;\n return chainNameA.localeCompare(chainNameB);\n });\n}\n\n/** Beta: streams subgraph deployed only on Sepolia. */\nconst STREAMS: Indexer[] = [\n resolveOfficial(\"streams\", chains.sepolia.id, \"gXjQjEXaeBpBsMLbVo9govzQMyBLUtJHciKbJdxQCjV\"),\n];\n\nexport const graph: Record<Indexer.DataProtocol, Indexer[]> = {\n airdrops: toSortedArray(ALL, Protocol.Airdrops),\n flow: toSortedArray(ALL, Protocol.Flow),\n lockup: toSortedArray(ALL, Protocol.Lockup),\n streams: STREAMS,\n};\n\n// It doesn't matter what protocol we are using since each chain supports all protocols.\nexport const graphChains = graph.lockup.map((c) => c.chainId);\n"]}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Use this file to define new indexers for The Graph.\n *\n */\nimport { sablier } from \"sablier\";\nimport { chains, Protocol } from \"sablier/evm\";\nimport { SUBGRAPH_STUDIO_USER_ID } from \"../constants.js\";\nimport { Vendor } from \"../enums.js\";\nimport type { Indexer } from \"../types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* CONSTANTS */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Custom chain slugs used by The Graph.\n *\n * ⚠️ NOTE: not all chain names used by The Graph are the same as the chain's slug defined in the Sablier SDK.\n * @see https://thegraph.com/docs/en/supported-networks\n */\nconst CHAIN_SLUG_GRAPH_OVERRIDES: { [chainId: number]: string } = {\n [chains.arbitrum.id]: \"arbitrum-one\",\n [chains.denergy.id]: \"denergychain\",\n [chains.polygon.id]: \"matic\",\n [chains.zksync.id]: \"zksync-era\",\n};\n\n/**\n * Custom chain slugs used by Sablier subgraphs.\n */\nconst CHAIN_SLUG_SABLIER_OVERRIDES: { [chainId: number]: string } = {\n [chains.denergy.id]: \"denergychain\",\n [chains.mainnet.id]: \"ethereum\",\n};\n\n/**\n * Some chains have made the really bad design choice of using custom network identifiers\n * in their subgraph.yaml files.\n */\nconst CHAIN_SLUG_SUBGRAPH_YAML: { [chainId: number]: string } = {\n [chains.lightlink.id]: \"mainnet\",\n};\n\nconst NAME_TEMPLATING_VAR = \"{SUBGRAPH_NAME}\";\n\n/* -------------------------------------------------------------------------- */\n/* HELPERS */\n/* -------------------------------------------------------------------------- */\n\nexport function getGraphChainSlug(chainId: number): string {\n return CHAIN_SLUG_GRAPH_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSablierChainSlug(chainId: number): string {\n return CHAIN_SLUG_SABLIER_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSubgraphYamlChainSlug(chainId: number): string {\n return CHAIN_SLUG_SUBGRAPH_YAML[chainId] ?? getGraphChainSlug(chainId);\n}\n\nfunction getSubgraphName(chainId: number, protocol: Indexer.DataProtocol): string {\n const graphChainName = getSablierChainSlug(chainId);\n return `sablier-${protocol}-${graphChainName}`;\n}\n\n/**\n * Sort indexers alphabetically by chain name.\n */\nfunction resolveCustom(\n protocol: Indexer.DataProtocol,\n chainId: number,\n templateURL: string\n): Indexer {\n if (!templateURL.includes(NAME_TEMPLATING_VAR)) {\n throw new Error(\n `Template URL for custom Graph indexer does not include ${NAME_TEMPLATING_VAR}`\n );\n }\n const subgraphName = getSubgraphName(chainId, protocol);\n\n const endpointUrl = templateURL.replace(NAME_TEMPLATING_VAR, subgraphName);\n return {\n chainId,\n explorerURL: `${endpointUrl}/graphql`,\n kind: \"custom\",\n name: subgraphName,\n endpoint: {\n url: endpointUrl,\n },\n protocol,\n vendor: Vendor.Graph,\n };\n}\n\nfunction resolveOfficial(\n protocol: Indexer.DataProtocol,\n chainId: number,\n subgraphId: string\n): Indexer {\n const subgraphName = getSubgraphName(chainId, protocol);\n return {\n chainId,\n explorerURL: `https://thegraph.com/explorer/subgraphs/${subgraphId}`,\n kind: \"official\",\n name: subgraphName,\n endpoint: {\n id: subgraphId,\n url: `https://gateway.thegraph.com/api/subgraphs/id/${subgraphId}`,\n },\n protocol,\n testingURL: `https://api.studio.thegraph.com/query/${SUBGRAPH_STUDIO_USER_ID}/${subgraphName}/version/latest`,\n vendor: Vendor.Graph,\n };\n}\n\n/* -------------------------------------------------------------------------- */\n/* DEFINITIONS */\n/* -------------------------------------------------------------------------- */\n\ntype SubgraphId = string;\ntype LegacyProtocol = Indexer.Protocol;\ntype SubgraphIdMap = Record<LegacyProtocol, SubgraphId>;\ntype IndexerGraphMap = Record<LegacyProtocol, Indexer>;\n\nfunction custom(chainId: number, baseURL: string): IndexerGraphMap {\n return {\n airdrops: resolveCustom(Protocol.Airdrops, chainId, baseURL),\n flow: resolveCustom(Protocol.Flow, chainId, baseURL),\n lockup: resolveCustom(Protocol.Lockup, chainId, baseURL),\n };\n}\n\nfunction official(chainId: number, idMap: SubgraphIdMap): IndexerGraphMap {\n return {\n airdrops: resolveOfficial(Protocol.Airdrops, chainId, idMap.airdrops),\n flow: resolveOfficial(Protocol.Flow, chainId, idMap.flow),\n lockup: resolveOfficial(Protocol.Lockup, chainId, idMap.lockup),\n };\n}\n\nconst CUSTOMS: IndexerGraphMap[] = [\n custom(\n chains.lightlink.id,\n \"https://graph.phoenix.lightlink.io/query/subgraphs/name/lightlink/{SUBGRAPH_NAME}\"\n ),\n custom(\n chains.denergy.id,\n \"https://thegraph.denergychain.com/subgraphs/name/denergychain/{SUBGRAPH_NAME}\"\n ),\n];\n\nconst OFFICIALS: IndexerGraphMap[] = [\n /* -------------------------------------------------------------------------- */\n /* MAINNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.mainnet.id, {\n airdrops: \"DFD73EcSue44R7mpHvXeyvcgaT8tR1iKakZFjBsiFpjs\",\n flow: \"ECxBJhKceBGaVvK6vqmK3VQAncKwPeAQutEb8TeiUiod\",\n lockup: \"AvDAMYYHGaEwn9F9585uqq6MM5CfvRtYcb7KjK7LKPCt\",\n }),\n official(chains.abstract.id, {\n airdrops: \"DRrf6mYEhRt9QieKvTjDHnSWcBm3GW96hpedMKVxLABx\",\n flow: \"Gq3e1gihMoSynURwGXQnPoKGVZzdsyomdrMH934vQHuG\",\n lockup: \"2QjTdDFY233faXksUruMERMiDoQDdtGG5hBLC27aT1Pw\",\n }),\n official(chains.arbitrum.id, {\n airdrops: \"HkHDg6NVVVeobhpcU4pTPMktyC25zd6xAQBGpYrWDgRr\",\n flow: \"C3kBBUVtW2rxqGpAgSgEuSaT49izkH6Q8UibRt7XFTyW\",\n lockup: \"yvDXXHSyv6rGPSzfpbBcbQmMFrECac3Q2zADkYsMxam\",\n }),\n official(chains.avalanche.id, {\n airdrops: \"CpbN5Ps25UzqfdoqYdrjoSK4Him6nwDvdLK6a2sGS1PA\",\n flow: \"6PAizjTALVqLLB7Ycq6XnpTeck8Z8QUpDFnVznMnisUh\",\n lockup: \"FTDmonvFEm1VGkzECcnDY2CPHcW5dSmHRurSjEEfTkCX\",\n }),\n official(chains.base.id, {\n airdrops: \"4SxPXkQNifgBYqje2C4yP5gz69erZwtD7GuLWgXHSLGe\",\n flow: \"4XSxXh8ZgkzaA35nrbQG9Ry3FYz3ZFD8QBdWwVg5pF9W\",\n lockup: \"778GfecD9tsyB4xNnz4wfuAyfHU6rqGr79VCPZKu3t2F\",\n }),\n official(chains.berachain.id, {\n airdrops: \"CnYsdmzuY3Mebwywvqv1WrXw9UZuPMTrxoGgR2UdThJE\",\n flow: \"J87eaBLfTe7kKWgUGqe5TxntNCzA4pyWmqJowMddehuh\",\n lockup: \"C2r13APcUemQtVdPFm7p7T3aJkU2rH2EvdZzrQ53zi14\",\n }),\n official(chains.bsc.id, {\n airdrops: \"FXQT42kQPvpMJgsF5Bs6CqpxVvPP1LBqEhWThCCLMeGL\",\n flow: \"2vU8KF4yWh3vvFjtg7MrRXMnYF3hPX2T3cvVBdaiXhNb\",\n lockup: \"A8Vc9hi7j45u7P8Uw5dg4uqYJgPo4x1rB4oZtTVaiccK\",\n }),\n official(chains.chiliz.id, {\n airdrops: \"6LK1aqrhzZCp6c88MEBDAR1VDLpZQiXpBKkceJ5Lu4LU\",\n flow: \"7QX7tJsANNFpxFLLjqzmXRzfY1wPGp3Lty5xGbhgADa6\",\n lockup: \"4KsXUFvsKFHH7Q8k3BPgEv2NhCJJGwG78gCPAUpncYb\",\n }),\n official(chains.gnosis.id, {\n airdrops: \"kQEY5PYbjx4SMKyMUwqJHRLDzKH1aUqGsf1cnibU7Kn\",\n flow: \"4KiJ53cTNKdFWPBPmDNQ55tYj8hn1WQg8R4UcTY2STLL\",\n lockup: \"DtKniy1RvB19q1r2g1WLN4reMNKDacEnuAjh284rW2iK\",\n }),\n official(chains.linea.id, {\n airdrops: \"6koYFSd8FQizdQWLTdRpL1yTmAbpMgN1vZN5W6ajZiTN\",\n flow: \"DV9XgcCCPKzUn6pgetg4yPetpW2fNoRKBUQC43aNeLG6\",\n lockup: \"GvpecytqVzLzuwuQB3enozXoaZRFoVx8Kr7qrfMiE9bs\",\n }),\n official(chains.optimism.id, {\n airdrops: \"CHJtCNDzPqngpa1YJoaVrjuufZL6k6VkEkG9ZFUMQzF7\",\n flow: \"AygPgsehNGSB4K7DYYtvBPhTpEiU4dCu3nt95bh9FhRf\",\n lockup: \"NZHzd2JNFKhHP5EWUiDxa5TaxGCFbSD4g6YnYr8JGi6\",\n }),\n official(chains.polygon.id, {\n airdrops: \"FRbBKiDyM5YpFAqHLXRfQWwQdMGzFL82hqoPXPpXzAHE\",\n flow: \"ykp38sLarwz3cpmjSSPqo7UuTjYtkZ1KiL4PM2qwmT8\",\n lockup: \"8fgeQMEQ8sskVeWE5nvtsVL2VpezDrAkx2d1VeiHiheu\",\n }),\n official(chains.scroll.id, {\n airdrops: \"Ev4xS8VxuoUcpgqz5A2BkTgQxQeskm4Fg41XzVJ2DX9\",\n flow: \"HFpTrPzJyrHKWZ9ebb4VFRQSxRwpepyfz5wd138daFkF\",\n lockup: \"GycpYx8c9eRqxvEAfqnpNd1ZfXeuLzjRhnG7vvYaqEE1\",\n }),\n official(chains.sonic.id, {\n airdrops: \"5g8orwpm5Rf83G8eqDzDjodt3sG2D64cbiLC98Utmv4Q\",\n flow: \"HkQKZKuM6dZ7Vc4FGC1gZTVVTniYJWRhTRmDDMNzN8zk\",\n lockup: \"GnaSPX9XLkPn219CqbGFU1NgveuQk2Hh3c8WxjtesaEh\",\n }),\n official(chains.unichain.id, {\n airdrops: \"4rQMJ85hKNhcaDyirGipGvcqS4auGU3QCFRBnpiexyNy\",\n flow: \"Cb5uDYfy4ukN9fjhQ3PQZgDzyo6G66ztn1e847rS7Xa8\",\n lockup: \"3MUG4H3gZcp9fpGLiJMTMeUFcQQ6QdT317P4wYKyns9M\",\n }),\n official(chains.zksync.id, {\n airdrops: \"64iDUwNVWKukw67nqTXif5taEfLug4Qf1c2suAv5hrqN\",\n flow: \"9DRgWhDAMovpkej3eT8izum6jxEKHE62ciArffsTAScx\",\n lockup: \"7SuEYGYwZ835LjVGB85ZE8z5zmqdKgmRh8kAEeJefWQN\",\n }),\n /* -------------------------------------------------------------------------- */\n /* TESTNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.baseSepolia.id, {\n airdrops: \"4R2hm27YJ7CVEJ97BbBJz2r4KTKYc8sTqqzrD8UzEfJt\",\n flow: \"AsnKT1waQMvuQxZAqfFuYwtRtAfN8uekDu75jPttfyLh\",\n lockup: \"DdiYENuyh5ztSybRJnBnCZuUgESkFasjGFHZUbURpKHz\",\n }),\n official(chains.sepolia.id, {\n airdrops: \"8PLGDyXEsPgRTAnozL7MAjmTUFY4TBzs8i4F9Pq3wwSh\",\n flow: \"EU9AWmJjrjMRkjxcdHfuWPZvPTNAL3hiXfNGN5MwUpvm\",\n lockup: \"5yDtFSxyRuqyjvGJyyuQhMEW3Uah7Ddy2KFSKVhy9VMa\",\n }),\n];\n\nconst ALL: IndexerGraphMap[] = [...CUSTOMS, ...OFFICIALS];\n\nfunction toSortedArray(indexerMaps: IndexerGraphMap[], protocol: LegacyProtocol): Indexer[] {\n return indexerMaps\n .map((indexerMap) => indexerMap[protocol])\n .sort((a, b) => {\n const chainNameA = sablier.chains.getOrThrow(a.chainId).name;\n const chainNameB = sablier.chains.getOrThrow(b.chainId).name;\n return chainNameA.localeCompare(chainNameB);\n });\n}\n\n/** Beta: streams subgraph deployed only on Sepolia. */\nconst STREAMS: Indexer[] = [\n resolveOfficial(\"streams\", chains.sepolia.id, \"gXjQjEXaeBpBsMLbVo9govzQMyBLUtJHciKbJdxQCjV\"),\n];\n\nexport const graph: Record<Indexer.DataProtocol, Indexer[]> = {\n airdrops: toSortedArray(ALL, Protocol.Airdrops),\n flow: toSortedArray(ALL, Protocol.Flow),\n lockup: toSortedArray(ALL, Protocol.Lockup),\n streams: STREAMS,\n};\n\n// It doesn't matter what protocol we are using since each chain supports all protocols.\nexport const graphChains = graph.lockup.map((c) => c.chainId);\n"]}
@@ -40,7 +40,7 @@ export const envioDeployments = {
40
40
  explorerURL: "https://envio.dev/app/sablier-labs/streams-envio",
41
41
  protocol: "streams",
42
42
  endpoint: {
43
- id: "0dbf2ab",
43
+ id: "e835646",
44
44
  get url() {
45
45
  return getURL(this.id);
46
46
  },
@@ -1 +1 @@
1
- {"version":3,"file":"envio-deployments.js","sourceRoot":"","sources":["../../../src/indexers/envio-deployments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,kCAAkC,EAAE,aAAa,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAA0D;IACrF,QAAQ,EAAE;QACR,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,QAAQ,CAAC,MAAM;QACzB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,OAAO,EAAE;QACP,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;CACF,CAAC","sourcesContent":["import { Protocol } from \"sablier/evm\";\nimport type { Indexer } from \"../types.js\";\n\nfunction getURL(id: string) {\n return `https://indexer.hyperindex.xyz/${id}/v1/graphql`;\n}\n\nexport const envioDeployments: Record<Indexer.DataProtocol, Indexer.EnvioDeployment> = {\n airdrops: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/merkle-envio\",\n protocol: Protocol.Airdrops,\n endpoint: {\n id: \"508d217\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n flow: {\n createdOn: 1_731_318_958, // November 1, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/flow-envio\",\n protocol: Protocol.Flow,\n endpoint: {\n id: \"3b4ea6b\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n lockup: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/lockup-envio\",\n protocol: Protocol.Lockup,\n endpoint: {\n id: \"53b7e25\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n streams: {\n explorerURL: \"https://envio.dev/app/sablier-labs/streams-envio\",\n protocol: \"streams\",\n endpoint: {\n id: \"0dbf2ab\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n};\n"]}
1
+ {"version":3,"file":"envio-deployments.js","sourceRoot":"","sources":["../../../src/indexers/envio-deployments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,SAAS,MAAM,CAAC,EAAU;IACxB,OAAO,kCAAkC,EAAE,aAAa,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAA0D;IACrF,QAAQ,EAAE;QACR,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,IAAI,EAAE;QACJ,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,+CAA+C;QAC5D,QAAQ,EAAE,QAAQ,CAAC,IAAI;QACvB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,MAAM,EAAE;QACN,SAAS,EAAE,aAAa;QACxB,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,QAAQ,CAAC,MAAM;QACzB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;IACD,OAAO,EAAE;QACP,WAAW,EAAE,kDAAkD;QAC/D,QAAQ,EAAE,SAAS;QACnB,QAAQ,EAAE;YACR,EAAE,EAAE,SAAS;YACb,IAAI,GAAG;gBACL,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;SACF;KACF;CACF,CAAC","sourcesContent":["import { Protocol } from \"sablier/evm\";\nimport type { Indexer } from \"../types.js\";\n\nfunction getURL(id: string) {\n return `https://indexer.hyperindex.xyz/${id}/v1/graphql`;\n}\n\nexport const envioDeployments: Record<Indexer.DataProtocol, Indexer.EnvioDeployment> = {\n airdrops: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/merkle-envio\",\n protocol: Protocol.Airdrops,\n endpoint: {\n id: \"508d217\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n flow: {\n createdOn: 1_731_318_958, // November 1, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/flow-envio\",\n protocol: Protocol.Flow,\n endpoint: {\n id: \"3b4ea6b\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n lockup: {\n createdOn: 1_712_673_343, // April 8, 2024\n explorerURL: \"https://envio.dev/app/sablier-labs/lockup-envio\",\n protocol: Protocol.Lockup,\n endpoint: {\n id: \"53b7e25\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n streams: {\n explorerURL: \"https://envio.dev/app/sablier-labs/streams-envio\",\n protocol: \"streams\",\n endpoint: {\n id: \"e835646\",\n get url() {\n return getURL(this.id);\n },\n },\n },\n};"]}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Use this file to define new indexers for The Graph.\n *\n */\nimport { sablier } from \"sablier\";\nimport { chains, Protocol } from \"sablier/evm\";\nimport { SUBGRAPH_STUDIO_USER_ID } from \"../constants.js\";\nimport { Vendor } from \"../enums.js\";\nimport type { Indexer } from \"../types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* CONSTANTS */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Custom chain slugs used by The Graph.\n *\n * ⚠️ NOTE: not all chain names used by The Graph are the same as the chain's slug defined in the Sablier SDK.\n * @see https://thegraph.com/docs/en/supported-networks\n */\nconst CHAIN_SLUG_GRAPH_OVERRIDES: { [chainId: number]: string } = {\n [chains.arbitrum.id]: \"arbitrum-one\",\n [chains.denergy.id]: \"denergychain\",\n [chains.polygon.id]: \"matic\",\n [chains.zksync.id]: \"zksync-era\",\n};\n\n/**\n * Custom chain slugs used by Sablier subgraphs.\n */\nconst CHAIN_SLUG_SABLIER_OVERRIDES: { [chainId: number]: string } = {\n [chains.denergy.id]: \"denergychain\",\n [chains.mainnet.id]: \"ethereum\",\n};\n\n/**\n * Some chains have made the really bad design choice of using custom network identifiers\n * in their subgraph.yaml files.\n */\nconst CHAIN_SLUG_SUBGRAPH_YAML: { [chainId: number]: string } = {\n [chains.lightlink.id]: \"mainnet\",\n};\n\nconst NAME_TEMPLATING_VAR = \"{SUBGRAPH_NAME}\";\n\n/* -------------------------------------------------------------------------- */\n/* HELPERS */\n/* -------------------------------------------------------------------------- */\n\nexport function getGraphChainSlug(chainId: number): string {\n return CHAIN_SLUG_GRAPH_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSablierChainSlug(chainId: number): string {\n return CHAIN_SLUG_SABLIER_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSubgraphYamlChainSlug(chainId: number): string {\n return CHAIN_SLUG_SUBGRAPH_YAML[chainId] ?? getGraphChainSlug(chainId);\n}\n\nfunction getSubgraphName(chainId: number, protocol: Indexer.DataProtocol): string {\n const graphChainName = getSablierChainSlug(chainId);\n return `sablier-${protocol}-${graphChainName}`;\n}\n\n/**\n * Sort indexers alphabetically by chain name.\n */\nfunction resolveCustom(protocol: Indexer.DataProtocol, chainId: number, templateURL: string): Indexer {\n if (!templateURL.includes(NAME_TEMPLATING_VAR)) {\n throw new Error(\n `Template URL for custom Graph indexer does not include ${NAME_TEMPLATING_VAR}`\n );\n }\n const subgraphName = getSubgraphName(chainId, protocol);\n\n const endpointUrl = templateURL.replace(NAME_TEMPLATING_VAR, subgraphName);\n return {\n chainId,\n explorerURL: `${endpointUrl}/graphql`,\n kind: \"custom\",\n name: subgraphName,\n endpoint: {\n url: endpointUrl,\n },\n protocol,\n vendor: Vendor.Graph,\n };\n}\n\nfunction resolveOfficial(protocol: Indexer.DataProtocol, chainId: number, subgraphId: string): Indexer {\n const subgraphName = getSubgraphName(chainId, protocol);\n return {\n chainId,\n explorerURL: `https://thegraph.com/explorer/subgraphs/${subgraphId}`,\n kind: \"official\",\n name: subgraphName,\n endpoint: {\n id: subgraphId,\n url: `https://gateway.thegraph.com/api/subgraphs/id/${subgraphId}`,\n },\n protocol,\n testingURL: `https://api.studio.thegraph.com/query/${SUBGRAPH_STUDIO_USER_ID}/${subgraphName}/version/latest`,\n vendor: Vendor.Graph,\n };\n}\n\n/* -------------------------------------------------------------------------- */\n/* DEFINITIONS */\n/* -------------------------------------------------------------------------- */\n\ntype SubgraphId = string;\ntype LegacyProtocol = Indexer.Protocol;\ntype SubgraphIdMap = Record<LegacyProtocol, SubgraphId>;\ntype IndexerGraphMap = Record<LegacyProtocol, Indexer>;\n\nfunction custom(chainId: number, baseURL: string): IndexerGraphMap {\n return {\n airdrops: resolveCustom(Protocol.Airdrops, chainId, baseURL),\n flow: resolveCustom(Protocol.Flow, chainId, baseURL),\n lockup: resolveCustom(Protocol.Lockup, chainId, baseURL),\n };\n}\n\nfunction official(chainId: number, idMap: SubgraphIdMap): IndexerGraphMap {\n return {\n airdrops: resolveOfficial(Protocol.Airdrops, chainId, idMap.airdrops),\n flow: resolveOfficial(Protocol.Flow, chainId, idMap.flow),\n lockup: resolveOfficial(Protocol.Lockup, chainId, idMap.lockup),\n };\n}\n\nconst CUSTOMS: IndexerGraphMap[] = [\n custom(\n chains.lightlink.id,\n \"https://graph.phoenix.lightlink.io/query/subgraphs/name/lightlink/{SUBGRAPH_NAME}\"\n ),\n custom(\n chains.denergy.id,\n \"https://thegraph.denergychain.com/subgraphs/name/denergychain/{SUBGRAPH_NAME}\"\n ),\n];\n\nconst OFFICIALS: IndexerGraphMap[] = [\n /* -------------------------------------------------------------------------- */\n /* MAINNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.mainnet.id, {\n airdrops: \"DFD73EcSue44R7mpHvXeyvcgaT8tR1iKakZFjBsiFpjs\",\n flow: \"ECxBJhKceBGaVvK6vqmK3VQAncKwPeAQutEb8TeiUiod\",\n lockup: \"AvDAMYYHGaEwn9F9585uqq6MM5CfvRtYcb7KjK7LKPCt\",\n }),\n official(chains.abstract.id, {\n airdrops: \"DRrf6mYEhRt9QieKvTjDHnSWcBm3GW96hpedMKVxLABx\",\n flow: \"Gq3e1gihMoSynURwGXQnPoKGVZzdsyomdrMH934vQHuG\",\n lockup: \"2QjTdDFY233faXksUruMERMiDoQDdtGG5hBLC27aT1Pw\",\n }),\n official(chains.arbitrum.id, {\n airdrops: \"HkHDg6NVVVeobhpcU4pTPMktyC25zd6xAQBGpYrWDgRr\",\n flow: \"C3kBBUVtW2rxqGpAgSgEuSaT49izkH6Q8UibRt7XFTyW\",\n lockup: \"yvDXXHSyv6rGPSzfpbBcbQmMFrECac3Q2zADkYsMxam\",\n }),\n official(chains.avalanche.id, {\n airdrops: \"CpbN5Ps25UzqfdoqYdrjoSK4Him6nwDvdLK6a2sGS1PA\",\n flow: \"6PAizjTALVqLLB7Ycq6XnpTeck8Z8QUpDFnVznMnisUh\",\n lockup: \"FTDmonvFEm1VGkzECcnDY2CPHcW5dSmHRurSjEEfTkCX\",\n }),\n official(chains.base.id, {\n airdrops: \"4SxPXkQNifgBYqje2C4yP5gz69erZwtD7GuLWgXHSLGe\",\n flow: \"4XSxXh8ZgkzaA35nrbQG9Ry3FYz3ZFD8QBdWwVg5pF9W\",\n lockup: \"778GfecD9tsyB4xNnz4wfuAyfHU6rqGr79VCPZKu3t2F\",\n }),\n official(chains.berachain.id, {\n airdrops: \"CnYsdmzuY3Mebwywvqv1WrXw9UZuPMTrxoGgR2UdThJE\",\n flow: \"J87eaBLfTe7kKWgUGqe5TxntNCzA4pyWmqJowMddehuh\",\n lockup: \"C2r13APcUemQtVdPFm7p7T3aJkU2rH2EvdZzrQ53zi14\",\n }),\n official(chains.bsc.id, {\n airdrops: \"FXQT42kQPvpMJgsF5Bs6CqpxVvPP1LBqEhWThCCLMeGL\",\n flow: \"2vU8KF4yWh3vvFjtg7MrRXMnYF3hPX2T3cvVBdaiXhNb\",\n lockup: \"A8Vc9hi7j45u7P8Uw5dg4uqYJgPo4x1rB4oZtTVaiccK\",\n }),\n official(chains.chiliz.id, {\n airdrops: \"6LK1aqrhzZCp6c88MEBDAR1VDLpZQiXpBKkceJ5Lu4LU\",\n flow: \"7QX7tJsANNFpxFLLjqzmXRzfY1wPGp3Lty5xGbhgADa6\",\n lockup: \"4KsXUFvsKFHH7Q8k3BPgEv2NhCJJGwG78gCPAUpncYb\",\n }),\n official(chains.gnosis.id, {\n airdrops: \"kQEY5PYbjx4SMKyMUwqJHRLDzKH1aUqGsf1cnibU7Kn\",\n flow: \"4KiJ53cTNKdFWPBPmDNQ55tYj8hn1WQg8R4UcTY2STLL\",\n lockup: \"DtKniy1RvB19q1r2g1WLN4reMNKDacEnuAjh284rW2iK\",\n }),\n official(chains.linea.id, {\n airdrops: \"6koYFSd8FQizdQWLTdRpL1yTmAbpMgN1vZN5W6ajZiTN\",\n flow: \"DV9XgcCCPKzUn6pgetg4yPetpW2fNoRKBUQC43aNeLG6\",\n lockup: \"GvpecytqVzLzuwuQB3enozXoaZRFoVx8Kr7qrfMiE9bs\",\n }),\n official(chains.optimism.id, {\n airdrops: \"CHJtCNDzPqngpa1YJoaVrjuufZL6k6VkEkG9ZFUMQzF7\",\n flow: \"AygPgsehNGSB4K7DYYtvBPhTpEiU4dCu3nt95bh9FhRf\",\n lockup: \"NZHzd2JNFKhHP5EWUiDxa5TaxGCFbSD4g6YnYr8JGi6\",\n }),\n official(chains.polygon.id, {\n airdrops: \"FRbBKiDyM5YpFAqHLXRfQWwQdMGzFL82hqoPXPpXzAHE\",\n flow: \"ykp38sLarwz3cpmjSSPqo7UuTjYtkZ1KiL4PM2qwmT8\",\n lockup: \"8fgeQMEQ8sskVeWE5nvtsVL2VpezDrAkx2d1VeiHiheu\",\n }),\n official(chains.scroll.id, {\n airdrops: \"Ev4xS8VxuoUcpgqz5A2BkTgQxQeskm4Fg41XzVJ2DX9\",\n flow: \"HFpTrPzJyrHKWZ9ebb4VFRQSxRwpepyfz5wd138daFkF\",\n lockup: \"GycpYx8c9eRqxvEAfqnpNd1ZfXeuLzjRhnG7vvYaqEE1\",\n }),\n official(chains.sonic.id, {\n airdrops: \"5g8orwpm5Rf83G8eqDzDjodt3sG2D64cbiLC98Utmv4Q\",\n flow: \"HkQKZKuM6dZ7Vc4FGC1gZTVVTniYJWRhTRmDDMNzN8zk\",\n lockup: \"GnaSPX9XLkPn219CqbGFU1NgveuQk2Hh3c8WxjtesaEh\",\n }),\n official(chains.unichain.id, {\n airdrops: \"4rQMJ85hKNhcaDyirGipGvcqS4auGU3QCFRBnpiexyNy\",\n flow: \"Cb5uDYfy4ukN9fjhQ3PQZgDzyo6G66ztn1e847rS7Xa8\",\n lockup: \"3MUG4H3gZcp9fpGLiJMTMeUFcQQ6QdT317P4wYKyns9M\",\n }),\n official(chains.zksync.id, {\n airdrops: \"64iDUwNVWKukw67nqTXif5taEfLug4Qf1c2suAv5hrqN\",\n flow: \"9DRgWhDAMovpkej3eT8izum6jxEKHE62ciArffsTAScx\",\n lockup: \"7SuEYGYwZ835LjVGB85ZE8z5zmqdKgmRh8kAEeJefWQN\",\n }),\n /* -------------------------------------------------------------------------- */\n /* TESTNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.baseSepolia.id, {\n airdrops: \"4R2hm27YJ7CVEJ97BbBJz2r4KTKYc8sTqqzrD8UzEfJt\",\n flow: \"AsnKT1waQMvuQxZAqfFuYwtRtAfN8uekDu75jPttfyLh\",\n lockup: \"DdiYENuyh5ztSybRJnBnCZuUgESkFasjGFHZUbURpKHz\",\n }),\n official(chains.sepolia.id, {\n airdrops: \"8PLGDyXEsPgRTAnozL7MAjmTUFY4TBzs8i4F9Pq3wwSh\",\n flow: \"EU9AWmJjrjMRkjxcdHfuWPZvPTNAL3hiXfNGN5MwUpvm\",\n lockup: \"5yDtFSxyRuqyjvGJyyuQhMEW3Uah7Ddy2KFSKVhy9VMa\",\n }),\n];\n\nconst ALL: IndexerGraphMap[] = [...CUSTOMS, ...OFFICIALS];\n\nfunction toSortedArray(indexerMaps: IndexerGraphMap[], protocol: LegacyProtocol): Indexer[] {\n return indexerMaps\n .map((indexerMap) => indexerMap[protocol])\n .sort((a, b) => {\n const chainNameA = sablier.chains.getOrThrow(a.chainId).name;\n const chainNameB = sablier.chains.getOrThrow(b.chainId).name;\n return chainNameA.localeCompare(chainNameB);\n });\n}\n\n/** Beta: streams subgraph deployed only on Sepolia. */\nconst STREAMS: Indexer[] = [\n resolveOfficial(\"streams\", chains.sepolia.id, \"gXjQjEXaeBpBsMLbVo9govzQMyBLUtJHciKbJdxQCjV\"),\n];\n\nexport const graph: Record<Indexer.DataProtocol, Indexer[]> = {\n airdrops: toSortedArray(ALL, Protocol.Airdrops),\n flow: toSortedArray(ALL, Protocol.Flow),\n lockup: toSortedArray(ALL, Protocol.Lockup),\n streams: STREAMS,\n};\n\n// It doesn't matter what protocol we are using since each chain supports all protocols.\nexport const graphChains = graph.lockup.map((c) => c.chainId);\n"]}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Use this file to define new indexers for The Graph.\n *\n */\nimport { sablier } from \"sablier\";\nimport { chains, Protocol } from \"sablier/evm\";\nimport { SUBGRAPH_STUDIO_USER_ID } from \"../constants.js\";\nimport { Vendor } from \"../enums.js\";\nimport type { Indexer } from \"../types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* CONSTANTS */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Custom chain slugs used by The Graph.\n *\n * ⚠️ NOTE: not all chain names used by The Graph are the same as the chain's slug defined in the Sablier SDK.\n * @see https://thegraph.com/docs/en/supported-networks\n */\nconst CHAIN_SLUG_GRAPH_OVERRIDES: { [chainId: number]: string } = {\n [chains.arbitrum.id]: \"arbitrum-one\",\n [chains.denergy.id]: \"denergychain\",\n [chains.polygon.id]: \"matic\",\n [chains.zksync.id]: \"zksync-era\",\n};\n\n/**\n * Custom chain slugs used by Sablier subgraphs.\n */\nconst CHAIN_SLUG_SABLIER_OVERRIDES: { [chainId: number]: string } = {\n [chains.denergy.id]: \"denergychain\",\n [chains.mainnet.id]: \"ethereum\",\n};\n\n/**\n * Some chains have made the really bad design choice of using custom network identifiers\n * in their subgraph.yaml files.\n */\nconst CHAIN_SLUG_SUBGRAPH_YAML: { [chainId: number]: string } = {\n [chains.lightlink.id]: \"mainnet\",\n};\n\nconst NAME_TEMPLATING_VAR = \"{SUBGRAPH_NAME}\";\n\n/* -------------------------------------------------------------------------- */\n/* HELPERS */\n/* -------------------------------------------------------------------------- */\n\nexport function getGraphChainSlug(chainId: number): string {\n return CHAIN_SLUG_GRAPH_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSablierChainSlug(chainId: number): string {\n return CHAIN_SLUG_SABLIER_OVERRIDES[chainId] ?? sablier.chains.getOrThrow(chainId).slug;\n}\n\nexport function getSubgraphYamlChainSlug(chainId: number): string {\n return CHAIN_SLUG_SUBGRAPH_YAML[chainId] ?? getGraphChainSlug(chainId);\n}\n\nfunction getSubgraphName(chainId: number, protocol: Indexer.DataProtocol): string {\n const graphChainName = getSablierChainSlug(chainId);\n return `sablier-${protocol}-${graphChainName}`;\n}\n\n/**\n * Sort indexers alphabetically by chain name.\n */\nfunction resolveCustom(\n protocol: Indexer.DataProtocol,\n chainId: number,\n templateURL: string\n): Indexer {\n if (!templateURL.includes(NAME_TEMPLATING_VAR)) {\n throw new Error(\n `Template URL for custom Graph indexer does not include ${NAME_TEMPLATING_VAR}`\n );\n }\n const subgraphName = getSubgraphName(chainId, protocol);\n\n const endpointUrl = templateURL.replace(NAME_TEMPLATING_VAR, subgraphName);\n return {\n chainId,\n explorerURL: `${endpointUrl}/graphql`,\n kind: \"custom\",\n name: subgraphName,\n endpoint: {\n url: endpointUrl,\n },\n protocol,\n vendor: Vendor.Graph,\n };\n}\n\nfunction resolveOfficial(\n protocol: Indexer.DataProtocol,\n chainId: number,\n subgraphId: string\n): Indexer {\n const subgraphName = getSubgraphName(chainId, protocol);\n return {\n chainId,\n explorerURL: `https://thegraph.com/explorer/subgraphs/${subgraphId}`,\n kind: \"official\",\n name: subgraphName,\n endpoint: {\n id: subgraphId,\n url: `https://gateway.thegraph.com/api/subgraphs/id/${subgraphId}`,\n },\n protocol,\n testingURL: `https://api.studio.thegraph.com/query/${SUBGRAPH_STUDIO_USER_ID}/${subgraphName}/version/latest`,\n vendor: Vendor.Graph,\n };\n}\n\n/* -------------------------------------------------------------------------- */\n/* DEFINITIONS */\n/* -------------------------------------------------------------------------- */\n\ntype SubgraphId = string;\ntype LegacyProtocol = Indexer.Protocol;\ntype SubgraphIdMap = Record<LegacyProtocol, SubgraphId>;\ntype IndexerGraphMap = Record<LegacyProtocol, Indexer>;\n\nfunction custom(chainId: number, baseURL: string): IndexerGraphMap {\n return {\n airdrops: resolveCustom(Protocol.Airdrops, chainId, baseURL),\n flow: resolveCustom(Protocol.Flow, chainId, baseURL),\n lockup: resolveCustom(Protocol.Lockup, chainId, baseURL),\n };\n}\n\nfunction official(chainId: number, idMap: SubgraphIdMap): IndexerGraphMap {\n return {\n airdrops: resolveOfficial(Protocol.Airdrops, chainId, idMap.airdrops),\n flow: resolveOfficial(Protocol.Flow, chainId, idMap.flow),\n lockup: resolveOfficial(Protocol.Lockup, chainId, idMap.lockup),\n };\n}\n\nconst CUSTOMS: IndexerGraphMap[] = [\n custom(\n chains.lightlink.id,\n \"https://graph.phoenix.lightlink.io/query/subgraphs/name/lightlink/{SUBGRAPH_NAME}\"\n ),\n custom(\n chains.denergy.id,\n \"https://thegraph.denergychain.com/subgraphs/name/denergychain/{SUBGRAPH_NAME}\"\n ),\n];\n\nconst OFFICIALS: IndexerGraphMap[] = [\n /* -------------------------------------------------------------------------- */\n /* MAINNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.mainnet.id, {\n airdrops: \"DFD73EcSue44R7mpHvXeyvcgaT8tR1iKakZFjBsiFpjs\",\n flow: \"ECxBJhKceBGaVvK6vqmK3VQAncKwPeAQutEb8TeiUiod\",\n lockup: \"AvDAMYYHGaEwn9F9585uqq6MM5CfvRtYcb7KjK7LKPCt\",\n }),\n official(chains.abstract.id, {\n airdrops: \"DRrf6mYEhRt9QieKvTjDHnSWcBm3GW96hpedMKVxLABx\",\n flow: \"Gq3e1gihMoSynURwGXQnPoKGVZzdsyomdrMH934vQHuG\",\n lockup: \"2QjTdDFY233faXksUruMERMiDoQDdtGG5hBLC27aT1Pw\",\n }),\n official(chains.arbitrum.id, {\n airdrops: \"HkHDg6NVVVeobhpcU4pTPMktyC25zd6xAQBGpYrWDgRr\",\n flow: \"C3kBBUVtW2rxqGpAgSgEuSaT49izkH6Q8UibRt7XFTyW\",\n lockup: \"yvDXXHSyv6rGPSzfpbBcbQmMFrECac3Q2zADkYsMxam\",\n }),\n official(chains.avalanche.id, {\n airdrops: \"CpbN5Ps25UzqfdoqYdrjoSK4Him6nwDvdLK6a2sGS1PA\",\n flow: \"6PAizjTALVqLLB7Ycq6XnpTeck8Z8QUpDFnVznMnisUh\",\n lockup: \"FTDmonvFEm1VGkzECcnDY2CPHcW5dSmHRurSjEEfTkCX\",\n }),\n official(chains.base.id, {\n airdrops: \"4SxPXkQNifgBYqje2C4yP5gz69erZwtD7GuLWgXHSLGe\",\n flow: \"4XSxXh8ZgkzaA35nrbQG9Ry3FYz3ZFD8QBdWwVg5pF9W\",\n lockup: \"778GfecD9tsyB4xNnz4wfuAyfHU6rqGr79VCPZKu3t2F\",\n }),\n official(chains.berachain.id, {\n airdrops: \"CnYsdmzuY3Mebwywvqv1WrXw9UZuPMTrxoGgR2UdThJE\",\n flow: \"J87eaBLfTe7kKWgUGqe5TxntNCzA4pyWmqJowMddehuh\",\n lockup: \"C2r13APcUemQtVdPFm7p7T3aJkU2rH2EvdZzrQ53zi14\",\n }),\n official(chains.bsc.id, {\n airdrops: \"FXQT42kQPvpMJgsF5Bs6CqpxVvPP1LBqEhWThCCLMeGL\",\n flow: \"2vU8KF4yWh3vvFjtg7MrRXMnYF3hPX2T3cvVBdaiXhNb\",\n lockup: \"A8Vc9hi7j45u7P8Uw5dg4uqYJgPo4x1rB4oZtTVaiccK\",\n }),\n official(chains.chiliz.id, {\n airdrops: \"6LK1aqrhzZCp6c88MEBDAR1VDLpZQiXpBKkceJ5Lu4LU\",\n flow: \"7QX7tJsANNFpxFLLjqzmXRzfY1wPGp3Lty5xGbhgADa6\",\n lockup: \"4KsXUFvsKFHH7Q8k3BPgEv2NhCJJGwG78gCPAUpncYb\",\n }),\n official(chains.gnosis.id, {\n airdrops: \"kQEY5PYbjx4SMKyMUwqJHRLDzKH1aUqGsf1cnibU7Kn\",\n flow: \"4KiJ53cTNKdFWPBPmDNQ55tYj8hn1WQg8R4UcTY2STLL\",\n lockup: \"DtKniy1RvB19q1r2g1WLN4reMNKDacEnuAjh284rW2iK\",\n }),\n official(chains.linea.id, {\n airdrops: \"6koYFSd8FQizdQWLTdRpL1yTmAbpMgN1vZN5W6ajZiTN\",\n flow: \"DV9XgcCCPKzUn6pgetg4yPetpW2fNoRKBUQC43aNeLG6\",\n lockup: \"GvpecytqVzLzuwuQB3enozXoaZRFoVx8Kr7qrfMiE9bs\",\n }),\n official(chains.optimism.id, {\n airdrops: \"CHJtCNDzPqngpa1YJoaVrjuufZL6k6VkEkG9ZFUMQzF7\",\n flow: \"AygPgsehNGSB4K7DYYtvBPhTpEiU4dCu3nt95bh9FhRf\",\n lockup: \"NZHzd2JNFKhHP5EWUiDxa5TaxGCFbSD4g6YnYr8JGi6\",\n }),\n official(chains.polygon.id, {\n airdrops: \"FRbBKiDyM5YpFAqHLXRfQWwQdMGzFL82hqoPXPpXzAHE\",\n flow: \"ykp38sLarwz3cpmjSSPqo7UuTjYtkZ1KiL4PM2qwmT8\",\n lockup: \"8fgeQMEQ8sskVeWE5nvtsVL2VpezDrAkx2d1VeiHiheu\",\n }),\n official(chains.scroll.id, {\n airdrops: \"Ev4xS8VxuoUcpgqz5A2BkTgQxQeskm4Fg41XzVJ2DX9\",\n flow: \"HFpTrPzJyrHKWZ9ebb4VFRQSxRwpepyfz5wd138daFkF\",\n lockup: \"GycpYx8c9eRqxvEAfqnpNd1ZfXeuLzjRhnG7vvYaqEE1\",\n }),\n official(chains.sonic.id, {\n airdrops: \"5g8orwpm5Rf83G8eqDzDjodt3sG2D64cbiLC98Utmv4Q\",\n flow: \"HkQKZKuM6dZ7Vc4FGC1gZTVVTniYJWRhTRmDDMNzN8zk\",\n lockup: \"GnaSPX9XLkPn219CqbGFU1NgveuQk2Hh3c8WxjtesaEh\",\n }),\n official(chains.unichain.id, {\n airdrops: \"4rQMJ85hKNhcaDyirGipGvcqS4auGU3QCFRBnpiexyNy\",\n flow: \"Cb5uDYfy4ukN9fjhQ3PQZgDzyo6G66ztn1e847rS7Xa8\",\n lockup: \"3MUG4H3gZcp9fpGLiJMTMeUFcQQ6QdT317P4wYKyns9M\",\n }),\n official(chains.zksync.id, {\n airdrops: \"64iDUwNVWKukw67nqTXif5taEfLug4Qf1c2suAv5hrqN\",\n flow: \"9DRgWhDAMovpkej3eT8izum6jxEKHE62ciArffsTAScx\",\n lockup: \"7SuEYGYwZ835LjVGB85ZE8z5zmqdKgmRh8kAEeJefWQN\",\n }),\n /* -------------------------------------------------------------------------- */\n /* TESTNETS */\n /* -------------------------------------------------------------------------- */\n official(chains.baseSepolia.id, {\n airdrops: \"4R2hm27YJ7CVEJ97BbBJz2r4KTKYc8sTqqzrD8UzEfJt\",\n flow: \"AsnKT1waQMvuQxZAqfFuYwtRtAfN8uekDu75jPttfyLh\",\n lockup: \"DdiYENuyh5ztSybRJnBnCZuUgESkFasjGFHZUbURpKHz\",\n }),\n official(chains.sepolia.id, {\n airdrops: \"8PLGDyXEsPgRTAnozL7MAjmTUFY4TBzs8i4F9Pq3wwSh\",\n flow: \"EU9AWmJjrjMRkjxcdHfuWPZvPTNAL3hiXfNGN5MwUpvm\",\n lockup: \"5yDtFSxyRuqyjvGJyyuQhMEW3Uah7Ddy2KFSKVhy9VMa\",\n }),\n];\n\nconst ALL: IndexerGraphMap[] = [...CUSTOMS, ...OFFICIALS];\n\nfunction toSortedArray(indexerMaps: IndexerGraphMap[], protocol: LegacyProtocol): Indexer[] {\n return indexerMaps\n .map((indexerMap) => indexerMap[protocol])\n .sort((a, b) => {\n const chainNameA = sablier.chains.getOrThrow(a.chainId).name;\n const chainNameB = sablier.chains.getOrThrow(b.chainId).name;\n return chainNameA.localeCompare(chainNameB);\n });\n}\n\n/** Beta: streams subgraph deployed only on Sepolia. */\nconst STREAMS: Indexer[] = [\n resolveOfficial(\"streams\", chains.sepolia.id, \"gXjQjEXaeBpBsMLbVo9govzQMyBLUtJHciKbJdxQCjV\"),\n];\n\nexport const graph: Record<Indexer.DataProtocol, Indexer[]> = {\n airdrops: toSortedArray(ALL, Protocol.Airdrops),\n flow: toSortedArray(ALL, Protocol.Flow),\n lockup: toSortedArray(ALL, Protocol.Lockup),\n streams: STREAMS,\n};\n\n// It doesn't matter what protocol we are using since each chain supports all protocols.\nexport const graphChains = graph.lockup.map((c) => c.chainId);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAyC3C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAyMD,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,CAKzD,CAAC;AAGF,eAAO,MAAM,WAAW,UAAqC,CAAC"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../../src/indexers/graph.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAyC3C,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEhE;AAiND,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,CAKzD,CAAC;AAGF,eAAO,MAAM,WAAW,UAAqC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sablier/indexers",
3
- "version": "3.1.0-beta.0",
3
+ "version": "3.1.0-beta.1",
4
4
  "description": "Data indexers for the Sablier Protocol",
5
5
  "homepage": "https://github.com/sablier-labs/indexers#readme",
6
6
  "license": "GPL-3.0-or-later",