SYMBOL INDEX (222 symbols across 153 files) FILE: chapter10/react-gradual-demo/src/legacy/Greeting.js class AboutSection (line 7) | class AboutSection extends Component { method componentDidMount (line 9) | componentDidMount() { method render (line 21) | render() { FILE: chapter10/react-gradual-demo/src/legacy/createLegacyRoot.js function createLegacyRoot (line 6) | function createLegacyRoot(container) { FILE: chapter10/react-gradual-demo/src/modern/AboutPage.js function AboutPage (line 9) | function AboutPage() { FILE: chapter10/react-gradual-demo/src/modern/App.js function App (line 6) | function App() { function Spinner (line 38) | function Spinner() { FILE: chapter10/react-gradual-demo/src/modern/HomePage.js function HomePage (line 6) | function HomePage() { FILE: chapter10/react-gradual-demo/src/modern/lazyLegacyRoot.js function lazyLegacyRoot (line 11) | function lazyLegacyRoot(getLegacyComponent) { function readModule (line 62) | function readModule(record, importStatement) { FILE: chapter10/react-gradual-demo/src/shared/Clock.js function Clock (line 12) | function Clock() { FILE: chapter10/react-gradual-demo/src/shared/useTime.js function useTimer (line 10) | function useTimer() { FILE: chapter11/next13/app/api/hello/route.ts function GET (line 1) | async function GET() { FILE: chapter11/next13/app/api/posts/[id]/route.ts function GET (line 3) | async function GET( FILE: chapter11/next13/app/api/posts/route.ts function GET (line 3) | async function GET(request: NextRequest) { FILE: chapter11/next13/app/api/users/[id]/route.ts function GET (line 3) | async function GET( FILE: chapter11/next13/app/api/users/route.ts function GET (line 1) | async function GET() { FILE: chapter11/next13/app/context/[id]/page.tsx function Page (line 4) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/context/layout.tsx function Layout (line 6) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/context/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/error/[id]/page.tsx function Page (line 4) | function Page(): ReactNode | Promise { FILE: chapter11/next13/app/error/error.tsx function Error (line 6) | function Error({ error, reset }: any) { FILE: chapter11/next13/app/error/layout.tsx function Layout (line 5) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/error/not-found.tsx function NotFound (line 1) | function NotFound() { FILE: chapter11/next13/app/error/page.tsx function Page (line 3) | function Page() { FILE: chapter11/next13/app/grouped-layouts/(main)/layout.tsx function Layout (line 4) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/grouped-layouts/(main)/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/grouped-layouts/(todos)/hello/page.tsx function Page (line 1) | async function Page() { FILE: chapter11/next13/app/grouped-layouts/(todos)/layout.tsx function Layout (line 3) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/grouped-layouts/(todos)/todos/page.tsx function Page (line 3) | async function Page() { FILE: chapter11/next13/app/grouped-layouts/(users)/layout.tsx function Layout (line 3) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/grouped-layouts/(users)/users/page.tsx function Page (line 3) | async function Page() { FILE: chapter11/next13/app/head.tsx function Head (line 3) | function Head() { FILE: chapter11/next13/app/head/[userId]/head.tsx function Head (line 4) | async function Head({ params }: { params: { userId: string } }) { FILE: chapter11/next13/app/head/[userId]/page.tsx function Page (line 4) | async function Page({ params }: { params: { userId: string } }) { FILE: chapter11/next13/app/head/[userId]/sub.tsx function SubPage (line 3) | async function SubPage({ FILE: chapter11/next13/app/head/head.tsx function Head (line 3) | function Head() { FILE: chapter11/next13/app/head/layout.tsx function Layout (line 5) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/head/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/internal-api/hello/route.ts function GET (line 3) | async function GET(request: NextRequest) { FILE: chapter11/next13/app/isr/[id]/page.tsx function generateStaticParams (line 7) | async function generateStaticParams() { function Page (line 11) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/isr/layout.tsx function Layout (line 6) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/isr/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/layout.tsx function Layout (line 5) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/layouts/[userId]/page.tsx function Page (line 3) | async function Page({ params }: { params: { userId: string } }) { FILE: chapter11/next13/app/layouts/layout.tsx function Layout (line 5) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/layouts/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/loading/[userId]/page.tsx function Page (line 4) | async function Page({ params }: { params: { userId: string } }) { FILE: chapter11/next13/app/loading/layout.tsx function Layout (line 6) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/loading/loading.tsx function Loading (line 1) | function Loading() { FILE: chapter11/next13/app/loading/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/page.tsx function Page (line 4) | function Page() { FILE: chapter11/next13/app/server-action/form/[id]/loading.tsx function Loading (line 1) | function Loading() { FILE: chapter11/next13/app/server-action/form/[id]/page.tsx type Data (line 4) | interface Data { function Page (line 9) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/server-action/form/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/server-action/layout.tsx function Layout (line 5) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/server-action/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/server-action/start-transition/[id]/page.tsx type Data (line 4) | interface Data { function Page (line 9) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/ssg/[id]/page.tsx function generateStaticParams (line 3) | async function generateStaticParams() { function Page (line 7) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/ssg/layout.tsx function Layout (line 7) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/ssg/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/ssr/[id]/page.tsx function Page (line 3) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/ssr/layout.tsx function Layout (line 6) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/ssr/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/streaming/[id]/components.tsx function Users (line 4) | async function Users() { function PostByUserId (line 18) | async function PostByUserId({ userId }: { userId: string }) { FILE: chapter11/next13/app/streaming/[id]/page.tsx function Page (line 5) | async function Page({ params }: { params: { id: string } }) { FILE: chapter11/next13/app/streaming/layout.tsx function Layout (line 6) | async function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/streaming/page.tsx function Page (line 1) | async function Page() { FILE: chapter11/next13/app/styles/css-modules/page.tsx function Page (line 12) | function Page() { FILE: chapter11/next13/app/styles/global-css/page.tsx function Page (line 12) | function Page() { FILE: chapter11/next13/app/styles/layout.tsx function Layout (line 24) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/styles/page.tsx function Page (line 1) | function Page() { FILE: chapter11/next13/app/styles/styled-components/layout.tsx function Layout (line 5) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/styles/styled-components/page.tsx function Page (line 19) | function Page() { FILE: chapter11/next13/app/styles/styled-jsx/StyledRegistry.tsx function StyledJsxRegistry (line 7) | function StyledJsxRegistry({ FILE: chapter11/next13/app/styles/styled-jsx/layout.tsx function Layout (line 5) | function Layout({ children }: { children: ReactNode }) { FILE: chapter11/next13/app/styles/styled-jsx/page.tsx function Page (line 5) | function Page() { FILE: chapter11/next13/middleware.ts function middleware (line 3) | function middleware(request: NextRequest) { FILE: chapter11/next13/src/components/DefaultHeader.tsx function DefaultHeader (line 3) | function DefaultHeader() { FILE: chapter11/next13/src/components/ErrorButton.tsx function ErrorButton (line 5) | function ErrorButton() { FILE: chapter11/next13/src/components/Sidebar.tsx function SideBar (line 10) | function SideBar() { function GlobalNavItem (line 70) | function GlobalNavItem({ FILE: chapter11/next13/src/components/StyledComponentsRegistry.tsx function StyledComponentsRegistry (line 7) | function StyledComponentsRegistry({ FILE: chapter11/next13/src/components/TabGroup.tsx type Item (line 3) | interface Item { FILE: chapter11/next13/src/components/server-action/client-component.tsx function ClientButtonComponent (line 6) | function ClientButtonComponent({ id }: { id: string }) { FILE: chapter11/next13/src/constant/menu.ts type Item (line 1) | interface Item { FILE: chapter11/next13/src/context/counter.tsx function CounterProvider (line 16) | function CounterProvider({ children }: { children: ReactNode }) { function useCounter (line 26) | function useCounter() { FILE: chapter11/next13/src/lib/utils.ts function sleep (line 1) | async function sleep(ms: number) { FILE: chapter11/next13/src/server-action/index.ts function updateData (line 7) | async function updateData( FILE: chapter11/next13/src/services/constant.ts constant API_URL_BASE (line 1) | const API_URL_BASE = process.env.VERCEL_URL FILE: chapter11/next13/src/services/server.ts type User (line 1) | interface User { function fetchUsers (line 24) | async function fetchUsers(): Promise> { function fetchUserById (line 31) | async function fetchUserById(id: string | number): Promise { type Todo (line 40) | interface Todo { function fetchTodos (line 47) | async function fetchTodos(): Promise> { type Post (line 54) | interface Post { function fetchPosts (line 61) | async function fetchPosts(): Promise> { function fetchPostById (line 68) | async function fetchPostById( FILE: chapter11/server-components-demo/scripts/seed.js constant NOTES_PATH (line 18) | const NOTES_PATH = './notes'; function randomDateBetween (line 24) | function randomDateBetween(start, end) { function seed (line 64) | async function seed() { FILE: chapter11/server-components-demo/server/api.server.js constant PORT (line 34) | const PORT = process.env.PORT || 4000; function handleErrors (line 64) | function handleErrors(fn) { function renderReactTree (line 89) | async function renderReactTree(res, props) { function sendResponse (line 103) | function sendResponse(req, res, redirectToId) { constant NOTES_PATH (line 120) | const NOTES_PATH = path.resolve(__dirname, '../notes'); function waitForWebpack (line 194) | async function waitForWebpack() { FILE: chapter11/server-components-demo/src/App.js function App (line 18) | function App({selectedId, isEditing, searchText}) { FILE: chapter11/server-components-demo/src/EditButton.js function EditButton (line 14) | function EditButton({noteId, children}) { FILE: chapter11/server-components-demo/src/Note.js function Note (line 19) | async function Note({selectedId, isEditing}) { FILE: chapter11/server-components-demo/src/NoteEditor.js function NoteEditor (line 16) | function NoteEditor({noteId, initialTitle, initialBody}) { FILE: chapter11/server-components-demo/src/NoteList.js function NoteList (line 12) | async function NoteList({searchText}) { FILE: chapter11/server-components-demo/src/NoteListSkeleton.js function NoteListSkeleton (line 9) | function NoteListSkeleton() { FILE: chapter11/server-components-demo/src/NotePreview.js function NotePreview (line 11) | function NotePreview({body}) { FILE: chapter11/server-components-demo/src/NoteSkeleton.js function NoteSkeleton (line 9) | function NoteSkeleton({isEditing}) { function NoteEditorSkeleton (line 13) | function NoteEditorSkeleton() { function NotePreviewSkeleton (line 50) | function NotePreviewSkeleton() { FILE: chapter11/server-components-demo/src/SearchField.js function SearchField (line 16) | function SearchField() { FILE: chapter11/server-components-demo/src/SidebarNote.js function SidebarNote (line 15) | function SidebarNote({note}) { FILE: chapter11/server-components-demo/src/SidebarNoteContent.js function SidebarNoteContent (line 14) | function SidebarNoteContent({id, title, children, expandedChildren}) { FILE: chapter11/server-components-demo/src/Spinner.js function Spinner (line 9) | function Spinner({active = true}) { FILE: chapter11/server-components-demo/src/TextWithMarkdown.js function TextWithMarkdown (line 26) | function TextWithMarkdown({text}) { FILE: chapter11/server-components-demo/src/framework/bootstrap.js function Root (line 20) | function Root() { function Error (line 28) | function Error({error}) { FILE: chapter11/server-components-demo/src/framework/router.js function Router (line 27) | function Router() { function useRouter (line 74) | function useRouter() { function useMutation (line 78) | function useMutation({endpoint, method}) { FILE: chapter2/react/src/App.tsx function App (line 3) | function App() { FILE: chapter2/react/src/routes/2-1.tsx function A (line 3) | function A({ function B (line 18) | function B({ function Component1 (line 70) | function Component1() { FILE: chapter2/react/src/routes/2-4.tsx type SampleProps (line 4) | interface SampleProps { type SampleState (line 10) | interface SampleState { class SampleComponent (line 16) | class SampleComponent extends React.Component { method constructor (line 18) | private constructor(props: SampleProps) { method render (line 33) | public render() { FILE: chapter2/react/src/routes/2-5.tsx type Props (line 3) | type Props = Record type State (line 5) | interface State { class SampleComponent (line 9) | class SampleComponent extends Component { method constructor (line 10) | private constructor(props: Props) { method handleClick (line 19) | private handleClick() { method render (line 23) | public render() { FILE: chapter2/react/src/routes/2-7.tsx type State (line 3) | interface State { type Props (line 7) | type Props = Record class ReactComponent (line 9) | class ReactComponent extends React.Component { method constructor (line 12) | private constructor(props: Props) { method render (line 23) | public render() { class ReactPureComponent (line 34) | class ReactPureComponent extends React.PureComponent { method constructor (line 37) | private constructor(props: Props) { method render (line 48) | public render() { function CompareComponent (line 59) | function CompareComponent() { FILE: chapter2/react/src/routes/2-8.tsx type State (line 3) | interface State { type Props (line 7) | type Props = Record class ReactPureComponent (line 9) | class ReactPureComponent extends React.PureComponent { method constructor (line 10) | private constructor(props: Props) { method render (line 27) | public render() { FILE: chapter4/next-example/src/pages/404.tsx function My404Page (line 3) | function My404Page() { FILE: chapter4/next-example/src/pages/500.tsx function My500Page (line 3) | function My500Page() { FILE: chapter4/next-example/src/pages/_app.tsx function App (line 3) | function App({ Component, pageProps }: AppProps) { FILE: chapter4/next-example/src/pages/_document.tsx function Document (line 3) | function Document() { FILE: chapter4/next-example/src/pages/_error.tsx function Error (line 3) | function Error({ statusCode }: { statusCode: number }) { FILE: chapter4/next-example/src/pages/api/hello.ts type Data (line 4) | interface Data { function handler (line 8) | function handler( FILE: chapter4/next-example/src/pages/hello.tsx function Hello (line 1) | function Hello() { FILE: chapter4/next-example/src/pages/hello/[greeting].tsx function HelloGreeting (line 3) | function HelloGreeting({ greeting }: { greeting: string }) { FILE: chapter4/next-example/src/pages/hello/world.tsx function HelloWorld (line 1) | function HelloWorld() { FILE: chapter4/next-example/src/pages/hi/[...props].tsx function HiAll (line 5) | function HiAll({ props: serverProps }: { props: string[] }) { FILE: chapter4/next-example/src/pages/todo/[id].tsx function Todo (line 4) | function Todo({ FILE: chapter4/ssr-example/src/components/App.tsx function App (line 7) | function App({ todos }: { todos: Array }) { FILE: chapter4/ssr-example/src/components/Todo.tsx function Todo (line 5) | function Todo({ todo }: { todo: TodoResponse }) { FILE: chapter4/ssr-example/src/fetch/index.ts type TodoResponse (line 3) | interface TodoResponse { function fetchTodo (line 10) | async function fetchTodo() { FILE: chapter4/ssr-example/src/index.tsx function main (line 7) | async function main() { FILE: chapter4/ssr-example/src/server.ts constant PORT (line 14) | const PORT = process.env.PORT || 3000 function serverHandler (line 16) | async function serverHandler(req: IncomingMessage, res: ServerResponse) { function main (line 77) | function main() { FILE: chapter8/react-test/src/App.tsx function App (line 5) | function App() { FILE: chapter8/react-test/src/components/FetchComponent/index.test.tsx constant MOCK_TODO_RESPONSE (line 7) | const MOCK_TODO_RESPONSE = { FILE: chapter8/react-test/src/components/FetchComponent/index.tsx type TodoResponse (line 3) | interface TodoResponse { function FetchComponent (line 10) | function FetchComponent() { FILE: chapter8/react-test/src/components/StateComponent/index.tsx function InputComponent (line 3) | function InputComponent() { FILE: chapter8/react-test/src/components/StaticComponent/index.tsx function StaticComponent (line 23) | function StaticComponent() { FILE: chapter8/react-test/src/hooks/useEffectDebugger.ts type Props (line 3) | type Props = Record constant CONSOLE_PREFIX (line 5) | const CONSOLE_PREFIX = '[useEffectDebugger]' function useEffectDebugger (line 7) | function useEffectDebugger( FILE: chapter9/danger-react-app/src/App.js function App (line 6) | function App() { FILE: chapter9/deploy/aws/cra/src/App.tsx function App (line 5) | function App() { FILE: chapter9/deploy/aws/next/pages/_app.tsx function MyApp (line 4) | function MyApp({ Component, pageProps }: AppProps) { FILE: chapter9/deploy/aws/next/pages/api/hello.ts type Data (line 4) | type Data = { function handler (line 8) | function handler( FILE: chapter9/deploy/digitalocean/cra/src/App.js function App (line 4) | function App() { FILE: chapter9/deploy/digitalocean/next/pages/_app.tsx function MyApp (line 4) | function MyApp({ Component, pageProps }: AppProps) { FILE: chapter9/deploy/digitalocean/next/pages/api/hello.ts type Data (line 4) | type Data = { function handler (line 8) | function handler( FILE: chapter9/deploy/netlify/cra/src/App.tsx function App (line 5) | function App() { FILE: chapter9/deploy/netlify/next/pages/_app.tsx function MyApp (line 4) | function MyApp({ Component, pageProps }: AppProps) { FILE: chapter9/deploy/netlify/next/pages/api/hello.ts type Data (line 4) | type Data = { function handler (line 8) | function handler( FILE: chapter9/deploy/netlify/next/pages/hello.tsx function Hello (line 3) | function Hello({hello}: {hello: string}) { FILE: chapter9/deploy/vercel/cra/src/App.tsx function App (line 5) | function App() { FILE: chapter9/deploy/vercel/next/pages/_app.tsx function MyApp (line 4) | function MyApp({ Component, pageProps }: AppProps) { FILE: chapter9/deploy/vercel/next/pages/api/hello.ts type Data (line 4) | type Data = { function handler (line 8) | function handler( FILE: chapter9/zero-to-next/src/_app.tsx function reportWebVitals (line 3) | function reportWebVitals(metric: NextWebVitalsMetric) { function MyApp (line 8) | function MyApp({ Component, pageProps }: AppProps) { FILE: chapter9/zero-to-next/src/components/todo/todo.tsx function TodoComponent (line 12) | function TodoComponent({ todos }: { todos: Array }) { function TodoItem (line 22) | function TodoItem({ todo }: { todo: Todo }) { FILE: chapter9/zero-to-next/src/hooks/useToggle.ts function useToggle (line 6) | function useToggle( FILE: chapter9/zero-to-next/src/pages/_document.tsx function MyDocument (line 11) | function MyDocument() { FILE: chapter9/zero-to-next/src/pages/index.tsx function Index (line 7) | function Index({ todos }: { todos: Array }) { FILE: chapter9/zero-to-next/src/pages/todos/[id].tsx function TodoItem (line 6) | function TodoItem({ todo }: { todo: Todo }) { FILE: chapter9/zero-to-next/src/types/todo.ts type Todo (line 1) | interface Todo { FILE: chapter9/zero-to-next/src/utils/errors/index.ts class NotFoundError (line 3) | class NotFoundError extends Error { method constructor (line 4) | public constructor(private resourceId: unknown) { method message (line 8) | public get message() { function withGetServerSideProps (line 13) | function withGetServerSideProps(