Merge branch 'master' into fix/read-only

This commit is contained in:
Jarrod Flesch
2022-09-30 10:47:34 -04:00
7 changed files with 30 additions and 18 deletions

View File

@@ -4,10 +4,10 @@ import { useEffect, useRef } from 'react';
type useThrottledEffect = (callback: React.EffectCallback, delay: number, deps: React.DependencyList) => void;
const useThrottledEffect: useThrottledEffect = (callback, delay, deps = []) => {
const lastRan = useRef<number>(null);
const lastRan = useRef(Date.now());
useEffect(() => {
if (lastRan) {
useEffect(
() => {
const handler = setTimeout(() => {
if (Date.now() - lastRan.current >= delay) {
callback();
@@ -18,12 +18,9 @@ const useThrottledEffect: useThrottledEffect = (callback, delay, deps = []) => {
return () => {
clearTimeout(handler);
};
}
callback();
lastRan.current = Date.now();
return () => null;
}, [delay, ...deps]);
},
[delay, ...deps],
);
};
export default useThrottledEffect;

View File

@@ -5,7 +5,7 @@ export default (config: SanitizedConfig) => (
(req: Request, res: Response, next: NextFunction) => {
if (config.cors) {
res.header('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS');
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding');
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding, x-apollo-tracing');
if (config.cors === '*') {
res.setHeader('Access-Control-Allow-Origin', '*');

View File

@@ -100,6 +100,13 @@ export const init = (payload: Payload, options: InitOptions): void => {
if (!payload.config.graphQL.disable) {
payload.router.use(
payload.config.routes.graphQL,
(req, res, next): void => {
if (req.method === 'OPTIONS') {
res.sendStatus(204);
} else {
next();
}
},
identifyAPI('GraphQL'),
(req: PayloadRequest, res: Response) => graphQLHandler(req, res)(req, res),
);