* Update next to canary
* Update layout.tsx
* Use canary
* Remove serverActions flag warning
* Use unstable_noStore
* Add Date.now() test
* Update metadataBase url
* Create wrapper component for Cards
* Update page.tsx
* Misc
* Delete unused data fetch
* Add noStore to /invoices and /customers functions
* Remove date.now()
* Use canary
* Rename component
* Fix imports
* Update types for useFormStatus and useFormState
* Rename folder, add team members
* fixed images and added login button pending state
* Update dashboard/final-example/app/lib/data.ts
Co-authored-by: Matt Kane <m@mk.gg>
---------
Co-authored-by: Steven Tey <stevensteel97@gmail.com>
Co-authored-by: Matt Kane <m@mk.gg>
* Bump nextauth
* Move data fetching function to data.ts
- We don't ask the user to add this in the chapter
* Fix imports
* Misc
* Addd metadata
* Add new OG image
* Use tailwind variants
* Move data fetching down
* Add table skeleton
* Update pagination data fetching
* Fix skeleton layout shift
* Add key to suspense to trigger it on subsequent navigation
* add database to project. Seed data. Update customerId to customer_id
* seed customers table data
* use database everywhere
* refactor
* fix ts lint errors
* add type to invoice edit page
* remove fetch-data file and fetch data directly in components
* update lates invoices to use sql
* in invoice table, search the database here with SQL
* rename tsx files to ts and add node script to seed data
* address rest of PR comments
* move all data fetches to own file
* add types to filter invoices function
* remove unused param
* prettier
* update function names
* switch page back to one when search param changes
* make input auto fill with current search query on page reload
* add database to project. Seed data. Update customerId to customer_id
* seed customers table data
* use database everywhere
* refactor
* fix ts lint errors
* add type to invoice edit page
* remove fetch-data file and fetch data directly in components
* update lates invoices to use sql
* in invoice table, search the database here with SQL
* rename tsx files to ts and add node script to seed data
* address rest of PR comments
* move all data fetches to own file
* add types to filter invoices function
* remove unused param
* prettier
* update function names
* Add local date formatting
* Add dashboard hero image
* Update hero styles
* Polish login form
* Use Next.js symbol for logo
* Use Next.js symbol for favicon
* Use img instead of Image
* Add mobile styles to login form
* Polish nav styles to fit logo
* Fix build error
* Create og-image.png
* Remove unused code
* Replace svg logo with png
* Update Images and Links
* Misc
* Remove topnav
* Remove dummy text from cards
* Remove gradient
* Adjust button color
* Fix table horizontal scroll
* Misc
* Fix table UI bug
* Remove duplicate package-lock files
* Polish invoice form
* Rename delete button
* Misc
* Run prettier
* Fix search and pagination on mobile
* Fix pagination border px bug
* Update code to match course
* Rename global -> globals
* 💅 Home Page
* Test placeholder blur
* Use 1.5x image rather than 2x
* Update root layout
* Use <main> for pages
* Make sidebar a server component
* Don't use index for React key
* Add local date formatting
* Add dashboard hero image
* Update hero styles
* Polish login form
* Use Next.js symbol for logo
* Use Next.js symbol for favicon
* Use img instead of Image
* Add mobile styles to login form
* Polish nav styles to fit logo
* Fix build error
* Create og-image.png
* Remove unused code
* Replace svg logo with png
* Update Images and Links
* Misc
* Remove duplicate package-lock files
* Prettier
* add pagination and search bar to the invoice table
* make table component server
* fix eslint
* eslint
* eslint
* Updates pagination url to not use state or router and moves pagination component up above the table
* fix eslint typing error
* resolve github convos
* update all 'q' to be 'query'
---------
Co-authored-by: Michael Novotny <manovotny@gmail.com>