import React from 'react'; import { CodeBlock } from "UI"; import DocLink from 'Shared/DocLink/DocLink'; import ToggleContent from 'Shared/ToggleContent'; import { connect } from 'react-redux'; const GraphQLDoc = (props) => { const { projectKey } = props; const usage = `import OpenReplay from '@openreplay/tracker'; import trackerGraphQL from '@openreplay/tracker-graphql'; //... const tracker = new OpenReplay({ projectKey: '${projectKey}' }); // .start() returns a promise tracker.start().then(sessionData => ... ).catch(e => ... ) //... export const recordGraphQL = tracker.use(trackerGraphQL());` const usageCjs = `import OpenReplay from '@openreplay/tracker/cjs'; import trackerGraphQL from '@openreplay/tracker-graphql/cjs'; //... const tracker = new OpenReplay({ projectKey: '${projectKey}' }); //... function SomeFunctionalComponent() { useEffect(() => { // or componentDidMount in case of Class approach // .start() returns a promise tracker.start().then(sessionData => ... ).catch(e => ... ) }, []) } //... export const recordGraphQL = tracker.use(trackerGraphQL());` return (
This plugin allows you to capture GraphQL requests and inspect them later on while replaying session recordings. This is very useful for understanding and fixing issues.
GraphQL plugin is compatible with Apollo and Relay implementations.
The plugin call will return the function, which receives four variables operationKind, operationName, variables and result. It returns result without changes.