From 69cbbced91ee4f7b950afb3913b2e2698d4aa411 Mon Sep 17 00:00:00 2001 From: SamyOubouaziz Date: Thu, 14 Mar 2024 15:21:08 +0100 Subject: [PATCH 1/7] feat(tutorials): add Next.js x Serverless SQL DB tutorial --- .../tutorial-sdb-nextjs-terraform/.DS_Store | Bin 0 -> 6148 bytes .../.dockerignore | 34 + .../tutorial-sdb-nextjs-terraform/Dockerfile | 20 + .../tutorial-sdb-nextjs-terraform/README.md | 881 +++++ .../package-lock.json | 3141 +++++++++++++++++ .../package.json | 29 + .../postcss.config.js | 6 + .../public/assets/blog/authors/jj.jpeg | Bin 0 -> 6186 bytes .../public/assets/blog/authors/joe.jpeg | Bin 0 -> 7196 bytes .../public/assets/blog/authors/tim.jpeg | Bin 0 -> 6148 bytes .../assets/blog/dynamic-routing/cover.jpg | Bin 0 -> 117724 bytes .../public/assets/blog/hello-world/cover.jpg | Bin 0 -> 105406 bytes .../public/assets/blog/preview/cover.jpg | Bin 0 -> 44270 bytes .../public/favicon/android-chrome-192x192.png | Bin 0 -> 4795 bytes .../public/favicon/android-chrome-512x512.png | Bin 0 -> 14640 bytes .../public/favicon/apple-touch-icon.png | Bin 0 -> 1327 bytes .../public/favicon/browserconfig.xml | 9 + .../public/favicon/favicon-16x16.png | Bin 0 -> 595 bytes .../public/favicon/favicon-32x32.png | Bin 0 -> 880 bytes .../public/favicon/favicon.ico | Bin 0 -> 15086 bytes .../public/favicon/mstile-150x150.png | Bin 0 -> 3567 bytes .../public/favicon/safari-pinned-tab.svg | 33 + .../public/favicon/site.webmanifest | 19 + .../src/.DS_Store | Bin 0 -> 6148 bytes .../src/app/.DS_Store | Bin 0 -> 6148 bytes .../src/app/_components/alert.tsx | 48 + .../src/app/_components/avatar.tsx | 15 + .../src/app/_components/container.tsx | 9 + .../src/app/_components/cover-image.tsx | 36 + .../src/app/_components/date-formatter.tsx | 12 + .../src/app/_components/footer.tsx | 32 + .../src/app/_components/header.tsx | 14 + .../src/app/_components/hero-post.tsx | 51 + .../src/app/_components/intro.tsx | 21 + .../_components/markdown-styles.module.css | 18 + .../src/app/_components/more-stories.tsx | 29 + .../src/app/_components/post-body.tsx | 16 + .../src/app/_components/post-header.tsx | 34 + .../src/app/_components/post-preview.tsx | 45 + .../src/app/_components/post-title.tsx | 13 + .../src/app/_components/section-separator.tsx | 3 + .../src/app/globals.css | 3 + .../src/app/layout.tsx | 68 + .../src/app/page.tsx | 31 + .../src/app/posts/.DS_Store | Bin 0 -> 6148 bytes .../src/app/posts/[slug]/page.tsx | 64 + .../src/interfaces/author.ts | 4 + .../src/interfaces/post.ts | 15 + .../src/lib/api.ts | 32 + .../src/lib/constants.ts | 4 + .../src/lib/markdownToHtml.ts | 7 + .../src/lib/utils.ts | 21 + .../src/public/assets/blog/authors/jj.jpeg | Bin 0 -> 6186 bytes .../src/public/assets/blog/authors/joe.jpeg | Bin 0 -> 7196 bytes .../src/public/assets/blog/authors/tim.jpeg | Bin 0 -> 6148 bytes .../assets/blog/dynamic-routing/cover.jpg | Bin 0 -> 117724 bytes .../public/assets/blog/hello-world/cover.jpg | Bin 0 -> 105406 bytes .../src/public/assets/blog/preview/cover.jpg | Bin 0 -> 44270 bytes .../public/favicon/android-chrome-192x192.png | Bin 0 -> 4795 bytes .../public/favicon/android-chrome-512x512.png | Bin 0 -> 14640 bytes .../src/public/favicon/apple-touch-icon.png | Bin 0 -> 1327 bytes .../src/public/favicon/browserconfig.xml | 9 + .../src/public/favicon/favicon-16x16.png | Bin 0 -> 595 bytes .../src/public/favicon/favicon-32x32.png | Bin 0 -> 880 bytes .../src/public/favicon/favicon.ico | Bin 0 -> 15086 bytes .../src/public/favicon/mstile-150x150.png | Bin 0 -> 3567 bytes .../src/public/favicon/safari-pinned-tab.svg | 33 + .../src/public/favicon/site.webmanifest | 19 + .../tailwind.config.ts | 43 + .../tsconfig.json | 26 + 70 files changed, 4947 insertions(+) create mode 100644 projects/tutorial-sdb-nextjs-terraform/.DS_Store create mode 100644 projects/tutorial-sdb-nextjs-terraform/.dockerignore create mode 100644 projects/tutorial-sdb-nextjs-terraform/Dockerfile create mode 100644 projects/tutorial-sdb-nextjs-terraform/README.md create mode 100644 projects/tutorial-sdb-nextjs-terraform/package-lock.json create mode 100644 projects/tutorial-sdb-nextjs-terraform/package.json create mode 100644 projects/tutorial-sdb-nextjs-terraform/postcss.config.js create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/jj.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/joe.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/tim.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/dynamic-routing/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/hello-world/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/assets/blog/preview/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-192x192.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-512x512.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/apple-touch-icon.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/browserconfig.xml create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-16x16.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-32x32.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon.ico create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/mstile-150x150.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/safari-pinned-tab.svg create mode 100644 projects/tutorial-sdb-nextjs-terraform/public/favicon/site.webmanifest create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/.DS_Store create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/.DS_Store create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/alert.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/avatar.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/container.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/cover-image.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/date-formatter.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/footer.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/header.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/hero-post.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/intro.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/markdown-styles.module.css create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/more-stories.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-body.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-header.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-preview.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-title.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/_components/section-separator.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/globals.css create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/layout.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/page.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/posts/.DS_Store create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/app/posts/[slug]/page.tsx create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/interfaces/author.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/interfaces/post.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/lib/api.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/lib/constants.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/lib/markdownToHtml.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/lib/utils.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/authors/jj.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/authors/joe.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/authors/tim.jpeg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/dynamic-routing/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/hello-world/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/assets/blog/preview/cover.jpg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/android-chrome-192x192.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/android-chrome-512x512.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/apple-touch-icon.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/browserconfig.xml create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/favicon-16x16.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/favicon-32x32.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/favicon.ico create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/mstile-150x150.png create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/safari-pinned-tab.svg create mode 100644 projects/tutorial-sdb-nextjs-terraform/src/public/favicon/site.webmanifest create mode 100644 projects/tutorial-sdb-nextjs-terraform/tailwind.config.ts create mode 100644 projects/tutorial-sdb-nextjs-terraform/tsconfig.json diff --git a/projects/tutorial-sdb-nextjs-terraform/.DS_Store b/projects/tutorial-sdb-nextjs-terraform/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..feca8613504bcd7430524202412f605a970dd548 GIT binary patch literal 6148 zcmeH~JqiLr422VS3&Cbf%V|7-HyA`u-~~i21wpZ&qx41vI)z6#m+=T zbn`f`MFtU>!%bynVPcAXCwIBY>3lz3j@RpDteEA>YT$!Ro{xoGkN^pg011!)3H%HJ zJGWu;MJOW)kN^pc1nmD%;HEXTh5D}p!AAgSkF*=sK1)E0C7?C6g(3sfXoW_r`WRw) zZ-`o{NKSp&Hs}YZb^Uy{)~Y3 z+x>QfkIJ+4?ei>u$gHg!9O~r=FP8vp>?mHs-SE8F0$NjBC^9f!1RMhc34E2n6Mwc5 Aa{vGU literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/.dockerignore b/projects/tutorial-sdb-nextjs-terraform/.dockerignore new file mode 100644 index 0000000..5913b49 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/.dockerignore @@ -0,0 +1,34 @@ +# dependencies +/node_modules +/.pnp +.pnp.js +.yarn/install-state.gz + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/projects/tutorial-sdb-nextjs-terraform/Dockerfile b/projects/tutorial-sdb-nextjs-terraform/Dockerfile new file mode 100644 index 0000000..28e7976 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/Dockerfile @@ -0,0 +1,20 @@ +# syntax=docker/dockerfile:1 + +FROM node:20-alpine + +WORKDIR /usr/app +COPY ./ ./ +RUN npm install +RUN npm run build + +#Web application configuration +ENV PORT=8080 + +#Database configuration used for dynamically rendered data +ENV PGHOST=localhost +ENV PGPORT=5432 +ENV PGDATABASE=database +ENV PGUSER=user +ENV PGPASSWORD=password + +CMD npm run start \ No newline at end of file diff --git a/projects/tutorial-sdb-nextjs-terraform/README.md b/projects/tutorial-sdb-nextjs-terraform/README.md new file mode 100644 index 0000000..20aeecf --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/README.md @@ -0,0 +1,881 @@ +--- +meta: + title: Deploy your Full Serverless Next.js application using Serverless Containers and Serverless SQL Database + description: This page explains how to deploy your full serverless Next.js application using Serverless Containers and Serverless SQL Database +content: + h1: Deploy your Full Serverless Next.js application using Serverless Containers and Serverless SQL Database + paragraph: This page explains how to deploy your full serverless Next.js application using Serverless Containers and Serverless SQL Database +dates: + validation: 2024-02-08 + posted: 2024-02-08 +--- + +This tutorial will let you deploy your full serverless Next.js application using Serverless Containers and Serverless SQL Database in a few minutes. + + + - You have a **Scaleway account** and can log into the [Scaleway console](https://console.scaleway.com/) + - You have installed the [Scaleway CLI](https://www.scaleway.com/en/docs/developer-tools/scaleway-cli/quickstart/) and initialized it with your [Scaleway credentials](https://www.scaleway.com/en/docs/developer-tools/scaleway-cli/quickstart/#how-to-configure-the-scaleway-cli) + - You have **Docker Engine** installed, either through [Docker Desktop](https://docs.docker.com/engine/install/) (recommended for MacOS and Windows) or directly [from binaries](https://docs.docker.com/engine/install/binaries/) + - You have the right [IAM permissions](https://www.scaleway.com/en/docs/identity-and-access-management/iam/reference-content/policy/) to push containers image to Container Registry and to create Serverless Containers. You specifically require **ContainerRegistryFullAccess**, **ContainersFullAccess** and **ServerlessSQLDatabaseFullAccess** permission sets. + - You have [Node >=18.0.0](https://nodejs.org/en/download) installed. + + + + If you encounter any unexpected error, please check beforehand that **you meet all requirements** mentioned above. You can find **safety checks and commands** that you can run to make sure you are perfectly setup in the [Troubleshooting](troubleshooting) section. + + +To begin with either start by: +- [Deploying your application step by step using Scaleway CLI](#deploy-next.js-application-frontend-using-serverless-containers) to understand each detailed actions performed and subresources required +- [Deploy your application using a Terraform template](#deploy-next.js-application-using-terraform-templates) to deploy your application faster and have a ready to use Infrastructure as Code. This part requires you to have [Terraform](https://developer.hashicorp.com/terraform/tutorials/aws-get-started/install-cli) installed and configured with [Scaleway Terraform Provider](https://registry.terraform.io/providers/scaleway/scaleway/latest/docs). + +## Deploy Next.js application frontend using Serverless Containers + +1. First, make sure your local environment variables are properly setup: + ```bash + scw info + ``` + This command should display your access_key and secret_key (first characters only) as the last two lines. Make sure the ORIGIN column displays `env (SCW_ACCESS_KEY)` and `env (SCW_SECRET_KEY)`, and not `default profile`. + ```bash + KEY VALUE ORIGIN + (...) + access_key SCWF9DETBF829TAFB1TB env (SCW_ACCESS_KEY) + secret_key 9a1bcf92-xxxx-xxxx-xxxx-xxxxxxxxxxxx env (SCW_SECRET_KEY) + ``` + If this is not the case, add these environment variables to your local environment: + ```bash + export SCW_ACCESS_KEY=$(scw config get access-key) + export SCW_SECRET_KEY=$(scw config get secret-key) + ``` +2. Go to the folder where you want to store your project repository and initialize a blog template application with the following command: + ```bash + npx create-next-app --example blog-starter my-nextjs-blog + ``` + where `my-nextjs-blog` will be the newly created folder name and can be changed to your own project name. + Accept to install dependencies: + ```bash + Need to install the following packages: + create-next-app@14.0.3 + Ok to proceed? (y) y + ``` + This will create a folder `my-nextjs-blog`. Go into it with: + ```bash + cd my-nextjs-blog + ``` +3. Confirm you can run the application locally with the following commands: + ```bash + npm run dev + ``` + Go to [http://localhost:3000](http://localhost:3000) in your browser. The blog template should display. + +4. Create a `Dockerfile`: + ```bash + touch Dockerfile + ``` + Add the following content to it: + ```bash + # syntax=docker/dockerfile:1 + + FROM node:20-alpine + + #Built time arguments used for pre-rendering + ARG PGHOST + ARG PGPORT + ARG PGDATABASE + ARG PGUSER + ARG PGPASSWORD + + WORKDIR /usr/app + COPY ./ ./ + RUN npm install + RUN npm run build + + #Web application configuration + ENV PORT=8080 + + #Database configuration used for dynamically rendered data. These default values should be overwritten by container runtime environment variables + ENV PGHOST=localhost + ENV PGPORT=5432 + ENV PGDATABASE=database + ENV PGUSER=user + ENV PGPASSWORD=password + + CMD npm run start + ``` +5. Create a `.dockerignore` file by copying `.gitignore` file: + ```bash + cp .gitignore .dockerignore + ``` + This will let Docker ignore node dependencies and build files which will be generated during container build. +6. Build your application container with: + ```bash + docker build -t my-nextjs-blog . + ``` + + You can check that your container is running correctly locally with: + ```bash + docker run -it -p 8080:8080 my-nextjs-blog + ``` + Go to http://localhost:8080 in your browser. The blog template should display. + + When connecting to the webpage, your terminal running docker might display the following error `Error: ENOENT: no such file or directory, open '/usr/app/_posts/%5Bslug%5D.md'`. This will be fixed in further steps. + + +7. Create a [Container Registry Namespace](https://www.scaleway.com/en/docs/containers/container-registry/concepts/#namespace): + ```bash + export REGISTRY_ENDPOINT=$(scw registry namespace create -o json | jq -r '.endpoint') + ``` +8. Push your containerized application to [Container Registry](https://www.scaleway.com/en/docs/containers/container-registry/quickstart/). + First login to **Container Registry** from your local terminal: + ```bash + docker login $REGISTRY_ENDPOINT -u nologin --password-stdin <<< "$SCW_SECRET_KEY" + ``` + + Then, tag and push your container image to **Container Registry**: + ```bash + docker tag my-nextjs-blog:latest $REGISTRY_ENDPOINT/my-nextjs-blog:latest + docker push $REGISTRY_ENDPOINT/my-nextjs-blog:latest + ``` +9. Deploy your container to [Serverless Containers](https://www.scaleway.com/en/docs/serverless/containers/quickstart/). + First, create a [Serverless Containers Namespace](https://www.scaleway.com/en/docs/serverless/containers/concepts/#namespace): + ```bash + export CONTAINER_NAMESPACE_ID=$(scw container namespace create name="my-nextjs-blog-ns" -o json | jq -r '.id') + ``` + Deploy your application to **Serverless Containers**: + ```bash + scw container container create name="my-nextjs-blog" namespace-id=$CONTAINER_NAMESPACE_ID registry-image=$REGISTRY_ENDPOINT/my-nextjs-blog:latest + ``` + where `my-nextjs-blog` can be changed to any name you want to give to your running container. + + Go to the provided url in your browser displayed next to `DomainName` property. The blog template should display. + + The first deployment can take up to one or two minutes. You can check the deployment status with the following command `scw container container list name=my-nextjs-blog `. As soon as the status is set as `ready`, you should be able to access the website in your browser. + + +10. Congratulations, your Next.js application frontend is **now online**! + Your application cannot store any data persistently yet, so you will add serverless storage in the next section. + + +## Add serverless storage to your application using Serverless SQL Database + +1. Create a [Serverless SQL Database](https://www.scaleway.com/en/docs/serverless/sql-databases/reference-content/serverless-sql-databases-overview/) using Scaleway CLI: + ```bash + export PGHOST=$(scw sdb-sql database create name=tutorial-nextjs-blog-db cpu-min=0 cpu-max=4 -o json | jq -r '.endpoint' | cut -d "/" -f3 | cut -d ":" -f1 ) + export PGPORT='5432' + export PGDATABASE='tutorial-nextjs-blog-db' + export PGUSER=$(scw iam api-key get $SCW_ACCESS_KEY -o json | jq -r '.user_id') + export PGPASSWORD=$SCW_SECRET_KEY + ``` + This commands create a Serverless SQL Database and adds its configuration information into your default PostgreSQL local environment variables. These environment variables are automatically recognized by most PostgreSQL compatible tool. +2. Connect to your database and add sample data using `psql` tool: + ```bash + psql + ``` + You don't have to provide any arguments as psql uses automically `PGHOST`, `PGPORT`, `PGDATABASE`, `PGUSER`, `PGPASSWORD` environment variables as default arguments. + You should now see an input field with the name of your database: + ```bash + psql (15.3, server 16.1 (Debian 16.1-1.pgdg120+1)) + SSL connection (protocol: TLSv1.3, cipher: TLS_AES_128_GCM_SHA256, compression: off) + Type "help" for help. + + tutorial-nextjs=> + ``` + Create a table structure with the following query: + ```sql + create table posts (title char(100), excerpt text, coverImage text, date date, author_name char(50), author_picture text, ogImage_url text, slug char(50), content text); + ``` + Then, add data using the following command: + ```sql + insert into posts values + ('Learn How to Pre-render Pages Using Static Generation with Next.js', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/hello-world/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'Tim Neutkens', + '/assets/blog/authors/tim.jpeg', + '/assets/blog/hello-world/cover.jpg', + 'hello-world', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'), + ('Dynamic Routing and Static Generation', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/dynamic-routing/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'JJ Kasper', + '/assets/blog/authors/jj.jpeg', + '/assets/blog/dynamic-routing/cover.jpg', + 'dynamic-routing', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'), + ('Preview Mode for Static Generation', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/preview/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'Joe Haddad', + '/assets/blog/authors/joe.jpeg', + '/assets/blog/preview/cover.jpg', + 'preview', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'); + ``` + Exit database query interface by typing: + ```bash + exit + ``` +3. Add `node-postgres` dependency to your application: + ```bash + npm install pg && npm install --save-dev @types/pg + ``` + This library will be needed to connect from your frontend to your database. +4. Your application folder should be called `my-nextjs-blog` and structured such as: + ```bash + my-nextjs-blog/ + .next/ + app/ + node_modules/ + public/ + pages/ + app/ + package.json + tsconfig.json + ``` + You need to edit 3 files to have a proper integration with your database. + + If you want to avoid doing these modifications manually, you can also directly clone the final code from this tutorial from a remote repository with `git clone git@gitlab.infra.online.net:fpagny/tutorial-sdb-nextjs-terraform.git`. Note that this repository differs slightly in configuration as it will dynamically render pages and not pre-render them in the Nextjs app build phase. + + + - First, edit the file located at `src/lib/api.ts` by replacing its content with the following code. This will switch frontend content from local data to your **Serverless SQL Database**. + ```typescript + import { Post } from "@/interfaces/post"; + import fs from "fs"; + import matter from "gray-matter"; + import { join } from "path"; + import { Client } from 'pg' + + + export type Row = { + slug: string; + title: string; + date: Date; + coverimage: string; + author_name: string; + author_picture: string; + excerpt: string; + ogimage_url: string; + content: string; + preview?: boolean; + }; + + const client = new Client({ + ssl: { + rejectUnauthorized: false, + } + }) + + const connect = async () => { + await client.connect() + } + + connect() + + //This default function handles Nextjs pre-rendering with undefined values + export function getPostFromRow(row: Row){ + if (row === undefined){ + var postRow: Row = { + slug: "Title", + title: "Excerpt", + date: new Date("2024-01-16"), + coverimage: "", + author_name: "", + author_picture: "", + excerpt: "", + ogimage_url: "", + content: "", + preview: false + } + } else{ + var postRow = row + } + + const post = { + title: postRow.title, + excerpt: postRow.excerpt, + coverImage: postRow.coverimage, + date: postRow.date.toISOString(), + author: { + name: postRow.author_name, + picture: postRow.author_picture + }, + ogImage: { + url: postRow.ogimage_url + }, + slug: postRow.slug, + content: postRow.content, + preview: false + } + return post; + } + + + export async function getPostBySlug(slug: string): Promise { + const data = await client.query('SELECT * FROM posts WHERE slug=$1;',[slug]) + const post = getPostFromRow(data.rows[0]) + return post; + } + + + export async function getAllPosts(): Promise { + const data = await client.query('SELECT * FROM posts;') + const posts = data.rows.map((row) => (getPostFromRow(row))) + return posts; + } + ``` + - Secondly, edit the file located at `src/app/page.tsx` by replacing its content with the following code. This will update the main application home page that displays a posts list. + ```typescript + import Container from "@/app/_components/container"; + import { HeroPost } from "@/app/_components/hero-post"; + import { Intro } from "@/app/_components/intro"; + import { MoreStories } from "@/app/_components/more-stories"; + import { getAllPosts } from "../lib/api"; + + export default async function Index() { + const allPosts = await getAllPosts(); + + const heroPost = allPosts[0]; + + const morePosts = allPosts.slice(1); + + return ( +
+ + + + {morePosts.length > 0 && } + +
+ ); + } + ``` + - Finally, edit the file located at `src/app/posts/[slug]/page.tsx` by replacing its content with the following code. This will update pages that displays a single post. + ```typescript + import { Metadata } from "next"; + import { notFound } from "next/navigation"; + import { getAllPosts, getPostBySlug } from "../../../lib/api"; + import { CMS_NAME } from "../../../lib/constants"; + import markdownToHtml from "../../../lib/markdownToHtml"; + import Alert from "../../_components/alert"; + import Container from "../../_components/container"; + import Header from "../../_components/header"; + import { PostBody } from "../../_components/post-body"; + import { PostHeader } from "../../_components/post-header"; + + export default async function Post({ params }: Params) { + const post = await getPostBySlug(params.slug) + + if (!post) { + return notFound(); + } + + return ( +
+ + +
+
+ + +
+ +
+ ); + } + + type Params = { + params: { + slug: string; + }; + }; + + export async function generateMetadata({ params }: Params): Promise { + const post = await getPostBySlug(params.slug); + + if (!post) { + return notFound(); + } + + const title = `${post.title} | Next.js Blog Example with ${CMS_NAME}`; + + return { + openGraph: { + title, + images: [post.ogImage.url], + }, + }; + } + + export async function generateStaticParams() { + const posts = await getAllPosts(); + + return posts.map((post) => ({ + slug: post.slug, + })); + } + ``` +5. Confirm you can run the application locally with the following command: + ```bash + npm run dev + ``` + Go to [http://localhost:3000](http://localhost:3000) in your browser. The blog template should display with the updated data from your database (images and titles of the first blog post have changed!) + + **Congrats!** You could already deploy your application by: + - Building a new container version with `docker build -t my-nextjs-blog .` as long as your also provide the right environment variables as build arguments + - Push the new container to **Container Registry** with `docker tag my-nextjs-blog:latest $REGISTRY_ENDPOINT/my-nextjs-blog:latest` and `docker push $REGISTRY_ENDPOINT/my-nextjs-blog:latest` + - Deploy your container to **Serverless Containers** with `scw container container deploy` as long as you provide the right environment variables to your container (as in step 2.). + However, your application would then connect with your [user credentials](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#user), which is a bad security practice. To secure your deployment, you will now add a dedicated [IAM application](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#application), give it the minimum required permissions, and provide its credentials to your application. + +## Secure and redeploy your application + +1. Create an [IAM application](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#application): + ```bash + export SCW_APPLICATION_ID=$(scw iam application create name=tutorial-nextjs-app -o json | jq -r '.id') + ``` + The `SCW_APPLICATION_ID` environment variable will store the IAM appplication id so you can use it in later commands. + +2. Create an [IAM policy](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#policy) giving your application rights to access the database: + ```bash + scw iam policy create application-id=$SCW_APPLICATION_ID name=tutorial-nextjs-policy rules.0.organization-id=$(scw config get default-organization-id) rules.0.permission-set-names.0=ServerlessSQLDatabaseFullAccess + ``` + The permission `ServerlessSQLDatabaseFullAccess` lets your application read and write data or create new databases. You can restrict this later to fit your database use cases, using `ServerlessSQLDatabaseRead` or `ServerlessSQLDatabaseReadWrite` permissions sets. + +3. Create an [IAM Secret Key](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#api-key): + ```bash + export SCW_APPLICATION_SECRET=$(scw iam api-key create application-id=$SCW_APPLICATION_ID -o json | jq -r '.secret_key') + ``` +4. Build your application container with the updated code: + ```bash + docker build -t my-nextjs-blog --build-arg PGHOST --build-arg PGDATABASE --build-arg PGPORT --build-arg PGUSER=$SCW_APPLICATION_ID --build-arg PGPASSWORD=$SCW_APPLICATION_SECRET . + ``` + This time build command requires environment variables because Nextjs pre-rendering will access your database at built time to load pages content. + + You can check that your container is running correctly locally with: + ```bash + docker run -it -p 8080:8080 -e PGHOST -e PGDATABASE -e PGPORT -e PGUSER=$SCW_APPLICATION_ID -e PGPASSWORD=$SCW_APPLICATION_SECRET my-nextjs-blog + ``` + Go to http://localhost:8080 in your browser. The blog template should display. +5. Push your containerized application to [Container Registry](https://www.scaleway.com/en/docs/containers/container-registry/quickstart/): + ```bash + docker tag my-nextjs-blog:latest $REGISTRY_ENDPOINT/my-nextjs-blog:latest + docker push $REGISTRY_ENDPOINT/my-nextjs-blog:latest + ``` +6. Redeploy your container to [Serverless Containers](https://www.scaleway.com/en/docs/serverless/containers/quickstart/). + First, get your container id with: + ```bash + export CONTAINER_ID=$(scw container container list name="my-nextjs-blog" -o json | jq -r '.[0].id') + ``` + ```bash + scw container container deploy $CONTAINER_ID + ``` + Refresh your browser page displaying the blog. An updated version should display. +7. **Congrats!** You have deployed your full serverless Nextjs application! + + To go further you can: + - **Edit the source code** locally, apply `scw container deploy` again, and see the **new version being live** in seconds. + - Inspect your **newly created resources** in the Scaleway Console + - You can display your newly created **registry namespace** and **container image** in the [Container Registry Console Page](https://console.scaleway.com/registry/namespaces) + - You can display your newly created **serverless container namespace** and **container deployment** in the [Serverless Containers Console Page](https://console.scaleway.com/containers/namespaces) + - You can display your newly created **serverless sql database** in the [Serverless SQL Database Console Page](https://console.scaleway.com/serverless-db/databases) + - **Fine tune deployment options** such as autoscaling, targeted regions and much more. You can find more information by typing `scw container deploy --help` in your terminal. + + +## Deploy Next.js application using Terraform templates + +1. Install and download the template source code from this repository: + ```bash + git clone git@gitlab.infra.online.net:fpagny/tutorial-sdb-nextjs-terraform.git my-nextjs-blog + ``` + This repository extends the blog demo application from `npx create-next-app --example blog-starter my-nextjs-blog` and add required code to fetch data from a database instead of static markdown files. + + This will create a folder `my-nextjs-blog`. Go into it with: + ```bash + cd my-nextjs-blog + ``` +2. Install dependencies: + ```bash + npm install + ``` +3. Confirm you can run the application locally with the following commands: + ```bash + npm run dev + ``` + Go to [http://localhost:3000](http://localhost:3000) in your browser. The blog template should display. +4. First, make sure your local environment variables are properly setup: + ```bash + scw info + ``` + This command should display your access_key and secret_key (first characters only) as the last two lines. Make sure the ORIGIN column displays `env (SCW_ACCESS_KEY)` and `env (SCW_SECRET_KEY)`, and not `default profile`. + ```bash + KEY VALUE ORIGIN + (...) + access_key SCWF9DETBF829TAFB1TB env (SCW_ACCESS_KEY) + secret_key 9a1bcf92-xxxx-xxxx-xxxx-xxxxxxxxxxxx env (SCW_SECRET_KEY) + ``` + If this is not the case, add these environment variables to your local environment: + ```bash + export SCW_ACCESS_KEY=$(scw config get access-key) + export SCW_SECRET_KEY=$(scw config get secret-key) + ``` +5. Build your application container with: + ```bash + docker build -t my-nextjs-blog . + ``` + + An error message `Error: connect ECONNREFUSED` might display at build time. This is linked to Nextjs prerendering stage without any database to connect to yet, but will raise any issue at runtime because all pages will be dynamically rendered. + + + You can check that your container is running correctly locally with: + ```bash + docker run -it -p 8080:8080 my-nextjs-blog + ``` + Go to http://localhost:8080 in your browser. You should see the webpage but with an error message `Application error: a server-side exception has occurred (see the server logs for more information)`. This is expected as your application is running but not plugged to a database yet. +6. Create a [Container Registry Namespace](https://www.scaleway.com/en/docs/containers/container-registry/concepts/#namespace): + ```bash + export REGISTRY_ENDPOINT=$(scw registry namespace create -o json | jq -r '.endpoint') + ``` +7. Push your containerized application to [Container Registry](https://www.scaleway.com/en/docs/containers/container-registry/quickstart/). + First login to **Container Registry** from your local terminal: + ```bash + docker login $REGISTRY_ENDPOINT -u nologin --password-stdin <<< "$SCW_SECRET_KEY" + ``` + Then, tag and push your container image to **Container Registry**: + ```bash + docker tag my-nextjs-blog:latest $REGISTRY_ENDPOINT/my-nextjs-blog:latest + docker push $REGISTRY_ENDPOINT/my-nextjs-blog:latest + ``` +8. Create a folder to store your terraform files in a dedicated repository: + ```bash + cd .. + mkdir terraform-nextjs-blog + ``` + + Go into the terraform directory and create a `main.tf` terraform file: + ```bash + cd terraform-nextjs-blog + touch main.tf + ``` + + Your application folder should now be structured as: + ```bash + my-nextjs-blog/ + terraform-nextjs-blog/ + main.tf + ``` +9. Add the following content to your `main.tf` file: + ```bash + terraform { + required_providers { + scaleway = { + source = "scaleway/scaleway" + } + } + required_version = ">= 0.13" + } + + variable "REGISTRY_ENDPOINT" { + type = string + description = "Container Registry endpoint where your application container is stored" + } + + variable "DEFAULT_PROJECT_ID" { + type = string + description = "Project id where your resources will be created" + } + + resource scaleway_container_namespace main { + name = "tutorial-nextjs-blog-tf" + description = "Namespace created for full serverless Nextjs app deployment" + } + + resource scaleway_container main { + name = "tutorial-nextjs-blog-tf" + description = "Container for Nextjs blog" + namespace_id = scaleway_container_namespace.main.id + registry_image = "${var.REGISTRY_ENDPOINT}/my-nextjs-blog:latest" + port = 8080 + cpu_limit = 560 + memory_limit = 1024 + min_scale = 0 + max_scale = 5 + timeout = 600 + max_concurrency = 80 + privacy = "public" + protocol = "http1" + deploy = true + + environment_variables = { + "PGUSER" = scaleway_iam_application.app.id, + "PGHOST" = trimsuffix(trimprefix(regex(":\\/\\/.*:",scaleway_sdb_sql_database.database.endpoint), "://"),":") + "PGDATABASE" = scaleway_sdb_sql_database.database.name, + "PGPORT" = trimprefix(regex(":[0-9]{1,5}",scaleway_sdb_sql_database.database.endpoint), ":") + } + secret_environment_variables = { + "PGPASSWORD" = scaleway_iam_api_key.api_key.secret_key, + } + } + + resource scaleway_iam_application "app" { + name = "tutorial-nextjs-app-tf" + } + + resource scaleway_iam_policy "db_access" { + name = "tutorial-nextjs-policy-tf" + description = "Gives tutorial Nextjs app access to Serverless SQL Database" + application_id = scaleway_iam_application.app.id + rule { + project_ids = ["${var.DEFAULT_PROJECT_ID}"] + permission_set_names = ["ServerlessSQLDatabaseReadWrite"] + } + } + + resource scaleway_iam_api_key "api_key" { + application_id = scaleway_iam_application.app.id + } + + resource scaleway_sdb_sql_database "database" { + name = "tutorial-nextjs-tf" + min_cpu = 0 + max_cpu = 8 + } + + output "database_connection_string" { + // Output as an example, you can give this string to your application + value = format("postgres://%s:%s@%s", + scaleway_iam_application.app.id, + scaleway_iam_api_key.api_key.secret_key, + trimprefix(scaleway_sdb_sql_database.database.endpoint, "postgres://"), + ) + sensitive = true + } + + output "container_url" { + // Output as an example, you can give this string to your application + value = scaleway_container.main.domain_name + sensitive = true + } + ``` + The terraform file creates several resources: + - A [Serverless Container](https://www.scaleway.com/en/docs/serverless/containers/quickstart/) which host your NextJS application. This container is a group structure called a [Serverless Container Namespace](https://www.scaleway.com/en/docs/serverless/containers/concepts/#namespace) + - A [Serverless SQL Database](https://www.scaleway.com/en/docs/serverless/sql-databases/reference-content/serverless-sql-databases-overview/) which stores posts data + - An [IAM application](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#application) used as a principal for your application + - An [IAM secret key](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#api-key) used as credentials to authenticate your application to the database + - An [IAM policy](https://www.scaleway.com/en/docs/identity-and-access-management/iam/concepts/#policy) used giving the right permissions to your application principal + Then, initialize terraform module: + ```bash + terraform init + ``` +10. Provide `REGISTRY_ENDPOINT` and `DEFAULT_PROJECT_ID` environment variables to Terraform with: + ```bash + export TF_VAR_REGISTRY_ENDPOINT=$REGISTRY_ENDPOINT + export TF_VAR_DEFAULT_PROJECT_ID=$(scw config get default-project-id) + ``` + Create and review Terraform plan: + ```bash + terraform plan + ``` + Deploy your application using Terraform: + ```bash + terraform apply + ``` + The output will provide the urls to which you can access your application and the connection string for your database. Since they contain sensitive value, they are hidden by default, but you can display them with `terraform output -json` command: + ```bash + terraform output -json + { + "container_url": { + "sensitive": true, + "type": "string", + "value": "tutorialnextjsblogtfaxtypxrf-tutorial-nextjs-blog-tf.functions.fnc.fr-par.scw.cloud" + }, + "database_connection_string": { + "sensitive": true, + "type": "string", + "value": "postgres://a9773bf6-f6b7-40cc-9ae8-7f24e64c6531:604db597-c770-46ea-b785-94bf39536e6a@650c9680-1100-48e4-b5a6-ff2ff5bcf142.pg.sdb.fr-par.scw.cloud:5432/tutorial-nextjs-tf?sslmode=require" + } + } + ``` + You can access your application by accessing the container url from your browser. However no post will display because your database in still empty. Let's add data in the next step. +11. Connect to your database using the link provided by Terraform's output: + ```bash + psql $(terraform output -json | jq -r '.database_connection_string.value') + ``` + You should now see an input field with the name of your database: + ```bash + psql (15.3, server 16.1 (Debian 16.1-1.pgdg120+1)) + SSL connection (protocol: TLSv1.3, cipher: TLS_AES_128_GCM_SHA256, compression: off) + Type "help" for help. + + tutorial-nextjs=> + ``` + Create a table structure and add data using the following command: + ```sql + create table posts (title char(100), excerpt text, coverImage text, date date, author_name char(50), author_picture text, ogImage_url text, slug char(50), content text); + + insert into posts values + ('Learn How to Pre-render Pages Using Static Generation with Next.js', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/hello-world/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'Tim Neutkens', + '/assets/blog/authors/tim.jpeg', + '/assets/blog/hello-world/cover.jpg', + 'hello-world', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'), + ('Dynamic Routing and Static Generation', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/dynamic-routing/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'JJ Kasper', + '/assets/blog/authors/jj.jpeg', + '/assets/blog/dynamic-routing/cover.jpg', + 'dynamic-routing', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'), + ('Preview Mode for Static Generation', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus.', + '/assets/blog/preview/cover.jpg', + '2020-03-16T05:35:07.322Z', + 'Joe Haddad', + '/assets/blog/authors/joe.jpeg', + '/assets/blog/preview/cover.jpg', + 'preview', + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel fringilla est ullamcorper eget. At imperdiet dui accumsan sit amet nulla facilities morbi tempus. Praesent elementum facilisis leo vel fringilla. Congue mauris rhoncus aenean vel. Egestas sed tempus urna et pharetra pharetra massa massa ultricies.'); + ``` + Exit database query interface by typing: + ```bash + exit + ``` +12. To check that everything works fine, go to the container url in your browser. The blog application should display. + You can show the last terraform output (including the container url) with the following command: + ```bash + terraform output -json + ``` +13. **Congrats!** Your serverless application is now online! + + To go further you can: + - **Edit the source code** locally, then: + - Build a new container version with `docker build -t my-nextjs-blog .` + - Push the new container to **Container Registry** with `docker tag my-nextjs-blog:latest $REGISTRY_ENDPOINT/my-nextjs-blog:latest` and `docker push $REGISTRY_ENDPOINT/my-nextjs-blog:latest` + - Update and apply a new container deployment using `export CONTAINER_ID=$(scw container container list name="my-nextjs-blog" -o json | jq -r '.[0].id')` and `scw container container deploy $CONTAINER_ID`, and see the **new version being live** in seconds. + - Inspect your **newly created resources** in the Scaleway Console + - You can display your newly created **registry namespace** and **container image** in the [Container Registry Console Page](https://console.scaleway.com/registry/namespaces) + - You can display your newly created **serverless container namespace** and **container deployment** in the [Serverless Containers Console Page](https://console.scaleway.com/containers/namespaces) + - You can display your newly created **serverless sql database** in the [Serverless SQL Database Console Page](https://console.scaleway.com/serverless-db/databases) + - **Fine tune deployment options** such as autoscaling, targeted regions and much more. You can find more information by typing `scw deploy --help` in your terminal. + - **Change security configuration** for your container. It is currently public and anyone with the link can access it, but you can make it [private to require authentication](https://www.scaleway.com/en/developers/api/serverless-containers/#authentication). + + +## Troubleshooting + +If you encounter any issue, please first check you met all the prerequisite requirements. + +- You have installed and configured [Scaleway CLI](https://www.scaleway.com/en/docs/developer-tools/scaleway-cli/quickstart/) + - Running the following command in your terminal: + ```bash + scw account project get + ``` + should display your current project and organization id: + ``` + ID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + Name default + OrganizationID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + CreatedAt 1 year ago + UpdatedAt 1 year ago + Description - + ``` + You can also find and compare your project and organization id in the [Scaleway Console Settings](https://console.scaleway.com/project/settings) + +- You have **Docker Engine** installed + - Running the following command in your terminal: + ```bash + docker -v + ``` + should display your currently installed docker version: + ``` + Docker version 24.0.6, build ed223bc820 + ``` +- You have the right [IAM permissions]((https://www.scaleway.com/en/docs/identity-and-access-management/iam/reference-content/policy/)), specifically **ContainersRegistryFullAccess**, **ContainersFullAccess** and **ServerlessSQLDatabaseFullAccess** + - Running the following command in your terminal: + ```bash + scw registry namespace create + ``` + should let you create a **registry namespace** and display its id and name: + ``` + ID 5b955c35-c7a9-4340-9034-05a8171eca6a + Name cli-ns-peaceful-visvesvaraya + Description - + OrganizationID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + ProjectID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + Status ready + StatusMessage - + Endpoint rg.fr-par.scw.cloud/cli-ns-peaceful-visvesvaraya + IsPublic false + Size 0 B + CreatedAt now + UpdatedAt now + ImageCount 0 + Region fr-par + ``` + You can then delete your newly created namespace with the command: + ``` + scw registry namespace delete {namespace-id} + ``` + where `{namespace-id}` would be `5b955c35-c7a9-4340-9034-05a8171eca6a` in this example. + + - Running the following command in your terminal: + ```bash + scw container namespace create + ``` + should let you create a **container namespace** and display its id and name: + ``` + ID af106877-e327-4b0b-aa6e-f03f72609f9d + Name cli-cns-sad-mendel + OrganizationID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + ProjectID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + Status pending + RegistryNamespaceID - + RegistryEndpoint - + Description - + Region fr-par + ``` + You can then delete your newly created namespace with the command: + ```bash + scw container namespace delete {namespace-id} + ``` + where `{namespace-id}` would be `af106877-e327-4b0b-aa6e-f03f72609f9d` in this example. + + - Running the following command in your terminal: + ```bash + scw sdb database create + ``` + should let you create a **serverless sql database** and display its id and name: + ``` + ID b8e406877-e327-4b0b-aa6e-f03f72609f9d + Name cli-cns-sad-mendel + OrganizationID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + ProjectID aedb23ea-7afa-4a5d-9f6c-27db072f1527 + Status pending + Description - + Region fr-par + ``` + You can then delete your newly created database with the command: + ```bash + scw sdb database delete {database-id} + ``` + where `{namespace-id}` would be `b8e406877-e327-4b0b-aa6e-f03f72609f9d` in this example. + + diff --git a/projects/tutorial-sdb-nextjs-terraform/package-lock.json b/projects/tutorial-sdb-nextjs-terraform/package-lock.json new file mode 100644 index 0000000..bcfdae6 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/package-lock.json @@ -0,0 +1,3141 @@ +{ + "name": "my-nextjs-blog", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "classnames": "^2.5.1", + "date-fns": "^3.3.1", + "gray-matter": "^4.0.3", + "next": "14.1.0", + "react": "^18", + "react-dom": "^18", + "remark": "^15.0.1", + "remark-html": "^16.0.1" + }, + "devDependencies": { + "@types/node": "^20", + "@types/react": "^18", + "@types/react-dom": "^18", + "autoprefixer": "^10.0.1", + "postcss": "^8", + "tailwindcss": "^3.3.0", + "typescript": "^5" + } + }, + "node_modules/@alloc/quick-lru": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.22.tgz", + "integrity": "sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@next/env": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.1.0.tgz", + "integrity": "sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==" + }, + "node_modules/@next/swc-darwin-arm64": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.1.0.tgz", + "integrity": "sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-darwin-x64": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.1.0.tgz", + "integrity": "sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-gnu": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.1.0.tgz", + "integrity": "sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-arm64-musl": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.1.0.tgz", + "integrity": "sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-gnu": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.1.0.tgz", + "integrity": "sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-linux-x64-musl": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.1.0.tgz", + "integrity": "sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-arm64-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.1.0.tgz", + "integrity": "sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-ia32-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.1.0.tgz", + "integrity": "sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@next/swc-win32-x64-msvc": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.1.0.tgz", + "integrity": "sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@swc/helpers": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.2.tgz", + "integrity": "sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==", + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.12", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", + "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mdast": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.3.tgz", + "integrity": "sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/ms": { + "version": "0.7.34", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", + "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==" + }, + "node_modules/@types/node": { + "version": "20.11.16", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.16.tgz", + "integrity": "sha512-gKb0enTmRCzXSSUJDq6/sPcqrfCv2mkkG6Jt/clpn5eiCbKTY+SgZUxo+p8ZKMof5dCp9vHQUAB7wOUTod22wQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/@types/prop-types": { + "version": "15.7.11", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz", + "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==", + "dev": true + }, + "node_modules/@types/react": { + "version": "18.2.55", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.55.tgz", + "integrity": "sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==", + "dev": true, + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-dom": { + "version": "18.2.19", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.19.tgz", + "integrity": "sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==", + "dev": true, + "dependencies": { + "@types/react": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz", + "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==", + "dev": true + }, + "node_modules/@types/unist": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.2.tgz", + "integrity": "sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==" + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, + "node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.17", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.17.tgz", + "integrity": "sha512-/cpVNRLSfhOtcGflT13P2794gVSgmPgTR+erw5ifnMLZb0UnSlkK4tquLmkd3BhA+nLo5tX8Cu0upUsGKvKbmg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "browserslist": "^4.22.2", + "caniuse-lite": "^1.0.30001578", + "fraction.js": "^4.3.7", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/bail": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/bail/-/bail-2.0.2.tgz", + "integrity": "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.22.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.3.tgz", + "integrity": "sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001580", + "electron-to-chromium": "^1.4.648", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001585", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001585.tgz", + "integrity": "sha512-yr2BWR1yLXQ8fMpdS/4ZZXpseBgE7o4g41x3a6AJOqZuOi+iE/WdJYAuZ6Y95i4Ohd2Y+9MzIWRR+uGABH4s3Q==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-2.0.2.tgz", + "integrity": "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chokidar": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", + "dev": true, + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chokidar/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/classnames": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz", + "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==" + }, + "node_modules/client-only": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", + "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", + "dev": true + }, + "node_modules/date-fns": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.3.1.tgz", + "integrity": "sha512-y8e109LYGgoQDveiEBD3DYXKba1jWf5BA8YU1FL5Tvm0BTdEfy54WLCwnuYWZNnzzvALy/QQ4Hov+Q9RVRv+Zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", + "dependencies": { + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/didyoumean": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", + "dev": true + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true + }, + "node_modules/electron-to-chromium": { + "version": "1.4.661", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.661.tgz", + "integrity": "sha512-AFg4wDHSOk5F+zA8aR+SVIOabu7m0e7BiJnigCvPXzIGy731XENw/lmNxTySpVFtkFEy+eyt4oHhh5FF3NjQNw==", + "dev": true + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "dev": true + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "dev": true, + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/fraction.js": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", + "dev": true, + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://github.com/sponsors/rawify" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-8.0.1.tgz", + "integrity": "sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "devlop": "^1.0.0", + "hastscript": "^8.0.0", + "property-information": "^6.0.0", + "vfile": "^6.0.0", + "vfile-location": "^5.0.0", + "web-namespaces": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz", + "integrity": "sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "9.0.2", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-9.0.2.tgz", + "integrity": "sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "@ungap/structured-clone": "^1.0.0", + "hast-util-from-parse5": "^8.0.0", + "hast-util-to-parse5": "^8.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "parse5": "^7.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-sanitize": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/hast-util-sanitize/-/hast-util-sanitize-5.0.1.tgz", + "integrity": "sha512-IGrgWLuip4O2nq5CugXy4GI2V8kx4sFVy5Hd4vF7AR2gxS0N9s7nEAVUyeMtZKZvzrxVsHt73XdTsno1tClIkQ==", + "dependencies": { + "@types/hast": "^3.0.0", + "@ungap/structured-clone": "^1.2.0", + "unist-util-position": "^5.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-html": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.0.tgz", + "integrity": "sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-raw": "^9.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-to-parse5": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz", + "integrity": "sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "devlop": "^1.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "web-namespaces": "^2.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", + "dependencies": { + "@types/hast": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-8.0.0.tgz", + "integrity": "sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==", + "dependencies": { + "@types/hast": "^3.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-parse-selector": "^4.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/jiti": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.0.tgz", + "integrity": "sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/longest-streak": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-3.1.0.tgz", + "integrity": "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lru-cache": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz", + "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.0.tgz", + "integrity": "sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark": "^4.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-decode-string": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-phrasing": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz", + "integrity": "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==", + "dependencies": { + "@types/mdast": "^4.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.1.0.tgz", + "integrity": "sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==", + "dependencies": { + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.0.tgz", + "integrity": "sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "@types/unist": "^3.0.0", + "longest-streak": "^3.0.0", + "mdast-util-phrasing": "^4.0.0", + "mdast-util-to-string": "^4.0.0", + "micromark-util-decode-string": "^2.0.0", + "unist-util-visit": "^5.0.0", + "zwitch": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz", + "integrity": "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==", + "dependencies": { + "@types/mdast": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromark": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-4.0.0.tgz", + "integrity": "sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "@types/debug": "^4.0.0", + "debug": "^4.0.0", + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-core-commonmark": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-combine-extensions": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-core-commonmark": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-core-commonmark/-/micromark-core-commonmark-2.0.0.tgz", + "integrity": "sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "devlop": "^1.0.0", + "micromark-factory-destination": "^2.0.0", + "micromark-factory-label": "^2.0.0", + "micromark-factory-space": "^2.0.0", + "micromark-factory-title": "^2.0.0", + "micromark-factory-whitespace": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-classify-character": "^2.0.0", + "micromark-util-html-tag-name": "^2.0.0", + "micromark-util-normalize-identifier": "^2.0.0", + "micromark-util-resolve-all": "^2.0.0", + "micromark-util-subtokenize": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-destination": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.0.tgz", + "integrity": "sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-label": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-label/-/micromark-factory-label-2.0.0.tgz", + "integrity": "sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-space": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-space/-/micromark-factory-space-2.0.0.tgz", + "integrity": "sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-title": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-title/-/micromark-factory-title-2.0.0.tgz", + "integrity": "sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-factory-whitespace": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.0.tgz", + "integrity": "sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-factory-space": "^2.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-character": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-chunked": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-chunked/-/micromark-util-chunked-2.0.0.tgz", + "integrity": "sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-classify-character": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-classify-character/-/micromark-util-classify-character-2.0.0.tgz", + "integrity": "sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-combine-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.0.tgz", + "integrity": "sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-chunked": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-numeric-character-reference": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.1.tgz", + "integrity": "sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-decode-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-decode-string/-/micromark-util-decode-string-2.0.0.tgz", + "integrity": "sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "decode-named-character-reference": "^1.0.0", + "micromark-util-character": "^2.0.0", + "micromark-util-decode-numeric-character-reference": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-html-tag-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.0.tgz", + "integrity": "sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-normalize-identifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.0.tgz", + "integrity": "sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-resolve-all": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.0.tgz", + "integrity": "sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" + } + }, + "node_modules/micromark-util-subtokenize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-subtokenize/-/micromark-util-subtokenize-2.0.0.tgz", + "integrity": "sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "dependencies": { + "devlop": "^1.0.0", + "micromark-util-chunked": "^2.0.0", + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" + } + }, + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ] + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "dev": true, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/next": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/next/-/next-14.1.0.tgz", + "integrity": "sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==", + "dependencies": { + "@next/env": "14.1.0", + "@swc/helpers": "0.5.2", + "busboy": "1.6.0", + "caniuse-lite": "^1.0.30001579", + "graceful-fs": "^4.2.11", + "postcss": "8.4.31", + "styled-jsx": "5.1.1" + }, + "bin": { + "next": "dist/bin/next" + }, + "engines": { + "node": ">=18.17.0" + }, + "optionalDependencies": { + "@next/swc-darwin-arm64": "14.1.0", + "@next/swc-darwin-x64": "14.1.0", + "@next/swc-linux-arm64-gnu": "14.1.0", + "@next/swc-linux-arm64-musl": "14.1.0", + "@next/swc-linux-x64-gnu": "14.1.0", + "@next/swc-linux-x64-musl": "14.1.0", + "@next/swc-win32-arm64-msvc": "14.1.0", + "@next/swc-win32-ia32-msvc": "14.1.0", + "@next/swc-win32-x64-msvc": "14.1.0" + }, + "peerDependencies": { + "@opentelemetry/api": "^1.1.0", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "sass": "^1.3.0" + }, + "peerDependenciesMeta": { + "@opentelemetry/api": { + "optional": true + }, + "sass": { + "optional": true + } + } + }, + "node_modules/next/node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/node-releases": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dev": true, + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/postcss": { + "version": "8.4.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.35.tgz", + "integrity": "sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-import": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", + "dev": true, + "dependencies": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "postcss": "^8.0.0" + } + }, + "node_modules/postcss-js": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", + "dev": true, + "dependencies": { + "camelcase-css": "^2.0.1" + }, + "engines": { + "node": "^12 || ^14 || >= 16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.4.21" + } + }, + "node_modules/postcss-load-config": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "lilconfig": "^3.0.0", + "yaml": "^2.3.4" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "postcss": ">=8.0.9", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "postcss": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/postcss-load-config/node_modules/lilconfig": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", + "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", + "dev": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/postcss-nested": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.1.tgz", + "integrity": "sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==", + "dev": true, + "dependencies": { + "postcss-selector-parser": "^6.0.11" + }, + "engines": { + "node": ">=12.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + "peerDependencies": { + "postcss": "^8.2.14" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.15", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.15.tgz", + "integrity": "sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==", + "dev": true, + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", + "dev": true + }, + "node_modules/property-information": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.4.1.tgz", + "integrity": "sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "dependencies": { + "loose-envify": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "dependencies": { + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" + }, + "peerDependencies": { + "react": "^18.2.0" + } + }, + "node_modules/read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", + "dev": true, + "dependencies": { + "pify": "^2.3.0" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/remark": { + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-15.0.1.tgz", + "integrity": "sha512-Eht5w30ruCXgFmxVUSlNWQ9iiimq07URKeFS3hNc8cUWy1llX4KDWfyEDZRycMc+znsN9Ux5/tJ/BFdgdOwA3A==", + "dependencies": { + "@types/mdast": "^4.0.0", + "remark-parse": "^11.0.0", + "remark-stringify": "^11.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-html": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/remark-html/-/remark-html-16.0.1.tgz", + "integrity": "sha512-B9JqA5i0qZe0Nsf49q3OXyGvyXuZFDzAP2iOFLEumymuYJITVpiH1IgsTEwTpdptDmZlMDMWeDmSawdaJIGCXQ==", + "dependencies": { + "@types/mdast": "^4.0.0", + "hast-util-sanitize": "^5.0.0", + "hast-util-to-html": "^9.0.0", + "mdast-util-to-hast": "^13.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz", + "integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-from-markdown": "^2.0.0", + "micromark-util-types": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz", + "integrity": "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==", + "dependencies": { + "@types/mdast": "^4.0.0", + "mdast-util-to-markdown": "^2.0.0", + "unified": "^11.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "dependencies": { + "loose-envify": "^1.1.0" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stringify-entities": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.3.tgz", + "integrity": "sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "dependencies": { + "client-only": "0.0.1" + }, + "engines": { + "node": ">= 12.0.0" + }, + "peerDependencies": { + "react": ">= 16.8.0 || 17.x.x || ^18.0.0-0" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tailwindcss": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.1.tgz", + "integrity": "sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==", + "dev": true, + "dependencies": { + "@alloc/quick-lru": "^5.2.0", + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.3.0", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "jiti": "^1.19.1", + "lilconfig": "^2.1.0", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.23", + "postcss-import": "^15.1.0", + "postcss-js": "^4.0.1", + "postcss-load-config": "^4.0.1", + "postcss-nested": "^6.0.1", + "postcss-selector-parser": "^6.0.11", + "resolve": "^1.22.2", + "sucrase": "^3.32.0" + }, + "bin": { + "tailwind": "lib/cli.js", + "tailwindcss": "lib/cli.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/trough/-/trough-2.2.0.tgz", + "integrity": "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, + "node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/typescript": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unified": { + "version": "11.0.4", + "resolved": "https://registry.npmjs.org/unified/-/unified-11.0.4.tgz", + "integrity": "sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==", + "dependencies": { + "@types/unist": "^3.0.0", + "bail": "^2.0.0", + "devlop": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^4.0.0", + "trough": "^2.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", + "dependencies": { + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "dev": true + }, + "node_modules/vfile": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.1.tgz", + "integrity": "sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-5.0.2.tgz", + "integrity": "sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==", + "dependencies": { + "@types/unist": "^3.0.0", + "vfile": "^6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/web-namespaces": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-2.0.1.tgz", + "integrity": "sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yaml": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", + "dev": true, + "engines": { + "node": ">= 14" + } + }, + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/projects/tutorial-sdb-nextjs-terraform/package.json b/projects/tutorial-sdb-nextjs-terraform/package.json new file mode 100644 index 0000000..8c549f8 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/package.json @@ -0,0 +1,29 @@ +{ + "private": true, + "scripts": { + "dev": "next", + "build": "next build", + "start": "next start" + }, + "dependencies": { + "classnames": "^2.5.1", + "date-fns": "^3.3.1", + "gray-matter": "^4.0.3", + "next": "14.1.0", + "pg": "^8.11.3", + "react": "^18", + "react-dom": "^18", + "remark": "^15.0.1", + "remark-html": "^16.0.1" + }, + "devDependencies": { + "@types/node": "^20", + "@types/pg": "^8.11.0", + "@types/react": "^18", + "@types/react-dom": "^18", + "autoprefixer": "^10.0.1", + "postcss": "^8", + "tailwindcss": "^3.3.0", + "typescript": "^5" + } +} diff --git a/projects/tutorial-sdb-nextjs-terraform/postcss.config.js b/projects/tutorial-sdb-nextjs-terraform/postcss.config.js new file mode 100644 index 0000000..12a703d --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/postcss.config.js @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/jj.jpeg b/projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/jj.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..e3d521436a6c11d204efa34099b78375266579f3 GIT binary patch literal 6186 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 literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/tim.jpeg b/projects/tutorial-sdb-nextjs-terraform/public/assets/blog/authors/tim.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..cc49257b82300305c4424594d119607c9604602c GIT binary patch literal 6148 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 z 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

yV=dC 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 literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-192x192.png b/projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..2f07282a59cdadaf579b129d650f588d89bef63e GIT binary patch literal 4795 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 literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-512x512.png b/projects/tutorial-sdb-nextjs-terraform/public/favicon/android-chrome-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..dbb0faea84049b991417262cb8f14ae08201c443 GIT binary patch literal 14640 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 MboFyt=akR{06}d?wEzGB literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/browserconfig.xml b/projects/tutorial-sdb-nextjs-terraform/public/favicon/browserconfig.xml new file mode 100644 index 0000000..9824d87 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/public/favicon/browserconfig.xml @@ -0,0 +1,9 @@ + + + + + + #000000 + + + diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-16x16.png b/projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..29deaf6716e7744b24b8d2f94443b50d3acffe68 GIT binary patch literal 595 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCijSl0AZa z85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR+ueoXe|!I#{Xiaj ziKnkC`y&=<4t4b@G6n~MLO(oR978nD=T6+{bvQtxb^jfYOS`%RMA#j5UMSyS|6pbD zi;d6k9bZ#^z+(Rks>-)2dl_&J^V`G?Q{pEo#nr8;@~ z`krL*_G;*v!^IjrakA;BEvmm}T6sI&)8w8wxgoVPV2$ltj)nWqZSPSP<9cp)#pk-y z3!nU3->tb0Uyz+-@SssyAx-@8dugfqY?qVb-(9v$nAvu{N21_p{^`Vs3aO80xy!%& z$oZzjQ>@>dc#PfLX7k6kor!0-63$vnKbR`q7inF2)PmzwPWtVW3*#8c~vxSdwa$T$Bo=7>o=IEp!b` zbdAhI3@ogSErCeez{twLptqKz2}MJ0eoAIqC2kFW6gJoaHH24%M3e+2mMat#<)>xl zq$-qD7Nja<7L+72FjUNW{E3I7Fib<^l>g~7o=<}qn3cKplDUPIg}o<>FbgZVG?*Mt wVOHK8qHy}gl@mwK9FaM~e!9V9ftMb`D{;Y+Pfn&&fmSehy85}Sb4q9e02)x*r~m)} literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-32x32.png b/projects/tutorial-sdb-nextjs-terraform/public/favicon/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..e3b4277bf093d204f4088ba46590bc9e6f37bf67 GIT binary patch literal 880 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE0wix1Z>k4UEa{HEjtmSN`?>!lvVtU&J%W50 z7^>757#dm_7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f+@+{-G$+Qd;gjJKpuOE zr>`sfBNk~6b@eGS1_y!iqMj~}As)x)PCc6)94K(Key6_H)~zdg8;|I@2rLO(;bG?z zv&88`{sbpi5kZkx_Z~U92;G^MrtDPSr1Z{Z$_>33u1k7BO}vhVOI&wNh%niD+%@X$ zZ@)Q_cPr<7PJ1`kQuttQpkKj6ndP1vjjEhOWtlh|D8oV>EHcW z2`<~itr`hdERnPRyIxS?X6yERwEJ~uLB~SbPr1@5O?#Bx=6LEzEKE!9dp*_eMU(Ed zOXYj7Gp6&Iy74^bx!uWbaa8i1;AYbmu2VWbzipE=f6`I4{V1>b0b5hc!z--i9*Rrf zc~&FA*drwr$HMEyV|ezVK~u}Z``UW*K1{N?ewgD|Z@JAOtM4m~kM0y;b3Sd&eAu1q z$c$$R0{c=ke$>x>Y&m@gTTSxW-@a09s_U6r8pQY`9`a?bI&&PJ`$1|x1z#mL#e9}@HJ8bK zzir;N-}0T6{L6#yK6nF6GpZ%75hW>!C8<`)MX5lF!N|bSLf61V*T_7?z{1Md5{R@7 zjI0a{dTTkFP&DM`r(~v8;@0p-VS^n|LwHq4L`hI$xk5ovep+TuszOO+L8?M#K}j+L zL&coOpLjS5!!$Hb`JX=H`80@uS(#fenOj&{*n6@Fv#^3ogUR6(X64Nx3a4*eIdSC7 j5t$?GryD#LcNSTKFL46_E}iL5mO)AEZS| zhz??kp>#q_Pa+X9S9!)q#7v>f>h;_1zJ2P{J?EY~6zP?$I_K=Y*ZTkWKIiUX?Ol$O z;bc0!dO3Q{aq`JLhPRsE;xZ>o<~Kd63*DEFk1M;XdugYEZ_Oa-Nh{-%0D^{MKAR3)TR78`8wfiHZP zw^UGo?y4J9e^;e_!*cd3hmYSYR;;*T(V|5?L_wL<$ z@a);MWqJ=*I%S|bJEdBpnlwj0+s2I>%gK``wdqCHu3cM_nVAU|n5l~P2F}l_<kDo{eQU1fr(;a=<7HsJ2X}tEcJ1Wh!-s|o-vjk==X>vm4I3s;pFTC^uUxqj`ki_GM4sUaXDiGB z1M$82Uj9v*H1V}>)TogZ6ciZlZ{NNZe!tdVl`2)FLWK&^XPX}43TK2l_;J;Qe7O1F zym?dn_`_}G%9Zlv%NN6c>(;H3m6c_%YSyeNGiT0}YSpSGgdO1uXSn~M`bQ)!w4bp2 zM~)mR&!0ax+^=4}D(&01k7CT8JzEYQJSbJGR*j}5zyr>3|BGrOYY&6v=6~zfEos`c zX&DZrojG&HaA%G)b?Ve;nGPK~n0}ObC*M#4ylq)H!=3ekwl>EI7{*43fg-In$8Z`Q0?)JKaJE#$(53x?l^4Y2;5_qa=u@U!I#kb9lRMnmBQyS&P7(aji?2E@j## zjr`%B)O^j$pT4G5t5(9C3@I)y7W&6n^-m*zxbqHT;sm98`L}J`RyJ+gWVrKZ=gytJ z<5C*=!#yp(Uya>F=k$yR-MV%2ZId+ew=q3mEWdZ)Zhz*&j~_oaZBM^4ckbLke`(}T z|C#dm75!-RX7}#hQoVZhZ^a+(DbF7)|GRhZO3$7>1G)1))71WU{=gh4rTH8DS;x$u zKR+(_H1fCeH|C(sMMGiRa`ZP39z3v3FMIdy73RY>Kj@mK_J=dvk%ZST+1c5qkGy{U zx|}+7D%5wQIHrEXhYy$c@86rcA3l6Ix*o9kA+L7*qQ%WxETQ!y82nC&L)EHPD^$B% zUiIqLGizbiz|8Y(dIDGP`Y}Uo6I#C~fRzltcsAbkyV5Z+iO}(r@5nz^`~?0;xyP>* zBVOAEPQS}LezcU8u3`m?0g{%YrLZ+zejpZEr&yd_fs z{vXe8#A+Aj;Qds;%lR3RqAbz38P#IPX~naS80-j1fer>-^K`?8s}ki8FWvd|Yv9`X z(Q(vF4ZjY0PVN6)i%8FMoC2=;*1Xp|(slOhy^@?x$-`L;oC4Bg@G2r*c{6aj>tpN5 z;+1;ab`YNRPqdv1BJF0|(Y7mPjDBr*KH?nJp{mhyTG{%LoX}TyR$ZXFSM{dq8& zlzY<1qYP!!(ZBP1WF5anwNUl5s@5`4DMQ&UBSwt)K^KF`@@T3))~IqGD;{QjQmLp-B2x4r?6?WX3a8t6!YfI zbNj$2zJrAR>bk1iE}{Frefx4=OZM#9BQ=Vj99`uI<4xp3H{u#VMAfx2z+gK zKRYnI-veXY>Qu1VpU^X2X8&Ztf(3rqHXST5t@PKMKU8ggsVn=C?59qfHqCc$e#(?7 z=DgFsefz@1o4^7S;WxfnwG^iNnX?$gw1_{)+7Is3sgn>dx_|$^aCXUU8*mRM*j-c$ z1In2_{YQ@;32{vKeik;g4SPYHUs$+sp~0?SzrJrfxp2S)oBlGeU*jBzAO39J3n50y z`48ev#E|mx@}y3kI`P^8OxvFami5E$-o3l9N6C4Ke*O9xABz_+ma}KihK+qOUc~Kd zzz3tSurRuxMT{*!Ki};CvqzzR%pN+wJTYo7$Z9lxVKtS|S~UH`6KyPCe0AnTGP zOG?=#i66TCsWW{X?SAy=QQ_Q^n`aXEV2Aqt=zrKl;+)KrCr@PX;K8M^;gJMB*!%{{ z_;RPw{`74K{mjy(ONDb&?lRmbfp6z)ar+;O&-h0F=EY6|-}XOo`(MUY&UCT|JY>j_ znAqSm_Os_l{}W=*qfl+YjywL)*7T?JtwCp^_{}p$>bx_s99&iH_@lRGEc6|JBjtVT zokYHS`~^Sd`A32rR!1q{@cJ12bJ@bbRw$%5zwP#FJo@PuU zjc3-pqeqX9`j3>w2HRbcXOqu4fzzi?NB=)!#flZOYSk*~+_`hCu@l?-ZhPh=*mJ&& z@s9JVy?ghTEnBw4Ix~%JsW}GroIPg#df>nT88c>#Ig^G@&Lz9CBDQ7hIfKf%80LhG z(X2-T>`U=)-MY0|r=L4_PB@ncUVuHerP_~m;IU)JWc>K?QLdb+mU@4D zAIvA*|69Yi$NbuzrgrxImHB==7+y^KY`-5ZZocQh@7Lp#viAGM9^o0EF@Har4la3= q@!D#Vku3e|`}>XLQ6?(ItsJLFQwlOQrkn9qqnVx?n@?G6u>CIsZs3vt literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/mstile-150x150.png b/projects/tutorial-sdb-nextjs-terraform/public/favicon/mstile-150x150.png new file mode 100644 index 0000000000000000000000000000000000000000..f2dfd904bf1be62be8351fcbc60a1028269923f0 GIT binary patch literal 3567 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 AfdBvi literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/safari-pinned-tab.svg b/projects/tutorial-sdb-nextjs-terraform/public/favicon/safari-pinned-tab.svg new file mode 100644 index 0000000..72ab6e0 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/public/favicon/safari-pinned-tab.svg @@ -0,0 +1,33 @@ + + + + +Created by potrace 1.11, written by Peter Selinger 2001-2013 + + + + + + + + + + diff --git a/projects/tutorial-sdb-nextjs-terraform/public/favicon/site.webmanifest b/projects/tutorial-sdb-nextjs-terraform/public/favicon/site.webmanifest new file mode 100644 index 0000000..a672d9a --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/public/favicon/site.webmanifest @@ -0,0 +1,19 @@ +{ + "name": "Next.js", + "short_name": "Next.js", + "icons": [ + { + "src": "/favicons/android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "/favicons/android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#000000", + "background_color": "#000000", + "display": "standalone" +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/.DS_Store b/projects/tutorial-sdb-nextjs-terraform/src/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..fadd49af93a07740151b4698fdea46e28fdbf625 GIT binary patch literal 6148 zcmeH~I}XA?3`A{6fkcy%avKi74OR$FzyR_M(RA8jQJo4Vo|2_QM{6A`8N(HFEpDCc- z?y%e9rSfe3cs;8hvuf)G2mNw{x1Rtcb`-DRZrCrj0Bf=ZQGxMCz-3^d0zXyY1qdw> AZU6uP literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/.DS_Store b/projects/tutorial-sdb-nextjs-terraform/src/app/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..d42d73bb110a254245c7d9cee6a3e9af30cfa31b GIT binary patch literal 6148 zcmeH~J&pn~427Thk&w2b+%nA`fEz>zPOuk1EG5#cG|=bhJUecfrADLGv*f(kiRb4l zCSw4$zh8F17Qlw?iZ34~W{lVP#efkvjF<7}dLD+Wr?JSr9?*G>=k;8ch=2%)fCz|y z2+W8;9O69xKW6kydK3{5fq4+{??a)x*3{NDJ{=sQ1)#2&4&yv}32N~KwWhYN%+M^m z2g_26HpKH$PA$2wrnauV9G1<8<((?J6KYLuU74ZjM<6h0 J5P`Q6cmT5K6S4pR literal 0 HcmV?d00001 diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/alert.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/alert.tsx new file mode 100644 index 0000000..c800a9f --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/alert.tsx @@ -0,0 +1,48 @@ +import Container from "@/app/_components/container"; +import { EXAMPLE_PATH } from "@/lib/constants"; +import cn from "classnames"; + +type Props = { + preview?: boolean; +}; + +const Alert = ({ preview }: Props) => { + return ( +

+ +
+ {preview ? ( + <> + This page is a preview.{" "} + + Click here + {" "} + to exit preview mode. + + ) : ( + <> + The source code for this blog is{" "} + + available on GitHub + + . + + )} +
+
+
+ ); +}; + +export default Alert; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/avatar.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/avatar.tsx new file mode 100644 index 0000000..9c2ea4d --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/avatar.tsx @@ -0,0 +1,15 @@ +type Props = { + name: string; + picture: string; +}; + +const Avatar = ({ name, picture }: Props) => { + return ( +
+ {name} +
{name}
+
+ ); +}; + +export default Avatar; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/container.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/container.tsx new file mode 100644 index 0000000..17458eb --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/container.tsx @@ -0,0 +1,9 @@ +type Props = { + children?: React.ReactNode; +}; + +const Container = ({ children }: Props) => { + return
{children}
; +}; + +export default Container; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/cover-image.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/cover-image.tsx new file mode 100644 index 0000000..abff0bb --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/cover-image.tsx @@ -0,0 +1,36 @@ +import cn from "classnames"; +import Link from "next/link"; +import Image from "next/image"; + +type Props = { + title: string; + src: string; + slug?: string; +}; + +const CoverImage = ({ title, src, slug }: Props) => { + const image = ( + {`Cover + ); + return ( +
+ {slug ? ( + + {image} + + ) : ( + image + )} +
+ ); +}; + +export default CoverImage; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/date-formatter.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/date-formatter.tsx new file mode 100644 index 0000000..b092f5e --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/date-formatter.tsx @@ -0,0 +1,12 @@ +import { parseISO, format } from "date-fns"; + +type Props = { + dateString: string; +}; + +const DateFormatter = ({ dateString }: Props) => { + const date = parseISO(dateString); + return ; +}; + +export default DateFormatter; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/footer.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/footer.tsx new file mode 100644 index 0000000..531485b --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/footer.tsx @@ -0,0 +1,32 @@ +import Container from "@/app/_components/container"; +import { EXAMPLE_PATH } from "@/lib/constants"; + +export function Footer() { + return ( + + ); +} + +export default Footer; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/header.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/header.tsx new file mode 100644 index 0000000..0848e1f --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/header.tsx @@ -0,0 +1,14 @@ +import Link from "next/link"; + +const Header = () => { + return ( +

+ + Blog + + . +

+ ); +}; + +export default Header; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/hero-post.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/hero-post.tsx new file mode 100644 index 0000000..91a24b3 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/hero-post.tsx @@ -0,0 +1,51 @@ +import Avatar from "@/app/_components/avatar"; +import CoverImage from "@/app/_components/cover-image"; +import { type Author } from "@/interfaces/author"; +import Link from "next/link"; +import DateFormatter from "./date-formatter"; + +type Props = { + title: string; + coverImage: string; + date: string; + excerpt: string; + author: Author; + slug: string; +}; + +export function HeroPost({ + title, + coverImage, + date, + excerpt, + author, + slug, +}: Props) { + return ( +
+
+ +
+
+
+

+ + {title} + +

+
+ +
+
+
+

{excerpt}

+ +
+
+
+ ); +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/intro.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/intro.tsx new file mode 100644 index 0000000..1364d14 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/intro.tsx @@ -0,0 +1,21 @@ +import { CMS_NAME } from "@/lib/constants"; + +export function Intro() { + return ( +
+

+ Blog. +

+

+ A statically generated blog example using{" "} + + Next.js + {" "} + and {CMS_NAME}. +

+
+ ); +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/markdown-styles.module.css b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/markdown-styles.module.css new file mode 100644 index 0000000..95d4f8b --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/markdown-styles.module.css @@ -0,0 +1,18 @@ +.markdown { + @apply text-lg leading-relaxed; +} + +.markdown p, +.markdown ul, +.markdown ol, +.markdown blockquote { + @apply my-6; +} + +.markdown h2 { + @apply text-3xl mt-12 mb-4 leading-snug; +} + +.markdown h3 { + @apply text-2xl mt-8 mb-4 leading-snug; +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/more-stories.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/more-stories.tsx new file mode 100644 index 0000000..17191da --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/more-stories.tsx @@ -0,0 +1,29 @@ +import { Post } from "@/interfaces/post"; +import { PostPreview } from "./post-preview"; + +type Props = { + posts: Post[]; +}; + +export function MoreStories({ posts }: Props) { + return ( +
+

+ More Stories +

+
+ {posts.map((post) => ( + + ))} +
+
+ ); +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-body.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-body.tsx new file mode 100644 index 0000000..065883c --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-body.tsx @@ -0,0 +1,16 @@ +import markdownStyles from "./markdown-styles.module.css"; + +type Props = { + content: string; +}; + +export function PostBody({ content }: Props) { + return ( +
+
+
+ ); +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-header.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-header.tsx new file mode 100644 index 0000000..9569c66 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-header.tsx @@ -0,0 +1,34 @@ +import Avatar from "./avatar"; +import CoverImage from "./cover-image"; +import DateFormatter from "./date-formatter"; +import { PostTitle } from "@/app/_components/post-title"; +import { type Author } from "@/interfaces/author"; + +type Props = { + title: string; + coverImage: string; + date: string; + author: Author; +}; + +export function PostHeader({ title, coverImage, date, author }: Props) { + return ( + <> + {title} +
+ +
+
+ +
+
+
+ +
+
+ +
+
+ + ); +} \ No newline at end of file diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-preview.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-preview.tsx new file mode 100644 index 0000000..e58128e --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-preview.tsx @@ -0,0 +1,45 @@ +import { type Author } from "@/interfaces/author"; +import Link from "next/link"; +import Avatar from "./avatar"; +import CoverImage from "./cover-image"; +import DateFormatter from "./date-formatter"; + +type Props = { + title: string; + coverImage: string; + date: string; + excerpt: string; + author: Author; + slug: string; +}; + +export function PostPreview({ + title, + coverImage, + date, + excerpt, + author, + slug, +}: Props) { + return ( +
+
+ +
+

+ + {title} + +

+
+ +
+

{excerpt}

+ +
+ ); +} \ No newline at end of file diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-title.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-title.tsx new file mode 100644 index 0000000..5d2dc0b --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/post-title.tsx @@ -0,0 +1,13 @@ +import { ReactNode } from "react"; + +type Props = { + children?: ReactNode; +}; + +export function PostTitle({ children }: Props) { + return ( +

+ {children} +

+ ); +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/_components/section-separator.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/section-separator.tsx new file mode 100644 index 0000000..62412c0 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/_components/section-separator.tsx @@ -0,0 +1,3 @@ +export function SectionSeparator() { + return
; +} diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/globals.css b/projects/tutorial-sdb-nextjs-terraform/src/app/globals.css new file mode 100644 index 0000000..b5c61c9 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/globals.css @@ -0,0 +1,3 @@ +@tailwind base; +@tailwind components; +@tailwind utilities; diff --git a/projects/tutorial-sdb-nextjs-terraform/src/app/layout.tsx b/projects/tutorial-sdb-nextjs-terraform/src/app/layout.tsx new file mode 100644 index 0000000..3eb4b07 --- /dev/null +++ b/projects/tutorial-sdb-nextjs-terraform/src/app/layout.tsx @@ -0,0 +1,68 @@ +import Footer from "@/app/_components/footer"; +import { CMS_NAME, HOME_OG_IMAGE_URL } from "@/lib/constants"; +import type { Metadata } from "next"; +import { Inter } from "next/font/google"; + +import "./globals.css"; + +const inter = Inter({ subsets: ["latin"] }); + +export const dynamic = 'force-dynamic' +export const dynamicParams = true + + +export const metadata: Metadata = { + title: `Next.js Blog Example with ${CMS_NAME}`, + description: `A statically generated blog example using Next.js and ${CMS_NAME}.`, + openGraph: { + images: [HOME_OG_IMAGE_URL], + }, +}; + +export default function RootLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( + + + + + + + + + + + + + + +
{children}
+