diff --git a/demo/globals/BlocksGlobal.ts b/demo/globals/BlocksGlobal.ts index 890bf43dc2..afbadfefa3 100644 --- a/demo/globals/BlocksGlobal.ts +++ b/demo/globals/BlocksGlobal.ts @@ -1,6 +1,7 @@ import checkRole from '../access/checkRole'; import Quote from '../blocks/Quote'; import CallToAction from '../blocks/CallToAction'; +import { PayloadGlobalConfig } from '../../src/globals/config/types'; export default { slug: 'blocks-global', @@ -18,4 +19,4 @@ export default { localized: true, }, ], -}; +} as PayloadGlobalConfig; diff --git a/demo/globals/GlobalWithStrictAccess.ts b/demo/globals/GlobalWithStrictAccess.ts index c002a26dc1..772abf3945 100644 --- a/demo/globals/GlobalWithStrictAccess.ts +++ b/demo/globals/GlobalWithStrictAccess.ts @@ -1,3 +1,4 @@ +import { PayloadGlobalConfig } from '../../src/globals/config/types'; import checkRole from '../access/checkRole'; export default { @@ -31,4 +32,4 @@ export default { required: true, }, ], -}; +} as PayloadGlobalConfig; diff --git a/demo/globals/NavigationArray.ts b/demo/globals/NavigationArray.ts index 7c097af286..bf17f132de 100644 --- a/demo/globals/NavigationArray.ts +++ b/demo/globals/NavigationArray.ts @@ -1,3 +1,4 @@ +import { PayloadGlobalConfig } from '../../src/globals/config/types'; import checkRole from '../access/checkRole'; export default { @@ -24,4 +25,4 @@ export default { }], }, ], -}; +} as PayloadGlobalConfig; diff --git a/package.json b/package.json index 69a649e9dc..193897937b 100644 --- a/package.json +++ b/package.json @@ -166,6 +166,7 @@ "@types/is-hotkey": "^0.1.2", "@types/isomorphic-fetch": "^0.0.35", "@types/jest": "^26.0.15", + "@types/joi": "^14.3.4", "@types/jsonwebtoken": "^8.5.0", "@types/method-override": "^0.0.31", "@types/mini-css-extract-plugin": "^1.2.1", diff --git a/src/collections/operations/create.ts b/src/collections/operations/create.ts index b1bd2e6a8e..44baca8edb 100644 --- a/src/collections/operations/create.ts +++ b/src/collections/operations/create.ts @@ -231,7 +231,7 @@ async function create(incomingArgs) { // Send verification email if applicable // ///////////////////////////////////// - if (collectionConfig.auth && collectionConfig.auth.verify && !disableVerificationEmail) { + if (collectionConfig.auth && collectionConfig.auth.verify) { sendVerificationEmail({ config: this.config, sendEmail: this.sendEmail, @@ -239,6 +239,7 @@ async function create(incomingArgs) { user: result, token: data._verificationToken, req, + disableEmail: disableVerificationEmail, }); } diff --git a/src/collections/operations/delete.ts b/src/collections/operations/delete.ts index 32955b2ab1..6476e6f3a7 100644 --- a/src/collections/operations/delete.ts +++ b/src/collections/operations/delete.ts @@ -6,6 +6,7 @@ import { NotFound, Forbidden, ErrorDeletingFile } from '../../errors'; import executeAccess from '../../auth/executeAccess'; import fileExists from '../../uploads/fileExists'; import { BeforeOperationHook } from '../config/types'; +import { Query } from './types'; async function deleteQuery(incomingArgs) { let args = incomingArgs; @@ -56,7 +57,7 @@ async function deleteQuery(incomingArgs) { // Retrieve document // ///////////////////////////////////// - const queryToBuild = { + const queryToBuild: Query = { where: { and: [ { diff --git a/src/collections/operations/find.ts b/src/collections/operations/find.ts index cdacf3075b..31fcf9f23f 100644 --- a/src/collections/operations/find.ts +++ b/src/collections/operations/find.ts @@ -1,6 +1,7 @@ import executeAccess from '../../auth/executeAccess'; import removeInternalFields from '../../utilities/removeInternalFields'; import { BeforeOperationHook, BeforeReadHook } from '../config/types'; +import { Query } from './types'; async function find(incomingArgs) { let args = incomingArgs; @@ -39,7 +40,7 @@ async function find(incomingArgs) { // Access // ///////////////////////////////////// - const queryToBuild = {}; + const queryToBuild: Query = {}; if (where) { let and = []; diff --git a/src/collections/operations/findByID.ts b/src/collections/operations/findByID.ts index f52b404f2b..390c7249d0 100644 --- a/src/collections/operations/findByID.ts +++ b/src/collections/operations/findByID.ts @@ -4,6 +4,7 @@ import { BeforeOperationHook } from '../config/types'; import removeInternalFields from '../../utilities/removeInternalFields'; import { Forbidden, NotFound } from '../../errors'; import executeAccess from '../../auth/executeAccess'; +import { Query } from './types'; async function findByID(incomingArgs) { let args = incomingArgs; @@ -45,7 +46,7 @@ async function findByID(incomingArgs) { const accessResults = !overrideAccess ? await executeAccess({ req, disableErrors, id }, collectionConfig.access.read) : true; const hasWhereAccess = typeof accessResults === 'object'; - const queryToBuild = { + const queryToBuild: Query = { where: { and: [ { @@ -76,6 +77,8 @@ async function findByID(incomingArgs) { req.findByID[collectionConfig.slug] = memoize(nonMemoizedFindByID, { isPromise: true, maxSize: 100, + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore This is straight from their docs, bad typings transformKey: JSON.stringify, }); } diff --git a/src/fields/config/types.ts b/src/fields/config/types.ts index 476fa61ba7..afa4004d0f 100644 --- a/src/fields/config/types.ts +++ b/src/fields/config/types.ts @@ -156,7 +156,6 @@ export type RadioField = FieldBase & { value: string; label: string; }[] | string[]; - hasMany?: boolean; } export type Block = {