From 5a0d3d20775251ca8b300adebba4a307344d07d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Germ=C3=A1n=20Jablo=C3=B1ski?= <43938777+GermanJablo@users.noreply.github.com> Date: Fri, 9 May 2025 15:14:19 -0300 Subject: [PATCH] fix eslint non-autofixable errors (most of them react compiler lint errors) --- packages/next/src/views/LivePreview/Device/index.tsx | 2 ++ packages/payload/src/assets/assets.d.ts | 1 + packages/payload/src/auth/strategies/local/authenticate.ts | 4 ++-- .../src/providers/TenantSelectionProvider/index.client.tsx | 1 + packages/ui/src/@types/assets.d.ts | 1 + packages/ui/src/elements/Autosave/index.tsx | 3 +++ packages/ui/src/elements/BulkUpload/EditForm/index.tsx | 1 + packages/ui/src/elements/ListControls/index.tsx | 1 + packages/ui/src/elements/RelationshipTable/index.tsx | 1 + packages/ui/src/fields/Relationship/index.tsx | 1 + packages/ui/src/forms/Form/index.tsx | 1 + packages/ui/src/forms/RowLabel/Context/index.tsx | 1 - packages/ui/src/providers/ListQuery/index.tsx | 2 ++ packages/ui/src/providers/Preferences/index.tsx | 4 +++- packages/ui/src/providers/Selection/index.tsx | 2 ++ packages/ui/src/providers/TableColumns/index.tsx | 1 + packages/ui/src/views/Edit/index.tsx | 1 + 17 files changed, 24 insertions(+), 4 deletions(-) diff --git a/packages/next/src/views/LivePreview/Device/index.tsx b/packages/next/src/views/LivePreview/Device/index.tsx index fab8ca3065..83d5b9233c 100644 --- a/packages/next/src/views/LivePreview/Device/index.tsx +++ b/packages/next/src/views/LivePreview/Device/index.tsx @@ -16,7 +16,9 @@ export const DeviceContainer: React.FC<{ // Keep an accurate measurement of the actual device size as it is truly rendered // This is helpful when `sizes` are non-number units like percentages, etc. + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix const { size: measuredDeviceSize } = useResize(deviceFrameRef.current) + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix const { size: outerFrameSize } = useResize(outerFrameRef.current) let deviceIsLargerThanFrame: boolean = false diff --git a/packages/payload/src/assets/assets.d.ts b/packages/payload/src/assets/assets.d.ts index 7cca990e90..47443955df 100644 --- a/packages/payload/src/assets/assets.d.ts +++ b/packages/payload/src/assets/assets.d.ts @@ -1,4 +1,5 @@ declare module '*.svg' { + // eslint-disable-next-line @typescript-eslint/no-require-imports import React = require('react') export const ReactComponent: React.SFC> diff --git a/packages/payload/src/auth/strategies/local/authenticate.ts b/packages/payload/src/auth/strategies/local/authenticate.ts index 8eef430460..f96ed2bd74 100644 --- a/packages/payload/src/auth/strategies/local/authenticate.ts +++ b/packages/payload/src/auth/strategies/local/authenticate.ts @@ -19,13 +19,13 @@ export const authenticateLocalStrategy = async ({ doc, password }: Args): Promis const res = await new Promise((resolve, reject) => { crypto.pbkdf2(password, salt, 25000, 512, 'sha256', (e, hashBuffer) => { if (e) { - reject(null) + reject(e) } if (scmp(hashBuffer, Buffer.from(hash, 'hex'))) { resolve(doc) } else { - reject(null) + reject(new Error('Invalid password')) } }) }) diff --git a/packages/plugin-multi-tenant/src/providers/TenantSelectionProvider/index.client.tsx b/packages/plugin-multi-tenant/src/providers/TenantSelectionProvider/index.client.tsx index 4aad06e231..f3647c4b3a 100644 --- a/packages/plugin-multi-tenant/src/providers/TenantSelectionProvider/index.client.tsx +++ b/packages/plugin-multi-tenant/src/providers/TenantSelectionProvider/index.client.tsx @@ -67,6 +67,7 @@ export const TenantSelectionProviderClient = ({ }, []) const deleteCookie = React.useCallback(() => { + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix document.cookie = 'payload-tenant=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/' }, []) diff --git a/packages/ui/src/@types/assets.d.ts b/packages/ui/src/@types/assets.d.ts index 7cca990e90..47443955df 100644 --- a/packages/ui/src/@types/assets.d.ts +++ b/packages/ui/src/@types/assets.d.ts @@ -1,4 +1,5 @@ declare module '*.svg' { + // eslint-disable-next-line @typescript-eslint/no-require-imports import React = require('react') export const ReactComponent: React.SFC> diff --git a/packages/ui/src/elements/Autosave/index.tsx b/packages/ui/src/elements/Autosave/index.tsx index babac56a67..85cb7a4f24 100644 --- a/packages/ui/src/elements/Autosave/index.tsx +++ b/packages/ui/src/elements/Autosave/index.tsx @@ -91,15 +91,18 @@ export const Autosave: React.FC = ({ id, collection, global: globalDoc }) // Store fields in ref so the autosave func // can always retrieve the most to date copies // after the timeout has executed + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix fieldRef.current = fields // Store modified in ref so the autosave func // can bail out if modified becomes false while // timing out during autosave + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix modifiedRef.current = modified // Store locale in ref so the autosave func // can always retrieve the most to date locale + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix localeRef.current = locale const { queueTask } = useQueues() diff --git a/packages/ui/src/elements/BulkUpload/EditForm/index.tsx b/packages/ui/src/elements/BulkUpload/EditForm/index.tsx index f1c4da6c28..eff5a9fcab 100644 --- a/packages/ui/src/elements/BulkUpload/EditForm/index.tsx +++ b/packages/ui/src/elements/BulkUpload/EditForm/index.tsx @@ -192,6 +192,7 @@ function GetFieldProxy() { const { getFormDataRef } = useFormsManager() useEffect(() => { + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix getFormDataRef.current = getFields }, [getFields, getFormDataRef]) diff --git a/packages/ui/src/elements/ListControls/index.tsx b/packages/ui/src/elements/ListControls/index.tsx index 40dbed24e2..3aded4ec79 100644 --- a/packages/ui/src/elements/ListControls/index.tsx +++ b/packages/ui/src/elements/ListControls/index.tsx @@ -163,6 +163,7 @@ export const ListControls: React.FC = (props) => { // @ts-expect-error @todo: fix types initialParams={query} key={collectionSlug} + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix label={searchLabelTranslated.current} /> {activePreset && hasModifiedPreset ? ( diff --git a/packages/ui/src/elements/RelationshipTable/index.tsx b/packages/ui/src/elements/RelationshipTable/index.tsx index 79f998188f..3e4353ed38 100644 --- a/packages/ui/src/elements/RelationshipTable/index.tsx +++ b/packages/ui/src/elements/RelationshipTable/index.tsx @@ -235,6 +235,7 @@ export const RelationshipTable: React.FC = (pro if (Array.isArray(relationTo) && !isDrawerOpen && selectedCollection) { setSelectedCollection(undefined) } + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix // eslint-disable-next-line react-hooks/exhaustive-deps }, [isDrawerOpen]) diff --git a/packages/ui/src/fields/Relationship/index.tsx b/packages/ui/src/fields/Relationship/index.tsx index 21cbaa4299..296f8f97ec 100644 --- a/packages/ui/src/fields/Relationship/index.tsx +++ b/packages/ui/src/fields/Relationship/index.tsx @@ -125,6 +125,7 @@ const RelationshipFieldComponent: RelationshipFieldClientComponent = (props) => const [options, dispatchOptions] = useReducer(optionsReducer, []) const valueRef = useRef(value) + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix valueRef.current = value const [DocumentDrawer, , { isDrawerOpen, openDrawer }] = useDocumentDrawer({ diff --git a/packages/ui/src/forms/Form/index.tsx b/packages/ui/src/forms/Form/index.tsx index 4c80662d8a..3d11cd2396 100644 --- a/packages/ui/src/forms/Form/index.tsx +++ b/packages/ui/src/forms/Form/index.tsx @@ -1,3 +1,4 @@ +/* eslint-disable react-compiler/react-compiler -- TODO: fix */ 'use client' import { dequal } from 'dequal/lite' // lite: no need for Map and Set support import { useRouter } from 'next/navigation.js' diff --git a/packages/ui/src/forms/RowLabel/Context/index.tsx b/packages/ui/src/forms/RowLabel/Context/index.tsx index 1a817a68b0..9549c83618 100644 --- a/packages/ui/src/forms/RowLabel/Context/index.tsx +++ b/packages/ui/src/forms/RowLabel/Context/index.tsx @@ -21,7 +21,6 @@ type Props = { } & Omit, 'data'> export const RowLabelProvider: React.FC> = ({ children, path, rowNumber }) => { - 'use no memo' const { getDataByPath, getSiblingData } = useWatchForm() const collapsibleData = getSiblingData(path) const arrayData = getDataByPath(path) diff --git a/packages/ui/src/providers/ListQuery/index.tsx b/packages/ui/src/providers/ListQuery/index.tsx index 53eee2fc72..a4613a7b28 100644 --- a/packages/ui/src/providers/ListQuery/index.tsx +++ b/packages/ui/src/providers/ListQuery/index.tsx @@ -40,6 +40,7 @@ export const ListQueryProvider: React.FC = ({ const contextRef = useRef({} as IListQueryContext) + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix contextRef.current.modified = modified const { onQueryChange } = useListDrawerContext() @@ -215,6 +216,7 @@ export const ListQueryProvider: React.FC = ({ query: currentQuery, refineListData, setModified, + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix ...contextRef.current, }} > diff --git a/packages/ui/src/providers/Preferences/index.tsx b/packages/ui/src/providers/Preferences/index.tsx index f405bfea76..f469720975 100644 --- a/packages/ui/src/providers/Preferences/index.tsx +++ b/packages/ui/src/providers/Preferences/index.tsx @@ -154,9 +154,11 @@ export const PreferencesProvider: React.FC<{ children?: React.ReactNode }> = ({ [api, getPreference, i18n.language, pendingUpdate, serverURL], ) + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix contextRef.current.getPreference = getPreference + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix contextRef.current.setPreference = setPreference - + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix return {children} } diff --git a/packages/ui/src/providers/Selection/index.tsx b/packages/ui/src/providers/Selection/index.tsx index d0828c3264..1d2b166a9d 100644 --- a/packages/ui/src/providers/Selection/index.tsx +++ b/packages/ui/src/providers/Selection/index.tsx @@ -190,6 +190,7 @@ export const SelectionProvider: React.FC = ({ children, docs = [], totalD setCount(newCount) }, [selectAll, selected, totalDocs]) + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix contextRef.current = { count, getQueryParams, @@ -200,6 +201,7 @@ export const SelectionProvider: React.FC = ({ children, docs = [], totalD totalDocs, } + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix return {children} } diff --git a/packages/ui/src/providers/TableColumns/index.tsx b/packages/ui/src/providers/TableColumns/index.tsx index 3bb873e730..72f04562b3 100644 --- a/packages/ui/src/providers/TableColumns/index.tsx +++ b/packages/ui/src/providers/TableColumns/index.tsx @@ -100,6 +100,7 @@ export const TableColumnsProvider: React.FC = ({ resetColumnsState, setActiveColumns, toggleColumn, + // eslint-disable-next-line react-compiler/react-compiler -- TODO: fix ...contextRef.current, }} > diff --git a/packages/ui/src/views/Edit/index.tsx b/packages/ui/src/views/Edit/index.tsx index e57cd3f7d7..fb4a7181fd 100644 --- a/packages/ui/src/views/Edit/index.tsx +++ b/packages/ui/src/views/Edit/index.tsx @@ -1,3 +1,4 @@ +/* eslint-disable react-compiler/react-compiler -- TODO: fix */ 'use client' import type { ClientUser, DocumentViewClientProps, FormState } from 'payload'