Keep original request and add properties to it, instead of copy

This commit is contained in:
dsod
2022-08-20 01:33:29 +02:00
parent b21a56fdf7
commit bc97d3d6f2
11 changed files with 128 additions and 73 deletions

View File

@@ -19,15 +19,12 @@ async function localForgotPassword(payload: Payload, options: Options): Promise<
data,
expiration,
disableEmail,
req: incomingReq = {},
req = {} as PayloadRequest,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq,
payloadAPI: 'local',
} as PayloadRequest;
req.payloadAPI = 'local';
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -23,7 +23,7 @@ export type Options = {
async function localLogin<T extends TypeWithID = any>(payload: Payload, options: Options): Promise<Result & { user: T}> {
const {
collection: collectionSlug,
req: incomingReq = {},
req = {} as PayloadRequest,
res,
depth,
locale,
@@ -35,13 +35,10 @@ async function localLogin<T extends TypeWithID = any>(payload: Payload, options:
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq,
payloadAPI: 'local',
payload,
locale: undefined,
fallbackLocale: undefined,
} as PayloadRequest;
req.payloadAPI = 'local';
req.payload = payload;
req.locale = undefined;
req.fallbackLocale = undefined;
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -18,16 +18,13 @@ async function localResetPassword(payload: Payload, options: Options): Promise<R
collection: collectionSlug,
data,
overrideAccess,
req: incomingReq = {},
req = {} as PayloadRequest,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq,
payload,
payloadAPI: 'local',
} as PayloadRequest;
req.payload = payload;
req.payloadAPI = 'local';
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -17,16 +17,13 @@ async function localUnlock(payload: Payload, options: Options): Promise<boolean>
collection: collectionSlug,
data,
overrideAccess = true,
req: incomingReq = {},
req = {} as PayloadRequest,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq,
payload,
payloadAPI: 'local',
} as PayloadRequest;
req.payload = payload;
req.payloadAPI = 'local';
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -1,9 +1,9 @@
import { UploadedFile } from 'express-fileupload';
import { Payload } from '../../..';
import { PayloadRequest } from '../../../express/types';
import { Document } from '../../../types';
import getFileByPath from '../../../uploads/getFileByPath';
import create from '../create';
import { File } from '../../../uploads/types';
import { getDataLoader } from '../../dataloader';
@@ -18,7 +18,7 @@ export type Options<T> = {
disableVerificationEmail?: boolean
showHiddenFields?: boolean
filePath?: string
file?: File
file?: UploadedFile
overwriteExistingFiles?: boolean
req?: PayloadRequest
draft?: boolean
@@ -38,23 +38,21 @@ export default async function createLocal<T = any>(payload: Payload, options: Op
filePath,
file,
overwriteExistingFiles = false,
req: incomingReq,
req = {} as PayloadRequest,
draft,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq || {},
user,
payloadAPI: 'local',
locale: locale || incomingReq?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null),
fallbackLocale: fallbackLocale || incomingReq?.fallbackLocale || null,
payload,
files: {
file: file ?? getFileByPath(filePath),
},
} as PayloadRequest;
req.payloadAPI = 'local';
req.locale = locale || req?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null);
req.fallbackLocale = fallbackLocale || req?.fallbackLocale || null;
req.payload = payload;
req.files = {
file: (file as UploadedFile) ?? (getFileByPath(filePath) as UploadedFile),
};
if (typeof user !== 'undefined') req.user = user;
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -43,19 +43,15 @@ export default async function findLocal<T extends TypeWithID = any>(payload: Pay
sort,
draft = false,
pagination = true,
req: incomingReq,
req = {} as PayloadRequest,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
user: undefined,
...incomingReq || {},
payloadAPI: 'local',
locale: locale || incomingReq?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null),
fallbackLocale: fallbackLocale || incomingReq?.fallbackLocale || null,
payload,
} as PayloadRequest;
req.payloadAPI = 'local';
req.locale = locale || req?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null);
req.fallbackLocale = fallbackLocale || req?.fallbackLocale || null;
req.payload = payload;
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);

View File

@@ -33,20 +33,16 @@ export default async function findByIDLocal<T extends TypeWithID = any>(payload:
overrideAccess = true,
disableErrors = false,
showHiddenFields,
req: incomingReq,
req = {} as PayloadRequest,
draft = false,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
user: undefined,
...incomingReq || {},
payloadAPI: 'local',
locale: locale || incomingReq?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null),
fallbackLocale: fallbackLocale || incomingReq?.fallbackLocale || null,
payload,
} as PayloadRequest;
req.payloadAPI = 'local';
req.locale = locale || req?.locale || (payload?.config?.localization ? payload?.config?.localization?.defaultLocale : null);
req.fallbackLocale = fallbackLocale || req?.fallbackLocale || null;
req.payload = payload;
if (typeof user !== 'undefined') req.user = user;

View File

@@ -28,18 +28,15 @@ export default async function findVersionByIDLocal<T extends TypeWithVersion<T>
overrideAccess = true,
disableErrors = false,
showHiddenFields,
req: incomingReq,
req = {} as PayloadRequest,
} = options;
const collection = payload.collections[collectionSlug];
const req = {
...incomingReq || {},
payloadAPI: 'local',
locale: locale || incomingReq?.locale || this?.config?.localization?.defaultLocale,
fallbackLocale: fallbackLocale || incomingReq?.fallbackLocale || null,
payload,
} as PayloadRequest;
req.payloadAPI = 'local';
req.locale = locale || req?.locale || this?.config?.localization?.defaultLocale;
req.fallbackLocale = fallbackLocale || req?.fallbackLocale || null;
req.payload = payload;
if (!req.payloadDataLoader) req.payloadDataLoader = getDataLoader(req);