diff --git a/dashboard/01-getting-started/README.md b/dashboard/01-getting-started/README.md
deleted file mode 100644
index 2ccf3b7..0000000
--- a/dashboard/01-getting-started/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 1: Getting Started
-
-This is the starting template for the Next.js App Router Course. It contains the starting code for the dashboard application.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/02-styling/README.md b/dashboard/02-styling/README.md
deleted file mode 100644
index 4687c51..0000000
--- a/dashboard/02-styling/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 2: Styling Your Application
-
-This is the starting template for the ["Styling"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/03-creating-layouts-and-pages/README.md b/dashboard/03-creating-layouts-and-pages/README.md
deleted file mode 100644
index a8ceff1..0000000
--- a/dashboard/03-creating-layouts-and-pages/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 3: Creating Layouts and Pages
-
-This is the starting template for the ["Creating Layouts and Pages"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/04-navigating-between-routes/README.md b/dashboard/04-navigating-between-routes/README.md
deleted file mode 100644
index 8842e19..0000000
--- a/dashboard/04-navigating-between-routes/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 4: Navigating Between Routes
-
-This is the starting template for the ["Navigating Between Routes"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/05-optimizing-images-and-fonts/README.md b/dashboard/05-optimizing-images-and-fonts/README.md
deleted file mode 100644
index 34fd472..0000000
--- a/dashboard/05-optimizing-images-and-fonts/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 5: Optimizing Images and Fonts
-
-This is the starting template for the ["Optimizing Images and Fonts"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/06-creating-the-dashboard-pages/README.md b/dashboard/06-creating-the-dashboard-pages/README.md
deleted file mode 100644
index edff517..0000000
--- a/dashboard/06-creating-the-dashboard-pages/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 6: Creating the Dashboard Pages
-
-This is the starting template for the ["Creating the Dashboard Pages"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/07-setting-up-a-database/README.md b/dashboard/07-setting-up-a-database/README.md
deleted file mode 100644
index 6441315..0000000
--- a/dashboard/07-setting-up-a-database/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 7: Setting Up a Database
-
-This is the starting template for the ["Setting up a database"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/08-adding-authentication/README.md b/dashboard/08-adding-authentication/README.md
deleted file mode 100644
index d42874f..0000000
--- a/dashboard/08-adding-authentication/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 8: Adding Authentication
-
-This is the starting template for the ["Adding Authentication"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/09-fetching-dashboard-data/README.md b/dashboard/09-fetching-dashboard-data/README.md
deleted file mode 100644
index f3f224b..0000000
--- a/dashboard/09-fetching-dashboard-data/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 9: Fetching Dashboard Data
-
-This is the starting template for the ["Fetching Dashboard Data"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/10-mutating-dashboard-data/README.md b/dashboard/10-mutating-dashboard-data/README.md
deleted file mode 100644
index a059cd4..0000000
--- a/dashboard/10-mutating-dashboard-data/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 10: Mutating Dashboard Data
-
-This is the starting template for the ["Mutating Dashboard Data"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/11-adding-search-and-pagination/README.md b/dashboard/11-adding-search-and-pagination/README.md
deleted file mode 100644
index 20d5696..0000000
--- a/dashboard/11-adding-search-and-pagination/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 11: Adding Search and Pagination
-
-This is the starting template for the ["Adding Search and Pagination"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/12-debugging-and-testing/README.md b/dashboard/12-debugging-and-testing/README.md
deleted file mode 100644
index a0b0e89..0000000
--- a/dashboard/12-debugging-and-testing/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 12: Debugging and Testing
-
-This is the starting template for the ["Debugging and Testing"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/13-adding-metadata/README.md b/dashboard/13-adding-metadata/README.md
deleted file mode 100644
index 2de6ba6..0000000
--- a/dashboard/13-adding-metadata/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 13: Adding Metadata
-
-This is the starting template for the ["Adding Metadata"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/14-deploying/README.md b/dashboard/14-deploying/README.md
deleted file mode 100644
index a05c64a..0000000
--- a/dashboard/14-deploying/README.md
+++ /dev/null
@@ -1,5 +0,0 @@
-## Chapter 14: Deploying
-
-This is the starting template for the ["Deploying"]() chapter of the Next.js App Router Course.
-
-For more information, see the [course curriculum]() on the Next.js Website.
diff --git a/dashboard/15-final/public/acme-logo.svg b/dashboard/15-final/public/acme-logo.svg
deleted file mode 100644
index 03ca819..0000000
--- a/dashboard/15-final/public/acme-logo.svg
+++ /dev/null
@@ -1,11 +0,0 @@
-
diff --git a/dashboard/15-final/public/customers/amy-burns.png b/dashboard/15-final/public/customers/amy-burns.png
deleted file mode 100644
index c163b7c..0000000
Binary files a/dashboard/15-final/public/customers/amy-burns.png and /dev/null differ
diff --git a/dashboard/15-final/public/customers/balazs-orban.png b/dashboard/15-final/public/customers/balazs-orban.png
deleted file mode 100644
index 92ee5c5..0000000
Binary files a/dashboard/15-final/public/customers/balazs-orban.png and /dev/null differ
diff --git a/dashboard/15-final/public/customers/emil-kowalski.png b/dashboard/15-final/public/customers/emil-kowalski.png
deleted file mode 100644
index da327a7..0000000
Binary files a/dashboard/15-final/public/customers/emil-kowalski.png and /dev/null differ
diff --git a/dashboard/15-final/public/customers/tom-occhino.png b/dashboard/15-final/public/customers/tom-occhino.png
deleted file mode 100644
index d1abbcd..0000000
Binary files a/dashboard/15-final/public/customers/tom-occhino.png and /dev/null differ
diff --git a/dashboard/15-final/public/icon.svg b/dashboard/15-final/public/icon.svg
deleted file mode 100644
index 516ef60..0000000
--- a/dashboard/15-final/public/icon.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-
diff --git a/dashboard/15-final/public/og-image.png b/dashboard/15-final/public/og-image.png
deleted file mode 100644
index 9d16698..0000000
Binary files a/dashboard/15-final/public/og-image.png and /dev/null differ
diff --git a/dashboard/15-final/.env.local.example b/dashboard/final-example/.env.local.example
similarity index 100%
rename from dashboard/15-final/.env.local.example
rename to dashboard/final-example/.env.local.example
diff --git a/dashboard/15-final/.gitignore b/dashboard/final-example/.gitignore
similarity index 100%
rename from dashboard/15-final/.gitignore
rename to dashboard/final-example/.gitignore
diff --git a/dashboard/15-final/.nvmrc b/dashboard/final-example/.nvmrc
similarity index 100%
rename from dashboard/15-final/.nvmrc
rename to dashboard/final-example/.nvmrc
diff --git a/dashboard/15-final/README.md b/dashboard/final-example/README.md
similarity index 100%
rename from dashboard/15-final/README.md
rename to dashboard/final-example/README.md
diff --git a/dashboard/15-final/app/dashboard/(overview)/loading.tsx b/dashboard/final-example/app/dashboard/(overview)/loading.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/(overview)/loading.tsx
rename to dashboard/final-example/app/dashboard/(overview)/loading.tsx
diff --git a/dashboard/15-final/app/dashboard/(overview)/page.tsx b/dashboard/final-example/app/dashboard/(overview)/page.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/(overview)/page.tsx
rename to dashboard/final-example/app/dashboard/(overview)/page.tsx
diff --git a/dashboard/15-final/app/dashboard/customers/page.tsx b/dashboard/final-example/app/dashboard/customers/page.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/customers/page.tsx
rename to dashboard/final-example/app/dashboard/customers/page.tsx
diff --git a/dashboard/15-final/app/dashboard/invoices/[id]/edit/not-found.tsx b/dashboard/final-example/app/dashboard/invoices/[id]/edit/not-found.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/invoices/[id]/edit/not-found.tsx
rename to dashboard/final-example/app/dashboard/invoices/[id]/edit/not-found.tsx
diff --git a/dashboard/15-final/app/dashboard/invoices/[id]/edit/page.tsx b/dashboard/final-example/app/dashboard/invoices/[id]/edit/page.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/invoices/[id]/edit/page.tsx
rename to dashboard/final-example/app/dashboard/invoices/[id]/edit/page.tsx
diff --git a/dashboard/15-final/app/dashboard/invoices/create/page.tsx b/dashboard/final-example/app/dashboard/invoices/create/page.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/invoices/create/page.tsx
rename to dashboard/final-example/app/dashboard/invoices/create/page.tsx
diff --git a/dashboard/15-final/app/dashboard/invoices/error.tsx b/dashboard/final-example/app/dashboard/invoices/error.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/invoices/error.tsx
rename to dashboard/final-example/app/dashboard/invoices/error.tsx
diff --git a/dashboard/15-final/app/dashboard/invoices/page.tsx b/dashboard/final-example/app/dashboard/invoices/page.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/invoices/page.tsx
rename to dashboard/final-example/app/dashboard/invoices/page.tsx
diff --git a/dashboard/15-final/app/dashboard/layout.tsx b/dashboard/final-example/app/dashboard/layout.tsx
similarity index 100%
rename from dashboard/15-final/app/dashboard/layout.tsx
rename to dashboard/final-example/app/dashboard/layout.tsx
diff --git a/dashboard/15-final/app/favicon.ico b/dashboard/final-example/app/favicon.ico
similarity index 100%
rename from dashboard/15-final/app/favicon.ico
rename to dashboard/final-example/app/favicon.ico
diff --git a/dashboard/15-final/app/layout.tsx b/dashboard/final-example/app/layout.tsx
similarity index 100%
rename from dashboard/15-final/app/layout.tsx
rename to dashboard/final-example/app/layout.tsx
diff --git a/dashboard/15-final/app/lib/actions.ts b/dashboard/final-example/app/lib/actions.ts
similarity index 100%
rename from dashboard/15-final/app/lib/actions.ts
rename to dashboard/final-example/app/lib/actions.ts
diff --git a/dashboard/15-final/app/lib/data.ts b/dashboard/final-example/app/lib/data.ts
similarity index 100%
rename from dashboard/15-final/app/lib/data.ts
rename to dashboard/final-example/app/lib/data.ts
diff --git a/dashboard/15-final/app/lib/definitions.ts b/dashboard/final-example/app/lib/definitions.ts
similarity index 100%
rename from dashboard/15-final/app/lib/definitions.ts
rename to dashboard/final-example/app/lib/definitions.ts
diff --git a/dashboard/15-final/app/lib/placeholder-data.js b/dashboard/final-example/app/lib/placeholder-data.js
similarity index 90%
rename from dashboard/15-final/app/lib/placeholder-data.js
rename to dashboard/final-example/app/lib/placeholder-data.js
index 5f0f9da..e15130a 100644
--- a/dashboard/15-final/app/lib/placeholder-data.js
+++ b/dashboard/final-example/app/lib/placeholder-data.js
@@ -2,11 +2,10 @@
// https://nextjs.org/learn/dashboard-app/fetching-data
const users = [
{
- id: '410544b2-4001-4271-9855-68f1c4f65645',
+ id: '410544b2-4001-4271-9855-fec4b6a6442a',
name: 'User',
email: 'user@nextmail.com',
password: '123456',
- CredentialsSignin,
},
];
@@ -25,15 +24,15 @@ const customers = [
},
{
id: '3958dc9e-737f-4377-85e9-fec4b6a6442a',
- name: 'Guillermo Rauch',
- email: 'guillermo@rauch.com',
- image_url: '/customers/guillermo-rauch.png',
+ name: 'Hector Simpson',
+ email: 'hector@simpson.com',
+ image_url: '/customers/hector-simpson.png',
},
{
id: '50ca3e18-62cd-11ee-8c99-0242ac120002',
- name: 'Jared Palmer',
- email: 'jared@palmer.com',
- image_url: '/customers/jared-palmer.png',
+ name: 'Steven Tey',
+ email: 'steven@tey.com',
+ image_url: '/customers/steven-tey.png',
},
{
id: '3958dc9e-787f-4377-85e9-fec4b6a6442a',
@@ -43,9 +42,9 @@ const customers = [
},
{
id: '76d65c26-f784-44a2-ac19-586678f7c2f2',
- name: 'Tom Occhino',
- email: 'tom@occhino.com',
- image_url: '/customers/tom-occhino.png',
+ name: 'Michael Novotny',
+ email: 'michael@novotny.com',
+ image_url: '/customers/michael-novotny.png',
},
{
id: 'd6e15727-9fe1-4961-8c5b-ea44a9bd81aa',
diff --git a/dashboard/15-final/app/lib/utils.ts b/dashboard/final-example/app/lib/utils.ts
similarity index 100%
rename from dashboard/15-final/app/lib/utils.ts
rename to dashboard/final-example/app/lib/utils.ts
diff --git a/dashboard/15-final/app/login/page.tsx b/dashboard/final-example/app/login/page.tsx
similarity index 100%
rename from dashboard/15-final/app/login/page.tsx
rename to dashboard/final-example/app/login/page.tsx
diff --git a/dashboard/15-final/app/opengraph-image.png b/dashboard/final-example/app/opengraph-image.png
similarity index 100%
rename from dashboard/15-final/app/opengraph-image.png
rename to dashboard/final-example/app/opengraph-image.png
diff --git a/dashboard/15-final/app/page.tsx b/dashboard/final-example/app/page.tsx
similarity index 100%
rename from dashboard/15-final/app/page.tsx
rename to dashboard/final-example/app/page.tsx
diff --git a/dashboard/15-final/app/ui/acme-logo.tsx b/dashboard/final-example/app/ui/acme-logo.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/acme-logo.tsx
rename to dashboard/final-example/app/ui/acme-logo.tsx
diff --git a/dashboard/15-final/app/ui/button.tsx b/dashboard/final-example/app/ui/button.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/button.tsx
rename to dashboard/final-example/app/ui/button.tsx
diff --git a/dashboard/15-final/app/ui/customers/table.tsx b/dashboard/final-example/app/ui/customers/table.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/customers/table.tsx
rename to dashboard/final-example/app/ui/customers/table.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/cards.tsx b/dashboard/final-example/app/ui/dashboard/cards.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/cards.tsx
rename to dashboard/final-example/app/ui/dashboard/cards.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/latest-invoices.tsx b/dashboard/final-example/app/ui/dashboard/latest-invoices.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/latest-invoices.tsx
rename to dashboard/final-example/app/ui/dashboard/latest-invoices.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/nav-links.tsx b/dashboard/final-example/app/ui/dashboard/nav-links.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/nav-links.tsx
rename to dashboard/final-example/app/ui/dashboard/nav-links.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/revenue-chart.tsx b/dashboard/final-example/app/ui/dashboard/revenue-chart.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/revenue-chart.tsx
rename to dashboard/final-example/app/ui/dashboard/revenue-chart.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/sidenav.tsx b/dashboard/final-example/app/ui/dashboard/sidenav.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/sidenav.tsx
rename to dashboard/final-example/app/ui/dashboard/sidenav.tsx
diff --git a/dashboard/15-final/app/ui/dashboard/skeletons.tsx b/dashboard/final-example/app/ui/dashboard/skeletons.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/dashboard/skeletons.tsx
rename to dashboard/final-example/app/ui/dashboard/skeletons.tsx
diff --git a/dashboard/15-final/app/ui/fonts.ts b/dashboard/final-example/app/ui/fonts.ts
similarity index 100%
rename from dashboard/15-final/app/ui/fonts.ts
rename to dashboard/final-example/app/ui/fonts.ts
diff --git a/dashboard/15-final/app/ui/global.css b/dashboard/final-example/app/ui/global.css
similarity index 100%
rename from dashboard/15-final/app/ui/global.css
rename to dashboard/final-example/app/ui/global.css
diff --git a/dashboard/15-final/app/ui/invoices/breadcrumbs.tsx b/dashboard/final-example/app/ui/invoices/breadcrumbs.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/breadcrumbs.tsx
rename to dashboard/final-example/app/ui/invoices/breadcrumbs.tsx
diff --git a/dashboard/15-final/app/ui/invoices/buttons.tsx b/dashboard/final-example/app/ui/invoices/buttons.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/buttons.tsx
rename to dashboard/final-example/app/ui/invoices/buttons.tsx
diff --git a/dashboard/15-final/app/ui/invoices/create-form.tsx b/dashboard/final-example/app/ui/invoices/create-form.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/create-form.tsx
rename to dashboard/final-example/app/ui/invoices/create-form.tsx
diff --git a/dashboard/15-final/app/ui/invoices/edit-form.tsx b/dashboard/final-example/app/ui/invoices/edit-form.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/edit-form.tsx
rename to dashboard/final-example/app/ui/invoices/edit-form.tsx
diff --git a/dashboard/15-final/app/ui/invoices/pagination.tsx b/dashboard/final-example/app/ui/invoices/pagination.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/pagination.tsx
rename to dashboard/final-example/app/ui/invoices/pagination.tsx
diff --git a/dashboard/15-final/app/ui/invoices/status.tsx b/dashboard/final-example/app/ui/invoices/status.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/status.tsx
rename to dashboard/final-example/app/ui/invoices/status.tsx
diff --git a/dashboard/15-final/app/ui/invoices/table.tsx b/dashboard/final-example/app/ui/invoices/table.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/invoices/table.tsx
rename to dashboard/final-example/app/ui/invoices/table.tsx
diff --git a/dashboard/15-final/app/ui/login-form.tsx b/dashboard/final-example/app/ui/login-form.tsx
similarity index 92%
rename from dashboard/15-final/app/ui/login-form.tsx
rename to dashboard/final-example/app/ui/login-form.tsx
index 7a1be2a..5fa1374 100644
--- a/dashboard/15-final/app/ui/login-form.tsx
+++ b/dashboard/final-example/app/ui/login-form.tsx
@@ -79,3 +79,13 @@ export default function LoginForm() {
);
}
+
+function LoginButton() {
+ const { pending } = useFormStatus();
+
+ return (
+
+ );
+}
diff --git a/dashboard/15-final/app/ui/search.tsx b/dashboard/final-example/app/ui/search.tsx
similarity index 100%
rename from dashboard/15-final/app/ui/search.tsx
rename to dashboard/final-example/app/ui/search.tsx
diff --git a/dashboard/15-final/auth.config.ts b/dashboard/final-example/auth.config.ts
similarity index 100%
rename from dashboard/15-final/auth.config.ts
rename to dashboard/final-example/auth.config.ts
diff --git a/dashboard/15-final/auth.ts b/dashboard/final-example/auth.ts
similarity index 100%
rename from dashboard/15-final/auth.ts
rename to dashboard/final-example/auth.ts
diff --git a/dashboard/15-final/middleware.ts b/dashboard/final-example/middleware.ts
similarity index 78%
rename from dashboard/15-final/middleware.ts
rename to dashboard/final-example/middleware.ts
index 3ffa8fc..187e1c6 100644
--- a/dashboard/15-final/middleware.ts
+++ b/dashboard/final-example/middleware.ts
@@ -5,5 +5,5 @@ export default NextAuth(authConfig).auth;
export const config = {
// https://nextjs.org/docs/app/building-your-application/routing/middleware#matcher
- matcher: ['/((?!api|_next/static|_next/image|favicon.ico).*)'],
+ matcher: ['/((?!api|_next/static|_next/image|.png).*)'],
};
diff --git a/dashboard/15-final/next.config.js b/dashboard/final-example/next.config.js
similarity index 100%
rename from dashboard/15-final/next.config.js
rename to dashboard/final-example/next.config.js
diff --git a/dashboard/15-final/package.json b/dashboard/final-example/package.json
similarity index 100%
rename from dashboard/15-final/package.json
rename to dashboard/final-example/package.json
diff --git a/dashboard/15-final/postcss.config.js b/dashboard/final-example/postcss.config.js
similarity index 100%
rename from dashboard/15-final/postcss.config.js
rename to dashboard/final-example/postcss.config.js
diff --git a/dashboard/final-example/public/customers/amy-burns.png b/dashboard/final-example/public/customers/amy-burns.png
new file mode 100644
index 0000000..7b29d72
Binary files /dev/null and b/dashboard/final-example/public/customers/amy-burns.png differ
diff --git a/dashboard/final-example/public/customers/balazs-orban.png b/dashboard/final-example/public/customers/balazs-orban.png
new file mode 100644
index 0000000..7fbc009
Binary files /dev/null and b/dashboard/final-example/public/customers/balazs-orban.png differ
diff --git a/dashboard/15-final/public/customers/delba-de-oliveira.png b/dashboard/final-example/public/customers/delba-de-oliveira.png
similarity index 100%
rename from dashboard/15-final/public/customers/delba-de-oliveira.png
rename to dashboard/final-example/public/customers/delba-de-oliveira.png
diff --git a/dashboard/final-example/public/customers/emil-kowalski.png b/dashboard/final-example/public/customers/emil-kowalski.png
new file mode 100644
index 0000000..8411e21
Binary files /dev/null and b/dashboard/final-example/public/customers/emil-kowalski.png differ
diff --git a/dashboard/15-final/public/customers/evil-rabbit.png b/dashboard/final-example/public/customers/evil-rabbit.png
similarity index 100%
rename from dashboard/15-final/public/customers/evil-rabbit.png
rename to dashboard/final-example/public/customers/evil-rabbit.png
diff --git a/dashboard/15-final/public/customers/guillermo-rauch.png b/dashboard/final-example/public/customers/guillermo-rauch.png
similarity index 100%
rename from dashboard/15-final/public/customers/guillermo-rauch.png
rename to dashboard/final-example/public/customers/guillermo-rauch.png
diff --git a/dashboard/final-example/public/customers/hector-simpson.png b/dashboard/final-example/public/customers/hector-simpson.png
new file mode 100644
index 0000000..2957557
Binary files /dev/null and b/dashboard/final-example/public/customers/hector-simpson.png differ
diff --git a/dashboard/15-final/public/customers/jared-palmer.png b/dashboard/final-example/public/customers/jared-palmer.png
similarity index 100%
rename from dashboard/15-final/public/customers/jared-palmer.png
rename to dashboard/final-example/public/customers/jared-palmer.png
diff --git a/dashboard/15-final/public/customers/lee-robinson.png b/dashboard/final-example/public/customers/lee-robinson.png
similarity index 100%
rename from dashboard/15-final/public/customers/lee-robinson.png
rename to dashboard/final-example/public/customers/lee-robinson.png
diff --git a/dashboard/final-example/public/customers/michael-novotny.png b/dashboard/final-example/public/customers/michael-novotny.png
new file mode 100644
index 0000000..96a13a6
Binary files /dev/null and b/dashboard/final-example/public/customers/michael-novotny.png differ
diff --git a/dashboard/15-final/public/customers/steph-dietz.png b/dashboard/final-example/public/customers/steph-dietz.png
similarity index 100%
rename from dashboard/15-final/public/customers/steph-dietz.png
rename to dashboard/final-example/public/customers/steph-dietz.png
diff --git a/dashboard/final-example/public/customers/steven-tey.png b/dashboard/final-example/public/customers/steven-tey.png
new file mode 100644
index 0000000..3f5bd7e
Binary files /dev/null and b/dashboard/final-example/public/customers/steven-tey.png differ
diff --git a/dashboard/15-final/public/hero-desktop.png b/dashboard/final-example/public/hero-desktop.png
similarity index 100%
rename from dashboard/15-final/public/hero-desktop.png
rename to dashboard/final-example/public/hero-desktop.png
diff --git a/dashboard/15-final/public/hero-mobile.png b/dashboard/final-example/public/hero-mobile.png
similarity index 100%
rename from dashboard/15-final/public/hero-mobile.png
rename to dashboard/final-example/public/hero-mobile.png
diff --git a/dashboard/15-final/scripts/seed.js b/dashboard/final-example/scripts/seed.js
similarity index 98%
rename from dashboard/15-final/scripts/seed.js
rename to dashboard/final-example/scripts/seed.js
index af05f1c..2744478 100644
--- a/dashboard/15-final/scripts/seed.js
+++ b/dashboard/final-example/scripts/seed.js
@@ -9,6 +9,7 @@ const bcrypt = require('bcrypt');
async function seedUsers() {
try {
+ await sql`CREATE EXTENSION IF NOT EXISTS "uuid-ossp"`;
// Create the "invoices" table if it doesn't exist
const createTable = await sql`
CREATE TABLE IF NOT EXISTS users (
diff --git a/dashboard/15-final/tailwind.config.ts b/dashboard/final-example/tailwind.config.ts
similarity index 100%
rename from dashboard/15-final/tailwind.config.ts
rename to dashboard/final-example/tailwind.config.ts
diff --git a/dashboard/15-final/tsconfig.json b/dashboard/final-example/tsconfig.json
similarity index 100%
rename from dashboard/15-final/tsconfig.json
rename to dashboard/final-example/tsconfig.json
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 0c5fad5..511f1f6 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -211,7 +211,7 @@ importers:
specifier: ^4.8.4
version: 4.9.5
- dashboard/15-final:
+ dashboard/final-example:
dependencies:
'@heroicons/react':
specifier: ^2.0.18
@@ -1040,7 +1040,7 @@ packages:
/@types/react-dom@18.2.14:
resolution: {integrity: sha512-V835xgdSVmyQmI1KLV2BEIUgqEuinxp9O4G6g3FqO/SqLac049E53aysv0oEFD2kHfejeKU+ZqL2bcFWj9gLAQ==}
dependencies:
- '@types/react': 18.2.32
+ '@types/react': 18.2.21
dev: true
/@types/react@18.2.21:
@@ -1051,14 +1051,6 @@ packages:
csstype: 3.1.2
dev: true
- /@types/react@18.2.32:
- resolution: {integrity: sha512-F0FVIZQ1x5Gxy/VYJb7XcWvCcHR28Sjwt1dXLspdIatfPq1MVACfnBDwKe6ANLxQ64riIJooXClpUR6oxTiepg==}
- dependencies:
- '@types/prop-types': 15.7.7
- '@types/scheduler': 0.16.4
- csstype: 3.1.2
- dev: true
-
/@types/scheduler@0.16.4:
resolution: {integrity: sha512-2L9ifAGl7wmXwP4v3pN4p2FLhD0O1qsJpvKmNin5VA8+UvNVb447UDaAEV6UdrkA+m/Xs58U1RFps44x6TFsVQ==}
dev: true