[WEB-5459] feat(codemods): add function declaration transformer with tests (#8137)

- Add jscodeshift-based codemod to convert arrow function components to function declarations
- Support React.FC, observer-wrapped, and forwardRef components
- Include comprehensive test suite covering edge cases
- Add npm script to run transformer across codebase
- Target only .tsx files in source directories, excluding node_modules and declaration files

* [WEB-5459] chore: updates after running codemod

---------

Co-authored-by: sriramveeraghanta <veeraghanta.sriram@gmail.com>
This commit is contained in:
Aaron 2025-11-20 19:09:40 +07:00 committed by GitHub
parent 90866fb925
commit 83fdebf64d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
1771 changed files with 17003 additions and 13856 deletions

View file

@ -1,5 +1,4 @@
"use client";
// plane imports
import { isRouteErrorResponse } from "react-router";
import { Banner } from "@plane/propel/banner";
@ -12,18 +11,20 @@ interface ErrorActionsProps {
onReload?: () => void;
}
const ErrorActions: React.FC<ErrorActionsProps> = ({ onGoHome, onReload }) => (
<div className="flex gap-3 pt-2">
<Button variant="primary" size="md" onClick={onGoHome}>
Go to home
</Button>
{onReload && (
<Button variant="outline-primary" size="md" onClick={onReload}>
Reload page
function ErrorActions({ onGoHome, onReload }: ErrorActionsProps) {
return (
<div className="flex gap-3 pt-2">
<Button variant="primary" size="md" onClick={onGoHome}>
Go to home
</Button>
)}
</div>
);
{onReload && (
<Button variant="outline-primary" size="md" onClick={onReload}>
Reload page
</Button>
)}
</div>
);
}
interface DevErrorComponentProps {
error: unknown;
@ -31,7 +32,7 @@ interface DevErrorComponentProps {
onReload: () => void;
}
export const DevErrorComponent: React.FC<DevErrorComponentProps> = ({ error, onGoHome, onReload }) => {
export function DevErrorComponent({ error, onGoHome, onReload }: DevErrorComponentProps) {
if (isRouteErrorResponse(error)) {
return (
<div className="min-h-screen bg-custom-background-90 p-6 flex items-start justify-center transition-none">
@ -152,4 +153,4 @@ export const DevErrorComponent: React.FC<DevErrorComponentProps> = ({ error, onG
</div>
</div>
);
};
}

View file

@ -6,7 +6,7 @@ import { useAppRouter } from "@/hooks/use-app-router";
import { DevErrorComponent } from "./dev";
import { ProdErrorComponent } from "./prod";
export const CustomErrorComponent: React.FC<{ error: unknown }> = ({ error }) => {
export function CustomErrorComponent({ error }: { error: unknown }) {
// router
const router = useAppRouter();
@ -18,4 +18,4 @@ export const CustomErrorComponent: React.FC<{ error: unknown }> = ({ error }) =>
}
return <ProdErrorComponent onGoHome={handleGoHome} />;
};
}

View file

@ -32,7 +32,7 @@ interface ProdErrorComponentProps {
onGoHome: () => void;
}
export const ProdErrorComponent: React.FC<ProdErrorComponentProps> = ({ onGoHome }) => {
export function ProdErrorComponent({ onGoHome }: ProdErrorComponentProps) {
// hooks
const { resolvedTheme } = useTheme();
@ -86,4 +86,4 @@ export const ProdErrorComponent: React.FC<ProdErrorComponentProps> = ({ onGoHome
</div>
</DefaultLayout>
);
};
}