openreplay/tracker/tracker-graphql/src/graphqlMiddleware.ts
Delirium 6a42d96e21
Graphql plugin update (#1835) -- v1.19.0
* feat(tracker): relay + apollo plugins

* fix(tracker): type fixes

* fix(tracker): update mobs messages

* fix msg conflict
2024-06-25 10:13:13 +02:00

33 lines
No EOL
727 B
TypeScript

import { App, Messages } from "@openreplay/tracker";
function createGraphqlMiddleware() {
return (app: App | null) => {
if (app === null) {
return (_1: string, _2: string, _3: any, result: any) => result;
}
return (
operationKind: string,
operationName: string,
variables: any,
result: any,
duration = 0
) => {
try {
app.send(
Messages.GraphQL(
operationKind,
operationName,
JSON.stringify(variables),
JSON.stringify(result),
duration,
),
);
} catch (e) {
console.error(e);
}
return result;
};
};
}
export default createGraphqlMiddleware