{"_id":"@dexpal-analytics/pair-screener-apollo","_rev":"9-6910c328ee2bd434990d0283cae8d4d6","name":"@dexpal-analytics/pair-screener-apollo","dist-tags":{"latest":"2.3.1"},"versions":{"1.0.0":{"name":"@dexpal-analytics/pair-screener-apollo","version":"1.0.0","_id":"@dexpal-analytics/pair-screener-apollo@1.0.0","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"6f58842d2b2941b9b0053d67e2fbd3007f024657","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-1.0.0.tgz","fileCount":11,"integrity":"sha512-tE6/IyNpkpM0pvXUmXDrWQHLKpy3Yfxsj+YDeCk8CYsHPCXIaiM5GNQ3SdtaesAthDzHkgbHyus29ZH2I5H8Xg==","signatures":[{"sig":"MEYCIQCASNqry/ggJLl4uy/zuLAiVNCIffiT4rM3/EELIDSYVQIhANpeEf2hyhzAOjdWaBGieC7p2JwIsBq2mXTRdgtRMSOE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75974},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_1.0.0_1759433291022_0.08772634213365693","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@dexpal-analytics/pair-screener-apollo","version":"1.0.1","_id":"@dexpal-analytics/pair-screener-apollo@1.0.1","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"da1556d7b3dd8f6019de9c34d89482945ec4b09a","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-1.0.1.tgz","fileCount":11,"integrity":"sha512-tJcWqYmUiEZpMfOLsFcRR/pyPJFFfsco0ZRFvMkfXL5jFw2972SvNZ745Vfo9+Rk9KzpMoWi5acFcgFVo54vhw==","signatures":[{"sig":"MEQCIFNOjDxDai4hKUk/8owmWpNhmaPTp/L8xVhua2I46iUFAiA2ZrA3YYEeFOqyij4cCWcsoG8eswDuTaHoud8NQZnY8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76240},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_1.0.1_1759433804821_0.7989875982667067","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@dexpal-analytics/pair-screener-apollo","version":"1.0.2","_id":"@dexpal-analytics/pair-screener-apollo@1.0.2","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"461a53e375cc336eeeb4bcd1273353f47d3191b5","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-1.0.2.tgz","fileCount":11,"integrity":"sha512-2odm7/PNxdJipoMF3UwB5Ohb1pJvkl/X4ezHhp4IavJJHlEJVYQxDIyHxJ93hoYRhk9uAMjZOWInPwnsLxKMnQ==","signatures":[{"sig":"MEUCIG6OdDfzfCcvmimlvTuVgyuqw4hgND1cQdObbXqun1NTAiEAxKl/wkbMV4AOic+tjyU+s07Jdtl0y5RdhYEva1MEz1M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76390},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_1.0.2_1759433940584_0.7809668052427114","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@dexpal-analytics/pair-screener-apollo","version":"1.0.3","_id":"@dexpal-analytics/pair-screener-apollo@1.0.3","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"61d110e67b8aeb42e8be627e4d095936c9860466","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-1.0.3.tgz","fileCount":11,"integrity":"sha512-D7cJBf2cjtD7n2a8OYO4pZhC2N7YuG1E9Bgyg0GKKJ2vHexW08sWaie0Lcjswbv6IWI1fy+pICzQdc7JFQPOHA==","signatures":[{"sig":"MEQCIDbTK/InLCTCgHor2NsPhZXyB8725DbA+ErAqZ8rafi7AiAA+qkyxO7S8sAwjVwAJtYzwGf0iY+zvB8KEBdbAXPwuQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":76812},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_1.0.3_1759434110364_0.752623102830063","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@dexpal-analytics/pair-screener-apollo","version":"2.1.0","_id":"@dexpal-analytics/pair-screener-apollo@2.1.0","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"8ad8eb7ae418885773b5d30a8108fcfe6291db1d","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-2.1.0.tgz","fileCount":11,"integrity":"sha512-A9Cp1rW/mILiS52xeM9fswHYzXhj+h6+/Om62uv0UpuVx9KwxGkIGTKdijv9p4nRAqdk04348UwQCJFHtwYb3Q==","signatures":[{"sig":"MEUCIGFibXxvvbYxsKiwnniQ/jn4aTiMTXFkCyE7CG9jgL3ZAiEArx+1fCDTc+kT/rlPZRyyuFVymzxJ4Jd+6GKty7jsH3o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97361},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_2.1.0_1759527354107_0.6027165554552123","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@dexpal-analytics/pair-screener-apollo","version":"2.1.1","_id":"@dexpal-analytics/pair-screener-apollo@2.1.1","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"b261906fc5b760c6b9bfbc3a44c2671e6a567a27","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-2.1.1.tgz","fileCount":11,"integrity":"sha512-wc638CUzcg20iGfTEQwwEvDRXMiXkyy7dbAfddwMgCi7EogoNjBO/xMiPdYAsEcyRSdxSrJhdKY/aOsG29tR+Q==","signatures":[{"sig":"MEUCIQDfV3+voPGvCo3eIU7+3RW+8oKI3mIrbx2tbTelKpEQEgIgPKTinMGEl1i+wZjS11dsf94d1+KOcqSuovb3xuyBEAw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97582},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"tsup --watch","build":"tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_2.1.1_1759527581879_0.10308072409839397","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@dexpal-analytics/pair-screener-apollo","version":"2.2.0","_id":"@dexpal-analytics/pair-screener-apollo@2.2.0","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"21efdbcc5cefdafe4480e40c5576caa65ac9db15","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-2.2.0.tgz","fileCount":11,"integrity":"sha512-9csgXvMaJjvwEEFHwGjjoDvRLIjvbiMWnPiFUh72+LFETYKVePVO/N8fxCQ9xw/wJdz8ZbHVkBJ1GHneJ+uBvQ==","signatures":[{"sig":"MEUCIBwaIKNmyigETWr3Y7d2lpVvdjlyIsktROnSqvegGDNDAiEA6ZSvGkybqvcazLGwEW9k5iWaRHefAT7aZzHlR7vbHOM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95041},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"npx tsup --watch","build":"npx tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_2.2.0_1759948559181_0.21577300607112737","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@dexpal-analytics/pair-screener-apollo","version":"2.3.0","_id":"@dexpal-analytics/pair-screener-apollo@2.3.0","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"dist":{"shasum":"87232c04111e669595bedbe834a08130b7cc99bb","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-2.3.0.tgz","fileCount":11,"integrity":"sha512-CJ4OBnpRAdxhiakQ/klnbQ5oGXzuw9c0ViKkuWZRe7Z+/aVTKrUz+HkIwFWpMXuQt1wI1/TRegpAjsywaauf3w==","signatures":[{"sig":"MEQCICq17fgoLIVlZFA7lgyw/YCKPVh32C4Mnms/DIGM3oYKAiAyypcclKD5udqB+anltb0EzcLYI4cEOSsVfr8QbfB8Gw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":97327},"main":"./dist/index.js","types":"./dist/index.d.ts","module":"./dist/index.mjs","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"dev":"npx tsup --watch","build":"npx tsup","prepublishOnly":"npm run build"},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"repository":{"url":"https://github.com/dexpal/dexpal-launch.git","type":"git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","directories":{},"dependencies":{"@dexpal-analytics/pair-screener":"^2.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"peerDependencies":{"react":"^18.0.0","graphql":"^16.10.0","react-dom":"^18.0.0","graphql-tag":"^2.12.0","@apollo/client":"^3.13.0"},"_npmOperationalInternal":{"tmp":"tmp/pair-screener-apollo_2.3.0_1760126865059_0.7707487768099852","host":"s3://npm-registry-packages-npm-production"}},"2.3.1":{"name":"@dexpal-analytics/pair-screener-apollo","version":"2.3.1","description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","main":"./dist/index.js","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.js"}},"scripts":{"build":"npx tsup","dev":"npx tsup --watch","prepublishOnly":"npm run build"},"peerDependencies":{"@apollo/client":"^3.13.0","graphql":"^16.10.0","graphql-tag":"^2.12.0","react":"^18.0.0","react-dom":"^18.0.0"},"dependencies":{"@dexpal-analytics/pair-screener":"^2.3.0"},"repository":{"type":"git","url":"https://github.com/dexpal/dexpal-launch.git","directory":"packages/pair-screener-apollo"},"publishConfig":{"access":"public"},"devDependencies":{"tsup":"^8.5.0","typescript":"^5.9.3"},"_id":"@dexpal-analytics/pair-screener-apollo@2.3.1","dist":{"shasum":"ec96b5c05c5d90762ea15621583c703aa3fc7036","integrity":"sha512-eK0ogVsD8L0FQtHfrPkzF9w/hKsLXnJCZdU00lIMlBOcFmOIL27MZAdTU/SJE/Nmbs2MYO9IigV3m/nHrB04rw==","tarball":"https://registry.npmjs.org/@dexpal-analytics/pair-screener-apollo/-/pair-screener-apollo-2.3.1.tgz","fileCount":11,"unpackedSize":97441,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBSenODMK8ZumA00HIRb2FvN0SBqALuNsZYExxJfKhR3AiEAh2Mh8QHlpy2tnHxvfwcuvuddVdlvC3iTBLE/tcXqfiA="}]},"_npmUser":{"name":"josefleventon","email":"josef.leventon@gmail.com"},"directories":{},"maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pair-screener-apollo_2.3.1_1760126926369_0.6223704272245709"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-02T19:28:10.938Z","modified":"2025-10-10T20:08:46.897Z","1.0.0":"2025-10-02T19:28:11.234Z","1.0.1":"2025-10-02T19:36:45.009Z","1.0.2":"2025-10-02T19:39:00.770Z","1.0.3":"2025-10-02T19:41:50.544Z","2.1.0":"2025-10-03T21:35:54.317Z","2.1.1":"2025-10-03T21:39:42.089Z","2.2.0":"2025-10-08T18:35:59.364Z","2.3.0":"2025-10-10T20:07:45.263Z","2.3.1":"2025-10-10T20:08:46.571Z"},"repository":{"type":"git","url":"https://github.com/dexpal/dexpal-launch.git","directory":"packages/pair-screener-apollo"},"description":"Apollo Client data-fetching layer for @dexpal-analytics/pair-screener","maintainers":[{"name":"josefleventon","email":"josef.leventon@gmail.com"}],"readme":"{{ ... }}\n\nApollo Client data-fetching layer for `@dexpal-analytics/pair-screener`. Provides a complete plug-and-play solution with GraphQL queries, context providers, real-time price updates, and **query-level filtering for restricted pairs and assets**.\n\n## Features\n\n- 🔌 **Plug-and-Play**: Complete data fetching solution\n- 📡 **Real-time Updates**: Asset price polling with configurable intervals\n- 🎯 **GraphQL Queries**: Pre-built queries for DEXes and trading pairs\n- 🔄 **Context Provider**: Easy state management with React Context\n- 🪝 **Custom Hooks**: `useDexpal` and `useAssetPrices`\n- 📦 **TypeScript**: Full type safety\n\n## Installation\n\n```bash\nnpm install @dexpal-analytics/pair-screener-apollo @dexpal-analytics/pair-screener @dexpal-analytics/ui\n{{ ... }}\n# or\nyarn add @dexpal-analytics/pair-screener-apollo @dexpal-analytics/pair-screener @dexpal-analytics/ui\n```\n\n### Peer Dependencies\n\n```json\n{\n  \"react\": \"^18.0.0\",\n  \"react-dom\": \"^18.0.0\",\n  \"@apollo/client\": \"^3.13.0\",\n  \"graphql\": \"^16.10.0\",\n  \"graphql-tag\": \"^2.12.0\"\n}\n```\n\n### With Restricted Pairs/Assets Filtering\n\n```tsx\nimport { PairScreener } from '@dexpal-analytics/pair-screener';\nimport { DexpalProvider, useDexpal } from '@dexpal-analytics/pair-screener-apollo';\nimport { ApolloClient, InMemoryCache, ApolloProvider } from '@apollo/client';\n\n// 1. Create Apollo Client with default endpoint\nconst client = new ApolloClient({\n  uri: process.env.NEXT_PUBLIC_GRAPHQL_ENDPOINT || 'https://gql.dexpal.ai/v1/graphql',\n  cache: new InMemoryCache(),\n});\n\n// 2. Wrap with providers\nconst restrictedPairs = ['BTC', 'ETH/USDT']; // Pairs to exclude from query\nconst restrictedAssets = ['Bitcoin', 'BTC', 'USDT']; // Assets to exclude from query\n\nfunction App() {\n  return (\n    <ApolloProvider client={client}>\n      <DexpalProvider restrictedPairs={restrictedPairs} restrictedAssets={restrictedAssets}>\n        <PairScreenerPage />\n      </DexpalProvider>\n    </ApolloProvider>\n  );\n}\n\n// 3. Use the PairScreener with context\nfunction PairScreenerPage() {\n  return <PairScreener useDexpalContext={useDexpal} />;\n}\n```\n\n## API Reference\n\n### DexpalProvider\n\nProvides DEX and trading pair data to child components.\n\n```tsx\nimport { DexpalProvider } from '@dexpal-analytics/pair-screener-apollo';\n\n<DexpalProvider>\n  <YourApp />\n</DexpalProvider>;\n```\n\n#### With Custom GraphQL Endpoint\n\n```tsx\n<DexpalProvider graphqlEndpoint=\"https://gql.dexpal.ai/v1/graphql\">\n  <YourApp />\n</DexpalProvider>\n```\n\n### useDexpal Hook\n\nAccess DEX and pair data from the context.\n\n```tsx\nimport { useDexpal } from '@dexpal-analytics/pair-screener-apollo';\n\nfunction MyComponent() {\n  const {\n    dexList, // Array of DEX data\n    loadingDexList, // Loading state for DEXes\n    dexListError, // Error state for DEXes\n    dexPairs, // Array of trading pairs\n    loadingDexPairs, // Loading state for pairs\n    dexPairsError, // Error state for pairs\n    lastUpdated, // Timestamp of last data refresh\n    refreshData, // Manual refresh function\n  } = useDexpal();\n\n  return <div>{loadingDexPairs ? 'Loading...' : `${dexPairs.length} pairs`}</div>;\n}\n```\n\n### useAssetPrices Hook\n\nReal-time asset price polling.\n\n```tsx\nimport { useAssetPrices } from '@dexpal-analytics/pair-screener-apollo';\n\nfunction PriceDisplay({ assetIds }: { assetIds: string[] }) {\n  const {\n    assetPrices, // Map<string, AssetPrice>\n    getAssetPrice, // (assetId: string) => AssetPrice | undefined\n    loading,\n    error,\n    refetchPrices,\n  } = useAssetPrices({\n    assetIds,\n    enabled: true,\n    pollingInterval: 6000, // 6 seconds\n  });\n\n  const price = getAssetPrice(assetIds[0]);\n  return <div>${price?.market_price}</div>;\n}\n```\n\n## GraphQL Queries\n\n### GET_DEXES\n\nFetches all DEX information.\n\n```graphql\nquery GetDexes {\n  dexes(order_by: { name: asc }) {\n    id\n    name\n    logo\n    description\n    # ... more fields\n  }\n}\n```\n\n### GET_PAIRS\n\nFetches all trading pairs with historical data.\n\n```graphql\nquery GetPairs($startTime: timestamptz!, $endTime: timestamptz!) {\n  pair_stats(order_by: { trading_volume_24h: desc_nulls_last }) {\n    id\n    base\n    target\n    asset { ... }\n    dex { ... }\n    # ... more fields\n  }\n}\n```\n\n## Environment Variables\n\nSet your GraphQL endpoint (optional - will use default if not provided):\n\n```env\nNEXT_PUBLIC_GRAPHQL_ENDPOINT=https://gql.dexpal.ai/v1/graphql\n```\n\n## Advanced Usage\n\n### Custom Polling Interval\n\n```tsx\n<DexpalProvider pollingInterval={10000}>\n  <YourApp />\n</DexpalProvider>\n```\n\n### Manual Data Refresh\n\n```tsx\nfunction RefreshButton() {\n  const { refreshData, loadingDexPairs } = useDexpal();\n\n  return (\n    <button onClick={refreshData} disabled={loadingDexPairs}>\n      Refresh Data\n    </button>\n  );\n}\n```\n\n### Conditional Price Updates\n\n```tsx\nconst { assetPrices } = useAssetPrices({\n  assetIds: selectedAssetIds,\n  enabled: isVisible && !isPaused, // Only poll when needed\n  pollingInterval: 5000,\n});\n```\n\n## TypeScript\n\nAll types are re-exported from `@dexpal-analytics/pair-screener`:\n\n```typescript\nimport type { DexPair, Dex, Asset } from '@dexpal-analytics/pair-screener';\n```\n\n## Error Handling\n\n```tsx\nfunction MyComponent() {\n  const { dexPairs, dexPairsError, loadingDexPairs } = useDexpal();\n\n  if (dexPairsError) {\n    return <div>Error loading pairs: {dexPairsError.message}</div>;\n  }\n\n  if (loadingDexPairs) {\n    return <div>Loading...</div>;\n  }\n\n  return <PairScreener data={dexPairs} />;\n}\n```\n","readmeFilename":"README.md"}