+
+ )
+}
diff --git a/website/src/styles/globals.css b/website/src/styles/globals.css
new file mode 100644
index 0000000000..fd81e88583
--- /dev/null
+++ b/website/src/styles/globals.css
@@ -0,0 +1,27 @@
+@tailwind base;
+@tailwind components;
+@tailwind utilities;
+
+:root {
+ --foreground-rgb: 0, 0, 0;
+ --background-start-rgb: 214, 219, 220;
+ --background-end-rgb: 255, 255, 255;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --foreground-rgb: 255, 255, 255;
+ --background-start-rgb: 0, 0, 0;
+ --background-end-rgb: 0, 0, 0;
+ }
+}
+
+body {
+ color: rgb(var(--foreground-rgb));
+ background: linear-gradient(
+ to bottom,
+ transparent,
+ rgb(var(--background-end-rgb))
+ )
+ rgb(var(--background-start-rgb));
+}
diff --git a/website/tailwind.config.ts b/website/tailwind.config.ts
new file mode 100644
index 0000000000..1af3b8f019
--- /dev/null
+++ b/website/tailwind.config.ts
@@ -0,0 +1,20 @@
+import type { Config } from 'tailwindcss'
+
+const config: Config = {
+ content: [
+ './src/pages/**/*.{js,ts,jsx,tsx,mdx}',
+ './src/components/**/*.{js,ts,jsx,tsx,mdx}',
+ './src/app/**/*.{js,ts,jsx,tsx,mdx}',
+ ],
+ theme: {
+ extend: {
+ backgroundImage: {
+ 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
+ 'gradient-conic':
+ 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
+ },
+ },
+ },
+ plugins: [],
+}
+export default config
diff --git a/website/tsconfig.json b/website/tsconfig.json
new file mode 100644
index 0000000000..3ca6a9a50c
--- /dev/null
+++ b/website/tsconfig.json
@@ -0,0 +1,22 @@
+{
+ "compilerOptions": {
+ "target": "es5",
+ "lib": ["dom", "dom.iterable", "esnext"],
+ "allowJs": true,
+ "skipLibCheck": true,
+ "strict": true,
+ "noEmit": true,
+ "esModuleInterop": true,
+ "module": "esnext",
+ "moduleResolution": "bundler",
+ "resolveJsonModule": true,
+ "isolatedModules": true,
+ "jsx": "preserve",
+ "incremental": true,
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ },
+ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
+ "exclude": ["node_modules"]
+}
From 42586e5e49217978c7aae78321b58b0c68c3a1e2 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 12:54:33 +0100
Subject: [PATCH 02/41] remove files, install with pnpm
---
.gitignore | 1 +
website/.gitignore | 36 -
website/README.md | 40 -
website/package-lock.json | 1952 ------------------
website/pnpm-lock.yaml | 3919 +++++++++++++++++++++++++++++++++++++
5 files changed, 3920 insertions(+), 2028 deletions(-)
delete mode 100644 website/.gitignore
delete mode 100644 website/README.md
delete mode 100644 website/package-lock.json
create mode 100644 website/pnpm-lock.yaml
diff --git a/.gitignore b/.gitignore
index 17635a7fd3..4a5c45d536 100644
--- a/.gitignore
+++ b/.gitignore
@@ -80,3 +80,4 @@ yarn-error.log
src/__generated__/
.idea/
+next-env.d.ts
diff --git a/website/.gitignore b/website/.gitignore
deleted file mode 100644
index fd3dbb571a..0000000000
--- a/website/.gitignore
+++ /dev/null
@@ -1,36 +0,0 @@
-# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
-
-# 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/website/README.md b/website/README.md
deleted file mode 100644
index a75ac52488..0000000000
--- a/website/README.md
+++ /dev/null
@@ -1,40 +0,0 @@
-This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
-
-## Getting Started
-
-First, run the development server:
-
-```bash
-npm run dev
-# or
-yarn dev
-# or
-pnpm dev
-# or
-bun dev
-```
-
-Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
-
-You can start editing the page by modifying `pages/index.tsx`. The page auto-updates as you edit the file.
-
-[API routes](https://nextjs.org/docs/api-routes/introduction) can be accessed on [http://localhost:3000/api/hello](http://localhost:3000/api/hello). This endpoint can be edited in `pages/api/hello.ts`.
-
-The `pages/api` directory is mapped to `/api/*`. Files in this directory are treated as [API routes](https://nextjs.org/docs/api-routes/introduction) instead of React pages.
-
-This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
-
-## Learn More
-
-To learn more about Next.js, take a look at the following resources:
-
-- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
-- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
-
-You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
-
-## Deploy on Vercel
-
-The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
-
-Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
diff --git a/website/package-lock.json b/website/package-lock.json
deleted file mode 100644
index 8d3d7febdb..0000000000
--- a/website/package-lock.json
+++ /dev/null
@@ -1,1952 +0,0 @@
-{
- "name": "graphql.org",
- "version": "0.1.0",
- "lockfileVersion": 3,
- "requires": true,
- "packages": {
- "": {
- "name": "graphql.org",
- "version": "0.1.0",
- "dependencies": {
- "next": "14.0.4",
- "react": "^18",
- "react-dom": "^18"
- },
- "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.20",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz",
- "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==",
- "dev": true,
- "dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
- }
- },
- "node_modules/@next/env": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.0.4.tgz",
- "integrity": "sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ=="
- },
- "node_modules/@next/swc-darwin-arm64": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.0.4.tgz",
- "integrity": "sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-darwin-x64": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.0.4.tgz",
- "integrity": "sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.0.4.tgz",
- "integrity": "sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.0.4.tgz",
- "integrity": "sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.0.4.tgz",
- "integrity": "sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-linux-x64-musl": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.0.4.tgz",
- "integrity": "sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.0.4.tgz",
- "integrity": "sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.0.4.tgz",
- "integrity": "sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==",
- "cpu": [
- "ia32"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.0.4",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.0.4.tgz",
- "integrity": "sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==",
- "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/node": {
- "version": "20.10.7",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.7.tgz",
- "integrity": "sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==",
- "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.47",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.47.tgz",
- "integrity": "sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==",
- "dev": true,
- "dependencies": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
- }
- },
- "node_modules/@types/react-dom": {
- "version": "18.2.18",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz",
- "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==",
- "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/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/autoprefixer": {
- "version": "10.4.16",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz",
- "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==",
- "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.21.10",
- "caniuse-lite": "^1.0.30001538",
- "fraction.js": "^4.3.6",
- "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/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.2",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz",
- "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==",
- "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.30001565",
- "electron-to-chromium": "^1.4.601",
- "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.30001576",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001576.tgz",
- "integrity": "sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==",
- "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/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "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"
- },
- "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/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/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/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.623",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.623.tgz",
- "integrity": "sha512-lKoz10iCYlP1WtRYdh5MvocQPWVRoI7ysp6qf18bmeBgR8abE6+I2CsfyNKztRDZvhdWc+krKT6wS7Neg8sw3A==",
- "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/escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "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.16.0",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.16.0.tgz",
- "integrity": "sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==",
- "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/glob-to-regexp": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
- "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
- },
- "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/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/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-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/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/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/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.1.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz",
- "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==",
- "dev": true,
- "engines": {
- "node": "14 || >=16.14"
- }
- },
- "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/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/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.0.4",
- "resolved": "https://registry.npmjs.org/next/-/next-14.0.4.tgz",
- "integrity": "sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==",
- "dependencies": {
- "@next/env": "14.0.4",
- "@swc/helpers": "0.5.2",
- "busboy": "1.6.0",
- "caniuse-lite": "^1.0.30001406",
- "graceful-fs": "^4.2.11",
- "postcss": "8.4.31",
- "styled-jsx": "5.1.1",
- "watchpack": "2.4.0"
- },
- "bin": {
- "next": "dist/bin/next"
- },
- "engines": {
- "node": ">=18.17.0"
- },
- "optionalDependencies": {
- "@next/swc-darwin-arm64": "14.0.4",
- "@next/swc-darwin-x64": "14.0.4",
- "@next/swc-linux-arm64-gnu": "14.0.4",
- "@next/swc-linux-arm64-musl": "14.0.4",
- "@next/swc-linux-x64-gnu": "14.0.4",
- "@next/swc-linux-x64-musl": "14.0.4",
- "@next/swc-win32-arm64-msvc": "14.0.4",
- "@next/swc-win32-ia32-msvc": "14.0.4",
- "@next/swc-win32-x64-msvc": "14.0.4"
- },
- "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/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.33",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz",
- "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==",
- "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/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/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/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/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/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/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/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/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/watchpack": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
- "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
- "dependencies": {
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.1.2"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "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"
- }
- }
- }
-}
diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml
new file mode 100644
index 0000000000..ef42163af8
--- /dev/null
+++ b/website/pnpm-lock.yaml
@@ -0,0 +1,3919 @@
+lockfileVersion: '6.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+dependencies:
+ next:
+ specifier: ^14.0.4
+ version: 14.0.4(react-dom@18.2.0)(react@18.2.0)
+ nextra:
+ specifier: ^3.0.0-alpha.10
+ version: 3.0.0-alpha.10(next@14.0.4)(react-dom@18.2.0)(react@18.2.0)
+ nextra-theme-docs:
+ specifier: ^3.0.0-alpha.10
+ version: 3.0.0-alpha.10(next@14.0.4)(nextra@3.0.0-alpha.10)(react-dom@18.2.0)(react@18.2.0)
+ react:
+ specifier: ^18
+ version: 18.2.0
+ react-dom:
+ specifier: ^18
+ version: 18.2.0(react@18.2.0)
+
+devDependencies:
+ '@types/node':
+ specifier: ^20
+ version: 20.10.7
+ '@types/react':
+ specifier: ^18
+ version: 18.2.47
+ '@types/react-dom':
+ specifier: ^18
+ version: 18.2.18
+ autoprefixer:
+ specifier: ^10.0.1
+ version: 10.4.16(postcss@8.4.33)
+ postcss:
+ specifier: ^8
+ version: 8.4.33
+ tailwindcss:
+ specifier: ^3.3.0
+ version: 3.4.1
+ typescript:
+ specifier: ^5
+ version: 5.3.3
+
+packages:
+
+ /@alloc/quick-lru@5.2.0:
+ resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /@braintree/sanitize-url@6.0.4:
+ resolution: {integrity: sha512-s3jaWicZd0pkP0jf5ysyHUI/RE7MHos6qlToFcGWXVp+ykHOy77OUMrfbgJ9it2C5bow7OIQwYYaHjk9XlBQ2A==}
+ dev: false
+
+ /@headlessui/react@1.7.17(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-4am+tzvkqDSSgiwrsEpGWqgGo9dz8qU5M3znCkC4PgkpY4HcCZzEDEvozltGGGHIKl9jbXbZPSH5TWn4sWJdow==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ react: ^16 || ^17 || ^18
+ react-dom: ^16 || ^17 || ^18
+ dependencies:
+ client-only: 0.0.1
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: false
+
+ /@isaacs/cliui@8.0.2:
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+ dependencies:
+ string-width: 5.1.2
+ string-width-cjs: /string-width@4.2.3
+ strip-ansi: 7.1.0
+ strip-ansi-cjs: /strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: /wrap-ansi@7.0.0
+ dev: true
+
+ /@jridgewell/gen-mapping@0.3.3:
+ resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
+ engines: {node: '>=6.0.0'}
+ dependencies:
+ '@jridgewell/set-array': 1.1.2
+ '@jridgewell/sourcemap-codec': 1.4.15
+ '@jridgewell/trace-mapping': 0.3.20
+ dev: true
+
+ /@jridgewell/resolve-uri@3.1.1:
+ resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ /@jridgewell/set-array@1.1.2:
+ resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
+ engines: {node: '>=6.0.0'}
+ dev: true
+
+ /@jridgewell/sourcemap-codec@1.4.15:
+ resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
+ dev: true
+
+ /@jridgewell/trace-mapping@0.3.20:
+ resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==}
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.1
+ '@jridgewell/sourcemap-codec': 1.4.15
+ dev: true
+
+ /@mdx-js/mdx@2.3.0:
+ resolution: {integrity: sha512-jLuwRlz8DQfQNiUCJR50Y09CGPq3fLtmtUQfVrj79E0JWu3dvsVcxVIcfhR5h0iXu+/z++zDrYeiJqifRynJkA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/mdx': 2.0.10
+ estree-util-build-jsx: 2.2.2
+ estree-util-is-identifier-name: 2.1.0
+ estree-util-to-js: 1.2.0
+ estree-walker: 3.0.3
+ hast-util-to-estree: 2.3.3
+ markdown-extensions: 1.1.1
+ periscopic: 3.1.0
+ remark-mdx: 2.3.0
+ remark-parse: 10.0.2
+ remark-rehype: 10.1.0
+ unified: 10.1.2
+ unist-util-position-from-estree: 1.1.2
+ unist-util-stringify-position: 3.0.3
+ unist-util-visit: 4.1.2
+ vfile: 5.3.7
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@mdx-js/react@2.3.0(react@18.2.0):
+ resolution: {integrity: sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==}
+ peerDependencies:
+ react: '>=16'
+ dependencies:
+ '@types/mdx': 2.0.10
+ '@types/react': 18.2.47
+ react: 18.2.0
+ dev: false
+
+ /@napi-rs/simple-git-android-arm-eabi@0.1.9:
+ resolution: {integrity: sha512-9D4JnfePMpgL4pg9aMUX7/TIWEUQ+Tgx8n3Pf8TNCMGjUbImJyYsDSLJzbcv9wH7srgn4GRjSizXFJHAPjzEug==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-android-arm64@0.1.9:
+ resolution: {integrity: sha512-Krilsw0gPrrASZzudNEl9pdLuNbhoTK0j7pUbfB8FRifpPdFB/zouwuEm0aSnsDXN4ftGrmGG82kuiR/2MeoPg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [android]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-darwin-arm64@0.1.9:
+ resolution: {integrity: sha512-H/F09nDgYjv4gcFrZBgdTKkZEepqt0KLYcCJuUADuxkKupmjLdecMhypXLk13AzvLW4UQI7NlLTLDXUFLyr2BA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-darwin-x64@0.1.9:
+ resolution: {integrity: sha512-jBR2xS9nVPqmHv0TWz874W0m/d453MGrMeLjB+boK5IPPLhg3AWIZj0aN9jy2Je1BGVAa0w3INIQJtBBeB6kFA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-linux-arm-gnueabihf@0.1.9:
+ resolution: {integrity: sha512-3n0+VpO4YfZxndZ0sCvsHIvsazd+JmbSjrlTRBCnJeAU1/sfos3skNZtKGZksZhjvd+3o+/GFM8L7Xnv01yggA==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-linux-arm64-gnu@0.1.9:
+ resolution: {integrity: sha512-lIzf0KHU2SKC12vMrWwCtysG2Sdt31VHRPMUiz9lD9t3xwVn8qhFSTn5yDkTeG3rgX6o0p5EKalfQN5BXsJq2w==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-linux-arm64-musl@0.1.9:
+ resolution: {integrity: sha512-KQozUoNXrxrB8k741ncWXSiMbjl1AGBGfZV21PANzUM8wH4Yem2bg3kfglYS/QIx3udspsT35I9abu49n7D1/w==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-linux-x64-gnu@0.1.9:
+ resolution: {integrity: sha512-O/Niui5mnHPcK3iYC3ui8wgERtJWsQ3Y74W/09t0bL/3dgzGMl4oQt0qTj9dWCsnoGsIEYHPzwCBp/2vqYp/pw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-linux-x64-musl@0.1.9:
+ resolution: {integrity: sha512-L9n+e8Wn3hKr3RsIdY8GaB+ry4xZ4BaGwyKExgoB8nDGQuRUY9oP6p0WA4hWfJvJnU1H6hvo36a5UFPReyBO7A==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-win32-arm64-msvc@0.1.9:
+ resolution: {integrity: sha512-Z6Ja/SZK+lMvRWaxj7wjnvSbAsGrH006sqZo8P8nxKUdZfkVvoCaAWr1r0cfkk2Z3aijLLtD+vKeXGlUPH6gGQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git-win32-x64-msvc@0.1.9:
+ resolution: {integrity: sha512-VAZj1UvC+R2MjKOD3I/Y7dmQlHWAYy4omhReQJRpbCf+oGCBi9CWiIduGqeYEq723nLIKdxP7XjaO0wl1NnUww==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@napi-rs/simple-git@0.1.9:
+ resolution: {integrity: sha512-qKzDS0+VjMvVyU28px+C6zlD1HKy83NIdYzfMQWa/g/V1iG/Ic8uwrS2ihHfm7mp7X0PPrmINLiTTi6ieUIKfw==}
+ engines: {node: '>= 10'}
+ optionalDependencies:
+ '@napi-rs/simple-git-android-arm-eabi': 0.1.9
+ '@napi-rs/simple-git-android-arm64': 0.1.9
+ '@napi-rs/simple-git-darwin-arm64': 0.1.9
+ '@napi-rs/simple-git-darwin-x64': 0.1.9
+ '@napi-rs/simple-git-linux-arm-gnueabihf': 0.1.9
+ '@napi-rs/simple-git-linux-arm64-gnu': 0.1.9
+ '@napi-rs/simple-git-linux-arm64-musl': 0.1.9
+ '@napi-rs/simple-git-linux-x64-gnu': 0.1.9
+ '@napi-rs/simple-git-linux-x64-musl': 0.1.9
+ '@napi-rs/simple-git-win32-arm64-msvc': 0.1.9
+ '@napi-rs/simple-git-win32-x64-msvc': 0.1.9
+ dev: false
+
+ /@next/env@14.0.4:
+ resolution: {integrity: sha512-irQnbMLbUNQpP1wcE5NstJtbuA/69kRfzBrpAD7Gsn8zm/CY6YQYc3HQBz8QPxwISG26tIm5afvvVbu508oBeQ==}
+ dev: false
+
+ /@next/swc-darwin-arm64@14.0.4:
+ resolution: {integrity: sha512-mF05E/5uPthWzyYDyptcwHptucf/jj09i2SXBPwNzbgBNc+XnwzrL0U6BmPjQeOL+FiB+iG1gwBeq7mlDjSRPg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-darwin-x64@14.0.4:
+ resolution: {integrity: sha512-IZQ3C7Bx0k2rYtrZZxKKiusMTM9WWcK5ajyhOZkYYTCc8xytmwSzR1skU7qLgVT/EY9xtXDG0WhY6fyujnI3rw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-linux-arm64-gnu@14.0.4:
+ resolution: {integrity: sha512-VwwZKrBQo/MGb1VOrxJ6LrKvbpo7UbROuyMRvQKTFKhNaXjUmKTu7wxVkIuCARAfiI8JpaWAnKR+D6tzpCcM4w==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-linux-arm64-musl@14.0.4:
+ resolution: {integrity: sha512-8QftwPEW37XxXoAwsn+nXlodKWHfpMaSvt81W43Wh8dv0gkheD+30ezWMcFGHLI71KiWmHK5PSQbTQGUiidvLQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-linux-x64-gnu@14.0.4:
+ resolution: {integrity: sha512-/s/Pme3VKfZAfISlYVq2hzFS8AcAIOTnoKupc/j4WlvF6GQ0VouS2Q2KEgPuO1eMBwakWPB1aYFIA4VNVh667A==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-linux-x64-musl@14.0.4:
+ resolution: {integrity: sha512-m8z/6Fyal4L9Bnlxde5g2Mfa1Z7dasMQyhEhskDATpqr+Y0mjOBZcXQ7G5U+vgL22cI4T7MfvgtrM2jdopqWaw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-win32-arm64-msvc@14.0.4:
+ resolution: {integrity: sha512-7Wv4PRiWIAWbm5XrGz3D8HUkCVDMMz9igffZG4NB1p4u1KoItwx9qjATHz88kwCEal/HXmbShucaslXCQXUM5w==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-win32-ia32-msvc@14.0.4:
+ resolution: {integrity: sha512-zLeNEAPULsl0phfGb4kdzF/cAVIfaC7hY+kt0/d+y9mzcZHsMS3hAS829WbJ31DkSlVKQeHEjZHIdhN+Pg7Gyg==}
+ engines: {node: '>= 10'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@next/swc-win32-x64-msvc@14.0.4:
+ resolution: {integrity: sha512-yEh2+R8qDlDCjxVpzOTEpBLQTEFAcP2A8fUFLaWNap9GitYKkKv1//y2S6XY6zsR4rCOPRpU7plYDR+az2n30A==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
+ /@nodelib/fs.scandir@2.1.5:
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
+ dev: true
+
+ /@nodelib/fs.stat@2.0.5:
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+ dev: true
+
+ /@nodelib/fs.walk@1.2.8:
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+ dependencies:
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.16.0
+ dev: true
+
+ /@pkgjs/parseargs@0.11.0:
+ resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+ engines: {node: '>=14'}
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ /@popperjs/core@2.11.8:
+ resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==}
+ dev: false
+
+ /@swc/helpers@0.5.2:
+ resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==}
+ dependencies:
+ tslib: 2.6.2
+ dev: false
+
+ /@theguild/remark-mermaid@0.0.5(react@18.2.0):
+ resolution: {integrity: sha512-e+ZIyJkEv9jabI4m7q29wZtZv+2iwPGsXJ2d46Zi7e+QcFudiyuqhLhHG/3gX3ZEB+hxTch+fpItyMS8jwbIcw==}
+ peerDependencies:
+ react: ^18.2.0
+ dependencies:
+ mermaid: 10.6.1
+ react: 18.2.0
+ unist-util-visit: 5.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@theguild/remark-npm2yarn@0.3.0:
+ resolution: {integrity: sha512-Fofw+9airYgjBd9G6PiHHCrptjyUybQ50JH9/5o9LCH54kggJ7stpCofzHjICB8L7VQbQ1Gwu23P/3CMVY1R4Q==}
+ dependencies:
+ npm-to-yarn: 2.1.0
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /@types/acorn@4.0.6:
+ resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /@types/d3-scale-chromatic@3.0.3:
+ resolution: {integrity: sha512-laXM4+1o5ImZv3RpFAsTRn3TEkzqkytiOY0Dz0sq5cnd1dtNlk6sHLon4OvqaiJb28T0S/TdsBI3Sjsy+keJrw==}
+ dev: false
+
+ /@types/d3-scale@4.0.8:
+ resolution: {integrity: sha512-gkK1VVTr5iNiYJ7vWDI+yUFFlszhNMtVeneJ6lUTKPjprsvLLI9/tgEGiXJOnlINJA8FyA88gfnQsHbybVZrYQ==}
+ dependencies:
+ '@types/d3-time': 3.0.3
+ dev: false
+
+ /@types/d3-time@3.0.3:
+ resolution: {integrity: sha512-2p6olUZ4w3s+07q3Tm2dbiMZy5pCDfYwtLXXHUnVzXgQlZ/OyPtUz6OL382BkOuGlLXqfT+wqv8Fw2v8/0geBw==}
+ dev: false
+
+ /@types/debug@4.1.12:
+ resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
+ dependencies:
+ '@types/ms': 0.7.34
+ dev: false
+
+ /@types/estree-jsx@1.0.3:
+ resolution: {integrity: sha512-pvQ+TKeRHeiUGRhvYwRrQ/ISnohKkSJR14fT2yqyZ4e9K5vqc7hrtY2Y1Dw0ZwAzQ6DQsxsaCUuSIIi8v0Cq6w==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /@types/estree@1.0.5:
+ resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
+ dev: false
+
+ /@types/hast@2.3.9:
+ resolution: {integrity: sha512-pTHyNlaMD/oKJmS+ZZUyFUcsZeBZpC0lmGquw98CqRVNgAdJZJeD7GoeLiT6Xbx5rU9VCjSt0RwEvDgzh4obFw==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /@types/hast@3.0.3:
+ resolution: {integrity: sha512-2fYGlaDy/qyLlhidX42wAH0KBi2TCjKMH8CHmBXgRlJ3Y+OXTiqsPQ6IWarZKwF1JoUcAJdPogv1d4b0COTpmQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /@types/katex@0.16.7:
+ resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
+ dev: false
+
+ /@types/mdast@3.0.15:
+ resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /@types/mdast@4.0.3:
+ resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /@types/mdx@2.0.10:
+ resolution: {integrity: sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==}
+ dev: false
+
+ /@types/ms@0.7.34:
+ resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
+ dev: false
+
+ /@types/node@20.10.7:
+ resolution: {integrity: sha512-fRbIKb8C/Y2lXxB5eVMj4IU7xpdox0Lh8bUPEdtLysaylsml1hOOx1+STloRs/B9nf7C6kPRmmg/V7aQW7usNg==}
+ dependencies:
+ undici-types: 5.26.5
+ dev: true
+
+ /@types/prop-types@15.7.11:
+ resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==}
+
+ /@types/react-dom@18.2.18:
+ resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==}
+ dependencies:
+ '@types/react': 18.2.47
+ dev: true
+
+ /@types/react@18.2.47:
+ resolution: {integrity: sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==}
+ dependencies:
+ '@types/prop-types': 15.7.11
+ '@types/scheduler': 0.16.8
+ csstype: 3.1.3
+
+ /@types/scheduler@0.16.8:
+ resolution: {integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==}
+
+ /@types/unist@2.0.10:
+ resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
+ dev: false
+
+ /@types/unist@3.0.2:
+ resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==}
+ dev: false
+
+ /@ungap/structured-clone@1.2.0:
+ resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+ dev: false
+
+ /acorn-jsx@5.3.2(acorn@8.11.3):
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ acorn: 8.11.3
+ dev: false
+
+ /acorn@8.11.3:
+ resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+ dev: false
+
+ /ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /ansi-regex@6.0.1:
+ resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /ansi-styles@3.2.1:
+ resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
+ engines: {node: '>=4'}
+ dependencies:
+ color-convert: 1.9.3
+ dev: false
+
+ /ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+ dependencies:
+ color-convert: 2.0.1
+ dev: true
+
+ /ansi-styles@6.2.1:
+ resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
+ engines: {node: '>=12'}
+ dev: true
+
+ /any-promise@1.3.0:
+ resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
+ dev: true
+
+ /anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
+ dev: true
+
+ /arch@2.2.0:
+ resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==}
+ dev: false
+
+ /arg@1.0.0:
+ resolution: {integrity: sha512-Wk7TEzl1KqvTGs/uyhmHO/3XLd3t1UeU4IstvPXVzGPM522cTjqjNZ99esCkcL52sjqjo8e8CTBcWhkxvGzoAw==}
+ dev: false
+
+ /arg@5.0.2:
+ resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
+ dev: true
+
+ /argparse@1.0.10:
+ resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
+ dependencies:
+ sprintf-js: 1.0.3
+ dev: false
+
+ /astring@1.8.6:
+ resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==}
+ hasBin: true
+ dev: false
+
+ /autoprefixer@10.4.16(postcss@8.4.33):
+ resolution: {integrity: sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ browserslist: 4.22.2
+ caniuse-lite: 1.0.30001576
+ fraction.js: 4.3.7
+ normalize-range: 0.1.2
+ picocolors: 1.0.0
+ postcss: 8.4.33
+ postcss-value-parser: 4.2.0
+ dev: true
+
+ /bail@2.0.2:
+ resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
+ dev: false
+
+ /balanced-match@1.0.2:
+ resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ dev: true
+
+ /better-react-mathjax@2.0.3(react@18.2.0):
+ resolution: {integrity: sha512-wfifT8GFOKb1TWm2+E50I6DJpLZ5kLbch283Lu043EJtwSv0XvZDjr4YfR4d2MjAhqP6SH4VjjrKgbX8R00oCQ==}
+ peerDependencies:
+ react: '>=16.8'
+ dependencies:
+ mathjax-full: 3.2.2
+ react: 18.2.0
+ dev: false
+
+ /binary-extensions@2.2.0:
+ resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /brace-expansion@2.0.1:
+ resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
+ dependencies:
+ balanced-match: 1.0.2
+ dev: true
+
+ /braces@3.0.2:
+ resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
+ engines: {node: '>=8'}
+ dependencies:
+ fill-range: 7.0.1
+ dev: true
+
+ /browserslist@4.22.2:
+ resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+ dependencies:
+ caniuse-lite: 1.0.30001576
+ electron-to-chromium: 1.4.623
+ node-releases: 2.0.14
+ update-browserslist-db: 1.0.13(browserslist@4.22.2)
+ dev: true
+
+ /busboy@1.6.0:
+ resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
+ engines: {node: '>=10.16.0'}
+ dependencies:
+ streamsearch: 1.1.0
+ dev: false
+
+ /camelcase-css@2.0.1:
+ resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /caniuse-lite@1.0.30001576:
+ resolution: {integrity: sha512-ff5BdakGe2P3SQsMsiqmt1Lc8221NR1VzHj5jXN5vBny9A6fpze94HiVV/n7XRosOlsShJcvMv5mdnpjOGCEgg==}
+
+ /ccount@2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+ dev: false
+
+ /chalk@2.3.0:
+ resolution: {integrity: sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==}
+ engines: {node: '>=4'}
+ dependencies:
+ ansi-styles: 3.2.1
+ escape-string-regexp: 1.0.5
+ supports-color: 4.5.0
+ dev: false
+
+ /character-entities-html4@2.1.0:
+ resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
+ dev: false
+
+ /character-entities-legacy@3.0.0:
+ resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
+ dev: false
+
+ /character-entities@2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+ dev: false
+
+ /character-reference-invalid@2.0.1:
+ resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==}
+ dev: false
+
+ /chokidar@3.5.3:
+ resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
+ engines: {node: '>= 8.10.0'}
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.2
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+ dev: true
+
+ /client-only@0.0.1:
+ resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==}
+ dev: false
+
+ /clipboardy@1.2.2:
+ resolution: {integrity: sha512-16KrBOV7bHmHdxcQiCvfUFYVFyEah4FI8vYT1Fr7CGSA4G+xBWMEfUEQJS1hxeHGtI9ju1Bzs9uXSbj5HZKArw==}
+ engines: {node: '>=4'}
+ dependencies:
+ arch: 2.2.0
+ execa: 0.8.0
+ dev: false
+
+ /clsx@2.1.0:
+ resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /color-convert@1.9.3:
+ resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
+ dependencies:
+ color-name: 1.1.3
+ dev: false
+
+ /color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+ dependencies:
+ color-name: 1.1.4
+ dev: true
+
+ /color-name@1.1.3:
+ resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
+ dev: false
+
+ /color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ dev: true
+
+ /comma-separated-tokens@2.0.3:
+ resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
+ dev: false
+
+ /commander@4.1.1:
+ resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /commander@7.2.0:
+ resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
+ engines: {node: '>= 10'}
+ dev: false
+
+ /commander@8.3.0:
+ resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
+ engines: {node: '>= 12'}
+ dev: false
+
+ /commander@9.2.0:
+ resolution: {integrity: sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w==}
+ engines: {node: ^12.20.0 || >=14}
+ dev: false
+
+ /compute-scroll-into-view@3.1.0:
+ resolution: {integrity: sha512-rj8l8pD4bJ1nx+dAkMhV1xB5RuZEyVysfxJqB1pRchh1KVvwOv9b7CGB8ZfjTImVv2oF+sYMUkMZq6Na5Ftmbg==}
+ dev: false
+
+ /cose-base@1.0.3:
+ resolution: {integrity: sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==}
+ dependencies:
+ layout-base: 1.0.2
+ dev: false
+
+ /cose-base@2.2.0:
+ resolution: {integrity: sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==}
+ dependencies:
+ layout-base: 2.0.1
+ dev: false
+
+ /cross-spawn@5.1.0:
+ resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==}
+ dependencies:
+ lru-cache: 4.1.5
+ shebang-command: 1.2.0
+ which: 1.3.1
+ dev: false
+
+ /cross-spawn@7.0.3:
+ resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
+ engines: {node: '>= 8'}
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+ dev: true
+
+ /cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+ dev: true
+
+ /csstype@3.1.3:
+ resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+
+ /cytoscape-cose-bilkent@4.1.0(cytoscape@3.28.1):
+ resolution: {integrity: sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==}
+ peerDependencies:
+ cytoscape: ^3.2.0
+ dependencies:
+ cose-base: 1.0.3
+ cytoscape: 3.28.1
+ dev: false
+
+ /cytoscape-fcose@2.2.0(cytoscape@3.28.1):
+ resolution: {integrity: sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==}
+ peerDependencies:
+ cytoscape: ^3.2.0
+ dependencies:
+ cose-base: 2.2.0
+ cytoscape: 3.28.1
+ dev: false
+
+ /cytoscape@3.28.1:
+ resolution: {integrity: sha512-xyItz4O/4zp9/239wCcH8ZcFuuZooEeF8KHRmzjDfGdXsj3OG9MFSMA0pJE0uX3uCN/ygof6hHf4L7lst+JaDg==}
+ engines: {node: '>=0.10'}
+ dependencies:
+ heap: 0.2.7
+ lodash: 4.17.21
+ dev: false
+
+ /d3-array@2.12.1:
+ resolution: {integrity: sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==}
+ dependencies:
+ internmap: 1.0.1
+ dev: false
+
+ /d3-array@3.2.4:
+ resolution: {integrity: sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==}
+ engines: {node: '>=12'}
+ dependencies:
+ internmap: 2.0.3
+ dev: false
+
+ /d3-axis@3.0.0:
+ resolution: {integrity: sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-brush@3.0.0:
+ resolution: {integrity: sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+ dev: false
+
+ /d3-chord@3.0.1:
+ resolution: {integrity: sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-path: 3.1.0
+ dev: false
+
+ /d3-color@3.1.0:
+ resolution: {integrity: sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-contour@4.0.2:
+ resolution: {integrity: sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-array: 3.2.4
+ dev: false
+
+ /d3-delaunay@6.0.4:
+ resolution: {integrity: sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==}
+ engines: {node: '>=12'}
+ dependencies:
+ delaunator: 5.0.0
+ dev: false
+
+ /d3-dispatch@3.0.1:
+ resolution: {integrity: sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-drag@3.0.0:
+ resolution: {integrity: sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-selection: 3.0.0
+ dev: false
+
+ /d3-dsv@3.0.1:
+ resolution: {integrity: sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==}
+ engines: {node: '>=12'}
+ hasBin: true
+ dependencies:
+ commander: 7.2.0
+ iconv-lite: 0.6.3
+ rw: 1.3.3
+ dev: false
+
+ /d3-ease@3.0.1:
+ resolution: {integrity: sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-fetch@3.0.1:
+ resolution: {integrity: sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-dsv: 3.0.1
+ dev: false
+
+ /d3-force@3.0.0:
+ resolution: {integrity: sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-quadtree: 3.0.1
+ d3-timer: 3.0.1
+ dev: false
+
+ /d3-format@3.1.0:
+ resolution: {integrity: sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-geo@3.1.0:
+ resolution: {integrity: sha512-JEo5HxXDdDYXCaWdwLRt79y7giK8SbhZJbFWXqbRTolCHFI5jRqteLzCsq51NKbUoX0PjBVSohxrx+NoOUujYA==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-array: 3.2.4
+ dev: false
+
+ /d3-hierarchy@3.1.2:
+ resolution: {integrity: sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-interpolate@3.0.1:
+ resolution: {integrity: sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-color: 3.1.0
+ dev: false
+
+ /d3-path@1.0.9:
+ resolution: {integrity: sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==}
+ dev: false
+
+ /d3-path@3.1.0:
+ resolution: {integrity: sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-polygon@3.0.1:
+ resolution: {integrity: sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-quadtree@3.0.1:
+ resolution: {integrity: sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-random@3.0.1:
+ resolution: {integrity: sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-sankey@0.12.3:
+ resolution: {integrity: sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==}
+ dependencies:
+ d3-array: 2.12.1
+ d3-shape: 1.3.7
+ dev: false
+
+ /d3-scale-chromatic@3.0.0:
+ resolution: {integrity: sha512-Lx9thtxAKrO2Pq6OO2Ua474opeziKr279P/TKZsMAhYyNDD3EnCffdbgeSYN5O7m2ByQsxtuP2CSDczNUIZ22g==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-color: 3.1.0
+ d3-interpolate: 3.0.1
+ dev: false
+
+ /d3-scale@4.0.2:
+ resolution: {integrity: sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-array: 3.2.4
+ d3-format: 3.1.0
+ d3-interpolate: 3.0.1
+ d3-time: 3.1.0
+ d3-time-format: 4.1.0
+ dev: false
+
+ /d3-selection@3.0.0:
+ resolution: {integrity: sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-shape@1.3.7:
+ resolution: {integrity: sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==}
+ dependencies:
+ d3-path: 1.0.9
+ dev: false
+
+ /d3-shape@3.2.0:
+ resolution: {integrity: sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-path: 3.1.0
+ dev: false
+
+ /d3-time-format@4.1.0:
+ resolution: {integrity: sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-time: 3.1.0
+ dev: false
+
+ /d3-time@3.1.0:
+ resolution: {integrity: sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-array: 3.2.4
+ dev: false
+
+ /d3-timer@3.0.1:
+ resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /d3-transition@3.0.1(d3-selection@3.0.0):
+ resolution: {integrity: sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ d3-selection: 2 - 3
+ dependencies:
+ d3-color: 3.1.0
+ d3-dispatch: 3.0.1
+ d3-ease: 3.0.1
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-timer: 3.0.1
+ dev: false
+
+ /d3-zoom@3.0.0:
+ resolution: {integrity: sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-interpolate: 3.0.1
+ d3-selection: 3.0.0
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+ dev: false
+
+ /d3@7.8.5:
+ resolution: {integrity: sha512-JgoahDG51ncUfJu6wX/1vWQEqOflgXyl4MaHqlcSruTez7yhaRKR9i8VjjcQGeS2en/jnFivXuaIMnseMMt0XA==}
+ engines: {node: '>=12'}
+ dependencies:
+ d3-array: 3.2.4
+ d3-axis: 3.0.0
+ d3-brush: 3.0.0
+ d3-chord: 3.0.1
+ d3-color: 3.1.0
+ d3-contour: 4.0.2
+ d3-delaunay: 6.0.4
+ d3-dispatch: 3.0.1
+ d3-drag: 3.0.0
+ d3-dsv: 3.0.1
+ d3-ease: 3.0.1
+ d3-fetch: 3.0.1
+ d3-force: 3.0.0
+ d3-format: 3.1.0
+ d3-geo: 3.1.0
+ d3-hierarchy: 3.1.2
+ d3-interpolate: 3.0.1
+ d3-path: 3.1.0
+ d3-polygon: 3.0.1
+ d3-quadtree: 3.0.1
+ d3-random: 3.0.1
+ d3-scale: 4.0.2
+ d3-scale-chromatic: 3.0.0
+ d3-selection: 3.0.0
+ d3-shape: 3.2.0
+ d3-time: 3.1.0
+ d3-time-format: 4.1.0
+ d3-timer: 3.0.1
+ d3-transition: 3.0.1(d3-selection@3.0.0)
+ d3-zoom: 3.0.0
+ dev: false
+
+ /dagre-d3-es@7.0.10:
+ resolution: {integrity: sha512-qTCQmEhcynucuaZgY5/+ti3X/rnszKZhEQH/ZdWdtP1tA/y3VoHJzcVrO9pjjJCNpigfscAtoUB5ONcd2wNn0A==}
+ dependencies:
+ d3: 7.8.5
+ lodash-es: 4.17.21
+ dev: false
+
+ /dayjs@1.11.10:
+ resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==}
+ dev: false
+
+ /debug@4.3.4:
+ resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+ dependencies:
+ ms: 2.1.2
+ dev: false
+
+ /decode-named-character-reference@1.0.2:
+ resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
+ dependencies:
+ character-entities: 2.0.2
+ dev: false
+
+ /delaunator@5.0.0:
+ resolution: {integrity: sha512-AyLvtyJdbv/U1GkiS6gUUzclRoAY4Gs75qkMygJJhU75LW4DNuSF2RMzpxs9jw9Oz1BobHjTdkG3zdP55VxAqw==}
+ dependencies:
+ robust-predicates: 3.0.2
+ dev: false
+
+ /dequal@2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /devlop@1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+ dependencies:
+ dequal: 2.0.3
+ dev: false
+
+ /didyoumean@1.2.2:
+ resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
+ dev: true
+
+ /diff@5.1.0:
+ resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==}
+ engines: {node: '>=0.3.1'}
+ dev: false
+
+ /dlv@1.1.3:
+ resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
+ dev: true
+
+ /dompurify@3.0.8:
+ resolution: {integrity: sha512-b7uwreMYL2eZhrSCRC4ahLTeZcPZxSmYfmcQGXGkXiZSNW1X85v+SDM5KsWcpivIiUBH47Ji7NtyUdpLeF5JZQ==}
+ dev: false
+
+ /eastasianwidth@0.2.0:
+ resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+ dev: true
+
+ /electron-to-chromium@1.4.623:
+ resolution: {integrity: sha512-lKoz10iCYlP1WtRYdh5MvocQPWVRoI7ysp6qf18bmeBgR8abE6+I2CsfyNKztRDZvhdWc+krKT6wS7Neg8sw3A==}
+ dev: true
+
+ /elkjs@0.8.2:
+ resolution: {integrity: sha512-L6uRgvZTH+4OF5NE/MBbzQx/WYpru1xCBE9respNj6qznEewGUIfhzmm7horWWxbNO2M0WckQypGctR8lH79xQ==}
+ dev: false
+
+ /emoji-regex@8.0.0:
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+ dev: true
+
+ /emoji-regex@9.2.2:
+ resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+ dev: true
+
+ /entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+ dev: false
+
+ /escalade@3.1.1:
+ resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
+ engines: {node: '>=6'}
+ dev: true
+
+ /escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+ dev: false
+
+ /escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /esm@3.2.25:
+ resolution: {integrity: sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+ dev: false
+
+ /estree-util-attach-comments@2.1.1:
+ resolution: {integrity: sha512-+5Ba/xGGS6mnwFbXIuQiDPTbuTxuMCooq3arVv7gPZtYpjp+VXH/NkHAP35OOefPhNG/UGqU3vt/LTABwcHX0w==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /estree-util-attach-comments@3.0.0:
+ resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /estree-util-build-jsx@2.2.2:
+ resolution: {integrity: sha512-m56vOXcOBuaF+Igpb9OPAy7f9w9OIkb5yhjsZuaPm7HoGi4oTOQi0h2+yZ+AtKklYFZ+rPC4n0wYCJCEU1ONqg==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ estree-util-is-identifier-name: 2.1.0
+ estree-walker: 3.0.3
+ dev: false
+
+ /estree-util-is-identifier-name@2.1.0:
+ resolution: {integrity: sha512-bEN9VHRyXAUOjkKVQVvArFym08BTWB0aJPppZZr0UNyAqWsLaVfAqP7hbaTJjzHifmB5ebnR8Wm7r7yGN/HonQ==}
+ dev: false
+
+ /estree-util-is-identifier-name@3.0.0:
+ resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==}
+ dev: false
+
+ /estree-util-to-js@1.2.0:
+ resolution: {integrity: sha512-IzU74r1PK5IMMGZXUVZbmiu4A1uhiPgW5hm1GjcOfr4ZzHaMPpLNJjR7HjXiIOzi25nZDrgFTobHTkV5Q6ITjA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ astring: 1.8.6
+ source-map: 0.7.4
+ dev: false
+
+ /estree-util-to-js@2.0.0:
+ resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ astring: 1.8.6
+ source-map: 0.7.4
+ dev: false
+
+ /estree-util-value-to-estree@1.3.0:
+ resolution: {integrity: sha512-Y+ughcF9jSUJvncXwqRageavjrNPAI+1M/L3BI3PyLp1nmgYTGUXU6t5z1Y7OWuThoDdhPME07bQU+d5LxdJqw==}
+ engines: {node: '>=12.0.0'}
+ dependencies:
+ is-plain-obj: 3.0.0
+ dev: false
+
+ /estree-util-value-to-estree@3.0.1:
+ resolution: {integrity: sha512-b2tdzTurEIbwRh+mKrEcaWfu1wgb8J1hVsgREg7FFiecWwK/PhO8X0kyc+0bIcKNtD4sqxIdNoRy6/p/TvECEA==}
+ engines: {node: '>=16.0.0'}
+ dependencies:
+ '@types/estree': 1.0.5
+ is-plain-obj: 4.1.0
+ dev: false
+
+ /estree-util-visit@1.2.1:
+ resolution: {integrity: sha512-xbgqcrkIVbIG+lI/gzbvd9SGTJL4zqJKBFttUl5pP27KhAjtMKbX/mQXJ7qgyXpMgVy/zvpm0xoQQaGL8OloOw==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/unist': 2.0.10
+ dev: false
+
+ /estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /execa@0.8.0:
+ resolution: {integrity: sha512-zDWS+Rb1E8BlqqhALSt9kUhss8Qq4nN3iof3gsOdyINksElaPyNBtKUMTR62qhvgVWR0CqCX7sdnKe4MnUbFEA==}
+ engines: {node: '>=4'}
+ dependencies:
+ cross-spawn: 5.1.0
+ get-stream: 3.0.0
+ is-stream: 1.1.0
+ npm-run-path: 2.0.2
+ p-finally: 1.0.0
+ signal-exit: 3.0.7
+ strip-eof: 1.0.0
+ dev: false
+
+ /extend-shallow@2.0.1:
+ resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extendable: 0.1.1
+ dev: false
+
+ /extend@3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
+ dev: false
+
+ /fast-glob@3.3.2:
+ resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
+ engines: {node: '>=8.6.0'}
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.5
+ dev: true
+
+ /fastq@1.16.0:
+ resolution: {integrity: sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==}
+ dependencies:
+ reusify: 1.0.4
+ dev: true
+
+ /fault@2.0.1:
+ resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==}
+ dependencies:
+ format: 0.2.2
+ dev: false
+
+ /fill-range@7.0.1:
+ resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
+ engines: {node: '>=8'}
+ dependencies:
+ to-regex-range: 5.0.1
+ dev: true
+
+ /flexsearch@0.7.41:
+ resolution: {integrity: sha512-nlSsN+cLeoOMEPivjjMuYdMN7WdCKaogCirVZNxQ8a34reoKZvxDxbAtIoAK1ewmkXd5dz8Pb2kwwYJ6b/07PQ==}
+ dev: false
+
+ /focus-visible@5.2.0:
+ resolution: {integrity: sha512-Rwix9pBtC1Nuy5wysTmKy+UjbDJpIfg8eHjw0rjZ1mX4GNLz1Bmd16uDpI3Gk1i70Fgcs8Csg2lPm8HULFg9DQ==}
+ dev: false
+
+ /foreground-child@3.1.1:
+ resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==}
+ engines: {node: '>=14'}
+ dependencies:
+ cross-spawn: 7.0.3
+ signal-exit: 4.1.0
+ dev: true
+
+ /format@0.2.2:
+ resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
+ engines: {node: '>=0.4.x'}
+ dev: false
+
+ /fraction.js@4.3.7:
+ resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
+ dev: true
+
+ /fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+ requiresBuild: true
+ dev: true
+ optional: true
+
+ /function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+ dev: true
+
+ /get-stream@3.0.0:
+ resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /github-slugger@2.0.0:
+ resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==}
+ dev: false
+
+ /glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: true
+
+ /glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ is-glob: 4.0.3
+ dev: true
+
+ /glob-to-regexp@0.4.1:
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
+ dev: false
+
+ /glob@10.3.10:
+ resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ hasBin: true
+ dependencies:
+ foreground-child: 3.1.1
+ jackspeak: 2.3.6
+ minimatch: 9.0.3
+ minipass: 7.0.4
+ path-scurry: 1.10.1
+ dev: true
+
+ /graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+ dev: false
+
+ /gray-matter@4.0.3:
+ resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
+ engines: {node: '>=6.0'}
+ dependencies:
+ js-yaml: 3.14.1
+ kind-of: 6.0.3
+ section-matter: 1.0.0
+ strip-bom-string: 1.0.0
+ dev: false
+
+ /has-flag@2.0.0:
+ resolution: {integrity: sha512-P+1n3MnwjR/Epg9BBo1KT8qbye2g2Ou4sFumihwt6I4tsUX7jnLcX4BTOSKg/B1ZrIYMN9FcEnG4x5a7NB8Eng==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /hash-obj@4.0.0:
+ resolution: {integrity: sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==}
+ engines: {node: '>=12'}
+ dependencies:
+ is-obj: 3.0.0
+ sort-keys: 5.0.0
+ type-fest: 1.4.0
+ dev: false
+
+ /hasown@2.0.0:
+ resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==}
+ engines: {node: '>= 0.4'}
+ dependencies:
+ function-bind: 1.1.2
+ dev: true
+
+ /hast-util-from-dom@5.0.0:
+ resolution: {integrity: sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==}
+ dependencies:
+ '@types/hast': 3.0.3
+ hastscript: 8.0.0
+ web-namespaces: 2.0.1
+ dev: false
+
+ /hast-util-from-html-isomorphic@2.0.0:
+ resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==}
+ dependencies:
+ '@types/hast': 3.0.3
+ hast-util-from-dom: 5.0.0
+ hast-util-from-html: 2.0.1
+ unist-util-remove-position: 5.0.0
+ dev: false
+
+ /hast-util-from-html@2.0.1:
+ resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==}
+ dependencies:
+ '@types/hast': 3.0.3
+ devlop: 1.1.0
+ hast-util-from-parse5: 8.0.1
+ parse5: 7.1.2
+ vfile: 6.0.1
+ vfile-message: 4.0.2
+ dev: false
+
+ /hast-util-from-parse5@8.0.1:
+ resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/unist': 3.0.2
+ devlop: 1.1.0
+ hastscript: 8.0.0
+ property-information: 6.4.0
+ vfile: 6.0.1
+ vfile-location: 5.0.2
+ web-namespaces: 2.0.1
+ dev: false
+
+ /hast-util-is-element@3.0.0:
+ resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==}
+ dependencies:
+ '@types/hast': 3.0.3
+ dev: false
+
+ /hast-util-parse-selector@4.0.0:
+ resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
+ dependencies:
+ '@types/hast': 3.0.3
+ dev: false
+
+ /hast-util-raw@9.0.1:
+ resolution: {integrity: sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/unist': 3.0.2
+ '@ungap/structured-clone': 1.2.0
+ hast-util-from-parse5: 8.0.1
+ hast-util-to-parse5: 8.0.0
+ html-void-elements: 3.0.0
+ mdast-util-to-hast: 13.0.2
+ parse5: 7.1.2
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.1
+ web-namespaces: 2.0.1
+ zwitch: 2.0.4
+ dev: false
+
+ /hast-util-to-estree@2.3.3:
+ resolution: {integrity: sha512-ihhPIUPxN0v0w6M5+IiAZZrn0LH2uZomeWwhn7uP7avZC6TE7lIiEh2yBMPr5+zi1aUCXq6VoYRgs2Bw9xmycQ==}
+ dependencies:
+ '@types/estree': 1.0.5
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 2.3.9
+ '@types/unist': 2.0.10
+ comma-separated-tokens: 2.0.3
+ estree-util-attach-comments: 2.1.1
+ estree-util-is-identifier-name: 2.1.0
+ hast-util-whitespace: 2.0.1
+ mdast-util-mdx-expression: 1.3.2
+ mdast-util-mdxjs-esm: 1.3.1
+ property-information: 6.4.0
+ space-separated-tokens: 2.0.2
+ style-to-object: 0.4.4
+ unist-util-position: 4.0.4
+ zwitch: 2.0.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /hast-util-to-estree@3.1.0:
+ resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==}
+ dependencies:
+ '@types/estree': 1.0.5
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 3.0.3
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ estree-util-attach-comments: 3.0.0
+ estree-util-is-identifier-name: 3.0.0
+ hast-util-whitespace: 3.0.0
+ mdast-util-mdx-expression: 2.0.0
+ mdast-util-mdx-jsx: 3.0.0
+ mdast-util-mdxjs-esm: 2.0.1
+ property-information: 6.4.0
+ space-separated-tokens: 2.0.2
+ style-to-object: 0.4.4
+ unist-util-position: 5.0.0
+ zwitch: 2.0.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /hast-util-to-html@9.0.0:
+ resolution: {integrity: sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/unist': 3.0.2
+ ccount: 2.0.1
+ comma-separated-tokens: 2.0.3
+ hast-util-raw: 9.0.1
+ hast-util-whitespace: 3.0.0
+ html-void-elements: 3.0.0
+ mdast-util-to-hast: 13.0.2
+ property-information: 6.4.0
+ space-separated-tokens: 2.0.2
+ stringify-entities: 4.0.3
+ zwitch: 2.0.4
+ dev: false
+
+ /hast-util-to-parse5@8.0.0:
+ resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
+ dependencies:
+ '@types/hast': 3.0.3
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ property-information: 6.4.0
+ space-separated-tokens: 2.0.2
+ web-namespaces: 2.0.1
+ zwitch: 2.0.4
+ dev: false
+
+ /hast-util-to-text@4.0.0:
+ resolution: {integrity: sha512-EWiE1FSArNBPUo1cKWtzqgnuRQwEeQbQtnFJRYV1hb1BWDgrAlBU0ExptvZMM/KSA82cDpm2sFGf3Dmc5Mza3w==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/unist': 3.0.2
+ hast-util-is-element: 3.0.0
+ unist-util-find-after: 5.0.0
+ dev: false
+
+ /hast-util-whitespace@2.0.1:
+ resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==}
+ dev: false
+
+ /hast-util-whitespace@3.0.0:
+ resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
+ dependencies:
+ '@types/hast': 3.0.3
+ dev: false
+
+ /hastscript@8.0.0:
+ resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==}
+ dependencies:
+ '@types/hast': 3.0.3
+ comma-separated-tokens: 2.0.3
+ hast-util-parse-selector: 4.0.0
+ property-information: 6.4.0
+ space-separated-tokens: 2.0.2
+ dev: false
+
+ /heap@0.2.7:
+ resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==}
+ dev: false
+
+ /html-void-elements@3.0.0:
+ resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
+ dev: false
+
+ /iconv-lite@0.6.3:
+ resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ safer-buffer: 2.1.2
+ dev: false
+
+ /inline-style-parser@0.1.1:
+ resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==}
+ dev: false
+
+ /internmap@1.0.1:
+ resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==}
+ dev: false
+
+ /internmap@2.0.3:
+ resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /intersection-observer@0.12.2:
+ resolution: {integrity: sha512-7m1vEcPCxXYI8HqnL8CKI6siDyD+eIWSwgB3DZA+ZTogxk9I4CDnj4wilt9x/+/QbHI4YG5YZNmC6458/e9Ktg==}
+ dev: false
+
+ /is-alphabetical@2.0.1:
+ resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==}
+ dev: false
+
+ /is-alphanumerical@2.0.1:
+ resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
+ dependencies:
+ is-alphabetical: 2.0.1
+ is-decimal: 2.0.1
+ dev: false
+
+ /is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+ dependencies:
+ binary-extensions: 2.2.0
+ dev: true
+
+ /is-buffer@2.0.5:
+ resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /is-core-module@2.13.1:
+ resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
+ dependencies:
+ hasown: 2.0.0
+ dev: true
+
+ /is-decimal@2.0.1:
+ resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
+ dev: false
+
+ /is-extendable@0.1.1:
+ resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /is-fullwidth-code-point@3.0.0:
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-extglob: 2.1.1
+ dev: true
+
+ /is-hexadecimal@2.0.1:
+ resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
+ dev: false
+
+ /is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+ dev: true
+
+ /is-obj@3.0.0:
+ resolution: {integrity: sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /is-plain-obj@3.0.0:
+ resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+ dev: false
+
+ /is-reference@3.0.2:
+ resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
+
+ /is-stream@1.1.0:
+ resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+
+ /jackspeak@2.3.6:
+ resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
+ engines: {node: '>=14'}
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+ optionalDependencies:
+ '@pkgjs/parseargs': 0.11.0
+ dev: true
+
+ /jiti@1.21.0:
+ resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
+ hasBin: true
+ dev: true
+
+ /js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+ dev: false
+
+ /js-yaml@3.14.1:
+ resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
+ hasBin: true
+ dependencies:
+ argparse: 1.0.10
+ esprima: 4.0.1
+ dev: false
+
+ /katex@0.16.9:
+ resolution: {integrity: sha512-fsSYjWS0EEOwvy81j3vRA8TEAhQhKiqO+FQaKWp0m39qwOzHVBgAUBIXWj1pB+O2W3fIpNa6Y9KSKCVbfPhyAQ==}
+ hasBin: true
+ dependencies:
+ commander: 8.3.0
+ dev: false
+
+ /khroma@2.1.0:
+ resolution: {integrity: sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==}
+ dev: false
+
+ /kind-of@6.0.3:
+ resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /kleur@4.1.5:
+ resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
+ engines: {node: '>=6'}
+ dev: false
+
+ /layout-base@1.0.2:
+ resolution: {integrity: sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==}
+ dev: false
+
+ /layout-base@2.0.1:
+ resolution: {integrity: sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==}
+ dev: false
+
+ /lilconfig@2.1.0:
+ resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
+ engines: {node: '>=10'}
+ dev: true
+
+ /lilconfig@3.0.0:
+ resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+ dev: true
+
+ /lodash-es@4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+ dev: false
+
+ /lodash@4.17.21:
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+ dev: false
+
+ /longest-streak@3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+ dev: false
+
+ /loose-envify@1.4.0:
+ resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
+ hasBin: true
+ dependencies:
+ js-tokens: 4.0.0
+ dev: false
+
+ /lru-cache@10.1.0:
+ resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==}
+ engines: {node: 14 || >=16.14}
+ dev: true
+
+ /lru-cache@4.1.5:
+ resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==}
+ dependencies:
+ pseudomap: 1.0.2
+ yallist: 2.1.2
+ dev: false
+
+ /markdown-extensions@1.1.1:
+ resolution: {integrity: sha512-WWC0ZuMzCyDHYCasEGs4IPvLyTGftYwh6wIEOULOF0HXcqZlhwRzrK0w2VUlxWA98xnvb/jszw4ZSkJ6ADpM6Q==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /markdown-table@3.0.3:
+ resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
+ dev: false
+
+ /mathjax-full@3.2.2:
+ resolution: {integrity: sha512-+LfG9Fik+OuI8SLwsiR02IVdjcnRCy5MufYLi0C3TdMT56L/pjB0alMVGgoWJF8pN9Rc7FESycZB9BMNWIid5w==}
+ dependencies:
+ esm: 3.2.25
+ mhchemparser: 4.2.1
+ mj-context-menu: 0.6.1
+ speech-rule-engine: 4.0.7
+ dev: false
+
+ /mdast-util-definitions@5.1.2:
+ resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ '@types/unist': 2.0.10
+ unist-util-visit: 4.1.2
+ dev: false
+
+ /mdast-util-find-and-replace@2.2.2:
+ resolution: {integrity: sha512-MTtdFRz/eMDHXzeK6W3dO7mXUlF82Gom4y0oOgvHhh/HXZAGvIQDUvQ0SuUx+j2tv44b8xTHOm8K/9OoRFnXKw==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ escape-string-regexp: 5.0.0
+ unist-util-is: 5.2.1
+ unist-util-visit-parents: 5.1.3
+ dev: false
+
+ /mdast-util-from-markdown@1.3.1:
+ resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ '@types/unist': 2.0.10
+ decode-named-character-reference: 1.0.2
+ mdast-util-to-string: 3.2.0
+ micromark: 3.2.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-decode-string: 1.1.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ unist-util-stringify-position: 3.0.3
+ uvu: 0.5.6
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-from-markdown@2.0.0:
+ resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==}
+ dependencies:
+ '@types/mdast': 4.0.3
+ '@types/unist': 3.0.2
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-frontmatter@1.0.1:
+ resolution: {integrity: sha512-JjA2OjxRqAa8wEG8hloD0uTU0kdn8kbtOWpPP94NBkfAlbxn4S8gCGf/9DwFtEeGPXrDcNXdiDjVaRdUFqYokw==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-to-markdown: 1.5.0
+ micromark-extension-frontmatter: 1.1.1
+ dev: false
+
+ /mdast-util-gfm-autolink-literal@1.0.3:
+ resolution: {integrity: sha512-My8KJ57FYEy2W2LyNom4n3E7hKTuQk/0SES0u16tjA9Z3oFkF4RrC/hPAPgjlSpezsOvI8ObcXcElo92wn5IGA==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ ccount: 2.0.1
+ mdast-util-find-and-replace: 2.2.2
+ micromark-util-character: 1.2.0
+ dev: false
+
+ /mdast-util-gfm-footnote@1.0.2:
+ resolution: {integrity: sha512-56D19KOGbE00uKVj3sgIykpwKL179QsVFwx/DCW0u/0+URsryacI4MAdNJl0dh+u2PSsD9FtxPFbHCzJ78qJFQ==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-to-markdown: 1.5.0
+ micromark-util-normalize-identifier: 1.1.0
+ dev: false
+
+ /mdast-util-gfm-strikethrough@1.0.3:
+ resolution: {integrity: sha512-DAPhYzTYrRcXdMjUtUjKvW9z/FNAMTdU0ORyMcbmkwYNbKocDpdk+PX1L1dQgOID/+vVs1uBQ7ElrBQfZ0cuiQ==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-to-markdown: 1.5.0
+ dev: false
+
+ /mdast-util-gfm-table@1.0.7:
+ resolution: {integrity: sha512-jjcpmNnQvrmN5Vx7y7lEc2iIOEytYv7rTvu+MeyAsSHTASGCCRA79Igg2uKssgOs1i1po8s3plW0sTu1wkkLGg==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ markdown-table: 3.0.3
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-to-markdown: 1.5.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-gfm-task-list-item@1.0.2:
+ resolution: {integrity: sha512-PFTA1gzfp1B1UaiJVyhJZA1rm0+Tzn690frc/L8vNX1Jop4STZgOE6bxUhnzdVSB+vm2GU1tIsuQcA9bxTQpMQ==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-to-markdown: 1.5.0
+ dev: false
+
+ /mdast-util-gfm@2.0.2:
+ resolution: {integrity: sha512-qvZ608nBppZ4icQlhQQIAdc6S3Ffj9RGmzwUKUWuEICFnd1LVkN3EktF7ZHAgfcEdvZB5owU9tQgt99e2TlLjg==}
+ dependencies:
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-gfm-autolink-literal: 1.0.3
+ mdast-util-gfm-footnote: 1.0.2
+ mdast-util-gfm-strikethrough: 1.0.3
+ mdast-util-gfm-table: 1.0.7
+ mdast-util-gfm-task-list-item: 1.0.2
+ mdast-util-to-markdown: 1.5.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-math@3.0.0:
+ resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/mdast': 4.0.3
+ devlop: 1.1.0
+ longest-streak: 3.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ unist-util-remove-position: 5.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-expression@1.3.2:
+ resolution: {integrity: sha512-xIPmR5ReJDu/DHH1OoIT1HkuybIfRGYRywC+gJtI7qHjCJp/M9jrmBEJW22O8lskDWm562BX2W8TiAwRTb0rKA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 2.3.9
+ '@types/mdast': 3.0.15
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-to-markdown: 1.5.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-expression@2.0.0:
+ resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 3.0.3
+ '@types/mdast': 4.0.3
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-jsx@2.1.4:
+ resolution: {integrity: sha512-DtMn9CmVhVzZx3f+optVDF8yFgQVt7FghCRNdlIaS3X5Bnym3hZwPbg/XW86vdpKjlc1PVj26SpnLGeJBXD3JA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 2.3.9
+ '@types/mdast': 3.0.15
+ '@types/unist': 2.0.10
+ ccount: 2.0.1
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-to-markdown: 1.5.0
+ parse-entities: 4.0.1
+ stringify-entities: 4.0.3
+ unist-util-remove-position: 4.0.2
+ unist-util-stringify-position: 3.0.3
+ vfile-message: 3.1.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-jsx@3.0.0:
+ resolution: {integrity: sha512-XZuPPzQNBPAlaqsTTgRrcJnyFbSOBovSadFgbFu8SnuNgm+6Bdx1K+IWoitsmj6Lq6MNtI+ytOqwN70n//NaBA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 3.0.3
+ '@types/mdast': 4.0.3
+ '@types/unist': 3.0.2
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ parse-entities: 4.0.1
+ stringify-entities: 4.0.3
+ unist-util-remove-position: 5.0.0
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx@2.0.1:
+ resolution: {integrity: sha512-38w5y+r8nyKlGvNjSEqWrhG0w5PmnRA+wnBvm+ulYCct7nsGYhFVb0lljS9bQav4psDAS1eGkP2LMVcZBi/aqw==}
+ dependencies:
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-mdx-expression: 1.3.2
+ mdast-util-mdx-jsx: 2.1.4
+ mdast-util-mdxjs-esm: 1.3.1
+ mdast-util-to-markdown: 1.5.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdxjs-esm@1.3.1:
+ resolution: {integrity: sha512-SXqglS0HrEvSdUEfoXFtcg7DRl7S2cwOXc7jkuusG472Mmjag34DUDeOJUZtl+BVnyeO1frIgVpHlNRWc2gk/w==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 2.3.9
+ '@types/mdast': 3.0.15
+ mdast-util-from-markdown: 1.3.1
+ mdast-util-to-markdown: 1.5.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdxjs-esm@2.0.1:
+ resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
+ dependencies:
+ '@types/estree-jsx': 1.0.3
+ '@types/hast': 3.0.3
+ '@types/mdast': 4.0.3
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.0
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-phrasing@3.0.1:
+ resolution: {integrity: sha512-WmI1gTXUBJo4/ZmSk79Wcb2HcjPJBzM1nlI/OUWA8yk2X9ik3ffNbBGsU+09BFmXaL1IBb9fiuvq6/KMiNycSg==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ unist-util-is: 5.2.1
+ dev: false
+
+ /mdast-util-phrasing@4.0.0:
+ resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==}
+ dependencies:
+ '@types/mdast': 4.0.3
+ unist-util-is: 6.0.0
+ dev: false
+
+ /mdast-util-to-hast@12.3.0:
+ resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==}
+ dependencies:
+ '@types/hast': 2.3.9
+ '@types/mdast': 3.0.15
+ mdast-util-definitions: 5.1.2
+ micromark-util-sanitize-uri: 1.2.0
+ trim-lines: 3.0.1
+ unist-util-generated: 2.0.1
+ unist-util-position: 4.0.4
+ unist-util-visit: 4.1.2
+ dev: false
+
+ /mdast-util-to-hast@13.0.2:
+ resolution: {integrity: sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/mdast': 4.0.3
+ '@ungap/structured-clone': 1.2.0
+ devlop: 1.1.0
+ micromark-util-sanitize-uri: 2.0.0
+ trim-lines: 3.0.1
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /mdast-util-to-markdown@1.5.0:
+ resolution: {integrity: sha512-bbv7TPv/WC49thZPg3jXuqzuvI45IL2EVAr/KxF0BSdHsU0ceFHOmwQn6evxAh1GaoK/6GQ1wp4R4oW2+LFL/A==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ '@types/unist': 2.0.10
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 3.0.1
+ mdast-util-to-string: 3.2.0
+ micromark-util-decode-string: 1.1.0
+ unist-util-visit: 4.1.2
+ zwitch: 2.0.4
+ dev: false
+
+ /mdast-util-to-markdown@2.1.0:
+ resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
+ dependencies:
+ '@types/mdast': 4.0.3
+ '@types/unist': 3.0.2
+ longest-streak: 3.1.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.4
+ dev: false
+
+ /mdast-util-to-string@3.2.0:
+ resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ dev: false
+
+ /mdast-util-to-string@4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+ dependencies:
+ '@types/mdast': 4.0.3
+ dev: false
+
+ /merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+ dev: true
+
+ /mermaid@10.6.1:
+ resolution: {integrity: sha512-Hky0/RpOw/1il9X8AvzOEChfJtVvmXm+y7JML5C//ePYMy0/9jCEmW1E1g86x9oDfW9+iVEdTV/i+M6KWRNs4A==}
+ dependencies:
+ '@braintree/sanitize-url': 6.0.4
+ '@types/d3-scale': 4.0.8
+ '@types/d3-scale-chromatic': 3.0.3
+ cytoscape: 3.28.1
+ cytoscape-cose-bilkent: 4.1.0(cytoscape@3.28.1)
+ cytoscape-fcose: 2.2.0(cytoscape@3.28.1)
+ d3: 7.8.5
+ d3-sankey: 0.12.3
+ dagre-d3-es: 7.0.10
+ dayjs: 1.11.10
+ dompurify: 3.0.8
+ elkjs: 0.8.2
+ khroma: 2.1.0
+ lodash-es: 4.17.21
+ mdast-util-from-markdown: 1.3.1
+ non-layered-tidy-tree-layout: 2.0.2
+ stylis: 4.3.1
+ ts-dedent: 2.2.0
+ uuid: 9.0.1
+ web-worker: 1.3.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mhchemparser@4.2.1:
+ resolution: {integrity: sha512-kYmyrCirqJf3zZ9t/0wGgRZ4/ZJw//VwaRVGA75C4nhE60vtnIzhl9J9ndkX/h6hxSN7pjg/cE0VxbnNM+bnDQ==}
+ dev: false
+
+ /micromark-core-commonmark@1.1.0:
+ resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ micromark-factory-destination: 1.1.0
+ micromark-factory-label: 1.1.0
+ micromark-factory-space: 1.1.0
+ micromark-factory-title: 1.1.0
+ micromark-factory-whitespace: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-chunked: 1.1.0
+ micromark-util-classify-character: 1.1.0
+ micromark-util-html-tag-name: 1.2.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-resolve-all: 1.1.0
+ micromark-util-subtokenize: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-core-commonmark@2.0.0:
+ resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.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.1
+ 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
+ dev: false
+
+ /micromark-extension-frontmatter@1.1.1:
+ resolution: {integrity: sha512-m2UH9a7n3W8VAH9JO9y01APpPKmNNNs71P0RbknEmYSaZU5Ghogv38BYO94AI5Xw6OYfxZRdHZZ2nYjs/Z+SZQ==}
+ dependencies:
+ fault: 2.0.1
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-extension-gfm-autolink-literal@1.0.5:
+ resolution: {integrity: sha512-z3wJSLrDf8kRDOh2qBtoTRD53vJ+CWIyo7uyZuxf/JAbNJjiHsOpG1y5wxk8drtv3ETAHutCu6N3thkOOgueWg==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-sanitize-uri: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-extension-gfm-footnote@1.1.2:
+ resolution: {integrity: sha512-Yxn7z7SxgyGWRNa4wzf8AhYYWNrwl5q1Z8ii+CSTTIqVkmGZF1CElX2JI8g5yGoM3GAman9/PVCUFUSJ0kB/8Q==}
+ dependencies:
+ micromark-core-commonmark: 1.1.0
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-sanitize-uri: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-extension-gfm-strikethrough@1.0.7:
+ resolution: {integrity: sha512-sX0FawVE1o3abGk3vRjOH50L5TTLr3b5XMqnP9YDRb34M0v5OoZhG+OHFz1OffZ9dlwgpTBKaT4XW/AsUVnSDw==}
+ dependencies:
+ micromark-util-chunked: 1.1.0
+ micromark-util-classify-character: 1.1.0
+ micromark-util-resolve-all: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-extension-gfm-table@1.0.7:
+ resolution: {integrity: sha512-3ZORTHtcSnMQEKtAOsBQ9/oHp9096pI/UvdPtN7ehKvrmZZ2+bbWhi0ln+I9drmwXMt5boocn6OlwQzNXeVeqw==}
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-extension-gfm-tagfilter@1.0.2:
+ resolution: {integrity: sha512-5XWB9GbAUSHTn8VPU8/1DBXMuKYT5uOgEjJb8gN3mW0PNW5OPHpSdojoqf+iq1xo7vWzw/P8bAHY0n6ijpXF7g==}
+ dependencies:
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-extension-gfm-task-list-item@1.0.5:
+ resolution: {integrity: sha512-RMFXl2uQ0pNQy6Lun2YBYT9g9INXtWJULgbt01D/x8/6yJ2qpKyzdZD3pi6UIkzF++Da49xAelVKUeUMqd5eIQ==}
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-extension-gfm@2.0.3:
+ resolution: {integrity: sha512-vb9OoHqrhCmbRidQv/2+Bc6pkP0FrtlhurxZofvOEy5o8RtuuvTq+RQ1Vw5ZDNrVraQZu3HixESqbG+0iKk/MQ==}
+ dependencies:
+ micromark-extension-gfm-autolink-literal: 1.0.5
+ micromark-extension-gfm-footnote: 1.1.2
+ micromark-extension-gfm-strikethrough: 1.0.7
+ micromark-extension-gfm-table: 1.0.7
+ micromark-extension-gfm-tagfilter: 1.0.2
+ micromark-extension-gfm-task-list-item: 1.0.5
+ micromark-util-combine-extensions: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-extension-math@3.0.0:
+ resolution: {integrity: sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==}
+ dependencies:
+ '@types/katex': 0.16.7
+ devlop: 1.1.0
+ katex: 0.16.9
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-extension-mdx-expression@1.0.8:
+ resolution: {integrity: sha512-zZpeQtc5wfWKdzDsHRBY003H2Smg+PUi2REhqgIhdzAa5xonhP03FcXxqFSerFiNUr5AWmHpaNPQTBVOS4lrXw==}
+ dependencies:
+ '@types/estree': 1.0.5
+ micromark-factory-mdx-expression: 1.0.9
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-events-to-acorn: 1.2.3
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-extension-mdx-jsx@1.0.5:
+ resolution: {integrity: sha512-gPH+9ZdmDflbu19Xkb8+gheqEDqkSpdCEubQyxuz/Hn8DOXiXvrXeikOoBA71+e8Pfi0/UYmU3wW3H58kr7akA==}
+ dependencies:
+ '@types/acorn': 4.0.6
+ '@types/estree': 1.0.5
+ estree-util-is-identifier-name: 2.1.0
+ micromark-factory-mdx-expression: 1.0.9
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ vfile-message: 3.1.4
+ dev: false
+
+ /micromark-extension-mdx-md@1.0.1:
+ resolution: {integrity: sha512-7MSuj2S7xjOQXAjjkbjBsHkMtb+mDGVW6uI2dBL9snOBCbZmoNgDAeZ0nSn9j3T42UE/g2xVNMn18PJxZvkBEA==}
+ dependencies:
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-extension-mdxjs-esm@1.0.5:
+ resolution: {integrity: sha512-xNRBw4aoURcyz/S69B19WnZAkWJMxHMT5hE36GtDAyhoyn/8TuAeqjFJQlwk+MKQsUD7b3l7kFX+vlfVWgcX1w==}
+ dependencies:
+ '@types/estree': 1.0.5
+ micromark-core-commonmark: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-events-to-acorn: 1.2.3
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ unist-util-position-from-estree: 1.1.2
+ uvu: 0.5.6
+ vfile-message: 3.1.4
+ dev: false
+
+ /micromark-extension-mdxjs@1.0.1:
+ resolution: {integrity: sha512-7YA7hF6i5eKOfFUzZ+0z6avRG52GpWR8DL+kN47y3f2KhxbBZMhmxe7auOeaTBrW2DenbbZTf1ea9tA2hDpC2Q==}
+ dependencies:
+ acorn: 8.11.3
+ acorn-jsx: 5.3.2(acorn@8.11.3)
+ micromark-extension-mdx-expression: 1.0.8
+ micromark-extension-mdx-jsx: 1.0.5
+ micromark-extension-mdx-md: 1.0.1
+ micromark-extension-mdxjs-esm: 1.0.5
+ micromark-util-combine-extensions: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-factory-destination@1.1.0:
+ resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-factory-destination@2.0.0:
+ resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
+ dependencies:
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-label@1.1.0:
+ resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-factory-label@2.0.0:
+ resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-mdx-expression@1.0.9:
+ resolution: {integrity: sha512-jGIWzSmNfdnkJq05c7b0+Wv0Kfz3NJ3N4cBjnbO4zjXIlxJr+f8lk+5ZmwFvqdAbUy2q6B5rCY//g0QAAaXDWA==}
+ dependencies:
+ '@types/estree': 1.0.5
+ micromark-util-character: 1.2.0
+ micromark-util-events-to-acorn: 1.2.3
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ unist-util-position-from-estree: 1.1.2
+ uvu: 0.5.6
+ vfile-message: 3.1.4
+ dev: false
+
+ /micromark-factory-space@1.1.0:
+ resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-factory-space@2.0.0:
+ resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
+ dependencies:
+ micromark-util-character: 2.0.1
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-title@1.1.0:
+ resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==}
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-factory-title@2.0.0:
+ resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-whitespace@1.1.0:
+ resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==}
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-factory-whitespace@2.0.0:
+ resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-character@1.2.0:
+ resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==}
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-util-character@2.0.1:
+ resolution: {integrity: sha512-3wgnrmEAJ4T+mGXAUfMvMAbxU9RDG43XmGce4j6CwPtVxB3vfwXSZ6KhFwDzZ3mZHhmPimMAXg71veiBGzeAZw==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-chunked@1.1.0:
+ resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==}
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ dev: false
+
+ /micromark-util-chunked@2.0.0:
+ resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-classify-character@1.1.0:
+ resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-util-classify-character@2.0.0:
+ resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
+ dependencies:
+ micromark-util-character: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-combine-extensions@1.1.0:
+ resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==}
+ dependencies:
+ micromark-util-chunked: 1.1.0
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-util-combine-extensions@2.0.0:
+ resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
+ dependencies:
+ micromark-util-chunked: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-decode-numeric-character-reference@1.1.0:
+ resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==}
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ dev: false
+
+ /micromark-util-decode-numeric-character-reference@2.0.1:
+ resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-decode-string@1.1.0:
+ resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ micromark-util-character: 1.2.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-symbol: 1.1.0
+ dev: false
+
+ /micromark-util-decode-string@2.0.0:
+ resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ micromark-util-character: 2.0.1
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-encode@1.1.0:
+ resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==}
+ dev: false
+
+ /micromark-util-encode@2.0.0:
+ resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
+ dev: false
+
+ /micromark-util-events-to-acorn@1.2.3:
+ resolution: {integrity: sha512-ij4X7Wuc4fED6UoLWkmo0xJQhsktfNh1J0m8g4PbIMPlx+ek/4YdW5mvbye8z/aZvAPUoxgXHrwVlXAPKMRp1w==}
+ dependencies:
+ '@types/acorn': 4.0.6
+ '@types/estree': 1.0.5
+ '@types/unist': 2.0.10
+ estree-util-visit: 1.2.1
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ vfile-message: 3.1.4
+ dev: false
+
+ /micromark-util-html-tag-name@1.2.0:
+ resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==}
+ dev: false
+
+ /micromark-util-html-tag-name@2.0.0:
+ resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
+ dev: false
+
+ /micromark-util-normalize-identifier@1.1.0:
+ resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==}
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ dev: false
+
+ /micromark-util-normalize-identifier@2.0.0:
+ resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-resolve-all@1.1.0:
+ resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==}
+ dependencies:
+ micromark-util-types: 1.1.0
+ dev: false
+
+ /micromark-util-resolve-all@2.0.0:
+ resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
+ dependencies:
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-sanitize-uri@1.2.0:
+ resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==}
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-encode: 1.1.0
+ micromark-util-symbol: 1.1.0
+ dev: false
+
+ /micromark-util-sanitize-uri@2.0.0:
+ resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
+ dependencies:
+ micromark-util-character: 2.0.1
+ micromark-util-encode: 2.0.0
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-subtokenize@1.1.0:
+ resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==}
+ dependencies:
+ micromark-util-chunked: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ dev: false
+
+ /micromark-util-subtokenize@2.0.0:
+ resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-symbol@1.1.0:
+ resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==}
+ dev: false
+
+ /micromark-util-symbol@2.0.0:
+ resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
+ dev: false
+
+ /micromark-util-types@1.1.0:
+ resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==}
+ dev: false
+
+ /micromark-util-types@2.0.0:
+ resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
+ dev: false
+
+ /micromark@3.2.0:
+ resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==}
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.3.4
+ decode-named-character-reference: 1.0.2
+ micromark-core-commonmark: 1.1.0
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-chunked: 1.1.0
+ micromark-util-combine-extensions: 1.1.0
+ micromark-util-decode-numeric-character-reference: 1.1.0
+ micromark-util-encode: 1.1.0
+ micromark-util-normalize-identifier: 1.1.0
+ micromark-util-resolve-all: 1.1.0
+ micromark-util-sanitize-uri: 1.2.0
+ micromark-util-subtokenize: 1.1.0
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+ uvu: 0.5.6
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /micromark@4.0.0:
+ resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.3.4
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.0
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.0.1
+ micromark-util-chunked: 2.0.0
+ micromark-util-combine-extensions: 2.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ 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
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /micromatch@4.0.5:
+ resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
+ engines: {node: '>=8.6'}
+ dependencies:
+ braces: 3.0.2
+ picomatch: 2.3.1
+ dev: true
+
+ /minimatch@9.0.3:
+ resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dependencies:
+ brace-expansion: 2.0.1
+ dev: true
+
+ /minipass@7.0.4:
+ resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dev: true
+
+ /mj-context-menu@0.6.1:
+ resolution: {integrity: sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==}
+ dev: false
+
+ /mri@1.2.0:
+ resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /ms@2.1.2:
+ resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
+ dev: false
+
+ /mz@2.7.0:
+ resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
+ dependencies:
+ any-promise: 1.3.0
+ object-assign: 4.1.1
+ thenify-all: 1.6.0
+ dev: true
+
+ /nanoid@3.3.7:
+ resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ /next-themes@0.2.1(next@14.0.4)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==}
+ peerDependencies:
+ next: '*'
+ react: '*'
+ react-dom: '*'
+ dependencies:
+ next: 14.0.4(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ dev: false
+
+ /next@14.0.4(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-qbwypnM7327SadwFtxXnQdGiKpkuhaRLE2uq62/nRul9cj9KhQ5LhHmlziTNqUidZotw/Q1I9OjirBROdUJNgA==}
+ engines: {node: '>=18.17.0'}
+ hasBin: true
+ 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
+ dependencies:
+ '@next/env': 14.0.4
+ '@swc/helpers': 0.5.2
+ busboy: 1.6.0
+ caniuse-lite: 1.0.30001576
+ graceful-fs: 4.2.11
+ postcss: 8.4.31
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ styled-jsx: 5.1.1(react@18.2.0)
+ watchpack: 2.4.0
+ optionalDependencies:
+ '@next/swc-darwin-arm64': 14.0.4
+ '@next/swc-darwin-x64': 14.0.4
+ '@next/swc-linux-arm64-gnu': 14.0.4
+ '@next/swc-linux-arm64-musl': 14.0.4
+ '@next/swc-linux-x64-gnu': 14.0.4
+ '@next/swc-linux-x64-musl': 14.0.4
+ '@next/swc-win32-arm64-msvc': 14.0.4
+ '@next/swc-win32-ia32-msvc': 14.0.4
+ '@next/swc-win32-x64-msvc': 14.0.4
+ transitivePeerDependencies:
+ - '@babel/core'
+ - babel-plugin-macros
+ dev: false
+
+ /nextra-theme-docs@3.0.0-alpha.10(next@14.0.4)(nextra@3.0.0-alpha.10)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-1qOZGgrJUa2qS9opbSeBSQaiSMImxX3Sw1BeSceLlxB1mgiCbfeRD7CyZ7haa5A6rozklLsp3q4qtJydwzJB7Q==}
+ peerDependencies:
+ next: '>=13'
+ nextra: 3.0.0-alpha.10
+ react: '>=16.13.1'
+ react-dom: '>=16.13.1'
+ dependencies:
+ '@headlessui/react': 1.7.17(react-dom@18.2.0)(react@18.2.0)
+ '@popperjs/core': 2.11.8
+ clsx: 2.1.0
+ escape-string-regexp: 5.0.0
+ flexsearch: 0.7.41
+ focus-visible: 5.2.0
+ intersection-observer: 0.12.2
+ next: 14.0.4(react-dom@18.2.0)(react@18.2.0)
+ next-themes: 0.2.1(next@14.0.4)(react-dom@18.2.0)(react@18.2.0)
+ nextra: 3.0.0-alpha.10(next@14.0.4)(react-dom@18.2.0)(react@18.2.0)
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ scroll-into-view-if-needed: 3.1.0
+ zod: 3.22.4
+ dev: false
+
+ /nextra@3.0.0-alpha.10(next@14.0.4)(react-dom@18.2.0)(react@18.2.0):
+ resolution: {integrity: sha512-UikEZpT73QyG8POilTZOYAUxLwzBD+PyiQTPoTVFdSA1dpJSVzTdXd6GvHuQf1twWCgfcXumJbu/yGskjgmXNQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ next: '>=13'
+ react: '>=16.13.1'
+ react-dom: '>=16.13.1'
+ dependencies:
+ '@headlessui/react': 1.7.17(react-dom@18.2.0)(react@18.2.0)
+ '@mdx-js/mdx': 2.3.0
+ '@mdx-js/react': 2.3.0(react@18.2.0)
+ '@napi-rs/simple-git': 0.1.9
+ '@theguild/remark-mermaid': 0.0.5(react@18.2.0)
+ '@theguild/remark-npm2yarn': 0.3.0
+ better-react-mathjax: 2.0.3(react@18.2.0)
+ clsx: 2.1.0
+ estree-util-to-js: 2.0.0
+ estree-util-value-to-estree: 3.0.1
+ github-slugger: 2.0.0
+ graceful-fs: 4.2.11
+ gray-matter: 4.0.3
+ hast-util-to-estree: 3.1.0
+ katex: 0.16.9
+ next: 14.0.4(react-dom@18.2.0)(react@18.2.0)
+ p-limit: 4.0.0
+ react: 18.2.0
+ react-dom: 18.2.0(react@18.2.0)
+ rehype-katex: 7.0.0
+ rehype-pretty-code: 0.10.1(shikiji@0.6.10)
+ rehype-raw: 7.0.0
+ remark-frontmatter: 4.0.1
+ remark-gfm: 3.0.1
+ remark-math: 6.0.0
+ remark-reading-time: 2.0.1
+ shiki: /shikiji@0.6.10
+ slash: 5.1.0
+ title: 3.5.3
+ unist-util-remove: 4.0.0
+ unist-util-visit: 5.0.0
+ yaml: 2.3.4
+ zod: 3.22.4
+ zod-validation-error: 1.5.0(zod@3.22.4)
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /node-releases@2.0.14:
+ resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
+ dev: true
+
+ /non-layered-tidy-tree-layout@2.0.2:
+ resolution: {integrity: sha512-gkXMxRzUH+PB0ax9dUN0yYF0S25BqeAYqhgMaLUFmpXLEk7Fcu8f4emJuOAY0V8kjDICxROIKsTAKsV/v355xw==}
+ dev: false
+
+ /normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /normalize-range@0.1.2:
+ resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /npm-run-path@2.0.2:
+ resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==}
+ engines: {node: '>=4'}
+ dependencies:
+ path-key: 2.0.1
+ dev: false
+
+ /npm-to-yarn@2.1.0:
+ resolution: {integrity: sha512-2C1IgJLdJngq1bSER7K7CGFszRr9s2rijEwvENPEgI0eK9xlD3tNwDc0UJnRj7FIT2aydWm72jB88uVswAhXHA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
+ /object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /object-hash@3.0.0:
+ resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /p-finally@1.0.0:
+ resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ yocto-queue: 1.0.0
+ dev: false
+
+ /parse-entities@4.0.1:
+ resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==}
+ dependencies:
+ '@types/unist': 2.0.10
+ character-entities: 2.0.2
+ character-entities-legacy: 3.0.0
+ character-reference-invalid: 2.0.1
+ decode-named-character-reference: 1.0.2
+ is-alphanumerical: 2.0.1
+ is-decimal: 2.0.1
+ is-hexadecimal: 2.0.1
+ dev: false
+
+ /parse-numeric-range@1.3.0:
+ resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==}
+ dev: false
+
+ /parse5@7.1.2:
+ resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
+ dependencies:
+ entities: 4.5.0
+ dev: false
+
+ /path-key@2.0.1:
+ resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==}
+ engines: {node: '>=4'}
+ dev: false
+
+ /path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+ dev: true
+
+ /path-scurry@1.10.1:
+ resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ dependencies:
+ lru-cache: 10.1.0
+ minipass: 7.0.4
+ dev: true
+
+ /periscopic@3.1.0:
+ resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==}
+ dependencies:
+ '@types/estree': 1.0.5
+ estree-walker: 3.0.3
+ is-reference: 3.0.2
+ dev: false
+
+ /picocolors@1.0.0:
+ resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
+
+ /picomatch@2.3.1:
+ resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
+ engines: {node: '>=8.6'}
+ dev: true
+
+ /pify@2.3.0:
+ resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
+ engines: {node: '>=0.10.0'}
+ dev: true
+
+ /pirates@4.0.6:
+ resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
+ engines: {node: '>= 6'}
+ dev: true
+
+ /postcss-import@15.1.0(postcss@8.4.33):
+ resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ postcss: ^8.0.0
+ dependencies:
+ postcss: 8.4.33
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.8
+ dev: true
+
+ /postcss-js@4.0.1(postcss@8.4.33):
+ resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
+ engines: {node: ^12 || ^14 || >= 16}
+ peerDependencies:
+ postcss: ^8.4.21
+ dependencies:
+ camelcase-css: 2.0.1
+ postcss: 8.4.33
+ dev: true
+
+ /postcss-load-config@4.0.2(postcss@8.4.33):
+ resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
+ engines: {node: '>= 14'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+ dependencies:
+ lilconfig: 3.0.0
+ postcss: 8.4.33
+ yaml: 2.3.4
+ dev: true
+
+ /postcss-nested@6.0.1(postcss@8.4.33):
+ resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.2.14
+ dependencies:
+ postcss: 8.4.33
+ postcss-selector-parser: 6.0.15
+ dev: true
+
+ /postcss-selector-parser@6.0.15:
+ resolution: {integrity: sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==}
+ engines: {node: '>=4'}
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+ dev: true
+
+ /postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+ dev: true
+
+ /postcss@8.4.31:
+ resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: 3.3.7
+ picocolors: 1.0.0
+ source-map-js: 1.0.2
+ dev: false
+
+ /postcss@8.4.33:
+ resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==}
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: 3.3.7
+ picocolors: 1.0.0
+ source-map-js: 1.0.2
+ dev: true
+
+ /property-information@6.4.0:
+ resolution: {integrity: sha512-9t5qARVofg2xQqKtytzt+lZ4d1Qvj8t5B8fEwXK6qOfgRLgH/b13QlgEyDh033NOS31nXeFbYv7CLUDG1CeifQ==}
+ dev: false
+
+ /pseudomap@1.0.2:
+ resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==}
+ dev: false
+
+ /queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ dev: true
+
+ /react-dom@18.2.0(react@18.2.0):
+ resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
+ peerDependencies:
+ react: ^18.2.0
+ dependencies:
+ loose-envify: 1.4.0
+ react: 18.2.0
+ scheduler: 0.23.0
+ dev: false
+
+ /react@18.2.0:
+ resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ loose-envify: 1.4.0
+ dev: false
+
+ /read-cache@1.0.0:
+ resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
+ dependencies:
+ pify: 2.3.0
+ dev: true
+
+ /readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+ dependencies:
+ picomatch: 2.3.1
+ dev: true
+
+ /reading-time@1.5.0:
+ resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==}
+ dev: false
+
+ /rehype-katex@7.0.0:
+ resolution: {integrity: sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==}
+ dependencies:
+ '@types/hast': 3.0.3
+ '@types/katex': 0.16.7
+ hast-util-from-html-isomorphic: 2.0.0
+ hast-util-to-text: 4.0.0
+ katex: 0.16.9
+ unist-util-visit-parents: 6.0.1
+ vfile: 6.0.1
+ dev: false
+
+ /rehype-pretty-code@0.10.1(shikiji@0.6.10):
+ resolution: {integrity: sha512-WHjRvGlqPXG8BVRB9mK0255WvIOnzvHivAWhFkA2OG+NTkQWtTbCULZMokOHLf3Yy8q8I8/F8QNjDSQBhjMK5w==}
+ engines: {node: '>=16'}
+ peerDependencies:
+ shiki: 0.x
+ dependencies:
+ '@types/hast': 2.3.9
+ hash-obj: 4.0.0
+ parse-numeric-range: 1.3.0
+ shiki: /shikiji@0.6.10
+ dev: false
+
+ /rehype-raw@7.0.0:
+ resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==}
+ dependencies:
+ '@types/hast': 3.0.3
+ hast-util-raw: 9.0.1
+ vfile: 6.0.1
+ dev: false
+
+ /remark-frontmatter@4.0.1:
+ resolution: {integrity: sha512-38fJrB0KnmD3E33a5jZC/5+gGAC2WKNiPw1/fdXJvijBlhA7RCsvJklrYJakS0HedninvaCYW8lQGf9C918GfA==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-frontmatter: 1.0.1
+ micromark-extension-frontmatter: 1.1.1
+ unified: 10.1.2
+ dev: false
+
+ /remark-gfm@3.0.1:
+ resolution: {integrity: sha512-lEFDoi2PICJyNrACFOfDD3JlLkuSbOa5Wd8EPt06HUdptv8Gn0bxYTdbU/XXQ3swAPkEaGxxPN9cbnMHvVu1Ig==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-gfm: 2.0.2
+ micromark-extension-gfm: 2.0.3
+ unified: 10.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-math@6.0.0:
+ resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==}
+ dependencies:
+ '@types/mdast': 4.0.3
+ mdast-util-math: 3.0.0
+ micromark-extension-math: 3.0.0
+ unified: 11.0.4
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-mdx@2.3.0:
+ resolution: {integrity: sha512-g53hMkpM0I98MU266IzDFMrTD980gNF3BJnkyFcmN+dD873mQeD5rdMO3Y2X+x8umQfbSE0PcoEDl7ledSA+2g==}
+ dependencies:
+ mdast-util-mdx: 2.0.1
+ micromark-extension-mdxjs: 1.0.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-parse@10.0.2:
+ resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==}
+ dependencies:
+ '@types/mdast': 3.0.15
+ mdast-util-from-markdown: 1.3.1
+ unified: 10.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-reading-time@2.0.1:
+ resolution: {integrity: sha512-fy4BKy9SRhtYbEHvp6AItbRTnrhiDGbqLQTSYVbQPGuRCncU1ubSsh9p/W5QZSxtYcUXv8KGL0xBgPLyNJA1xw==}
+ dependencies:
+ estree-util-is-identifier-name: 2.1.0
+ estree-util-value-to-estree: 1.3.0
+ reading-time: 1.5.0
+ unist-util-visit: 3.1.0
+ dev: false
+
+ /remark-rehype@10.1.0:
+ resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==}
+ dependencies:
+ '@types/hast': 2.3.9
+ '@types/mdast': 3.0.15
+ mdast-util-to-hast: 12.3.0
+ unified: 10.1.2
+ dev: false
+
+ /resolve@1.22.8:
+ resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
+ hasBin: true
+ dependencies:
+ is-core-module: 2.13.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+ dev: true
+
+ /reusify@1.0.4:
+ resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+ dev: true
+
+ /robust-predicates@3.0.2:
+ resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
+ dev: false
+
+ /run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+ dependencies:
+ queue-microtask: 1.2.3
+ dev: true
+
+ /rw@1.3.3:
+ resolution: {integrity: sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==}
+ dev: false
+
+ /sade@1.8.1:
+ resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
+ engines: {node: '>=6'}
+ dependencies:
+ mri: 1.2.0
+ dev: false
+
+ /safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+ dev: false
+
+ /scheduler@0.23.0:
+ resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
+ dependencies:
+ loose-envify: 1.4.0
+ dev: false
+
+ /scroll-into-view-if-needed@3.1.0:
+ resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==}
+ dependencies:
+ compute-scroll-into-view: 3.1.0
+ dev: false
+
+ /section-matter@1.0.0:
+ resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
+ engines: {node: '>=4'}
+ dependencies:
+ extend-shallow: 2.0.1
+ kind-of: 6.0.3
+ dev: false
+
+ /shebang-command@1.2.0:
+ resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ shebang-regex: 1.0.0
+ dev: false
+
+ /shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+ dependencies:
+ shebang-regex: 3.0.0
+ dev: true
+
+ /shebang-regex@1.0.0:
+ resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+ dev: true
+
+ /shikiji@0.6.10:
+ resolution: {integrity: sha512-WE+A5Y2ntM5hL3iJQujk97qr5Uj7PSIRXpQfrZ6h+JWPXZ8KBEDhFXc4lqNriaRq1WGOVPUT83XMOzmHiH3W8A==}
+ dependencies:
+ hast-util-to-html: 9.0.0
+ dev: false
+
+ /signal-exit@3.0.7:
+ resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+ dev: false
+
+ /signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+ dev: true
+
+ /slash@5.1.0:
+ resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==}
+ engines: {node: '>=14.16'}
+ dev: false
+
+ /sort-keys@5.0.0:
+ resolution: {integrity: sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==}
+ engines: {node: '>=12'}
+ dependencies:
+ is-plain-obj: 4.1.0
+ dev: false
+
+ /source-map-js@1.0.2:
+ resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
+ engines: {node: '>=0.10.0'}
+
+ /source-map@0.7.4:
+ resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
+ engines: {node: '>= 8'}
+ dev: false
+
+ /space-separated-tokens@2.0.2:
+ resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
+ dev: false
+
+ /speech-rule-engine@4.0.7:
+ resolution: {integrity: sha512-sJrL3/wHzNwJRLBdf6CjJWIlxC04iYKkyXvYSVsWVOiC2DSkHmxsqOhEeMsBA9XK+CHuNcsdkbFDnoUfAsmp9g==}
+ hasBin: true
+ dependencies:
+ commander: 9.2.0
+ wicked-good-xpath: 1.3.0
+ xmldom-sre: 0.1.31
+ dev: false
+
+ /sprintf-js@1.0.3:
+ resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
+ dev: false
+
+ /streamsearch@1.1.0:
+ resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
+ engines: {node: '>=10.0.0'}
+ dev: false
+
+ /string-width@4.2.3:
+ resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+ engines: {node: '>=8'}
+ dependencies:
+ emoji-regex: 8.0.0
+ is-fullwidth-code-point: 3.0.0
+ strip-ansi: 6.0.1
+ dev: true
+
+ /string-width@5.1.2:
+ resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+ engines: {node: '>=12'}
+ dependencies:
+ eastasianwidth: 0.2.0
+ emoji-regex: 9.2.2
+ strip-ansi: 7.1.0
+ dev: true
+
+ /stringify-entities@4.0.3:
+ resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==}
+ dependencies:
+ character-entities-html4: 2.1.0
+ character-entities-legacy: 3.0.0
+ dev: false
+
+ /strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+ dependencies:
+ ansi-regex: 5.0.1
+ dev: true
+
+ /strip-ansi@7.1.0:
+ resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ ansi-regex: 6.0.1
+ dev: true
+
+ /strip-bom-string@1.0.0:
+ resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /strip-eof@1.0.0:
+ resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /style-to-object@0.4.4:
+ resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==}
+ dependencies:
+ inline-style-parser: 0.1.1
+ dev: false
+
+ /styled-jsx@5.1.1(react@18.2.0):
+ resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==}
+ engines: {node: '>= 12.0.0'}
+ peerDependencies:
+ '@babel/core': '*'
+ babel-plugin-macros: '*'
+ react: '>= 16.8.0 || 17.x.x || ^18.0.0-0'
+ peerDependenciesMeta:
+ '@babel/core':
+ optional: true
+ babel-plugin-macros:
+ optional: true
+ dependencies:
+ client-only: 0.0.1
+ react: 18.2.0
+ dev: false
+
+ /stylis@4.3.1:
+ resolution: {integrity: sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==}
+ dev: false
+
+ /sucrase@3.35.0:
+ resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
+ engines: {node: '>=16 || 14 >=14.17'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.3
+ commander: 4.1.1
+ glob: 10.3.10
+ lines-and-columns: 1.2.4
+ mz: 2.7.0
+ pirates: 4.0.6
+ ts-interface-checker: 0.1.13
+ dev: true
+
+ /supports-color@4.5.0:
+ resolution: {integrity: sha512-ycQR/UbvI9xIlEdQT1TQqwoXtEldExbCEAJgRo5YXlmSKjv6ThHnP9/vwGa1gr19Gfw+LkFd7KqYMhzrRC5JYw==}
+ engines: {node: '>=4'}
+ dependencies:
+ has-flag: 2.0.0
+ dev: false
+
+ /supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+ dev: true
+
+ /tailwindcss@3.4.1:
+ resolution: {integrity: sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==}
+ engines: {node: '>=14.0.0'}
+ hasBin: 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.2
+ glob-parent: 6.0.2
+ is-glob: 4.0.3
+ jiti: 1.21.0
+ 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.33
+ postcss-import: 15.1.0(postcss@8.4.33)
+ postcss-js: 4.0.1(postcss@8.4.33)
+ postcss-load-config: 4.0.2(postcss@8.4.33)
+ postcss-nested: 6.0.1(postcss@8.4.33)
+ postcss-selector-parser: 6.0.15
+ resolve: 1.22.8
+ sucrase: 3.35.0
+ transitivePeerDependencies:
+ - ts-node
+ dev: true
+
+ /thenify-all@1.6.0:
+ resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
+ engines: {node: '>=0.8'}
+ dependencies:
+ thenify: 3.3.1
+ dev: true
+
+ /thenify@3.3.1:
+ resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
+ dependencies:
+ any-promise: 1.3.0
+ dev: true
+
+ /title@3.5.3:
+ resolution: {integrity: sha512-20JyowYglSEeCvZv3EZ0nZ046vLarO37prvV0mbtQV7C8DJPGgN967r8SJkqd3XK3K3lD3/Iyfp3avjfil8Q2Q==}
+ hasBin: true
+ dependencies:
+ arg: 1.0.0
+ chalk: 2.3.0
+ clipboardy: 1.2.2
+ titleize: 1.0.0
+ dev: false
+
+ /titleize@1.0.0:
+ resolution: {integrity: sha512-TARUb7z1pGvlLxgPk++7wJ6aycXF3GJ0sNSBTAsTuJrQG5QuZlkUQP+zl+nbjAh4gMX9yDw9ZYklMd7vAfJKEw==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
+ /to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+ dependencies:
+ is-number: 7.0.0
+ dev: true
+
+ /trim-lines@3.0.1:
+ resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
+ dev: false
+
+ /trough@2.1.0:
+ resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==}
+ dev: false
+
+ /ts-dedent@2.2.0:
+ resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==}
+ engines: {node: '>=6.10'}
+ dev: false
+
+ /ts-interface-checker@0.1.13:
+ resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
+ dev: true
+
+ /tslib@2.6.2:
+ resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
+ dev: false
+
+ /type-fest@1.4.0:
+ resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
+ engines: {node: '>=10'}
+ dev: false
+
+ /typescript@5.3.3:
+ resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+ dev: true
+
+ /undici-types@5.26.5:
+ resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
+ dev: true
+
+ /unified@10.1.2:
+ resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==}
+ dependencies:
+ '@types/unist': 2.0.10
+ bail: 2.0.2
+ extend: 3.0.2
+ is-buffer: 2.0.5
+ is-plain-obj: 4.1.0
+ trough: 2.1.0
+ vfile: 5.3.7
+ dev: false
+
+ /unified@11.0.4:
+ resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ bail: 2.0.2
+ devlop: 1.1.0
+ extend: 3.0.2
+ is-plain-obj: 4.1.0
+ trough: 2.1.0
+ vfile: 6.0.1
+ dev: false
+
+ /unist-util-find-after@5.0.0:
+ resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ dev: false
+
+ /unist-util-generated@2.0.1:
+ resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==}
+ dev: false
+
+ /unist-util-is@5.2.1:
+ resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /unist-util-is@6.0.0:
+ resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-position-from-estree@1.1.2:
+ resolution: {integrity: sha512-poZa0eXpS+/XpoQwGwl79UUdea4ol2ZuCYguVaJS4qzIOMDzbqz8a3erUCOmubSZkaOuGamb3tX790iwOIROww==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /unist-util-position@4.0.4:
+ resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /unist-util-position@5.0.0:
+ resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-remove-position@4.0.2:
+ resolution: {integrity: sha512-TkBb0HABNmxzAcfLf4qsIbFbaPDvMO6wa3b3j4VcEzFVaw1LBKwnW4/sRJ/atSLSzoIg41JWEdnE7N6DIhGDGQ==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-visit: 4.1.2
+ dev: false
+
+ /unist-util-remove-position@5.0.0:
+ resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /unist-util-remove@4.0.0:
+ resolution: {integrity: sha512-b4gokeGId57UVRX/eVKej5gXqGlc9+trkORhFJpu9raqZkZhU0zm8Doi05+HaiBsMEIJowL+2WtQ5ItjsngPXg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: false
+
+ /unist-util-stringify-position@3.0.3:
+ resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==}
+ dependencies:
+ '@types/unist': 2.0.10
+ dev: false
+
+ /unist-util-stringify-position@4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-visit-parents@4.1.1:
+ resolution: {integrity: sha512-1xAFJXAKpnnJl8G7K5KgU7FY55y3GcLIXqkzUj5QF/QVP7biUm0K0O2oqVkYsdjzJKifYeWn9+o6piAK2hGSHw==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-is: 5.2.1
+ dev: false
+
+ /unist-util-visit-parents@5.1.3:
+ resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-is: 5.2.1
+ dev: false
+
+ /unist-util-visit-parents@6.0.1:
+ resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ dev: false
+
+ /unist-util-visit@3.1.0:
+ resolution: {integrity: sha512-Szoh+R/Ll68QWAyQyZZpQzZQm2UPbxibDvaY8Xc9SUtYgPsDzx5AWSk++UUt2hJuow8mvwR+rG+LQLw+KsuAKA==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-is: 5.2.1
+ unist-util-visit-parents: 4.1.1
+ dev: false
+
+ /unist-util-visit@4.1.2:
+ resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-is: 5.2.1
+ unist-util-visit-parents: 5.1.3
+ dev: false
+
+ /unist-util-visit@5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: false
+
+ /update-browserslist-db@1.0.13(browserslist@4.22.2):
+ resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+ dependencies:
+ browserslist: 4.22.2
+ escalade: 3.1.1
+ picocolors: 1.0.0
+ dev: true
+
+ /util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ dev: true
+
+ /uuid@9.0.1:
+ resolution: {integrity: sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==}
+ hasBin: true
+ dev: false
+
+ /uvu@0.5.6:
+ resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dependencies:
+ dequal: 2.0.3
+ diff: 5.1.0
+ kleur: 4.1.5
+ sade: 1.8.1
+ dev: false
+
+ /vfile-location@5.0.2:
+ resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ vfile: 6.0.1
+ dev: false
+
+ /vfile-message@3.1.4:
+ resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==}
+ dependencies:
+ '@types/unist': 2.0.10
+ unist-util-stringify-position: 3.0.3
+ dev: false
+
+ /vfile-message@4.0.2:
+ resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ dev: false
+
+ /vfile@5.3.7:
+ resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==}
+ dependencies:
+ '@types/unist': 2.0.10
+ is-buffer: 2.0.5
+ unist-util-stringify-position: 3.0.3
+ vfile-message: 3.1.4
+ dev: false
+
+ /vfile@6.0.1:
+ resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ dev: false
+
+ /watchpack@2.4.0:
+ resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==}
+ engines: {node: '>=10.13.0'}
+ dependencies:
+ glob-to-regexp: 0.4.1
+ graceful-fs: 4.2.11
+ dev: false
+
+ /web-namespaces@2.0.1:
+ resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
+ dev: false
+
+ /web-worker@1.3.0:
+ resolution: {integrity: sha512-BSR9wyRsy/KOValMgd5kMyr3JzpdeoR9KVId8u5GVlTTAtNChlsE4yTxeY7zMdNSyOmoKBv8NH2qeRY9Tg+IaA==}
+ dev: false
+
+ /which@1.3.1:
+ resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: false
+
+ /which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+ dependencies:
+ isexe: 2.0.0
+ dev: true
+
+ /wicked-good-xpath@1.3.0:
+ resolution: {integrity: sha512-Gd9+TUn5nXdwj/hFsPVx5cuHHiF5Bwuc30jZ4+ronF1qHK5O7HD0sgmXWSEgwKquT3ClLoKPVbO6qGwVwLzvAw==}
+ dev: false
+
+ /wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
+ dependencies:
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ dev: true
+
+ /wrap-ansi@8.1.0:
+ resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ ansi-styles: 6.2.1
+ string-width: 5.1.2
+ strip-ansi: 7.1.0
+ dev: true
+
+ /xmldom-sre@0.1.31:
+ resolution: {integrity: sha512-f9s+fUkX04BxQf+7mMWAp5zk61pciie+fFLC9hX9UVvCeJQfNHRHXpeo5MPcR0EUf57PYLdt+ZO4f3Ipk2oZUw==}
+ engines: {node: '>=0.1'}
+ dev: false
+
+ /yallist@2.1.2:
+ resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==}
+ dev: false
+
+ /yaml@2.3.4:
+ resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==}
+ engines: {node: '>= 14'}
+
+ /yocto-queue@1.0.0:
+ resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
+ engines: {node: '>=12.20'}
+ dev: false
+
+ /zod-validation-error@1.5.0(zod@3.22.4):
+ resolution: {integrity: sha512-/7eFkAI4qV0tcxMBB/3+d2c1P6jzzZYdYSlBuAklzMuCrJu5bzJfHS0yVAS87dRHVlhftd6RFJDIvv03JgkSbw==}
+ engines: {node: '>=16.0.0'}
+ peerDependencies:
+ zod: ^3.18.0
+ dependencies:
+ zod: 3.22.4
+ dev: false
+
+ /zod@3.22.4:
+ resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==}
+ dev: false
+
+ /zwitch@2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
+ dev: false
From 9228e5090e802cf1a96780bdaecff7ed87a1cff4 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:24:34 +0100
Subject: [PATCH 03/41] more work
---
website/package.json | 5 +++++
website/pnpm-lock.yaml | 9 ++++++---
website/src/pages/_meta.ts | 16 ++++++++++++++++
website/src/pages/index.mdx | 1 +
website/src/pages/{index.tsx => index.tsx.bak} | 0
.../src/pages/learn/index.mdx | 6 +++---
website/src/styles/globals.css | 18 +++++++++---------
website/theme.config.tsx | 5 +++++
8 files changed, 45 insertions(+), 15 deletions(-)
create mode 100644 website/src/pages/_meta.ts
create mode 100644 website/src/pages/index.mdx
rename website/src/pages/{index.tsx => index.tsx.bak} (100%)
rename src/content/learn/Introduction.md => website/src/pages/learn/index.mdx (85%)
create mode 100644 website/theme.config.tsx
diff --git a/website/package.json b/website/package.json
index 51020165f5..0ca46b73d3 100644
--- a/website/package.json
+++ b/website/package.json
@@ -23,5 +23,10 @@
"autoprefixer": "^10.0.1",
"postcss": "^8",
"tailwindcss": "^3.3.0"
+ },
+ "pnpm": {
+ "overrides": {
+ "flexsearch": "0.7.31"
+ }
}
}
diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml
index ef42163af8..c54723b203 100644
--- a/website/pnpm-lock.yaml
+++ b/website/pnpm-lock.yaml
@@ -4,6 +4,9 @@ settings:
autoInstallPeers: true
excludeLinksFromLockfile: false
+overrides:
+ flexsearch: 0.7.31
+
dependencies:
next:
specifier: ^14.0.4
@@ -1350,8 +1353,8 @@ packages:
to-regex-range: 5.0.1
dev: true
- /flexsearch@0.7.41:
- resolution: {integrity: sha512-nlSsN+cLeoOMEPivjjMuYdMN7WdCKaogCirVZNxQ8a34reoKZvxDxbAtIoAK1ewmkXd5dz8Pb2kwwYJ6b/07PQ==}
+ /flexsearch@0.7.31:
+ resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==}
dev: false
/focus-visible@5.2.0:
@@ -2866,7 +2869,7 @@ packages:
'@popperjs/core': 2.11.8
clsx: 2.1.0
escape-string-regexp: 5.0.0
- flexsearch: 0.7.41
+ flexsearch: 0.7.31
focus-visible: 5.2.0
intersection-observer: 0.12.2
next: 14.0.4(react-dom@18.2.0)(react@18.2.0)
diff --git a/website/src/pages/_meta.ts b/website/src/pages/_meta.ts
new file mode 100644
index 0000000000..2617faa955
--- /dev/null
+++ b/website/src/pages/_meta.ts
@@ -0,0 +1,16 @@
+export default {
+ index: {
+ type: 'page',
+ display: 'hidden',
+ },
+ learn: {
+ type: 'page',
+ title: 'Learn'
+ },
+ // code: {}
+ spec: {
+ type: 'page',
+ title: 'Spec ↗',
+ href: 'https://spec.graphql.org'
+ }
+}
diff --git a/website/src/pages/index.mdx b/website/src/pages/index.mdx
new file mode 100644
index 0000000000..ce01362503
--- /dev/null
+++ b/website/src/pages/index.mdx
@@ -0,0 +1 @@
+hello
diff --git a/website/src/pages/index.tsx b/website/src/pages/index.tsx.bak
similarity index 100%
rename from website/src/pages/index.tsx
rename to website/src/pages/index.tsx.bak
diff --git a/src/content/learn/Introduction.md b/website/src/pages/learn/index.mdx
similarity index 85%
rename from src/content/learn/Introduction.md
rename to website/src/pages/learn/index.mdx
index e6057a66b1..4e8256080c 100644
--- a/src/content/learn/Introduction.md
+++ b/website/src/pages/learn/index.mdx
@@ -8,10 +8,10 @@ next: /learn/queries/
---
> Learn about GraphQL, how it works, and how to use it. Looking for documentation on how to build a GraphQL service?
-> There are libraries to help you implement GraphQL in [many different languages](/code/). For an in-depth learning experience
-> with practical tutorials, see [How to GraphQL](https://www.howtographql.com). Check out the
+> There are libraries to help you implement GraphQL in [many different languages](/code). For an in-depth learning experience
+> with practical tutorials, see [How to GraphQL](https://howtographql.com). Check out the
> free online course,
-> [Exploring GraphQL: A Query Language for APIs](https://www.edx.org/course/exploring-graphql-a-query-language-for-apis).
+> [Exploring GraphQL: A Query Language for APIs](https://edx.org/course/exploring-graphql-a-query-language-for-apis).
GraphQL is a query language for your API, and a server-side runtime for executing queries using a type system you define for your
data. GraphQL isn't tied to any specific database or storage engine and is instead backed by your existing code and data.
diff --git a/website/src/styles/globals.css b/website/src/styles/globals.css
index fd81e88583..328f186cc0 100644
--- a/website/src/styles/globals.css
+++ b/website/src/styles/globals.css
@@ -16,12 +16,12 @@
}
}
-body {
- color: rgb(var(--foreground-rgb));
- background: linear-gradient(
- to bottom,
- transparent,
- rgb(var(--background-end-rgb))
- )
- rgb(var(--background-start-rgb));
-}
+/*body {*/
+/* color: rgb(var(--foreground-rgb));*/
+/* background: linear-gradient(*/
+/* to bottom,*/
+/* transparent,*/
+/* rgb(var(--background-end-rgb))*/
+/* )*/
+/* rgb(var(--background-start-rgb));*/
+/*}*/
diff --git a/website/theme.config.tsx b/website/theme.config.tsx
new file mode 100644
index 0000000000..3a22c12ad7
--- /dev/null
+++ b/website/theme.config.tsx
@@ -0,0 +1,5 @@
+import { DocsThemeConfig } from 'nextra-theme-docs'
+
+export default {
+ logo: 'GraphQL'
+} satisfies DocsThemeConfig
From d55b28c0350ff4a66befb392239402d2588821f8 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:31:20 +0100
Subject: [PATCH 04/41] move queries
---
.gitignore | 1 +
website/src/pages/learn/index.mdx | 5 +++--
.../Learn-Queries.md => website/src/pages/learn/queries.mdx | 0
website/theme.config.tsx | 3 ++-
4 files changed, 6 insertions(+), 3 deletions(-)
rename src/content/learn/Learn-Queries.md => website/src/pages/learn/queries.mdx (100%)
diff --git a/.gitignore b/.gitignore
index 4a5c45d536..158c46771b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -81,3 +81,4 @@ src/__generated__/
.idea/
next-env.d.ts
+.next/
diff --git a/website/src/pages/learn/index.mdx b/website/src/pages/learn/index.mdx
index 4e8256080c..22dabff2c2 100644
--- a/website/src/pages/learn/index.mdx
+++ b/website/src/pages/learn/index.mdx
@@ -1,12 +1,13 @@
---
-title: Introduction to GraphQL
-sidebarTitle: Introduction
+sidebar_label: Introduction
layout: docs
category: Learn
permalink: /learn/
next: /learn/queries/
---
+# Introduction to GraphQL
+
> Learn about GraphQL, how it works, and how to use it. Looking for documentation on how to build a GraphQL service?
> There are libraries to help you implement GraphQL in [many different languages](/code). For an in-depth learning experience
> with practical tutorials, see [How to GraphQL](https://howtographql.com). Check out the
diff --git a/src/content/learn/Learn-Queries.md b/website/src/pages/learn/queries.mdx
similarity index 100%
rename from src/content/learn/Learn-Queries.md
rename to website/src/pages/learn/queries.mdx
diff --git a/website/theme.config.tsx b/website/theme.config.tsx
index 3a22c12ad7..a9f6f557db 100644
--- a/website/theme.config.tsx
+++ b/website/theme.config.tsx
@@ -1,5 +1,6 @@
import { DocsThemeConfig } from 'nextra-theme-docs'
export default {
- logo: 'GraphQL'
+ logo: 'GraphQL',
+ docsRepositoryBase: 'https://github.com/graphql/graphql.github.io'
} satisfies DocsThemeConfig
From a4336493c9350a3c8c640eb4d484673ec28fe0b8 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:40:41 +0100
Subject: [PATCH 05/41] move schema and validation
---
website/src/pages/learn/queries.mdx | 4 +++-
.../Learn-Schema.md => website/src/pages/learn/schema.mdx | 4 +++-
.../src/pages/learn/validation.mdx | 3 ++-
3 files changed, 8 insertions(+), 3 deletions(-)
rename src/content/learn/Learn-Schema.md => website/src/pages/learn/schema.mdx (99%)
rename src/content/learn/Learn-Validation.md => website/src/pages/learn/validation.mdx (99%)
diff --git a/website/src/pages/learn/queries.mdx b/website/src/pages/learn/queries.mdx
index ae3f69f546..5a3b7580e0 100644
--- a/website/src/pages/learn/queries.mdx
+++ b/website/src/pages/learn/queries.mdx
@@ -1,5 +1,5 @@
---
-title: Queries and Mutations
+sidebar_label: Queries and Mutations
layout: docs
category: Learn
permalink: /learn/queries/
@@ -7,6 +7,8 @@ next: /learn/schema/
sublinks: Fields,Arguments,Aliases,Fragments,Operation Name,Variables,Directives,Mutations,Inline Fragments
---
+# Queries and Mutations
+
On this page, you'll learn in detail about how to query a GraphQL server.
## Fields
diff --git a/src/content/learn/Learn-Schema.md b/website/src/pages/learn/schema.mdx
similarity index 99%
rename from src/content/learn/Learn-Schema.md
rename to website/src/pages/learn/schema.mdx
index c9b5ce5623..86651e7c0e 100644
--- a/src/content/learn/Learn-Schema.md
+++ b/website/src/pages/learn/schema.mdx
@@ -1,5 +1,5 @@
---
-title: Schemas and Types
+sidebar_label: Schemas and Types
layout: docs
category: Learn
permalink: /learn/schema/
@@ -7,6 +7,8 @@ next: /learn/validation/
sublinks: Type System,Type Language,Object Types and Fields,Arguments,The Query and Mutation Types,Scalar Types,Enumeration Types,Lists and Non-Null,Interfaces,Union Types,Input Types
---
+# Schemas and Types
+
On this page, you'll learn all you need to know about the GraphQL type system and how it describes what data can be queried. Since GraphQL can be used with any backend framework or programming language, we'll stay away from implementation-specific details and talk only about the concepts.
### Type system
diff --git a/src/content/learn/Learn-Validation.md b/website/src/pages/learn/validation.mdx
similarity index 99%
rename from src/content/learn/Learn-Validation.md
rename to website/src/pages/learn/validation.mdx
index 3adc324963..cde8abcb01 100644
--- a/src/content/learn/Learn-Validation.md
+++ b/website/src/pages/learn/validation.mdx
@@ -1,11 +1,12 @@
---
-title: Validation
layout: docs
category: Learn
permalink: /learn/validation/
next: /learn/execution/
---
+# Validation
+
By using the type system, it can be predetermined whether a GraphQL query
is valid or not. This allows servers and clients to effectively inform
developers when an invalid query has been created, without having to rely
From 82dbf4f4f4a3a43e458c5d0a1034ecd45b14e037 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:45:56 +0100
Subject: [PATCH 06/41] move execution
---
website/src/pages/learn/_meta.ts | 7 +++++++
.../src/pages/learn/execution.mdx | 3 ++-
website/src/pages/learn/index.mdx | 1 -
website/src/pages/learn/queries.mdx | 1 -
website/src/pages/learn/schema.mdx | 1 -
5 files changed, 9 insertions(+), 4 deletions(-)
create mode 100644 website/src/pages/learn/_meta.ts
rename src/content/learn/Learn-Execution.md => website/src/pages/learn/execution.mdx (99%)
diff --git a/website/src/pages/learn/_meta.ts b/website/src/pages/learn/_meta.ts
new file mode 100644
index 0000000000..4e876c0ede
--- /dev/null
+++ b/website/src/pages/learn/_meta.ts
@@ -0,0 +1,7 @@
+export default {
+ index: 'Introduction',
+ queries: 'Queries and Mutations',
+ schema: 'Schemas and Types',
+ validation: '',
+ execution: ''
+}
diff --git a/src/content/learn/Learn-Execution.md b/website/src/pages/learn/execution.mdx
similarity index 99%
rename from src/content/learn/Learn-Execution.md
rename to website/src/pages/learn/execution.mdx
index 291b4545e7..19adf74ad7 100644
--- a/src/content/learn/Learn-Execution.md
+++ b/website/src/pages/learn/execution.mdx
@@ -1,11 +1,12 @@
---
-title: Execution
layout: docs
category: Learn
permalink: /learn/execution/
next: /learn/introspection/
---
+# Execution
+
After being validated, a GraphQL query is executed by a GraphQL server which returns a result that mirrors the shape of the requested query, typically as JSON.
GraphQL cannot execute a query without a type system, let's use an example type system to illustrate executing a query. This is a part of the same type system used throughout the examples in these articles:
diff --git a/website/src/pages/learn/index.mdx b/website/src/pages/learn/index.mdx
index 22dabff2c2..2e63cd05cc 100644
--- a/website/src/pages/learn/index.mdx
+++ b/website/src/pages/learn/index.mdx
@@ -1,5 +1,4 @@
---
-sidebar_label: Introduction
layout: docs
category: Learn
permalink: /learn/
diff --git a/website/src/pages/learn/queries.mdx b/website/src/pages/learn/queries.mdx
index 5a3b7580e0..ce050b2526 100644
--- a/website/src/pages/learn/queries.mdx
+++ b/website/src/pages/learn/queries.mdx
@@ -1,5 +1,4 @@
---
-sidebar_label: Queries and Mutations
layout: docs
category: Learn
permalink: /learn/queries/
diff --git a/website/src/pages/learn/schema.mdx b/website/src/pages/learn/schema.mdx
index 86651e7c0e..4890fc0152 100644
--- a/website/src/pages/learn/schema.mdx
+++ b/website/src/pages/learn/schema.mdx
@@ -1,5 +1,4 @@
---
-sidebar_label: Schemas and Types
layout: docs
category: Learn
permalink: /learn/schema/
From 141269a089a29784a31a1f3f28ce945b1f4646ae Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:50:26 +0100
Subject: [PATCH 07/41] add banner
---
website/tailwind.config.ts | 3 +--
website/theme.config.tsx | 18 +++++++++++++++---
2 files changed, 16 insertions(+), 5 deletions(-)
diff --git a/website/tailwind.config.ts b/website/tailwind.config.ts
index 1af3b8f019..e5fbc3b92b 100644
--- a/website/tailwind.config.ts
+++ b/website/tailwind.config.ts
@@ -3,8 +3,7 @@ import type { Config } from 'tailwindcss'
const config: Config = {
content: [
'./src/pages/**/*.{js,ts,jsx,tsx,mdx}',
- './src/components/**/*.{js,ts,jsx,tsx,mdx}',
- './src/app/**/*.{js,ts,jsx,tsx,mdx}',
+ './theme.config.tsx',
],
theme: {
extend: {
diff --git a/website/theme.config.tsx b/website/theme.config.tsx
index a9f6f557db..6bf7772947 100644
--- a/website/theme.config.tsx
+++ b/website/theme.config.tsx
@@ -1,6 +1,18 @@
-import { DocsThemeConfig } from 'nextra-theme-docs'
+import { DocsThemeConfig } from "nextra-theme-docs"
+import NextLink from "next/link"
export default {
- logo: 'GraphQL',
- docsRepositoryBase: 'https://github.com/graphql/graphql.github.io'
+ banner: {
+ content: (
+ <>
+ 📣 GraphQL Conf 2023 • Sept 19-21 • San Francisco •{" "}
+
+ Watch the videos
+
+ !
+ >
+ ),
+ },
+ logo: "GraphQL",
+ docsRepositoryBase: "https://github.com/graphql/graphql.github.io",
} satisfies DocsThemeConfig
From 03e04107d734f2b7c5c332a743b40e4a8c9f952f Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 13:57:38 +0100
Subject: [PATCH 08/41] move introspection
---
.../src/pages/learn/introspection.mdx | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
rename src/content/learn/Learn-Introspection.md => website/src/pages/learn/introspection.mdx (93%)
diff --git a/src/content/learn/Learn-Introspection.md b/website/src/pages/learn/introspection.mdx
similarity index 93%
rename from src/content/learn/Learn-Introspection.md
rename to website/src/pages/learn/introspection.mdx
index 9eeb999fac..78dce535e7 100644
--- a/src/content/learn/Learn-Introspection.md
+++ b/website/src/pages/learn/introspection.mdx
@@ -1,11 +1,12 @@
---
-title: Introspection
layout: docs
category: Learn
permalink: /learn/introspection/
next: /learn/best-practices/
---
+# Introspection
+
It's often useful to ask a GraphQL schema for information about what
queries it supports. GraphQL allows us to do so using the introspection
system!
@@ -34,12 +35,12 @@ are available.
Wow, that's a lot of types! What are they? Let's group them:
-- **Query, Character, Human, Episode, Droid** - These are the ones that we
+- `Query`, `Character`, `Human`, `Episode`, `Droid` - These are the ones that we
defined in our type system.
-- **String, Boolean** - These are built-in scalars that the type system
+- `String`, `Boolean` - These are built-in scalars that the type system
provided.
-- **\_\_Schema, \_\_Type, \_\_TypeKind, \_\_Field, \_\_InputValue,
- \_\_EnumValue, \_\_Directive** - These all are preceded with a double
+- `__Schema`, `__Type`, `__TypeKind`, `__Field`, `__InputValue`,
+ `__EnumValue`, `__Directive` - These all are preceded with a double
underscore, indicating that they are part of the introspection system.
Now, let's try and figure out a good place to start exploring what queries are
From ea7a46800803effa7e3ac3cae8695fa99e8121f8 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 14:12:51 +0100
Subject: [PATCH 09/41] move best-practices and thinking-in-graphs
---
website/src/pages/learn/_meta.ts | 13 ++++++++++++-
.../src/pages/learn/best-practices.mdx | 18 +++++++++---------
.../src/pages/learn/thinking-in-graphs.mdx | 3 ++-
3 files changed, 23 insertions(+), 11 deletions(-)
rename src/content/learn/BestPractice-Introduction.md => website/src/pages/learn/best-practices.mdx (93%)
rename src/content/learn/BestPractice-ThinkingInGraphs.md => website/src/pages/learn/thinking-in-graphs.mdx (99%)
diff --git a/website/src/pages/learn/_meta.ts b/website/src/pages/learn/_meta.ts
index 4e876c0ede..5b28e5a8f4 100644
--- a/website/src/pages/learn/_meta.ts
+++ b/website/src/pages/learn/_meta.ts
@@ -1,7 +1,18 @@
export default {
+ '-- 1': {
+ type: 'separator',
+ title: 'Learn'
+ },
index: 'Introduction',
queries: 'Queries and Mutations',
schema: 'Schemas and Types',
validation: '',
- execution: ''
+ execution: '',
+ introspection: '',
+ '-- 2': {
+ type: 'separator',
+ title: 'Best Practices'
+ },
+ 'best-practices': 'Introduction',
+ 'thinking-in-graphs': ''
}
diff --git a/src/content/learn/BestPractice-Introduction.md b/website/src/pages/learn/best-practices.mdx
similarity index 93%
rename from src/content/learn/BestPractice-Introduction.md
rename to website/src/pages/learn/best-practices.mdx
index 13bc3f42c7..79f16052c2 100644
--- a/src/content/learn/BestPractice-Introduction.md
+++ b/website/src/pages/learn/best-practices.mdx
@@ -1,25 +1,25 @@
---
-title: GraphQL Best Practices
-sidebarTitle: Introduction
layout: docs
category: Best Practices
permalink: /learn/best-practices/
next: /learn/thinking-in-graphs/
---
+# GraphQL Best Practices
+
The GraphQL specification is intentionally silent on a handful of important issues facing APIs such as dealing with the network, authorization, and pagination. This doesn't mean that there aren't solutions for these issues when using GraphQL, just that they're outside the description about what GraphQL _is_ and instead just common practice.
The articles in this section should not be taken as gospel, and in some cases may rightfully be ignored in favor of some other approach. Some articles introduce some of the philosophy developed within Facebook around designing and deploying GraphQL services, while others are more tactical suggestions for solving common problems like serving over HTTP and performing authorization.
Following are brief descriptions of some of the more common best practices and opinionated stances held by GraphQL services, however each article in this section will go into more depth on these and other topics.
-### HTTP
+## HTTP
GraphQL is typically served over HTTP via a single endpoint which expresses the full set of capabilities of the service. This is in contrast to REST APIs which expose a suite of URLs each of which expose a single resource. While GraphQL could be used alongside a suite of resource URLs, this can make it harder to use with tools like [GraphiQL](https://github.com/graphql/graphiql).
Read more about this in [Serving over HTTP](/learn/serving-over-http/).
-### JSON (with GZIP)
+## JSON (with GZIP)
GraphQL services typically respond using JSON, however the GraphQL spec [does not require it](http://spec.graphql.org/draft/#sec-Serialization-Format). JSON may seem like an odd choice for an API layer promising better network performance, however because it is mostly text, it compresses exceptionally well with GZIP.
@@ -31,7 +31,7 @@ Accept-Encoding: gzip
JSON is also very familiar to client and API developers, and is easy to read and debug. In fact, the GraphQL syntax is partly inspired by the JSON syntax.
-### Versioning
+## Versioning
While there's nothing that prevents a GraphQL service from being versioned just like any other REST API, GraphQL takes a strong opinion on avoiding versioning by providing the tools for the continuous evolution of a GraphQL schema.
@@ -39,7 +39,7 @@ Why do most APIs version? When there's limited control over the data that's retu
In contrast, GraphQL only returns the data that's explicitly requested, so new capabilities can be added via new types and new fields on those types without creating a breaking change. This has led to a common practice of always avoiding breaking changes and serving a versionless API.
-### Nullability
+## Nullability
Most type systems which recognise "null" provide both the common type and the _nullable_ version of that type, whereby default types do not include "null" unless explicitly declared. However, in a GraphQL type system, every field is _nullable_ by default. This is because there are many things that can go awry in a networked service backed by databases and other services. A database could go down, an asynchronous action could fail, an exception could be thrown. Beyond simply system failures, authorization can often be granular, where individual fields within a request can have different authorization rules.
@@ -47,17 +47,17 @@ By defaulting every field to _nullable_, any of these reasons may result in just
When designing a GraphQL schema, it's important to keep in mind all the problems that could go wrong and if "null" is an appropriate value for a failed field. Typically it is, but occasionally, it's not. In those cases, use non-null types to make that guarantee.
-### Pagination
+## Pagination
The GraphQL type system allows for some fields to return [lists of values](/learn/schema/#lists-and-non-null), but leaves the pagination of longer lists of values up to the API designer. There are a wide range of possible API designs for pagination, each of which has pros and cons.
-Typically fields that could return long lists accept arguments "first" and "after" to allow for specifying a specific region of a list, where "after" is a unique identifier of each of the values in the list.
+Typically, fields that could return long lists accept arguments "first" and "after" to allow for specifying a specific region of a list, where "after" is a unique identifier of each of the values in the list.
Ultimately designing APIs with feature-rich pagination led to a best practice pattern called "Connections". Some client tools for GraphQL, such as [Relay](https://facebook.github.io/relay/), know about the Connections pattern and can automatically provide support for client-side pagination when a GraphQL API employs this pattern.
Read more about this in the article on [Pagination](/learn/pagination/).
-### Server-side Batching & Caching
+## Server-side Batching & Caching
GraphQL is designed in a way that allows you to write clean code on the server, where every field on every type has a focused single-purpose function for resolving that value. However without additional consideration, a naive GraphQL service could be very "chatty" or repeatedly load data from your databases.
diff --git a/src/content/learn/BestPractice-ThinkingInGraphs.md b/website/src/pages/learn/thinking-in-graphs.mdx
similarity index 99%
rename from src/content/learn/BestPractice-ThinkingInGraphs.md
rename to website/src/pages/learn/thinking-in-graphs.mdx
index 52c1d60474..9f6c3111f9 100644
--- a/src/content/learn/BestPractice-ThinkingInGraphs.md
+++ b/website/src/pages/learn/thinking-in-graphs.mdx
@@ -1,11 +1,12 @@
---
-title: Thinking in Graphs
layout: docs
category: Best Practices
permalink: /learn/thinking-in-graphs/
next: /learn/serving-over-http/
---
+# Thinking in Graphs
+
## It's Graphs All the Way Down [\*](https://en.wikipedia.org/wiki/Turtles_all_the_way_down)
> With GraphQL, you model your business domain as a graph
From f8654a3d5f9630bae0435a875a8506415759c0a2 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 14:19:46 +0100
Subject: [PATCH 10/41] polish
---
website/src/pages/learn/index.mdx | 2 --
website/src/pages/learn/schema.mdx | 22 +++++++++----------
.../src/pages/learn/thinking-in-graphs.mdx | 4 +++-
3 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/website/src/pages/learn/index.mdx b/website/src/pages/learn/index.mdx
index 2e63cd05cc..1e5d95f252 100644
--- a/website/src/pages/learn/index.mdx
+++ b/website/src/pages/learn/index.mdx
@@ -66,5 +66,3 @@ Could produce the following JSON result:
}
}
```
-
-To learn more, click **Continue Reading**.
diff --git a/website/src/pages/learn/schema.mdx b/website/src/pages/learn/schema.mdx
index 4890fc0152..ce145f647c 100644
--- a/website/src/pages/learn/schema.mdx
+++ b/website/src/pages/learn/schema.mdx
@@ -10,7 +10,7 @@ sublinks: Type System,Type Language,Object Types and Fields,Arguments,The Query
On this page, you'll learn all you need to know about the GraphQL type system and how it describes what data can be queried. Since GraphQL can be used with any backend framework or programming language, we'll stay away from implementation-specific details and talk only about the concepts.
-### Type system
+## Type system
If you've seen a GraphQL query before, you know that the GraphQL query language is basically about selecting fields on objects. So, for example, in the following query:
@@ -32,11 +32,11 @@ Because the shape of a GraphQL query closely matches the result, you can predict
Every GraphQL service defines a set of types which completely describe the set of possible data you can query on that service. Then, when queries come in, they are validated and executed against that schema.
-### Type language
+## Type language
GraphQL services can be written in any language. Since we can't rely on a specific programming language syntax, like JavaScript, to talk about GraphQL schemas, we'll define our own simple language. We'll use the "GraphQL schema language" - it's similar to the query language, and allows us to talk about GraphQL schemas in a language-agnostic way.
-### Object types and fields
+## Object types and fields
The most basic components of a GraphQL schema are object types, which just represent a kind of object you can fetch from your service, and what fields it has. In the GraphQL schema language, we might represent it like this:
@@ -57,7 +57,7 @@ The language is pretty readable, but let's go over it so that we can have a shar
Now you know what a GraphQL object type looks like, and how to read the basics of the GraphQL type language.
-### Arguments
+## Arguments
Every field on a GraphQL object type can have zero or more arguments, for example the `length` field below:
@@ -73,7 +73,7 @@ All arguments are named. Unlike languages like JavaScript and Python where funct
Arguments can be either required or optional. When an argument is optional, we can define a _default value_ - if the `unit` argument is not passed, it will be set to `METER` by default.
-### The Query and Mutation types
+## The Query and Mutation types
Most types in your schema will just be normal object types, but there are two types that are special within a schema:
@@ -111,7 +111,7 @@ Mutations work in a similar way - you define fields on the `Mutation` type, and
It's important to remember that other than the special status of being the "entry point" into the schema, the `Query` and `Mutation` types are the same as any other GraphQL object type, and their fields work exactly the same way.
-### Scalar types
+## Scalar types
A GraphQL object type has a name and fields, but at some point those fields have to resolve to some concrete data. That's where the scalar types come in: they represent the leaves of the query.
@@ -145,7 +145,7 @@ scalar Date
Then it's up to our implementation to define how that type should be serialized, deserialized, and validated. For example, you could specify that the `Date` type should always be serialized into an integer timestamp, and your client should know to expect that format for any date fields.
-### Enumeration types
+## Enumeration types
Also called _Enums_, enumeration types are a special kind of scalar that is restricted to a particular set of allowed values. This allows you to:
@@ -166,7 +166,7 @@ This means that wherever we use the type `Episode` in our schema, we expect it t
Note that GraphQL service implementations in various languages will have their own language-specific way to deal with enums. In languages that support enums as a first-class citizen, the implementation might take advantage of that; in a language like JavaScript with no enum support, these values might be internally mapped to a set of integers. However, these details don't leak out to the client, which can operate entirely in terms of the string names of the enum values.
-### Lists and Non-Null
+## Lists and Non-Null
Object types, scalars, and enums are the only kinds of types you can define in GraphQL. But when you use the types in other parts of the schema, or in your query variable declarations, you can apply additional _type modifiers_ that affect validation of those values. Let's look at an example:
@@ -224,7 +224,7 @@ myField: ["a", null, "b"] // valid
You can arbitrarily nest any number of Non-Null and List modifiers, according to your needs.
-### Interfaces
+## Interfaces
Like many type systems, GraphQL supports interfaces. An _Interface_ is an abstract type that includes a certain set of fields that a type must include to implement the interface.
@@ -296,7 +296,7 @@ query HeroForEpisode($ep: Episode!) {
Learn more about this in the [inline fragments](/learn/queries/#inline-fragments) section in the query guide.
-### Union types
+## Union types
Union types share similarities with interfaces; however, they lack the ability to define any shared fields among the constituent types.
@@ -356,7 +356,7 @@ Also, in this case, since `Human` and `Droid` share a common interface (`Charact
Note that `name` is still specified on `Starship` because otherwise it wouldn't show up in the results given that `Starship` is not a `Character`!
-### Input types
+## Input types
So far, we've only talked about passing scalar values, like enums or strings, as arguments into a field. But you can also easily pass complex objects. This is particularly valuable in the case of mutations, where you might want to pass in a whole object to be created. In the GraphQL schema language, input types look exactly the same as regular object types, but with the keyword `input` instead of `type`:
diff --git a/website/src/pages/learn/thinking-in-graphs.mdx b/website/src/pages/learn/thinking-in-graphs.mdx
index 9f6c3111f9..7d115e2915 100644
--- a/website/src/pages/learn/thinking-in-graphs.mdx
+++ b/website/src/pages/learn/thinking-in-graphs.mdx
@@ -7,7 +7,7 @@ next: /learn/serving-over-http/
# Thinking in Graphs
-## It's Graphs All the Way Down [\*](https://en.wikipedia.org/wiki/Turtles_all_the_way_down)
+## It's Graphs All the Way Down[^1]
> With GraphQL, you model your business domain as a graph
@@ -78,3 +78,5 @@ Build your GraphQL schema to express "how" rather than "what". Then you can impr
> Get validation and feedback more frequently
Don't try to model your entire business domain in one sitting. Rather, build only the part of the schema that you need for one scenario at a time. By gradually expanding the schema, you will get validation and feedback more frequently to steer you toward building the right solution.
+
+[^1]: ["Turtles all the way down"](https://en.wikipedia.org/wiki/Turtles_all_the_way_down) is an expression of the problem of infinite regress.
From e874cdcb3217084d686065c224e5da1aa349bc16 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 14:22:59 +0100
Subject: [PATCH 11/41] move serving-over-http
---
website/src/pages/learn/_meta.ts | 3 ++-
.../src/pages/learn/serving-over-http.mdx | 19 ++++++++++---------
2 files changed, 12 insertions(+), 10 deletions(-)
rename src/content/learn/BestPractice-ServingOverHTTP.md => website/src/pages/learn/serving-over-http.mdx (93%)
diff --git a/website/src/pages/learn/_meta.ts b/website/src/pages/learn/_meta.ts
index 5b28e5a8f4..0e5ebeb5c1 100644
--- a/website/src/pages/learn/_meta.ts
+++ b/website/src/pages/learn/_meta.ts
@@ -14,5 +14,6 @@ export default {
title: 'Best Practices'
},
'best-practices': 'Introduction',
- 'thinking-in-graphs': ''
+ 'thinking-in-graphs': '',
+ 'serving-over-http': ''
}
diff --git a/src/content/learn/BestPractice-ServingOverHTTP.md b/website/src/pages/learn/serving-over-http.mdx
similarity index 93%
rename from src/content/learn/BestPractice-ServingOverHTTP.md
rename to website/src/pages/learn/serving-over-http.mdx
index 86a7109d70..5d83a7d97e 100644
--- a/src/content/learn/BestPractice-ServingOverHTTP.md
+++ b/website/src/pages/learn/serving-over-http.mdx
@@ -1,11 +1,12 @@
---
-title: Serving over HTTP
layout: docs
category: Best Practices
permalink: /learn/serving-over-http/
next: /learn/authorization/
---
+# Serving over HTTP
+
HTTP is the most common choice for client-server protocol when using GraphQL because of its ubiquity. Here are some guidelines for setting up a GraphQL server to operate over HTTP.
## Web Request Pipeline
@@ -20,7 +21,7 @@ HTTP is commonly associated with REST, which uses "resources" as its core concep
Your GraphQL HTTP server should handle the HTTP GET and POST methods.
-### GET request
+### `GET` request
When receiving an HTTP GET request, the GraphQL query should be specified in the "query" query string. For example, if we wanted to execute the following GraphQL query:
@@ -40,11 +41,11 @@ http://myapi/graphql?query={me{name}}
Query variables can be sent as a JSON-encoded string in an additional query parameter called `variables`. If the query contains several named operations, an `operationName` query parameter can be used to control which one should be executed.
-### POST request
+### `POST` request
A standard GraphQL POST request should use the `application/json` content type, and include a JSON-encoded body of the following form:
-```js
+```json
{
"query": "...",
"operationName": "...",
@@ -58,7 +59,7 @@ A standard GraphQL POST request should use the `application/json` content type,
Regardless of the method by which the query and variables were sent, the response should be returned in the body of the request in JSON format. As mentioned in the spec, a query might result in some data and some errors, and those should be returned in a JSON object of the form:
-```js
+```json
{
"data": { ... },
"errors": [ ... ]
@@ -71,16 +72,16 @@ If there were no errors returned, the `"errors"` field should not be present on
GraphiQL is useful during testing and development but should be disabled in production by default. If you are using express-graphql, you can toggle it based on the NODE_ENV environment variable:
-```
+```js
app.use('/graphql', graphqlHTTP({
schema: MySessionAwareGraphQLSchema,
- graphiql: process.env.NODE_ENV === 'development',
-}));
+ graphiql: process.env.NODE_ENV === 'development'
+}))
```
## Node
-If you are using NodeJS, we recommend looking at the [list of server implementations](/code/#javascript-server).
+If you are using Node.js, we recommend looking at the [list of server implementations](/code/#javascript-server).
## Draft Transport Specification
From 50d401ec5ba8c18b5df140e33310d007997bd71d Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:06:38 +0100
Subject: [PATCH 12/41] polish
---
website/{next.config.mjs => next.config.js} | 1 -
website/package.json | 22 +++++++--------
website/pnpm-lock.yaml | 25 ++++++-----------
.../{postcss.config.js => postcss.config.cjs} | 0
website/theme.config.tsx | 27 ++++++++++++++++++-
5 files changed, 45 insertions(+), 30 deletions(-)
rename website/{next.config.mjs => next.config.js} (88%)
rename website/{postcss.config.js => postcss.config.cjs} (100%)
diff --git a/website/next.config.mjs b/website/next.config.js
similarity index 88%
rename from website/next.config.mjs
rename to website/next.config.js
index 6c1c09105c..0dfa0b2ba3 100644
--- a/website/next.config.mjs
+++ b/website/next.config.js
@@ -3,7 +3,6 @@ import nextra from 'nextra'
const withNextra = nextra({
theme: 'nextra-theme-docs',
themeConfig: './theme.config.tsx',
- defaultShowCopyCode: true,
})
/**
diff --git a/website/package.json b/website/package.json
index 0ca46b73d3..8875dc5a68 100644
--- a/website/package.json
+++ b/website/package.json
@@ -1,28 +1,28 @@
{
"name": "graphql.org",
- "version": "0.1.0",
+ "version": "0.0.0",
"private": true,
"scripts": {
- "dev": "next dev",
+ "dev": "next",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
+ "type": "module",
"dependencies": {
- "react": "^18",
- "react-dom": "^18",
+ "react": "^18.2.0",
+ "react-dom": "^18.2.0",
"next": "^14.0.4",
"nextra": "^3.0.0-alpha.10",
"nextra-theme-docs": "^3.0.0-alpha.10"
},
"devDependencies": {
- "typescript": "^5",
- "@types/node": "^20",
- "@types/react": "^18",
- "@types/react-dom": "^18",
- "autoprefixer": "^10.0.1",
- "postcss": "^8",
- "tailwindcss": "^3.3.0"
+ "typescript": "^5.3.3",
+ "@types/node": "^20.10.7",
+ "@types/react": "^18.2.47",
+ "autoprefixer": "^10.4.16",
+ "postcss": "^8.4.33",
+ "tailwindcss": "^3.4.1"
},
"pnpm": {
"overrides": {
diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml
index c54723b203..baf7274b80 100644
--- a/website/pnpm-lock.yaml
+++ b/website/pnpm-lock.yaml
@@ -18,33 +18,30 @@ dependencies:
specifier: ^3.0.0-alpha.10
version: 3.0.0-alpha.10(next@14.0.4)(nextra@3.0.0-alpha.10)(react-dom@18.2.0)(react@18.2.0)
react:
- specifier: ^18
+ specifier: ^18.2.0
version: 18.2.0
react-dom:
- specifier: ^18
+ specifier: ^18.2.0
version: 18.2.0(react@18.2.0)
devDependencies:
'@types/node':
- specifier: ^20
+ specifier: ^20.10.7
version: 20.10.7
'@types/react':
- specifier: ^18
+ specifier: ^18.2.47
version: 18.2.47
- '@types/react-dom':
- specifier: ^18
- version: 18.2.18
autoprefixer:
- specifier: ^10.0.1
+ specifier: ^10.4.16
version: 10.4.16(postcss@8.4.33)
postcss:
- specifier: ^8
+ specifier: ^8.4.33
version: 8.4.33
tailwindcss:
- specifier: ^3.3.0
+ specifier: ^3.4.1
version: 3.4.1
typescript:
- specifier: ^5
+ specifier: ^5.3.3
version: 5.3.3
packages:
@@ -485,12 +482,6 @@ packages:
/@types/prop-types@15.7.11:
resolution: {integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==}
- /@types/react-dom@18.2.18:
- resolution: {integrity: sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==}
- dependencies:
- '@types/react': 18.2.47
- dev: true
-
/@types/react@18.2.47:
resolution: {integrity: sha512-xquNkkOirwyCgoClNk85BjP+aqnIS+ckAJ8i37gAbDs14jfW/J23f2GItAf33oiUPQnqNMALiFeoM9Y5mbjpVQ==}
dependencies:
diff --git a/website/postcss.config.js b/website/postcss.config.cjs
similarity index 100%
rename from website/postcss.config.js
rename to website/postcss.config.cjs
diff --git a/website/theme.config.tsx b/website/theme.config.tsx
index 6bf7772947..e53f14517c 100644
--- a/website/theme.config.tsx
+++ b/website/theme.config.tsx
@@ -13,6 +13,31 @@ export default {
>
),
},
- logo: "GraphQL",
+ logo: (
+
+
+ GraphQL
+
+ ),
docsRepositoryBase: "https://github.com/graphql/graphql.github.io",
+ color: {
+ hue: 319,
+ },
} satisfies DocsThemeConfig
From 7efbc71abe3497e4712f8cce5fd2bc13033b5dea Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:10:37 +0100
Subject: [PATCH 13/41] move authorization
---
.../src/pages/learn/authorization.mdx | 37 ++++++++++---------
1 file changed, 19 insertions(+), 18 deletions(-)
rename src/content/learn/BestPractice-Authorization.md => website/src/pages/learn/authorization.mdx (61%)
diff --git a/src/content/learn/BestPractice-Authorization.md b/website/src/pages/learn/authorization.mdx
similarity index 61%
rename from src/content/learn/BestPractice-Authorization.md
rename to website/src/pages/learn/authorization.mdx
index ad8d75c6f0..389b445140 100644
--- a/src/content/learn/BestPractice-Authorization.md
+++ b/website/src/pages/learn/authorization.mdx
@@ -1,56 +1,57 @@
---
-title: Authorization
layout: docs
category: Best Practices
permalink: /learn/authorization/
next: /learn/pagination/
---
+# Authorization
+
> Delegate authorization logic to the business logic layer
Authorization is a type of business logic that describes whether a given user/session/context has permission to perform an action or see a piece of data. For example:
-_“Only authors can see their drafts”_
+_"Only authors can see their drafts"_
Enforcing this kind of behavior should happen in the [business logic layer](/learn/thinking-in-graphs/#business-logic-layer). It is tempting to place authorization logic in the GraphQL layer like so:
-```javascript
-var postType = new GraphQLObjectType({
- name: ‘Post’,
+```js
+const postType = new GraphQLObjectType({
+ name: 'Post',
fields: {
body: {
type: GraphQLString,
- resolve: (post, args, context, { rootValue }) => {
+ resolve(post, args, context, { rootValue }) {
// return the post body only if the user is the post's author
if (context.user && (context.user.id === post.authorId)) {
- return post.body;
+ return post.body
}
- return null;
+ return null
}
}
}
-});
+})
```
-Notice that we define “author owns a post" by checking whether the post's `authorId` field equals the current user’s `id`. Can you spot the problem? We would need to duplicate this code for each entry point into the service. Then if the authorization logic is not kept perfectly in sync, users could see different data depending on which API they use. Yikes! We can avoid that by having a [single source of truth](/learn/thinking-in-graphs/#business-logic-layer) for authorization.
+Notice that we define "author owns a post" by checking whether the post's `authorId` field equals the current user’s `id`. Can you spot the problem? We would need to duplicate this code for each entry point into the service. Then if the authorization logic is not kept perfectly in sync, users could see different data depending on which API they use. Yikes! We can avoid that by having a [single source of truth](/learn/thinking-in-graphs/#business-logic-layer) for authorization.
Defining authorization logic inside the resolver is fine when learning GraphQL or prototyping. However, for a production codebase, delegate authorization logic to the business logic layer. Here’s an example:
-```javascript
-//Authorization logic lives inside postRepository
-var postRepository = require('postRepository');
+```js
+// Authorization logic lives inside postRepository
+const postRepository = require('postRepository');
-var postType = new GraphQLObjectType({
- name: ‘Post’,
+const postType = new GraphQLObjectType({
+ name: 'Post',
fields: {
body: {
type: GraphQLString,
- resolve: (post, args, context, { rootValue }) => {
- return postRepository.getBody(context.user, post);
+ resolve(post, args, context, { rootValue }) {
+ return postRepository.getBody(context.user, post)
}
}
}
-});
+})
```
In the example above, we see that the business logic layer requires the caller to provide a user object. If you are using GraphQL.js, the User object should be populated on the `context` argument or `rootValue` in the fourth argument of the resolver.
From be0dc806873cfb573a80560562848663f08fcddf Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:12:39 +0100
Subject: [PATCH 14/41] move pagination
---
website/src/pages/learn/_meta.ts | 4 +++-
.../src/pages/learn/pagination.mdx | 3 ++-
2 files changed, 5 insertions(+), 2 deletions(-)
rename src/content/learn/BestPractice-Pagination.md => website/src/pages/learn/pagination.mdx (99%)
diff --git a/website/src/pages/learn/_meta.ts b/website/src/pages/learn/_meta.ts
index 0e5ebeb5c1..34ad92dfb3 100644
--- a/website/src/pages/learn/_meta.ts
+++ b/website/src/pages/learn/_meta.ts
@@ -15,5 +15,7 @@ export default {
},
'best-practices': 'Introduction',
'thinking-in-graphs': '',
- 'serving-over-http': ''
+ 'serving-over-http': '',
+ 'authorization': '',
+ 'pagination': ''
}
diff --git a/src/content/learn/BestPractice-Pagination.md b/website/src/pages/learn/pagination.mdx
similarity index 99%
rename from src/content/learn/BestPractice-Pagination.md
rename to website/src/pages/learn/pagination.mdx
index 9319fcbf9e..fef30af3b8 100644
--- a/src/content/learn/BestPractice-Pagination.md
+++ b/website/src/pages/learn/pagination.mdx
@@ -1,11 +1,12 @@
---
-title: Pagination
layout: docs
category: Best Practices
permalink: /learn/pagination/
next: /learn/global-object-identification/
---
+# Pagination
+
> Different pagination models enable different client capabilities
A common use case in GraphQL is traversing the relationship between sets of objects. There are a number of different ways that these relationships can be exposed in GraphQL, giving a varying set of capabilities to the client developer.
From f17dc9f9d6777d69647f1f4c87943757b49a4cd6 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:16:54 +0100
Subject: [PATCH 15/41] move global-object-identification
---
.../learn/global-object-identification.mdx | 23 ++++++++++---------
1 file changed, 12 insertions(+), 11 deletions(-)
rename src/content/learn/BestPractice-NodeInterface.md => website/src/pages/learn/global-object-identification.mdx (97%)
diff --git a/src/content/learn/BestPractice-NodeInterface.md b/website/src/pages/learn/global-object-identification.mdx
similarity index 97%
rename from src/content/learn/BestPractice-NodeInterface.md
rename to website/src/pages/learn/global-object-identification.mdx
index f53eb0a2cf..0fedf8b373 100644
--- a/src/content/learn/BestPractice-NodeInterface.md
+++ b/website/src/pages/learn/global-object-identification.mdx
@@ -1,11 +1,12 @@
---
-title: Global Object Identification
layout: docs
category: Best Practices
permalink: /learn/global-object-identification/
next: /learn/caching/
---
+# Global Object Identification
+
> Consistent object access enables simple caching and object lookups
To provide options for GraphQL clients to elegantly handle caching and data
@@ -55,14 +56,14 @@ type User implements Node {
}
```
-# Specification
+## Specification
Everything below describes with more formal requirements a specification around object
identification in order to conform to ensure consistency across server implementations. These
specifications are based on how a server can be compliant with the [Relay][relay] API client, but
can be useful for any client.
-# Reserved Types
+## Reserved Types
A GraphQL server compatible with this spec must reserve certain types and type names
to support the consistent object identification model. In particular, this spec creates
@@ -71,7 +72,7 @@ guidelines for the following types:
- An interface named `Node`.
- The `node` field on the root query type.
-# Node Interface
+## Node Interface
The server must provide an interface called `Node`. That interface
must include exactly one field, called `id` that returns a non-null `ID`.
@@ -79,7 +80,7 @@ must include exactly one field, called `id` that returns a non-null `ID`.
This `id` should be a globally unique identifier for this object, and given
just this `id`, the server should be able to refetch the object.
-## Introspection
+### Introspection
A server that correctly implements the above interface will accept the following
introspection query, and return the provided response:
@@ -126,7 +127,7 @@ yields
}
```
-# Node root field
+## Node root field
The server must provide a root field called `node` that returns the `Node`
interface. This root field must take exactly one argument, a non-null ID
@@ -142,7 +143,7 @@ but when the request is made to refetch that user with the `node` root field,
the user's database may be unavailable, or the user may have deleted their
account. In this case, the result of querying this field should be `null`.
-## Introspection
+### Introspection
A server that correctly implements the above requirement will accept the
following introspection query, and return a response that contains the
@@ -176,7 +177,7 @@ provided response.
yields
-```json
+```jsonc
{
"__schema": {
"queryType": {
@@ -207,7 +208,7 @@ yields
}
```
-# Field stability
+## Field stability
If two objects appear in a query, both implementing `Node` with identical
IDs, then the two objects must be equal.
@@ -278,7 +279,7 @@ Because `fourNode.id` and `fiveNode.userWithIdOneLess.id` are the same, we are
guaranteed by the conditions above that `fourNode.name` must be the same as
`fiveNode.userWithIdOneLess.name`, and indeed it is.
-# Plural identifying root fields
+## Plural identifying root fields
Imagine a root field named `username`, that takes a user's username and
returns the corresponding user:
@@ -335,7 +336,7 @@ passed as an argument, and that the order in the response will match the
order in the argument. We call these _plural identifying root fields_, and
their requirements are described below.
-## Fields
+### Fields
A server compliant with this spec may expose root fields that accept a list of input
arguments, and returns a list of responses. For spec-compliant clients to use these fields,
From ee60459a0b39be15e6c70921130f7a4ba4076ee1 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:19:41 +0100
Subject: [PATCH 16/41] move caching
---
website/src/pages/learn/_meta.ts | 6 ++++--
.../src/pages/learn/caching.mdx | 3 ++-
2 files changed, 6 insertions(+), 3 deletions(-)
rename src/content/learn/BestPractice-Caching.md => website/src/pages/learn/caching.mdx (99%)
diff --git a/website/src/pages/learn/_meta.ts b/website/src/pages/learn/_meta.ts
index 34ad92dfb3..7242fd1d4f 100644
--- a/website/src/pages/learn/_meta.ts
+++ b/website/src/pages/learn/_meta.ts
@@ -16,6 +16,8 @@ export default {
'best-practices': 'Introduction',
'thinking-in-graphs': '',
'serving-over-http': '',
- 'authorization': '',
- 'pagination': ''
+ authorization: '',
+ pagination: '',
+ 'global-object-identification': '',
+ caching: ''
}
diff --git a/src/content/learn/BestPractice-Caching.md b/website/src/pages/learn/caching.mdx
similarity index 99%
rename from src/content/learn/BestPractice-Caching.md
rename to website/src/pages/learn/caching.mdx
index c595b1e055..6ba5f5b127 100644
--- a/src/content/learn/BestPractice-Caching.md
+++ b/website/src/pages/learn/caching.mdx
@@ -1,10 +1,11 @@
---
-title: Caching
layout: docs
category: Best Practices
permalink: /learn/caching/
---
+# Caching
+
> Providing Object Identifiers allows clients to build rich caches
In an endpoint-based API, clients can use HTTP caching to easily avoid refetching resources, and for identifying when two resources are the same. The URL in these APIs is a **globally unique identifier** that the client can leverage to build a cache. In GraphQL, though, there's no URL-like primitive that provides this globally unique identifier for a given object. It's hence a best practice for the API to expose such an identifier for clients to use.
From 0fd0fafb6ab0ba947731d4c07e73c0ab39cf3b43 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:24:49 +0100
Subject: [PATCH 17/41] move foundation
---
website/src/pages/_meta.ts | 4 ++++
website/src/pages/foundation/_meta.ts | 3 +++
.../About.md => website/src/pages/foundation/index.mdx | 4 ++--
3 files changed, 9 insertions(+), 2 deletions(-)
create mode 100644 website/src/pages/foundation/_meta.ts
rename src/content/foundation/About.md => website/src/pages/foundation/index.mdx (97%)
diff --git a/website/src/pages/_meta.ts b/website/src/pages/_meta.ts
index 2617faa955..5038756f28 100644
--- a/website/src/pages/_meta.ts
+++ b/website/src/pages/_meta.ts
@@ -7,6 +7,10 @@ export default {
type: 'page',
title: 'Learn'
},
+ foundation: {
+ type: 'page',
+ title: 'Foundation'
+ },
// code: {}
spec: {
type: 'page',
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
new file mode 100644
index 0000000000..8659464513
--- /dev/null
+++ b/website/src/pages/foundation/_meta.ts
@@ -0,0 +1,3 @@
+export default {
+ index: 'About the Foundation'
+}
diff --git a/src/content/foundation/About.md b/website/src/pages/foundation/index.mdx
similarity index 97%
rename from src/content/foundation/About.md
rename to website/src/pages/foundation/index.mdx
index f2347d12ed..75d276804b 100644
--- a/src/content/foundation/About.md
+++ b/website/src/pages/foundation/index.mdx
@@ -1,6 +1,4 @@
---
-title: What is the GraphQL Foundation?
-sidebarTitle: About the Foundation
heroText: An open and neutral home for the GraphQL community, dedicated to promoting widespread adoption and accelerating development of the surrounding ecosystem
layout: foundation
category: GraphQL Foundation
@@ -8,6 +6,8 @@ permalink: /foundation/
next: /foundation/join/
---
+# What is the GraphQL Foundation?
+
The **GraphQL Foundation** is a neutral foundation founded by global technology and application development companies. The GraphQL Foundation encourages contributions, stewardship, and a shared investment from a broad group in vendor-neutral events, documentation, tools, and support for GraphQL.
GraphQL was created in 2012 and open sourced by Facebook in 2015. In 2019, Facebook and others [created the GraphQL Foundation](https://foundation.graphql.org/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards/) as a neutral, non-profit home for the GraphQL assets and ongoing collaboration, and hosted by [The Linux Foundation](https://linuxfoundation.org). The GraphQL Foundation is a fully neutral home for the GraphQL trademark, and provides a means of collecting and distributing membership dues to support core community infrastructure and programs.
From e6fbd7ecc9763f4c84afd15165289eced7dde36b Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:26:42 +0100
Subject: [PATCH 18/41] move join
---
website/src/pages/foundation/_meta.ts | 3 ++-
.../Join.md => website/src/pages/foundation/join.mdx | 8 ++------
2 files changed, 4 insertions(+), 7 deletions(-)
rename src/content/foundation/Join.md => website/src/pages/foundation/join.mdx (99%)
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index 8659464513..2baa339b54 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -1,3 +1,4 @@
export default {
- index: 'About the Foundation'
+ index: 'About the Foundation',
+ join: 'Join GraphQL'
}
diff --git a/src/content/foundation/Join.md b/website/src/pages/foundation/join.mdx
similarity index 99%
rename from src/content/foundation/Join.md
rename to website/src/pages/foundation/join.mdx
index 567db913db..0573e7e116 100644
--- a/src/content/foundation/Join.md
+++ b/website/src/pages/foundation/join.mdx
@@ -1,6 +1,4 @@
---
-title: Become a Member
-sidebarTitle: Join GraphQL
heroText: GraphQL Foundation members demonstrate their commitment to the ecosystem by providing essential financial support.
layout: foundation
category: GraphQL Foundation
@@ -9,6 +7,8 @@ sublinks: GraphQL Specification,GraphQL Foundation
next: /foundation/graphql-conf/
---
+# Become a Member
+
There are two primary ways to support the ongoing development and success of GraphQL.
- Developers can [join the GraphQL Specification](#graphql-specification), enabling them to contribute code, time, and talent to GraphQL technical projects. This is free for companies and individuals.
@@ -17,8 +17,6 @@ There are two primary ways to support the ongoing development and success of Gra
If you have a question about which membership is right for you, please reach out to [membership@graphql.org](mailto:membership@graphql.org).
----
-
## GraphQL Specification
The GraphQL Specification and its related tools and libraries are developed under the Joint Development Foundation, a non-profit organization focused on open standards that is part of The Linux Foundation family.
@@ -41,8 +39,6 @@ To join, please open a PR against a GraphQL repo ([instructions](https://individ
_Please note: If your employer has already signed a specification membership agreement, you do not need to sign a separate agreement as an individual. If your organization is a member of the GraphQL Foundation, you will still need a valid GraphQL Specification membership in order to contribute._
----
-
## GraphQL Foundation
The GraphQL Foundation is a member-supported, non-profit organization whose mission is to support the long-term health and viability of the [GraphQL ecosystem](https://graphql.org). The GraphQL Foundation is hosted by [The Linux Foundation](https://linuxfoundation.org), the 501(c)6 non-profit home of Linux and many other open source collaborative projects.
From 0bf185d7b6f57fa9508bfae2b279adf0014d1e0e Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:29:36 +0100
Subject: [PATCH 19/41] move graphql-conf
---
website/src/pages/foundation/_meta.ts | 3 ++-
.../src/pages/foundation/graphql-conf.mdx | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
rename src/content/foundation/GraphQLConf.md => website/src/pages/foundation/graphql-conf.mdx (97%)
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index 2baa339b54..bce2c04a1c 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -1,4 +1,5 @@
export default {
index: 'About the Foundation',
- join: 'Join GraphQL'
+ join: 'Join GraphQL',
+ 'graphql-conf': 'GraphQL Conf'
}
diff --git a/src/content/foundation/GraphQLConf.md b/website/src/pages/foundation/graphql-conf.mdx
similarity index 97%
rename from src/content/foundation/GraphQLConf.md
rename to website/src/pages/foundation/graphql-conf.mdx
index 3814fdab2c..0df03aa39b 100644
--- a/src/content/foundation/GraphQLConf.md
+++ b/website/src/pages/foundation/graphql-conf.mdx
@@ -1,6 +1,4 @@
---
-title: GraphQL Conf
-sidebarTitle: GraphQL Conf
heroText: The official GraphQL conference, hosted by the GraphQL Foundation.
layout: conf
category: GraphQL Foundation
@@ -9,6 +7,8 @@ sublinks: GraphQLConf 2023,GraphQLConf 2022
next: /foundation/community-grant/
---
+# GraphQL Conf
+
By the community and for the community, GraphQLConf is a vendor-neutral event that brings together core contributors, community members, open source leaders, academics, vendors, and industry practitioners to discuss recent work, share techniques, and plan for the future.
## GraphQLConf 2023
From a11418ee9227bf8e52ceb6f92448905c465e8f7b Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:31:55 +0100
Subject: [PATCH 20/41] move community-grant
---
website/src/pages/foundation/_meta.ts | 3 ++-
.../src/pages/foundation/community-grant.mdx | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
rename src/content/foundation/CommunityGrantProgram.md => website/src/pages/foundation/community-grant.mdx (98%)
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index bce2c04a1c..e4216e5fdb 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -1,5 +1,6 @@
export default {
index: 'About the Foundation',
join: 'Join GraphQL',
- 'graphql-conf': 'GraphQL Conf'
+ 'graphql-conf': 'GraphQL Conf',
+ 'community-grant': ''
}
diff --git a/src/content/foundation/CommunityGrantProgram.md b/website/src/pages/foundation/community-grant.mdx
similarity index 98%
rename from src/content/foundation/CommunityGrantProgram.md
rename to website/src/pages/foundation/community-grant.mdx
index 2afa9cbde1..df187237d6 100644
--- a/src/content/foundation/CommunityGrantProgram.md
+++ b/website/src/pages/foundation/community-grant.mdx
@@ -1,6 +1,4 @@
---
-title: GraphQL Community Grant
-sidebarTitle: Community Grant
heroText: The GraphQL Community Grant program helps the GraphQL Foundation invest directly into the success, health, and sustainability of our ecosystem.
layout: foundation
category: GraphQL Foundation
@@ -9,6 +7,8 @@ sublinks: How to apply,FAQs
next: /foundation/contact/
---
+# GraphQL Community Grant
+
The GraphQL Community Grant program is funded by the GraphQL Foundation and administered by the [GraphQL Technical Steering Committee (TSC)](https://github.com/graphql/graphql-wg/blob/main/GraphQL-TSC.md). The goal of the program is to provide financial support and incentives for key technical and community initiatives.
The GraphQL Community Grant program accepts applications on a quarterly cycle. Grant applications are reviewed by the TSC based upon funding that is received as membership dues for the GraphQL Foundation. This is one way in which the GraphQL Foundation directly supports the ongoing health of the GraphQL developer ecosystem.
From abc350208785120cabf99690e8dacc7378bbbc60 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:34:47 +0100
Subject: [PATCH 21/41] move contact
---
website/src/pages/foundation/_meta.ts | 3 ++-
.../src/pages/foundation/contact.mdx | 16 +++++++++-------
2 files changed, 11 insertions(+), 8 deletions(-)
rename src/content/foundation/Contact.md => website/src/pages/foundation/contact.mdx (92%)
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index e4216e5fdb..bd973ea4dc 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -2,5 +2,6 @@ export default {
index: 'About the Foundation',
join: 'Join GraphQL',
'graphql-conf': 'GraphQL Conf',
- 'community-grant': ''
+ 'community-grant': '',
+ contact: 'Contact Us'
}
diff --git a/src/content/foundation/Contact.md b/website/src/pages/foundation/contact.mdx
similarity index 92%
rename from src/content/foundation/Contact.md
rename to website/src/pages/foundation/contact.mdx
index 65a76a1410..52918d1804 100644
--- a/src/content/foundation/Contact.md
+++ b/website/src/pages/foundation/contact.mdx
@@ -1,6 +1,4 @@
---
-title: Contact the GraphQL Foundation
-sidebarTitle: Contact us
heroText: The GraphQL Foundation is here to help.
layout: foundation
category: GraphQL Foundation
@@ -9,6 +7,8 @@ sublinks: Membership Inquiries,Membership Support,Meeting Logistics,Trademark Re
next: /foundation/annual-reports/
---
+# Contact the GraphQL Foundation
+
The GraphQL Foundation is supported by staff from [The Linux Foundation](https://linuxfoundation.org). If you have questions, please reach out to us using the links below.
_Please note that we do not provide user support for GraphQL. If you have an implementation question,
@@ -45,8 +45,10 @@ For all other inquiries, please email [info@graphql.org](mailto:info@graphql.org
Our mailing address is:
-> **GraphQL Foundation**
-> 548 Market St
-> PMB 57274
-> San Francisco, California
-> 94104-5401 US
+```text copy
+GraphQL Foundation
+548 Market St
+PMB 57274
+San Francisco, California
+94104-5401 US
+```
From e024ffcc11d715ef95c34da73ee68c8f1a3afd41 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:46:54 +0100
Subject: [PATCH 22/41] move annual-reports
---
website/src/pages/foundation/_meta.ts | 3 +-
.../src/pages/foundation/annual-reports.mdx | 4 +-
.../pages/foundation/annual-reports/2019.mdx | 128 +++++++++---------
3 files changed, 68 insertions(+), 67 deletions(-)
rename src/content/foundation/AnnualReports.md => website/src/pages/foundation/annual-reports.mdx (92%)
rename src/content/foundation/annual-report/2019.md => website/src/pages/foundation/annual-reports/2019.mdx (73%)
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index bd973ea4dc..ef50879283 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -3,5 +3,6 @@ export default {
join: 'Join GraphQL',
'graphql-conf': 'GraphQL Conf',
'community-grant': '',
- contact: 'Contact Us'
+ contact: 'Contact Us',
+ 'annual-reports': ''
}
diff --git a/src/content/foundation/AnnualReports.md b/website/src/pages/foundation/annual-reports.mdx
similarity index 92%
rename from src/content/foundation/AnnualReports.md
rename to website/src/pages/foundation/annual-reports.mdx
index c6890df0fb..87d5ef462a 100644
--- a/src/content/foundation/AnnualReports.md
+++ b/website/src/pages/foundation/annual-reports.mdx
@@ -1,6 +1,4 @@
---
-title: Annual Reports
-sidebarTitle: Annual Reports
heroText: Reflecting upon our accomplishments, anticipating our future
layout: foundation
category: GraphQL Foundation
@@ -8,6 +6,8 @@ permalink: /foundation/annual-reports/
next: /foundation/members/
---
+# Annual Reports
+
The GraphQL annual reports are a celebration of the ongoing work happening in the GraphQL technical community, the GraphQL Foundation, and our members.
If you have an item you'd like to add to the annual report, please contact [operations@graphql.org](mailto:operations@graphql.org).
diff --git a/src/content/foundation/annual-report/2019.md b/website/src/pages/foundation/annual-reports/2019.mdx
similarity index 73%
rename from src/content/foundation/annual-report/2019.md
rename to website/src/pages/foundation/annual-reports/2019.mdx
index 78e332e972..cea700a2cf 100644
--- a/src/content/foundation/annual-report/2019.md
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -1,6 +1,4 @@
---
-title: 2019 Annual Report
-sidebarTitle: "2019"
heroText: 2019 Annual Report
layout: foundation
category: Annual Reports
@@ -9,6 +7,8 @@ next: /foundation/annual-reports/
date: 2020-04-02
---
+# 2019 Annual Report
+
The GraphQL Foundation is a neutral foundation founded by global technology and application development companies. The GraphQL Foundation encourages contributions, stewardship, and a shared investment from a broad group in vendor-neutral events, documentation, tools, and support for GraphQL.
The GraphQL Foundation was formed in March 2019 and has now completed one full year of operation. We are pleased to present this annual report detailing the many things we have accomplished in support of this fast growing and broadly adopted platform.
@@ -48,16 +48,16 @@ The [GraphQL Foundation](/) is a neutral foundation created by the founders of [
The GraphQL Foundation hosts the [GraphQL specification](https://github.com/graphql/graphql-spec), [GraphQL.js](https://github.com/graphql/graphql-js) reference implementation, [DataLoader](https://github.com/graphql/dataloader) library, and [GraphiQL](https://github.com/graphql/graphiql) developer tool.
-GraphQL is a next-generation API technology developed internally by Facebook in 2012 before being publicly [open sourced in 2015](https://code.fb.com/core-data/graphql-a-data-query-language/). Unlike REST-based APIs, which take advantage of HTTP and existing protocols, GraphQL APIs provide developers with the flexibility to query the exact data they need from a diverse set of cloud data sources, with less code, greater performance and security, and a faster development cycle. Not only does this enable developers to rapidly build top quality apps, it also helps them achieve consistency and feature parity across multiple platforms such as web, iOS, Android, and embedded and IoT applications.
+GraphQL is a next-generation API technology developed internally by Facebook in 2012 before being publicly [open sourced in 2015](https://code.fb.com/core-data/graphql-a-data-query-language). Unlike REST-based APIs, which take advantage of HTTP and existing protocols, GraphQL APIs provide developers with the flexibility to query the exact data they need from a diverse set of cloud data sources, with less code, greater performance and security, and a faster development cycle. Not only does this enable developers to rapidly build top quality apps, it also helps them achieve consistency and feature parity across multiple platforms such as web, iOS, Android, and embedded and IoT applications.
The GraphQL Foundation also funded community member Ivan Goncharov to work through a variety of GraphQL project issues, from backlog cleanup and more.
## GROWING MEMBERSHIP
The GraphQL Foundation
-[launched](/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards/) with 10 [members](/foundation/members/) and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. [Join](/join/) your industry peers in helping to shape the GraphQL ecosystem.
+[launched](/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards) with 10 [members](/foundation/members), and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. [Join](/join) your industry peers in helping to shape the GraphQL ecosystem.
-
+
Organizations interested in becoming members of the GraphQL Foundation or the GraphQL Specification can learn more on our [new member page](/join). If you have questions about membership, please send an email to membership@graphql.org.
@@ -78,11 +78,11 @@ In addition to multiple community events, GraphQL Summit 2019 was held in San Fr
### ATTENDEE FEEDBACK
## COMMUNITY UPDATES
@@ -91,35 +91,35 @@ The GraphQL community is fortunate to have an active and engaged group of compan
### WHY OUR MEMBERS USE GRAPHQL
-
+
"GraphQL is a transformative technology that saves time and money for every team building rich, user-centric applications. **Apollo** is proud to play a central role in its rapid rise and maturation in 2019. Apollo’s industry-leading open source and cloud services power many of the world’s most significant online properties, including Expedia, Airbnb, PayPal, The New York Times, SurveyMonkey and thousands more. Apollo also hosts the world’s largest event dedicated to this technology - GraphQL Summit - which in 2019 featured more than 1,200 attendees and over 60 technical talks from some of the world’s most recognizable brands that are already benefiting from GraphQL."
-
+
"Collaborating with the Open Source community is always special; it has allowed **AWS** to improve and better understand the use cases that customers want to tackle, such as local mocking and testing. In order to move fast and ensure that we were releasing a valuable feature, we worked for several months with community members. We want to give a special thanks to Conduit Ventures for their significant contributions to the new Amplify local mocking environment."
-
+
"GraphQL has been a huge accelerator for how **Expedia Group's** web application and service teams build APIs. Being part of the open source community is a priority for us in how we contribute back and learn from others on the same journey."
-
+
"GraphQL is a rare technology that simultaneously improves the communication between _machines_ and between _humans!_ Data becomes easier to explore and consume for humans and GraphQL's spec driven design allows the creation of tools that can automate complex tasks around data fetching on the server and data management on the client. **Hasura's** flagship GraphQL engine automates complex data access work while giving API consumers an API they love using!"
-
+
"**IBM** is pleased to be an active member of the Linux Foundation's GraphQL project by participating on its technical working group and as a founding member of its Governing Board. IBM continued its commitment to innovating on key open technologies such as GraphQL in 2019."
-
+
"At **Novvum**, our team is tiny, but we try to contribute to the foundation and open source community whenever possible. A few projects that come to mind are graphql-playground, graphql-weekly, graphql-birdseye, and the graphql edX course. GraphQL enables teams to focus on their bottom line and less on the nuances of software development. It provides the freedom necessary for frontend devs, UI/UX designers, content marketers, etc. to make incredible stuff without compromising the safety, flexibility, and stability desired by backend teams. It's come a long way since the early days. We are not surprised to see so many big named companies adopting it today."
-
+
"GraphQL has been a complete game changer in the way **PayPal** thinks about data, fetch data and build applications."
-
+
"**Salsify** provides a commerce and content platform that enables the world's largest brands to deliver engaging product experiences across the digital shelf. Our GraphQL powered APIs enable us to support a diverse set of integrated use cases on an extensible microservices platform architecture with great developer ergonomics and excellent performance."
@@ -127,19 +127,19 @@ The GraphQL community is fortunate to have an active and engaged group of compan
### HOW OUR MEMBERS ARE USING GRAPHQL
-
+
-**Expedia Group** continues to rapidly adopt GraphQL. Over the last 2 years we have transitioned our REST APIs to GraphQL – and now over 90% of all customer interactions in web and native[vrbo.com](http://vrbo.com/) apps are powered by GraphQL APIs and over 30% of all customer interactions on Expedia.com as well as other brands such as Hotels.com.
+**Expedia Group** continues to rapidly adopt GraphQL. Over the last 2 years we have transitioned our REST APIs to GraphQL – and now over 90% of all customer interactions in web and native[vrbo.com](http://vrbo.com) apps are powered by GraphQL APIs and over 30% of all customer interactions on Expedia.com as well as other brands such as Hotels.com.
-
+
-**Facebook** has used GraphQL to power our production mobile apps for the last 7.5 years, from its creation as an internal API in 2012 to its open sourcing in 2015 and beyond. In 2020, we’re as invested in the community and the technology as ever — we’re [discussing our approach to streaming semantics with the GraphQL working group](https://github.com/graphql/graphql-wg/issues/329), and we’re [powering the new Facebook.com with GraphQL and Relay](https://developers.facebook.com/videos/2019/building-the-new-facebookcom-with-react-graphql-and-relay/).
+**Facebook** has used GraphQL to power our production mobile apps for the last 7.5 years, from its creation as an internal API in 2012 to its open sourcing in 2015 and beyond. In 2020, we’re as invested in the community and the technology as ever — we're [discussing our approach to streaming semantics with the GraphQL working group](https://github.com/graphql/graphql-wg/issues/329), and we’re [powering the new Facebook.com with GraphQL and Relay](https://developers.facebook.com/videos/2019/building-the-new-facebookcom-with-react-graphql-and-relay).
-
+
**Novvum** had been deploying graphql into production for the majority of our customers since its inception back in 2015. On any project, we find it extremely beneficial to add GraphQL as the primary communication layer between clients and the data that they need. From building car-sharing platforms on a time crunch to architecting fintech infrastructure to scaffolding MVPs for early-stage startups, we've observed many short- and long-term benefits by introducing GraphQL.
-
+
**PayPal** uses GraphQL to power many of our products and user experiences including PayPal Checkout, our flagship product that facilitates payments for millions of merchants and users.
@@ -149,27 +149,27 @@ The GraphQL community is fortunate to have an active and engaged group of compan
Our members have been active and engaged participants in the GraphQL ecosystem. Here are some of the ways in which our ecosystem has been enriched through their participation.
-
+
-- **[Apollo Graph Manager](https://www.apollographql.com/docs/graph-manager/):** Tools and services for teams collaborating on a data graph, including a central schema registry, data graph analytics, workflows for developing and maintaining agile schemas, and machinery for managing graph security and policy and operations.
-- **[Federation](https://www.apollographql.com/docs/apollo-server/federation/introduction/):** An open specification for composing multiple GraphQL services into a single data graph. The specification has been widely supported by the GraphQL community, with JavaScript, Kotlin, Java, Go, Python, Ruby, and PHP servers all adopting the federation programming model.
-- **[Apollo Client](https://www.apollographql.com/docs/react/v3.0-beta):** The industry’s most popular open-source library for connecting application UI to a GraphQL service. The upcoming Apollo Client 3, currently in beta, introduces a flexible data cache and brings many improvements to managing both local state and remote data.
-- **[Apollo Server](https://www.apollographql.com/docs/apollo-server):** An open-source library for building a data graph in JavaScript that’s incrementally adoptable, production-ready, and compatible with any data source. Apollo Server defines the de-facto standard for GraphQL over HTTP and supports essential features for running GraphQL at scale such as federation, tracing, and caching.
+- **[Apollo Graph Manager](https://apollographql.com/docs/graph-manager):** Tools and services for teams collaborating on a data graph, including a central schema registry, data graph analytics, workflows for developing and maintaining agile schemas, and machinery for managing graph security and policy and operations.
+- **[Federation](https://apollographql.com/docs/apollo-server/federation/introduction):** An open specification for composing multiple GraphQL services into a single data graph. The specification has been widely supported by the GraphQL community, with JavaScript, Kotlin, Java, Go, Python, Ruby, and PHP servers all adopting the federation programming model.
+- **[Apollo Client](https://apollographql.com/docs/react/v3.0-beta):** The industry’s most popular open-source library for connecting application UI to a GraphQL service. The upcoming Apollo Client 3, currently in beta, introduces a flexible data cache and brings many improvements to managing both local state and remote data.
+- **[Apollo Server](https://apollographql.com/docs/apollo-server):** An open-source library for building a data graph in JavaScript that’s incrementally adoptable, production-ready, and compatible with any data source. Apollo Server defines the de-facto standard for GraphQL over HTTP and supports essential features for running GraphQL at scale such as federation, tracing, and caching.
- **[Apollo developer tooling](https://github.com/apollographql/apollo-tooling):** The Apollo tooling repository is home to several open-source GraphQL developer tools, including the Apollo CLI and VS Code extension. These tools connect to the Apollo registry, a central hub for managing your data graph, in order to provide workflows for an excellent developer experience.
-
+
- **[GraphQL Kotlin](https://github.com/ExpediaGroup/graphql-kotlin):** Continued work on GraphQL Kotlin libraries for running GraphQL Server, including code first-schema generation and a Spring Boot based Kotlin Graphql Server. This technology powers Expedia.com and its fleet of brands like Orbitz, Wotif, & Travelocity
- **[GraphQL Component](https://github.com/ExpediaGroup/graphql-component):** GraphQL Component is a modular graphql schema framework in javascript being utilized to build APIs for Vrbo travel and owner applications, as well as partner services and public APIs.
-
+
- **[GraphQL Engine](https://github.com/hasura/graphql-engine):** An open-source GraphQL engine for Postgres and other data sources.
- **[GraphQURL](https://github.com/hasura/graphqurl):** A command like utility like curl for GraphQL, with autocomplete and support for subscriptions.
- **[graphql-bench](https://github.com/hasura/graphql-bench):** A GraphQL benchmarking suite to make it easy for developers to test the performance of their GraphQL servers.
- **[learn-graphql](https://github.com/hasura/learn-graphql):** Open-source tutorials for almost all frontend application stacks to get started with GraphQL.
-
+
- **[OpenAPI-to-GraphQL](https://github.com/IBM/openapi-to-graphql):** Released the open-source OpenAPI-to-GraphQL library, which generates GraphQL interfaces on top of existing REST APIs. IBM made numerous other contributions to the open source community.
- **[libgraphqlparser](https://github.com/graphql/libgraphqlparser):** Delivered improvements to the open source GraphQL C++ library
@@ -179,70 +179,70 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
### PUBLICATIONS FROM OUR MEMBERS
-
+
-- [Principled GraphQL, best practices for creating, maintaining, and operating a data graph](https://principledgraphql.com/)
-- [Fullstack GraphQL tutorial](https://www.apollographql.com/docs/tutorial/introduction/)
+- [Principled GraphQL, best practices for creating, maintaining, and operating a data graph](https://principledgraphql.com)
+- [Fullstack GraphQL tutorial](https://apollographql.com/docs/tutorial/introduction)
-
+
-- [Merging GraphQL schema files and more from the CLI](https://aws.amazon.com/blogs/mobile/merging-graphql-schema-files-and-more-with-the-cli/)
-- [Developing and testing GraphQL APIs, Storage and Functions with Amplify Framework Local Mocking features](https://aws.amazon.com/blogs/mobile/amplify-framework-local-mocking/)
-- [Amplify DataStore – Simplify Development of Offline Apps with GraphQL](https://aws.amazon.com/blogs/aws/amplify-datastore-simplify-development-of-offline-apps-with-graphql/)
+- [Merging GraphQL schema files and more from the CLI](https://aws.amazon.com/blogs/mobile/merging-graphql-schema-files-and-more-with-the-cli)
+- [Developing and testing GraphQL APIs, Storage and Functions with Amplify Framework Local Mocking features](https://aws.amazon.com/blogs/mobile/amplify-framework-local-mocking)
+- [Amplify DataStore – Simplify Development of Offline Apps with GraphQL](https://aws.amazon.com/blogs/aws/amplify-datastore-simplify-development-of-offline-apps-with-graphql)
-
-- [Architecture of a high performance GraphQL to SQL engine](https://hasura.io/blog/architecture-of-a-high-performance-graphql-to-sql-server-58d9944b8a87/)
-- [Level up your serverless game with a GraphQL data-as-a-service layer](https://hasura.io/blog/level-up-your-serverless-game-with-a-graphql-data-as-a-service-layer/)
-- [Fluent GraphQL clients: how to write queries like a boss](https://hasura.io/blog/fluent-graphql-clients-how-to-write-queries-like-a-boss/)
+- [Architecture of a high performance GraphQL to SQL engine](https://hasura.io/blog/architecture-of-a-high-performance-graphql-to-sql-server-58d9944b8a87)
+- [Level up your serverless game with a GraphQL data-as-a-service layer](https://hasura.io/blog/level-up-your-serverless-game-with-a-graphql-data-as-a-service-layer)
+- [Fluent GraphQL clients: how to write queries like a boss](https://hasura.io/blog/fluent-graphql-clients-how-to-write-queries-like-a-boss)
-
+
- [An Empirical Study of GraphQL Schemas (at ICSOC conference)](https://arxiv.org/pdf/1907.13012.pdf)
- [An Empirical Study of GraphQL (blog)](https://medium.com/swlh/empirical-study-graphql-icsoc19-29038c48da5)
-- [GraphQL API Management](https://www.ibm.com/blogs/research/2019/02/graphql-api-management)
+- [GraphQL API Management](https://ibm.com/blogs/research/2019/02/graphql-api-management)
---
### TALKS, PAPERS, AND DISCUSSIONS ON GRAPHQL
-
+
- [GraphQL Summit 2019 Keynote, by Matt DeBergalis](https://youtu.be/EDqw-sGVq3k)
- [Migrating to Apollo and GraphQL at Airbnb, by Brie Bunge](https://youtu.be/pywcFELoU8E)
- [The Architecture of Federation, by Jeff Hampton](https://youtu.be/LKQKn1oFXJU)
-- [All GraphQL Summit 2019 talks](https://www.youtube.com/playlist?list=PLpi1lPB6opQyraZSmwFre_FpL00_3nTzV)
+- [All GraphQL Summit 2019 talks](https://youtube.com/playlist?list=PLpi1lPB6opQyraZSmwFre_FpL00_3nTzV)
-
+
-- Co-organized the [GraphQL London Meetup group](https://www.meetup.com/GraphQL-London)
-- Co-organized the [GraphQL San Francisco Meetup group](https://www.meetup.com/GraphQL-SF)
-- [Archive of Meetup talks](https://www.youtube.com/c/GraphQLTalks).
-- [Building modern APIs with GraphQL](https://www.youtube.com/watch?v=bRnu7xvU1_Y)
+- Co-organized the [GraphQL London Meetup group](https://meetup.com/GraphQL-London)
+- Co-organized the [GraphQL San Francisco Meetup group](https://meetup.com/GraphQL-SF)
+- [Archive of Meetup talks](https://youtube.com/c/GraphQLTalks).
+- [Building modern APIs with GraphQL](https://youtube.com/watch?v=bRnu7xvU1_Y)
-
+
-- [Creating a federated schema for a global company (GraphQL Summit)](https://www.youtube.com/watch?v=MuD3TAP0D9Y)
+- [Creating a federated schema for a global company (GraphQL Summit)](https://youtube.com/watch?v=MuD3TAP0D9Y)
-
+
-- [Accelerating product and data delivery with GraphQL](https://www.youtube.com/watch?v=znzdocyfZsc)
-- [API management and governance for GraphQL](https://www.youtube.com/watch?v=ypEtjxVmgoI)
-- [Building a high performance realtime GraphQL API on existing databases](https://www.youtube.com/watch?v=HOKMJkBYaqQ)
+- [Accelerating product and data delivery with GraphQL](https://youtube.com/watch?v=znzdocyfZsc)
+- [API management and governance for GraphQL](https://youtube.com/watch?v=ypEtjxVmgoI)
+- [Building a high performance realtime GraphQL API on existing databases](https://youtube.com/watch?v=HOKMJkBYaqQ)
-
+
-- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net/))
+- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net))
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
-- [Conducted IBM Developer Meetups where GraphQL work was highlighted in talks and technical demonstrations](https://www.meetup.com/ibmcodenyc/events/266535427/)
+- [Conducted IBM Developer Meetups where GraphQL work was highlighted in talks and technical demonstrations](https://meetup.com/ibmcodenyc/events/266535427)
## TRAINING
-The GraphQL Foundation is proud to offer a new, free course – [Exploring GraphQL: A Query Language for APIs](https://www.edx.org/course/introduction-to-graphql) – through [edX](https://www.edx.org/) which we have had thousands already sign up for.
+The GraphQL Foundation is proud to offer a new, free course – [Exploring GraphQL: A Query Language for APIs](https://edx.org/course/introduction-to-graphql) – through [edX](https://edx.org) which we have had thousands already sign up for.
If you are a programmer, this course will help you gain the skills you need to get started using GraphQL for a small project, or professionally in production. We cover a variety of tools to address multiple use cases.
@@ -254,7 +254,7 @@ Want to start a meetup? Drop us a line, we’d love to hear your idea: info@grap
## GRAPHQL LANDSCAPE
-The [GraphQL Interactive Landscape](https://landscape.graphql.org/) was recently published by the GraphQL Foundation.
+The [GraphQL Interactive Landscape](https://landscape.graphql.org) was recently published by the GraphQL Foundation.

@@ -264,13 +264,13 @@ The landscape is open source, and contributions from the community are welcomed.
## DEVSTATS
-The [DevStats](https://github.com/cncf/devstats) tool, which is open source, downloads data representing every public GitHub action across GraphQL Foundation projects and stores it in a queryable [Postgres](https://www.postgresql.org/) database. DevStats downloads updated data every hour and you can check out the tool here: [https://devstats.graphql.org](https://devstats.graphql.org/)
+The [DevStats](https://github.com/cncf/devstats) tool, which is open source, downloads data representing every public GitHub action across GraphQL Foundation projects and stores it in a queryable [Postgres](https://postgresql.org) database. DevStats downloads updated data every hour, and you can check out the tool here: [https://devstats.graphql.org](https://devstats.graphql.org)
## A LOOK AHEAD TO 2020
As the Executive Director of the GraphQL project, I hope I can speak for the whole community when I say we are looking forward to another productive year of GraphQL development. We are putting the final touches on the GraphQL 2020 spec release, and continue to make great progress developing new features, stabilizing existing ones, and exploring beyond core GraphQL.
-It has been really encouraging to see GraphQL continue to evolve over the past year as a technology and as a community. GraphQL is being used at scale by not only Facebook but now a great number of organizations large and small. As I said when first introducing the project, GraphQL is unapologetically driven by the needs of the client. This has been a critical aspect of GraphQL's success and it is great to see this principle reflect itself in our community, where those more interested in consuming APIs than producing them have come together to support the ongoing sustainability of the project.
+It has been really encouraging to see GraphQL continue to evolve over the past year as a technology and as a community. GraphQL is being used at scale by not only Facebook but now a great number of organizations large and small. As I said when first introducing the project, GraphQL is unapologetically driven by the needs of the client. This has been a critical aspect of GraphQL's success, and it is great to see this principle reflect itself in our community, where those more interested in consuming APIs than producing them have come together to support the ongoing sustainability of the project.
Since establishing the GraphQL Foundation, we've had an outpouring of support from these companies. This neutral, non-profit home for the GraphQL project has provided a healthy way for users, contributors, and supporters to collaborate and contribute funding in support of our programs and collaborative processes. For example, this support has enabled us to support long-time contributor Ivan Goncharov to focus on crucial development and maintenance of the reference implementation, specification and other community gardening work. It has also allowed us to launch a free GraphQL edX course, and has enabled us to take some first steps toward supporting and producing community events.
From 84fca6f9c2d7f32bdd89421de4aea200b6ea17ba Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:52:21 +0100
Subject: [PATCH 23/41] polish
---
.../pages/foundation/annual-reports/2019.mdx | 64 +++++++++++--------
1 file changed, 37 insertions(+), 27 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index cea700a2cf..16cdecc125 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -57,7 +57,7 @@ The GraphQL Foundation also funded community member Ivan Goncharov to work throu
The GraphQL Foundation
[launched](/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards) with 10 [members](/foundation/members), and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. [Join](/join) your industry peers in helping to shape the GraphQL ecosystem.
-
+
Organizations interested in becoming members of the GraphQL Foundation or the GraphQL Specification can learn more on our [new member page](/join). If you have questions about membership, please send an email to membership@graphql.org.
@@ -91,35 +91,45 @@ The GraphQL community is fortunate to have an active and engaged group of compan
### WHY OUR MEMBERS USE GRAPHQL
-
"GraphQL is a transformative technology that saves time and money for every team building rich, user-centric applications. **Apollo** is proud to play a central role in its rapid rise and maturation in 2019. Apollo’s industry-leading open source and cloud services power many of the world’s most significant online properties, including Expedia, Airbnb, PayPal, The New York Times, SurveyMonkey and thousands more. Apollo also hosts the world’s largest event dedicated to this technology - GraphQL Summit - which in 2019 featured more than 1,200 attendees and over 60 technical talks from some of the world’s most recognizable brands that are already benefiting from GraphQL."
-
+
"Collaborating with the Open Source community is always special; it has allowed **AWS** to improve and better understand the use cases that customers want to tackle, such as local mocking and testing. In order to move fast and ensure that we were releasing a valuable feature, we worked for several months with community members. We want to give a special thanks to Conduit Ventures for their significant contributions to the new Amplify local mocking environment."
-
+
"GraphQL has been a huge accelerator for how **Expedia Group's** web application and service teams build APIs. Being part of the open source community is a priority for us in how we contribute back and learn from others on the same journey."
-
+
"GraphQL is a rare technology that simultaneously improves the communication between _machines_ and between _humans!_ Data becomes easier to explore and consume for humans and GraphQL's spec driven design allows the creation of tools that can automate complex tasks around data fetching on the server and data management on the client. **Hasura's** flagship GraphQL engine automates complex data access work while giving API consumers an API they love using!"
-
+
"**IBM** is pleased to be an active member of the Linux Foundation's GraphQL project by participating on its technical working group and as a founding member of its Governing Board. IBM continued its commitment to innovating on key open technologies such as GraphQL in 2019."
-
+
"At **Novvum**, our team is tiny, but we try to contribute to the foundation and open source community whenever possible. A few projects that come to mind are graphql-playground, graphql-weekly, graphql-birdseye, and the graphql edX course. GraphQL enables teams to focus on their bottom line and less on the nuances of software development. It provides the freedom necessary for frontend devs, UI/UX designers, content marketers, etc. to make incredible stuff without compromising the safety, flexibility, and stability desired by backend teams. It's come a long way since the early days. We are not surprised to see so many big named companies adopting it today."
-
+
"GraphQL has been a complete game changer in the way **PayPal** thinks about data, fetch data and build applications."
-
+
"**Salsify** provides a commerce and content platform that enables the world's largest brands to deliver engaging product experiences across the digital shelf. Our GraphQL powered APIs enable us to support a diverse set of integrated use cases on an extensible microservices platform architecture with great developer ergonomics and excellent performance."
@@ -127,19 +137,19 @@ The GraphQL community is fortunate to have an active and engaged group of compan
### HOW OUR MEMBERS ARE USING GRAPHQL
-
+
**Expedia Group** continues to rapidly adopt GraphQL. Over the last 2 years we have transitioned our REST APIs to GraphQL – and now over 90% of all customer interactions in web and native[vrbo.com](http://vrbo.com) apps are powered by GraphQL APIs and over 30% of all customer interactions on Expedia.com as well as other brands such as Hotels.com.
-
+
**Facebook** has used GraphQL to power our production mobile apps for the last 7.5 years, from its creation as an internal API in 2012 to its open sourcing in 2015 and beyond. In 2020, we’re as invested in the community and the technology as ever — we're [discussing our approach to streaming semantics with the GraphQL working group](https://github.com/graphql/graphql-wg/issues/329), and we’re [powering the new Facebook.com with GraphQL and Relay](https://developers.facebook.com/videos/2019/building-the-new-facebookcom-with-react-graphql-and-relay).
-
+
**Novvum** had been deploying graphql into production for the majority of our customers since its inception back in 2015. On any project, we find it extremely beneficial to add GraphQL as the primary communication layer between clients and the data that they need. From building car-sharing platforms on a time crunch to architecting fintech infrastructure to scaffolding MVPs for early-stage startups, we've observed many short- and long-term benefits by introducing GraphQL.
-
+
**PayPal** uses GraphQL to power many of our products and user experiences including PayPal Checkout, our flagship product that facilitates payments for millions of merchants and users.
@@ -149,7 +159,7 @@ The GraphQL community is fortunate to have an active and engaged group of compan
Our members have been active and engaged participants in the GraphQL ecosystem. Here are some of the ways in which our ecosystem has been enriched through their participation.
-
+
- **[Apollo Graph Manager](https://apollographql.com/docs/graph-manager):** Tools and services for teams collaborating on a data graph, including a central schema registry, data graph analytics, workflows for developing and maintaining agile schemas, and machinery for managing graph security and policy and operations.
- **[Federation](https://apollographql.com/docs/apollo-server/federation/introduction):** An open specification for composing multiple GraphQL services into a single data graph. The specification has been widely supported by the GraphQL community, with JavaScript, Kotlin, Java, Go, Python, Ruby, and PHP servers all adopting the federation programming model.
@@ -157,19 +167,19 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
- **[Apollo Server](https://apollographql.com/docs/apollo-server):** An open-source library for building a data graph in JavaScript that’s incrementally adoptable, production-ready, and compatible with any data source. Apollo Server defines the de-facto standard for GraphQL over HTTP and supports essential features for running GraphQL at scale such as federation, tracing, and caching.
- **[Apollo developer tooling](https://github.com/apollographql/apollo-tooling):** The Apollo tooling repository is home to several open-source GraphQL developer tools, including the Apollo CLI and VS Code extension. These tools connect to the Apollo registry, a central hub for managing your data graph, in order to provide workflows for an excellent developer experience.
-
+
- **[GraphQL Kotlin](https://github.com/ExpediaGroup/graphql-kotlin):** Continued work on GraphQL Kotlin libraries for running GraphQL Server, including code first-schema generation and a Spring Boot based Kotlin Graphql Server. This technology powers Expedia.com and its fleet of brands like Orbitz, Wotif, & Travelocity
- **[GraphQL Component](https://github.com/ExpediaGroup/graphql-component):** GraphQL Component is a modular graphql schema framework in javascript being utilized to build APIs for Vrbo travel and owner applications, as well as partner services and public APIs.
-
+
- **[GraphQL Engine](https://github.com/hasura/graphql-engine):** An open-source GraphQL engine for Postgres and other data sources.
- **[GraphQURL](https://github.com/hasura/graphqurl):** A command like utility like curl for GraphQL, with autocomplete and support for subscriptions.
- **[graphql-bench](https://github.com/hasura/graphql-bench):** A GraphQL benchmarking suite to make it easy for developers to test the performance of their GraphQL servers.
- **[learn-graphql](https://github.com/hasura/learn-graphql):** Open-source tutorials for almost all frontend application stacks to get started with GraphQL.
-
+
- **[OpenAPI-to-GraphQL](https://github.com/IBM/openapi-to-graphql):** Released the open-source OpenAPI-to-GraphQL library, which generates GraphQL interfaces on top of existing REST APIs. IBM made numerous other contributions to the open source community.
- **[libgraphqlparser](https://github.com/graphql/libgraphqlparser):** Delivered improvements to the open source GraphQL C++ library
@@ -179,28 +189,28 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
### PUBLICATIONS FROM OUR MEMBERS
-
+
- [Principled GraphQL, best practices for creating, maintaining, and operating a data graph](https://principledgraphql.com)
- [Fullstack GraphQL tutorial](https://apollographql.com/docs/tutorial/introduction)
-
+
- [Merging GraphQL schema files and more from the CLI](https://aws.amazon.com/blogs/mobile/merging-graphql-schema-files-and-more-with-the-cli)
- [Developing and testing GraphQL APIs, Storage and Functions with Amplify Framework Local Mocking features](https://aws.amazon.com/blogs/mobile/amplify-framework-local-mocking)
- [Amplify DataStore – Simplify Development of Offline Apps with GraphQL](https://aws.amazon.com/blogs/aws/amplify-datastore-simplify-development-of-offline-apps-with-graphql)
-
- [Architecture of a high performance GraphQL to SQL engine](https://hasura.io/blog/architecture-of-a-high-performance-graphql-to-sql-server-58d9944b8a87)
- [Level up your serverless game with a GraphQL data-as-a-service layer](https://hasura.io/blog/level-up-your-serverless-game-with-a-graphql-data-as-a-service-layer)
- [Fluent GraphQL clients: how to write queries like a boss](https://hasura.io/blog/fluent-graphql-clients-how-to-write-queries-like-a-boss)
-
+
- [An Empirical Study of GraphQL Schemas (at ICSOC conference)](https://arxiv.org/pdf/1907.13012.pdf)
- [An Empirical Study of GraphQL (blog)](https://medium.com/swlh/empirical-study-graphql-icsoc19-29038c48da5)
@@ -210,31 +220,31 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
### TALKS, PAPERS, AND DISCUSSIONS ON GRAPHQL
-
+
- [GraphQL Summit 2019 Keynote, by Matt DeBergalis](https://youtu.be/EDqw-sGVq3k)
- [Migrating to Apollo and GraphQL at Airbnb, by Brie Bunge](https://youtu.be/pywcFELoU8E)
- [The Architecture of Federation, by Jeff Hampton](https://youtu.be/LKQKn1oFXJU)
- [All GraphQL Summit 2019 talks](https://youtube.com/playlist?list=PLpi1lPB6opQyraZSmwFre_FpL00_3nTzV)
-
+
- Co-organized the [GraphQL London Meetup group](https://meetup.com/GraphQL-London)
- Co-organized the [GraphQL San Francisco Meetup group](https://meetup.com/GraphQL-SF)
- [Archive of Meetup talks](https://youtube.com/c/GraphQLTalks).
- [Building modern APIs with GraphQL](https://youtube.com/watch?v=bRnu7xvU1_Y)
-
+
- [Creating a federated schema for a global company (GraphQL Summit)](https://youtube.com/watch?v=MuD3TAP0D9Y)
-
+
- [Accelerating product and data delivery with GraphQL](https://youtube.com/watch?v=znzdocyfZsc)
- [API management and governance for GraphQL](https://youtube.com/watch?v=ypEtjxVmgoI)
- [Building a high performance realtime GraphQL API on existing databases](https://youtube.com/watch?v=HOKMJkBYaqQ)
-
+
- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net))
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
From b7721d0bf571c87173726cc70fb3f97b9044abd4 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 15:57:13 +0100
Subject: [PATCH 24/41] fix hydration errors
---
.../pages/foundation/annual-reports/2019.mdx | 20 ++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index 16cdecc125..0195cacb0e 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -77,13 +77,19 @@ In addition to multiple community events, GraphQL Summit 2019 was held in San Fr
### ATTENDEE FEEDBACK
-
>
)
From ca8c592f2ecfd6067bf27e449afd60e6035d56f6 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 16:34:15 +0100
Subject: [PATCH 26/41] polish
---
.../pages/foundation/annual-reports/2019.mdx | 61 ++++++-------------
1 file changed, 20 insertions(+), 41 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index 9c7ab65cf5..13aa304ab0 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -19,32 +19,11 @@ Comments and feedback are welcome at [info@graphql.org](mailto:info@graphql.org)
>
> – _**Lee Byron**, Executive Director, GraphQL Foundation, and GraphQL Co-Creator_
-## A BUSY YEAR FOR GRAPHQL
-
-- [Who we are](#who-we-are)
-- [Cultivating Projects](#cultivating-projects)
-- [Growing membership](#growing-membership)
-- [Growing The Graphql End User Community](#growing-the-graphql-end-user-community)
-- [How Do I Get Involved?](#how-do-i-get-involved)
-- [Events 2019](#events-2019)
- - [Attendee Feedback](#attendee-feedback)
-- [Community Updates](#community-updates)
- - [Why Our Members Use GraphQL](#why-our-members-use-graphql)
- - [How Our Members Are Using GraphQL](#how-our-members-are-using-graphql)
- - [Member Contributions to the GraphQL Ecosystem](#member-contributions-to-the-graphql-ecosystem)
- - [Publications From Our Members](#publications-from-our-members)
- - [Talks, Papers, and Discussions on GraphQL](#talks-papers-and-discussions-on-graphql)
-- [Training](#training)
-- [Community Engagement](#community-engagement)
-- [GraphQL Landscape](#graphql-landscape)
-- [Devstats](#devstats)
-- [A Look Ahead to 2020](#a-look-ahead-to-2020)
-
-## WHO WE ARE
+## Who we are
The [GraphQL Foundation](/) is a neutral foundation created by the founders of [GraphQL](https://graphql.org), along with many organizations who are using GraphQL in production. The GraphQL Foundation encourages contributions, stewardship, and a shared investment by providing vendor-neutral events, documentation, tools, and support for GraphQL.
-## CULTIVATING PROJECTS
+## Cultivating projects
The GraphQL Foundation hosts the [GraphQL specification](https://github.com/graphql/graphql-spec), [GraphQL.js](https://github.com/graphql/graphql-js) reference implementation, [DataLoader](https://github.com/graphql/dataloader) library, and [GraphiQL](https://github.com/graphql/graphiql) developer tool.
@@ -52,7 +31,7 @@ GraphQL is a next-generation API technology developed internally by Facebook i
The GraphQL Foundation also funded community member Ivan Goncharov to work through a variety of GraphQL project issues, from backlog cleanup and more.
-## GROWING MEMBERSHIP
+## Growing membership
The GraphQL Foundation
[launched](/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards) with 10 [members](/foundation/members), and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. [Join](/join) your industry peers in helping to shape the GraphQL ecosystem.
@@ -61,21 +40,21 @@ The GraphQL Foundation
Organizations interested in becoming members of the GraphQL Foundation or the GraphQL Specification can learn more on our [new member page](/join). If you have questions about membership, please send an email to membership@graphql.org.
-## GROWING THE GRAPHQL END USER COMMUNITY
+## Growing the GraphQL end user community
We offer multiple opportunities for end users to contribute and have their voices heard. Companies that use GraphQL technologies internally, but do not sell any GraphQL services externally, are eligible to join the end user community.
-Our end user community is growing and we finished 2019 with 83 top companies and startups that are committed to accelerating the adoption of GraphQL and improving the developer experience. Please email us for more information at membership@graphql.org.
+Our end user community is growing, and we finished 2019 with 83 top companies and startups that are committed to accelerating the adoption of GraphQL and improving the developer experience. Please email us for more information at membership@graphql.org.
-## HOW DO I GET INVOLVED?
+## How do I get involved?
GraphQL is first and foremost an open source project, and developers can contribute to the project at [https://github.com/graphql](https://github.com/graphql). Organizations interested in becoming members of the GraphQL Foundation or participating in development of the GraphQL Specification can learn more on our [new member page](/join). If you have questions about membership, please send an email to [membership@graphql.org](mailto:membership@graphql.org).
-## EVENTS 2019
+## Events 2019
In addition to multiple community events, GraphQL Summit 2019 was held in San Francisco, and GraphQL Asia 2019 was held in Bangalore.
-### ATTENDEE FEEDBACK
+### Attendee feedback
export const html = (
<>
@@ -91,11 +70,11 @@ export const html = (
{html}
-## COMMUNITY UPDATES
+## Community updates
The GraphQL community is fortunate to have an active and engaged group of companies participating in the GraphQL Foundation.
-### WHY OUR MEMBERS USE GRAPHQL
+### Why our members use GraphQL
export const style = {
textAlign: 'center',
@@ -141,7 +120,7 @@ export const style2 = {
---
-### HOW OUR MEMBERS ARE USING GRAPHQL
+### How our members are using GraphQL
@@ -161,7 +140,7 @@ export const style2 = {
---
-### MEMBER CONTRIBUTIONS TO THE GRAPHQL ECOSYSTEM
+### Member contributions to the GraphQL ecosystem
Our members have been active and engaged participants in the GraphQL ecosystem. Here are some of the ways in which our ecosystem has been enriched through their participation.
@@ -193,7 +172,7 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
---
-### PUBLICATIONS FROM OUR MEMBERS
+### Publications from our members
@@ -224,7 +203,7 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
---
-### TALKS, PAPERS, AND DISCUSSIONS ON GRAPHQL
+### Talks, papers, and discussions on GraphQL
@@ -252,11 +231,11 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
-- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net))
+- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net)
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
- [Conducted IBM Developer Meetups where GraphQL work was highlighted in talks and technical demonstrations](https://meetup.com/ibmcodenyc/events/266535427)
-## TRAINING
+## Training
The GraphQL Foundation is proud to offer a new, free course – [Exploring GraphQL: A Query Language for APIs](https://edx.org/course/introduction-to-graphql) – through [edX](https://edx.org) which we have had thousands already sign up for.
@@ -264,11 +243,11 @@ If you are a programmer, this course will help you gain the skills you need to g
If you are nontechnical, this course will help you communicate with developers and participate in conversations about GraphQL, and understand when and why to use GraphQL for a project.
-## COMMUNITY ENGAGEMENT
+## Community engagement
Want to start a meetup? Drop us a line, we’d love to hear your idea: info@graphql.org.
-## GRAPHQL LANDSCAPE
+## GraphQL landscape
The [GraphQL Interactive Landscape](https://landscape.graphql.org) was recently published by the GraphQL Foundation.
@@ -278,11 +257,11 @@ What is an interactive landscape? The concept started when the CNCF began the pr
The landscape is open source, and contributions from the community are welcomed. You can find guidelines for updating the landscape at: [https://github.com/graphql/graphql-landscape](https://github.com/graphql/graphql-landscape).
-## DEVSTATS
+## Devstats
The [DevStats](https://github.com/cncf/devstats) tool, which is open source, downloads data representing every public GitHub action across GraphQL Foundation projects and stores it in a queryable [Postgres](https://postgresql.org) database. DevStats downloads updated data every hour, and you can check out the tool here: [https://devstats.graphql.org](https://devstats.graphql.org)
-## A LOOK AHEAD TO 2020
+## A look ahead to 2020
As the Executive Director of the GraphQL project, I hope I can speak for the whole community when I say we are looking forward to another productive year of GraphQL development. We are putting the final touches on the GraphQL 2020 spec release, and continue to make great progress developing new features, stabilizing existing ones, and exploring beyond core GraphQL.
From 4cd13ade2f1211de875bec131d6cc36c5518b3e9 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 16:44:14 +0100
Subject: [PATCH 27/41] move public files
---
.gitignore | 2 +-
{static => website/public}/favicon.ico | Bin
...dation-Participation_Agreement-Preview.pdf | Bin
.../public}/files/LF_Membership-Preview.pdf | Bin
...rticipation-agreement-revised-jan-2022.pdf | Bin
.../017d9954f1be1c7e2ab2696c2abe6b9b.png | Bin
.../09bc04c42310bfe14024455bce46d781.png | Bin
.../0b5f6bcbfc77f97f4cdc6cdf4a171f82.png | Bin
.../0bea54e1f79d706f2da4c802f8581ae5.png | Bin
.../0f57893e761e683f58c4ace9e766c3bf.png | Bin
.../118f99976647d953d6554bac33dbf3bf.png | Bin
.../158baff7d8c21cc0c210f805baa3e383.png | Bin
.../17f150667d13a57f28bae524443f4c60.png | Bin
.../1e7a35fbd833d9be1aa9719f77c86fb7.png | Bin
.../217cf30afd15a724ebb42c4d82169a26.png | Bin
.../247898ad29d5e594611af3cecf82f5e3.png | Bin
.../2517f7a1d13ad3c0652e1b3cc5b65714.png | Bin
.../275443caa2eda5df06699b724efa533c.png | Bin
.../2816d4a81204283289584830acda7826.png | Bin
.../295679e18701aa2be84f329db1118637.png | Bin
.../2b7518a6d8f2b72122c17beb92af8c89.png | Bin
.../3045d1849811f05cc2afaf690ea474a5.png | Bin
.../34bdd9b21a3cf2db6600a5ef840b3fb3.png | Bin
.../38cb4033d5cfed2d5b508f08374ebe9b.png | Bin
.../3a88eedac57e223aa69979407cfcc8f0.png | Bin
.../3d167cf84012c4ff2dcca8fca736b0dd.png | Bin
.../3e70d76748962770972c5c80e45ee9d7.png | Bin
.../47c1bf50ce5556edcae9a84795485a8f.png | Bin
.../48f4e69c465b793750b5aa47bb7f2b6e.png | Bin
.../4a4e842d1cd0c06083f484d31225abd1.png | Bin
.../4feef977ceb883c69c91ccd2dd607aec.png | Bin
.../50005edb4a441b0335d1b80b4ad62b1a.png | Bin
.../504049f2217d6c59b9f67eba97089bfe.png | Bin
.../520b70cfea27170fd6ed21d79f6b0357.png | Bin
.../55dd5ef56bd778955509d08ea81903ea.png | Bin
.../5684f90e0472771532ed5ee2b237300f.png | Bin
.../58b45c125046c6c7a8c35ec084bfbb19.png | Bin
.../5a0c1b8ab4957bfd83f55480c1508fe5.png | Bin
.../5bf24cd6483a63e62a2276fe38effb82.png | Bin
.../5d6afee232e35ba1880e7b25d810ef49.png | Bin
.../5f920cd134d4dea87fce5e59bc4418dc.png | Bin
.../61b9efc6ff8e0f295be6c65c08871c23.png | Bin
.../6543e60efc3f0c20d24a40cffef29558.png | Bin
.../66e332f155e04efea896d5bd5dcd2ba5.png | Bin
.../675c416b16ad2b0c519b1ec894353fc5.png | Bin
.../6c2eefe955e288e974a9182dac06f8fa.png | Bin
.../6d07d593f16320c810d6aba8553199ed.png | Bin
.../70f9e59dc60cf417aa38eb890b2a8abe.png | Bin
.../72ac8d3f7585f86cb9acc77b9eb22241.png | Bin
.../77623920b158a75435d48896a8d56b35.png | Bin
.../7a87fe1cfc351a993ed40e01d384e3c6.png | Bin
.../7bb96b3d5660f2d285220d7cdd59eb7f.png | Bin
.../7d2491dd9142a830ac0c3ff1477636d8.png | Bin
.../80869c56bb59f51de6ac8468c18eecdc.png | Bin
.../81daf0dd0b26efdc784ba0a530e54a68.png | Bin
.../888b77af90aa0ff776adc9669a29cb3f.png | Bin
.../88bbc65fe92d08a0404215429f06c113.png | Bin
.../8a1158bda6933f83f43b704bff54ff63.png | Bin
.../94d334f99906d3fc2669fc804e5fae41.png | Bin
.../95e6219a5e20a9e2f9381822460932ac.png | Bin
.../9836184d78d14978c0c49f1e2b900bb9.png | Bin
.../9836d339aaf014a7ced7f87141fcee67.png | Bin
.../9a543325b8802fd94cc9ed81908dc888.png | Bin
.../a44cec64a01063d4c6a11e54cc8d24d3.png | Bin
.../a638dad8443a364e12ed29b3bc50d128.png | Bin
.../a6d43808900bc56bb2ebd675544ee5a3.png | Bin
.../a6f436251a88bb94d5e79099742c9d75.png | Bin
.../public}/img/__og-image/abbottry.png | Bin
.../public}/img/__og-image/acarlson29.png | Bin
.../public}/img/__og-image/adam.sayah.png | Bin
.../afefc1feb47ec68ca6031cfec2e7d46b.png | Bin
.../public}/img/__og-image/ajhingran.png | Bin
.../public}/img/__og-image/alec102.png | Bin
.../img/__og-image/alexsandra.sikora.png | Bin
.../public}/img/__og-image/amy1908.png | Bin
.../img/__og-image/andreas.heiberg.png | Bin
.../public}/img/__og-image/annyce.davis.png | Bin
.../img/__og-image/antoine.carossio.png | Bin
.../public}/img/__og-image/ardatanrikulu.png | Bin
.../public}/img/__og-image/arkenflame.png | Bin
.../public}/img/__og-image/ashpak_shaikh.png | Bin
.../b2390bef466348cbe435b14cf34c99a5.png | Bin
.../b38ed79c29a2d0602160d9407bfa3422.png | Bin
.../b3a3fa420d7467c46c215fa09cd548e0.png | Bin
.../b57a1a6027fdab59c05c42c9d0515e71.png | Bin
.../b84ea942d55fb7406e53e3af0c78017e.png | Bin
.../b9e35d673e7b541421d45ce2043dc05e.png | Bin
.../public}/img/__og-image/badurinadenis.png | Bin
.../public}/img/__og-image/bastiankistner.png | Bin
.../bc5623fa38b3e2a58b357b35d3209023.png | Bin
.../public}/img/__og-image/benjie3.png | Bin
.../public}/img/__og-image/blacknumber.png | Bin
.../img/__og-image/brandon.r.minnick.png | Bin
.../img/__og-image/bryan.robinson2.png | Bin
.../public}/img/__og-image/bsklar.png | Bin
.../public}/img/__og-image/bsy.png | Bin
.../c6bcac25dc965b289bda158441311f23.png | Bin
.../c6cba5c5a91fb3f916acec7de9692bd7.png | Bin
.../c915230f50de5c93eb5c2bbbee3610e6.png | Bin
.../cb1f116f01ae3d2ddf5100a18792abc2.png | Bin
.../cc02f7be2a6fe1dc49f87fa63dec5041.png | Bin
.../cc22599d768dc636a67a0e93cd74bab2.png | Bin
.../cc423d9ba6bacb53c1b24490cb208c17.png | Bin
.../ce430c038efa9a9c19743d1ccc702de9.png | Bin
.../img/__og-image/christian.ernst.png | Bin
.../d53044f7df10bcb5a53e6908670c41c1.png | Bin
.../public}/img/__og-image/david3103.png | Bin
.../dd289f7ecf487b271e0495ff09bba26e.png | Bin
.../de1472b4294ac91745f3648d9228d8f2.png | Bin
.../de614df0c21b5227fff20767aa065de8.png | Bin
.../de9b490bff0d1e234ec4e19bc03392b5.png | Bin
.../public}/img/__og-image/doc.jones.png | Bin
.../public}/img/__og-image/donnasiqizhou.png | Bin
.../public}/img/__og-image/dotansimha.png | Bin
.../e0985f6bdb4bbf07a5ca5ba72fbcc39c.png | Bin
.../e29bf518adeb99b2319fa8cb70d8f445.png | Bin
.../e3320ba552ee773065a1a132304a36e0.png | Bin
.../e3a855088054e180ec6e046bf3d8be8a.png | Bin
.../e447a52591ed66a452e04d6ce3e3f09e.png | Bin
.../eb08683c706380e0236adb2097358f4c.png | Bin
.../ebee6213b39b87437eb7cc9c41ea972b.png | Bin
.../edcb92ba1f2478b935124038ec1b20f0.png | Bin
.../public}/img/__og-image/eitan15.png | Bin
.../public}/img/__og-image/en3m.png | Bin
.../public}/img/__og-image/ernie.turner1.png | Bin
.../public}/img/__og-image/eruf.png | Bin
.../public}/img/__og-image/events172.png | Bin
.../f11fd521e00f5b8eedf463781f893c5e.png | Bin
.../f319907e1e15ee620a33d3cbf01f323a.png | Bin
.../f485ec8e2dc60c435e8a3a90185d73bf.png | Bin
.../f653b9931d85c7958993ca62e7853972.png | Bin
.../f802d22f97a3d3d9d2733bf637758f56.png | Bin
.../f8a4d2b939980ffadf787715033e2b4f.png | Bin
.../fc1e6c878fc02b6c2b7534ddebfac6ff.png | Bin
.../ff6a2ae37d87e74c9f7739a1331804a1.png | Bin
.../public}/img/__og-image/gerard.klijs.png | Bin
.../public}/img/__og-image/gilgardosh.png | Bin
.../public}/img/__og-image/gonenj.png | Bin
.../public}/img/__og-image/hello2358.png | Bin
.../img/__og-image/idit_levine.25krdj4u.png | Bin
.../public}/img/__og-image/igorgassmann.png | Bin
.../public}/img/__og-image/jamie855.png | Bin
.../img/__og-image/jared_cheney.7rad60v.png | Bin
.../public}/img/__og-image/jeff.auriemma.png | Bin
.../public}/img/__og-image/jens63.png | Bin
.../public}/img/__og-image/jhorner3208.png | Bin
.../public}/img/__og-image/jim.barton.png | Bin
.../public}/img/__og-image/kamilkisiela.png | Bin
.../img/__og-image/keerthan.ekbote.png | Bin
.../public}/img/__og-image/keith.babo.png | Bin
.../public}/img/__og-image/kevin1700.png | Bin
.../public}/img/__og-image/laurent57.png | Bin
.../__og-image/laurent_broudoux.25mh5hbq.png | Bin
.../public}/img/__og-image/laurinquast.png | Bin
.../img/__og-image/lee_byron.25krdom6.png | Bin
.../public}/img/__og-image/lerenzo.png | Bin
.../public}/img/__og-image/lthomas70.png | Bin
.../public}/img/__og-image/lucy_shen.png | Bin
.../public}/img/__og-image/lyonwj1.png | Bin
.../__og-image/marc_andre_giroux.25krdfz9.png | Bin
.../public}/img/__og-image/marion84.png | Bin
.../img/__og-image/meenakshi.dhanani1.png | Bin
.../public}/img/__og-image/mgiroux7.png | Bin
.../public}/img/__og-image/michael2685.png | Bin
.../img/__og-image/michael_staib.23xujj9p.png | Bin
.../img/__og-image/patrick.arminio.png | Bin
.../public}/img/__og-image/plgah.png | Bin
.../public}/img/__og-image/pooja.mistry.png | Bin
.../img/__og-image/pooja_mistry.25kvpbvt.png | Bin
.../public}/img/__og-image/qkw1221.png | Bin
.../public}/img/__og-image/ramhadda.png | Bin
.../public}/img/__og-image/rbraun3.png | Bin
.../public}/img/__og-image/robert.balicki.png | Bin
.../public}/img/__og-image/s.daniakash.png | Bin
.../public}/img/__og-image/sdk.bens.png | Bin
.../public}/img/__og-image/serhii.korin.png | Bin
.../__og-image/shahar_binyamin.24vrzgo4.png | Bin
.../public}/img/__og-image/shweta.12dec.png | Bin
.../img/__og-image/siddharthsingh1.png | Bin
.../public}/img/__og-image/spencer211.png | Bin
.../public}/img/__og-image/sspalding2.png | Bin
.../img/__og-image/stephanie.saunders2.png | Bin
.../public}/img/__og-image/suresh_muthu.png | Bin
.../public}/img/__og-image/tanmaig.png | Bin
.../public}/img/__og-image/theo93.png | Bin
.../img/__og-image/theo_browne.25qq5dhc.png | Bin
.../img/__og-image/thomas.heyenbrock.png | Bin
.../public}/img/__og-image/tim.hall.engr.png | Bin
.../public}/img/__og-image/tristan119.png | Bin
.../public}/img/__og-image/twitter7.png | Bin
.../__og-image/uri_goldshtein.23xujj9a.png | Bin
.../img/__og-image/william_lyon.7rvgomu.png | Bin
.../public}/img/__og-image/yaacovcr.png | Bin
.../public}/img/__og-image/yassineldeeb94.png | Bin
.../public}/img/__og-image/yczhu.png | Bin
.../public}/img/bg-graphql-conf.png | Bin
.../dataloader-query.png | Bin
.../pathological-query.png | Bin
.../rest-api-people.png | Bin
.../banner.jpg | Bin
.../whiteboard.jpg | Bin
.../public}/img/brand/do-example.svg | 0
{static => website/public}/img/brand/do.svg | 0
.../public}/img/brand/dont-example.svg | 0
{static => website/public}/img/brand/dont.svg | 0
.../img/brand/graphql-brand-assets.zip | Bin
.../public}/img/brand/logo-dont/dont-add.svg | 0
.../brand/logo-dont/dont-change-typeface.svg | 0
.../brand/logo-dont/dont-color-wordmark.svg | 0
.../img/brand/logo-dont/dont-color.svg | 0
.../logo-dont/dont-complex-background.jpg | Bin
.../img/brand/logo-dont/dont-decorate.svg | 0
.../img/brand/logo-dont/dont-effect.svg | 0
.../img/brand/logo-dont/dont-gradient.svg | 0
.../img/brand/logo-dont/dont-remove.svg | 0
.../img/brand/logo-dont/dont-resize-1.svg | 0
.../img/brand/logo-dont/dont-resize-2.svg | 0
.../brand/logo-dont/dont-resize-wordmark.svg | 0
.../img/brand/logo-dont/dont-rotate.svg | 0
.../img/brand/logo-dont/dont-stretch.svg | 0
.../public}/img/brand/logos/logo-black.svg | 0
.../brand/logos/logo-foundation-stacked.svg | 0
.../brand/logos/logo-foundation-wordmark.svg | 0
.../public}/img/brand/logos/logo-space.svg | 0
.../public}/img/brand/logos/logo-stacked.svg | 0
.../public}/img/brand/logos/logo-white.svg | 0
.../img/brand/logos/logo-wordmark-space.svg | 0
.../public}/img/brand/logos/logo-wordmark.svg | 0
.../public}/img/brand/logos/logo.svg | 0
.../public}/img/conf/Gallery/1.jpg | Bin
.../img/conf/Gallery/10_53228256862_o.jpg | Bin
.../img/conf/Gallery/11_53229130936_o.jpg | Bin
.../img/conf/Gallery/12_53229130901_o.jpg | Bin
.../img/conf/Gallery/13_53229431753_o.jpg | Bin
.../img/conf/Gallery/14_53228256817_o.jpg | Bin
.../img/conf/Gallery/151_53229506084_o.jpg | Bin
.../img/conf/Gallery/15_53228256787_o.jpg | Bin
.../img/conf/Gallery/16_53229629695_o.jpg | Bin
.../img/conf/Gallery/17_53229431688_o.jpg | Bin
.../img/conf/Gallery/18_53229629645_o.jpg | Bin
.../img/conf/Gallery/1_53229506279_o.jpg | Bin
.../public}/img/conf/Gallery/2.jpg | Bin
.../img/conf/Gallery/2_53229431883_o.jpg | Bin
.../public}/img/conf/Gallery/3.jpg | Bin
.../img/conf/Gallery/31_53228256917_o.jpg | Bin
.../img/conf/Gallery/3_53229131021_o.jpg | Bin
.../public}/img/conf/Gallery/4.jpg | Bin
.../public}/img/conf/Gallery/5.jpg | Bin
.../img/conf/Gallery/5_53228256882_o.jpg | Bin
.../public}/img/conf/Gallery/6.jpg | Bin
.../img/conf/Gallery/7_53229506199_o.jpg | Bin
.../public}/img/conf/Gallery/8.jpg | Bin
.../img/conf/Gallery/8_53229629805_o.jpg | Bin
.../public}/img/conf/Gallery/9.jpg | Bin
.../Gallery/graphql-cover-1_53228256677_o.jpg | Bin
.../Gallery/graphql-cover-2_53228256672_o.jpg | Bin
.../Gallery/graphql-cover-3_53228256612_o.jpg | Bin
.../graphqlconf-202310_53229130641_o.jpg | Bin
.../graphqlconf-202311_53229130636_o.jpg | Bin
.../graphqlconf-202312_53229431468_o.jpg | Bin
.../graphqlconf-202313_53229431453_o.jpg | Bin
.../graphqlconf-202314_53228256402_o.jpg | Bin
.../graphqlconf-202315_53229431418_o.jpg | Bin
.../graphqlconf-202316_53229130551_o.jpg | Bin
.../graphqlconf-202317_53229431408_o.jpg | Bin
.../graphqlconf-202318_53229431413_o.jpg | Bin
.../graphqlconf-202319_53229505639_o.jpg | Bin
.../graphqlconf-20231_53229505964_o.jpg | Bin
.../graphqlconf-202321_53229504679_o.jpg | Bin
.../graphqlconf-202322_53229431348_o.jpg | Bin
.../graphqlconf-202323_53229431353_o.jpg | Bin
.../graphqlconf-202324_53228255322_o.jpg | Bin
.../graphqlconf-202325_53229628480_o.jpg | Bin
.../graphqlconf-202326_53229504664_o.jpg | Bin
.../graphqlconf-202327_53229430403_o.jpg | Bin
.../graphqlconf-202328_53229129426_o.jpg | Bin
.../graphqlconf-202329_53228255262_o.jpg | Bin
.../graphqlconf-20232_53229629585_o.jpg | Bin
.../graphqlconf-202330_53229430393_o.jpg | Bin
.../graphqlconf-202331_53229430378_o.jpg | Bin
.../graphqlconf-202332_53228255222_o.jpg | Bin
.../graphqlconf-202333_53229504589_o.jpg | Bin
.../graphqlconf-202334_53229505599_o.jpg | Bin
.../graphqlconf-202335_53228256247_o.jpg | Bin
.../graphqlconf-202336_53229431263_o.jpg | Bin
.../graphqlconf-202337_53229431268_o.jpg | Bin
.../graphqlconf-202338_53228256132_o.jpg | Bin
.../graphqlconf-202339_53228256117_o.jpg | Bin
.../graphqlconf-20233_53229431633_o.jpg | Bin
.../graphqlconf-202340_53229431183_o.jpg | Bin
.../graphqlconf-202341_53229629225_o.jpg | Bin
.../graphqlconf-202342_53229130301_o.jpg | Bin
.../graphqlconf-202343_53229505484_o.jpg | Bin
.../graphqlconf-202344_53228256077_o.jpg | Bin
.../graphqlconf-202345_53229504499_o.jpg | Bin
.../graphqlconf-202346_53229629115_o.jpg | Bin
.../graphqlconf-202347_53229129301_o.jpg | Bin
.../graphqlconf-202348_53229130226_o.jpg | Bin
.../graphqlconf-202349_53228256032_o.jpg | Bin
.../graphqlconf-20234_53229629525_o.jpg | Bin
.../graphqlconf-202350_53229130146_o.jpg | Bin
.../graphqlconf-202351_53229130151_o.jpg | Bin
.../graphqlconf-202352_53229629035_o.jpg | Bin
.../graphqlconf-202353_53228255937_o.jpg | Bin
.../graphqlconf-202354_53229430998_o.jpg | Bin
.../graphqlconf-202355_53228255882_o.jpg | Bin
.../graphqlconf-202356_53229505199_o.jpg | Bin
.../graphqlconf-202357_53228255742_o.jpg | Bin
.../graphqlconf-202358_53229628875_o.jpg | Bin
.../graphqlconf-202359_53229129286_o.jpg | Bin
.../graphqlconf-20235_53229505904_o.jpg | Bin
.../graphqlconf-202360_53229430883_o.jpg | Bin
.../graphqlconf-202361_53229628295_o.jpg | Bin
.../graphqlconf-202362_53229430868_o.jpg | Bin
.../graphqlconf-202363_53229505084_o.jpg | Bin
.../graphqlconf-202364_53229430858_o.jpg | Bin
.../graphqlconf-202365_53229430258_o.jpg | Bin
.../graphqlconf-202366_53229628825_o.jpg | Bin
.../graphqlconf-202367_53229430268_o.jpg | Bin
.../graphqlconf-202368_53229430823_o.jpg | Bin
.../graphqlconf-202369_53229628795_o.jpg | Bin
.../graphqlconf-20236_53229431543_o.jpg | Bin
.../graphqlconf-202370_53228255572_o.jpg | Bin
.../graphqlconf-202371_53229628710_o.jpg | Bin
.../graphqlconf-202372_53229628695_o.jpg | Bin
.../graphqlconf-202373_53229430683_o.jpg | Bin
.../graphqlconf-202374_53228255537_o.jpg | Bin
.../graphqlconf-202375_53228255527_o.jpg | Bin
.../graphqlconf-202376_53229628665_o.jpg | Bin
.../graphqlconf-202377_53229430648_o.jpg | Bin
.../graphqlconf-202378_53228255107_o.jpg | Bin
.../graphqlconf-202379_53228255097_o.jpg | Bin
.../graphqlconf-20237_53229629480_o.jpg | Bin
.../graphqlconf-202380_53229430623_o.jpg | Bin
.../graphqlconf-202381_53228255092_o.jpg | Bin
.../graphqlconf-202383_53228255462_o.jpg | Bin
.../graphqlconf-202384_53229129586_o.jpg | Bin
.../graphqlconf-202385_53229504819_o.jpg | Bin
.../graphqlconf-202386_53229129601_o.jpg | Bin
.../graphqlconf-202387_53229628600_o.jpg | Bin
.../graphqlconf-202388_53229430518_o.jpg | Bin
.../graphqlconf-202389_53229129526_o.jpg | Bin
.../graphqlconf-20238_53228256482_o.jpg | Bin
.../graphqlconf-202390_53229628530_o.jpg | Bin
.../graphqlconf-202391_53229504714_o.jpg | Bin
.../graphqlconf-202392_53229430473_o.jpg | Bin
.../graphqlconf-202393_53229129511_o.jpg | Bin
.../graphqlconf-202394_53228255057_o.jpg | Bin
.../graphqlconf-202395_53229430163_o.jpg | Bin
.../graphqlconf-202396_53229628185_o.jpg | Bin
...onf-2023graphqlconf-2023_53228255062_o.jpg | Bin
.../img/conf/Partners/AmsterdamGraphQL.svg | 0
.../img/conf/Partners/BangkokGraphQL.svg | 0
.../img/conf/Partners/EscapeTechnologies.svg | 0
.../img/conf/Partners/GraphQLWeekly.svg | 0
.../public}/img/conf/Partners/GraphQLwtf.svg | 0
.../public}/img/conf/Partners/TypeGraphQL.svg | 0
.../public}/img/conf/Sponsors/Graphabase.svg | 38 ++++----
.../public}/img/conf/Sponsors/Hasura.svg | 0
.../public}/img/conf/Sponsors/Hygraph.svg | 0
.../public}/img/conf/Sponsors/Inigo.svg | 0
.../public}/img/conf/Sponsors/Neo4j.svg | 0
.../public}/img/conf/Sponsors/Postman.svg | 0
.../public}/img/conf/Sponsors/Solo.svg | 0
.../public}/img/conf/Sponsors/Stellate.svg | 0
.../public}/img/conf/Sponsors/StepZen.svg | 0
.../public}/img/conf/Sponsors/TheGraph.svg | 0
.../public}/img/conf/Sponsors/TheGuild.svg | 0
.../public}/img/conf/Sponsors/WunderGraph.svg | 0
.../public}/img/conf/around.svg | 0
{static => website/public}/img/conf/bus.svg | 0
.../public}/img/conf/conf-bg.png | Bin
.../public}/img/conf/graphql-conf-bg.png | Bin
.../public}/img/conf/graphql-conf-footer.png | Bin
.../public}/img/conf/graphql-conf-header.svg | 0
.../img/conf/graphql-conf-logo-simple.svg | 0
.../public}/img/conf/graphql-conf-logo.svg | 0
.../public}/img/conf/logo-color.png | Bin
.../public}/img/conf/parking.svg | 0
.../public}/img/conf/sf-hotel-image.png | Bin
.../public}/img/conf/social-pk.jpg | Bin
.../public}/img/conf/speakers/leebyron.jpg | Bin
.../public}/img/conf/speakers/marcandre.jpg | Bin
{static => website/public}/img/conf/train.svg | 0
.../public}/img/diagrams/business_layer.png | Bin
{static => website/public}/img/downarrow.svg | 0
{static => website/public}/img/edit.svg | 0
{static => website/public}/img/graph-wash.png | Bin
{static => website/public}/img/graphiql.mp4 | Bin
.../public}/img/graphql-conf-logo.svg | 0
.../img/graphql_conf-details-white.svg | 0
.../public}/img/graphql_conf-details.svg | 0
.../public}/img/graphql_foundation-hero.jpg | Bin
.../img/graphql_foundation-logo-white.svg | 0
{static => website/public}/img/hello.png | Bin
{static => website/public}/img/logo-gray.svg | 0
{static => website/public}/img/logo.svg | 0
.../public}/img/logos/discord.svg | 0
.../public}/img/logos/facebook.svg | 0
.../public}/img/logos/github.svg | 0
{static => website/public}/img/logos/gsoc.svg | 0
.../public}/img/logos/instagram.svg | 0
.../public}/img/logos/linkedin.svg | 0
.../public}/img/logos/snapchat.svg | 0
.../public}/img/logos/stackoverflow.svg | 0
.../public}/img/logos/twitter.svg | 0
{static => website/public}/img/menu-white.svg | 0
{static => website/public}/img/menu.svg | 0
.../public}/img/news/annual-report-1.png | Bin
.../public}/img/news/annual-report-2.png | Bin
.../public}/img/news/annual-report-3.png | Bin
.../public}/img/news/annual-report-4.png | Bin
.../public}/img/news/graphiql-parser.png | Bin
.../img/news/playground-transition-banner.png | Bin
{static => website/public}/img/og-image.png | Bin
{static => website/public}/img/phone.svg | 0
.../img/report/amazon-web-services.svg | 0
.../public}/img/report/apollo-graphql.svg | 82 +++++++++---------
.../public}/img/report/expedia-group.svg | 0
.../public}/img/report/facebook.svg | 0
.../public}/img/report/hasura.svg | 0
{static => website/public}/img/report/ibm.svg | 0
.../public}/img/report/novvum.svg | 0
.../public}/img/report/paypal.svg | 0
.../public}/img/report/salsify.svg | 0
{static => website/public}/img/search.png | Bin
{static => website/public}/img/search.svg | 0
{static => website/public}/img/server.svg | 0
.../public}/users/logos/1stdibs.png | Bin
.../public}/users/logos/20minutes.png | Bin
.../public}/users/logos/adayroi.png | Bin
.../public}/users/logos/airbnb.png | Bin
.../public}/users/logos/alembic.png | Bin
.../public}/users/logos/allocine.png | Bin
.../public}/users/logos/alphasights.png | Bin
.../public}/users/logos/amplitude.png | Bin
.../public}/users/logos/ants.png | Bin
.../public}/users/logos/appier.png | Bin
.../public}/users/logos/arangodb.png | Bin
.../public}/users/logos/artsy.png | Bin
.../public}/users/logos/atlassian.png | Bin
.../public}/users/logos/attendify.png | Bin
.../public}/users/logos/bazinga.png | Bin
.../public}/users/logos/blenderbottle.png | Bin
.../public}/users/logos/brewerybuddy.png | Bin
.../public}/users/logos/bright.png | Bin
.../public}/users/logos/buildkite.png | Bin
.../public}/users/logos/bynder.png | Bin
.../public}/users/logos/cheddar.png | Bin
.../public}/users/logos/circlehd.png | Bin
.../public}/users/logos/cloverleaf.png | Bin
.../public}/users/logos/clubmed.png | Bin
.../public}/users/logos/colectica.png | Bin
.../public}/users/logos/commercetools.png | Bin
.../public}/users/logos/comparaonline.png | Bin
.../public}/users/logos/conduit.png | Bin
.../public}/users/logos/coursera.png | Bin
.../public}/users/logos/creditkarma.png | Bin
.../public}/users/logos/curio.png | Bin
.../public}/users/logos/dailymotion.png | Bin
.../public}/users/logos/digitransit.png | Bin
.../public}/users/logos/directlyrics.png | Bin
.../public}/users/logos/drift.png | Bin
.../public}/users/logos/duedil.png | Bin
.../public}/users/logos/eastview.png | Bin
.../public}/users/logos/easycarros.png | Bin
.../public}/users/logos/ediket.png | Bin
.../public}/users/logos/etmdb.png | Bin
.../public}/users/logos/expert360.png | Bin
.../public}/users/logos/facebook.png | Bin
.../public}/users/logos/fairfaxmedia.png | Bin
.../public}/users/logos/filejet.png | Bin
.../public}/users/logos/gentux.png | Bin
.../public}/users/logos/getninjas.png | Bin
.../public}/users/logos/github.png | Bin
.../public}/users/logos/goalify.png | Bin
.../public}/users/logos/graphcms.png | Bin
.../public}/users/logos/graphcool.png | Bin
.../public}/users/logos/hackages.png | Bin
.../public}/users/logos/hasura.png | Bin
.../public}/users/logos/hijup.png | Bin
.../public}/users/logos/housinganywhere.png | Bin
.../public}/users/logos/hsl.png | Bin
.../public}/users/logos/hudl.png | Bin
.../public}/users/logos/icon-systems.png | Bin
.../public}/users/logos/idobata.png | Bin
.../public}/users/logos/indonesiax.png | Bin
.../public}/users/logos/inerva.png | Bin
.../public}/users/logos/intuit.png | Bin
.../public}/users/logos/jusbrasil.png | Bin
.../public}/users/logos/klm.png | Bin
.../public}/users/logos/leanix.png | Bin
.../public}/users/logos/legendsoflearning.png | Bin
.../public}/users/logos/lelivrescolaire.png | Bin
.../public}/users/logos/letsevents.png | Bin
.../public}/users/logos/loggi.png | Bin
.../public}/users/logos/m1finance.png | Bin
.../public}/users/logos/make-school.png | Bin
.../public}/users/logos/medallia.png | Bin
.../public}/users/logos/meteor.png | Bin
.../public}/users/logos/metric-ai.png | Bin
.../public}/users/logos/mixcloud.png | Bin
.../public}/users/logos/mojilala.png | Bin
.../public}/users/logos/myheritage.png | Bin
.../public}/users/logos/myntra.png | Bin
.../public}/users/logos/nbc-news-digital.png | Bin
.../public}/users/logos/neo4j_logo.png | Bin
.../public}/users/logos/newspring.png | Bin
.../public}/users/logos/ningensoft.png | Bin
.../public}/users/logos/nova-ideo.png | Bin
.../public}/users/logos/nyt.png | Bin
.../public}/users/logos/okgrow.png | Bin
.../public}/users/logos/ovos.png | Bin
.../public}/users/logos/paypal.png | Bin
.../public}/users/logos/persado.png | Bin
.../public}/users/logos/pinterest.png | Bin
.../public}/users/logos/product-hunt.png | Bin
.../public}/users/logos/project-september.png | Bin
.../public}/users/logos/protel.png | Bin
.../public}/users/logos/prowl.png | Bin
.../public}/users/logos/quri.png | Bin
.../public}/users/logos/redbubble.png | Bin
.../public}/users/logos/reindex.png | Bin
.../public}/users/logos/restorando.png | Bin
.../public}/users/logos/salestock.png | Bin
.../public}/users/logos/scaphold.png | Bin
.../public}/users/logos/serverless.png | Bin
.../public}/users/logos/shopify.png | Bin
.../public}/users/logos/sky.png | Bin
.../public}/users/logos/skyarchnetworks.png | Bin
.../public}/users/logos/smarkets.png | Bin
.../public}/users/logos/stackshare.png | Bin
.../public}/users/logos/startupsco.png | Bin
.../public}/users/logos/stem.png | Bin
.../public}/users/logos/swapcard.png | Bin
.../public}/users/logos/syzygy.png | Bin
.../public}/users/logos/taller.png | Bin
.../users/logos/teacherspayteachers.png | Bin
.../public}/users/logos/teselagen_logo.png | Bin
.../public}/users/logos/thehunt.png | Bin
.../public}/users/logos/trove.png | Bin
.../public}/users/logos/twitter.png | Bin
.../public}/users/logos/uctrends.png | Bin
.../public}/users/logos/unigraph.png | Bin
.../public}/users/logos/universe.png | Bin
.../public}/users/logos/ustglobal.png | Bin
.../public}/users/logos/vanilaio.png | Bin
.../public}/users/logos/waitlessq.png | Bin
.../public}/users/logos/waldo-photos.png | Bin
.../public}/users/logos/wayfair.png | Bin
.../public}/users/logos/whitescape.png | Bin
.../public}/users/logos/wirtualnapolska.png | Bin
.../public}/users/logos/wishlife.png | Bin
.../public}/users/logos/workflowgen.png | Bin
.../public}/users/logos/wowair.png | Bin
.../public}/users/logos/yelp.png | Bin
.../public}/users/logos/zlyde.png | Bin
.../public}/users/logos/zzish.png | Bin
558 files changed, 61 insertions(+), 61 deletions(-)
rename {static => website/public}/favicon.ico (100%)
rename {static => website/public}/files/GraphQL_Foundation-Participation_Agreement-Preview.pdf (100%)
rename {static => website/public}/files/LF_Membership-Preview.pdf (100%)
rename {static => website/public}/files/foundation-participation-agreement-revised-jan-2022.pdf (100%)
rename {static => website/public}/img/__og-image/017d9954f1be1c7e2ab2696c2abe6b9b.png (100%)
rename {static => website/public}/img/__og-image/09bc04c42310bfe14024455bce46d781.png (100%)
rename {static => website/public}/img/__og-image/0b5f6bcbfc77f97f4cdc6cdf4a171f82.png (100%)
rename {static => website/public}/img/__og-image/0bea54e1f79d706f2da4c802f8581ae5.png (100%)
rename {static => website/public}/img/__og-image/0f57893e761e683f58c4ace9e766c3bf.png (100%)
rename {static => website/public}/img/__og-image/118f99976647d953d6554bac33dbf3bf.png (100%)
rename {static => website/public}/img/__og-image/158baff7d8c21cc0c210f805baa3e383.png (100%)
rename {static => website/public}/img/__og-image/17f150667d13a57f28bae524443f4c60.png (100%)
rename {static => website/public}/img/__og-image/1e7a35fbd833d9be1aa9719f77c86fb7.png (100%)
rename {static => website/public}/img/__og-image/217cf30afd15a724ebb42c4d82169a26.png (100%)
rename {static => website/public}/img/__og-image/247898ad29d5e594611af3cecf82f5e3.png (100%)
rename {static => website/public}/img/__og-image/2517f7a1d13ad3c0652e1b3cc5b65714.png (100%)
rename {static => website/public}/img/__og-image/275443caa2eda5df06699b724efa533c.png (100%)
rename {static => website/public}/img/__og-image/2816d4a81204283289584830acda7826.png (100%)
rename {static => website/public}/img/__og-image/295679e18701aa2be84f329db1118637.png (100%)
rename {static => website/public}/img/__og-image/2b7518a6d8f2b72122c17beb92af8c89.png (100%)
rename {static => website/public}/img/__og-image/3045d1849811f05cc2afaf690ea474a5.png (100%)
rename {static => website/public}/img/__og-image/34bdd9b21a3cf2db6600a5ef840b3fb3.png (100%)
rename {static => website/public}/img/__og-image/38cb4033d5cfed2d5b508f08374ebe9b.png (100%)
rename {static => website/public}/img/__og-image/3a88eedac57e223aa69979407cfcc8f0.png (100%)
rename {static => website/public}/img/__og-image/3d167cf84012c4ff2dcca8fca736b0dd.png (100%)
rename {static => website/public}/img/__og-image/3e70d76748962770972c5c80e45ee9d7.png (100%)
rename {static => website/public}/img/__og-image/47c1bf50ce5556edcae9a84795485a8f.png (100%)
rename {static => website/public}/img/__og-image/48f4e69c465b793750b5aa47bb7f2b6e.png (100%)
rename {static => website/public}/img/__og-image/4a4e842d1cd0c06083f484d31225abd1.png (100%)
rename {static => website/public}/img/__og-image/4feef977ceb883c69c91ccd2dd607aec.png (100%)
rename {static => website/public}/img/__og-image/50005edb4a441b0335d1b80b4ad62b1a.png (100%)
rename {static => website/public}/img/__og-image/504049f2217d6c59b9f67eba97089bfe.png (100%)
rename {static => website/public}/img/__og-image/520b70cfea27170fd6ed21d79f6b0357.png (100%)
rename {static => website/public}/img/__og-image/55dd5ef56bd778955509d08ea81903ea.png (100%)
rename {static => website/public}/img/__og-image/5684f90e0472771532ed5ee2b237300f.png (100%)
rename {static => website/public}/img/__og-image/58b45c125046c6c7a8c35ec084bfbb19.png (100%)
rename {static => website/public}/img/__og-image/5a0c1b8ab4957bfd83f55480c1508fe5.png (100%)
rename {static => website/public}/img/__og-image/5bf24cd6483a63e62a2276fe38effb82.png (100%)
rename {static => website/public}/img/__og-image/5d6afee232e35ba1880e7b25d810ef49.png (100%)
rename {static => website/public}/img/__og-image/5f920cd134d4dea87fce5e59bc4418dc.png (100%)
rename {static => website/public}/img/__og-image/61b9efc6ff8e0f295be6c65c08871c23.png (100%)
rename {static => website/public}/img/__og-image/6543e60efc3f0c20d24a40cffef29558.png (100%)
rename {static => website/public}/img/__og-image/66e332f155e04efea896d5bd5dcd2ba5.png (100%)
rename {static => website/public}/img/__og-image/675c416b16ad2b0c519b1ec894353fc5.png (100%)
rename {static => website/public}/img/__og-image/6c2eefe955e288e974a9182dac06f8fa.png (100%)
rename {static => website/public}/img/__og-image/6d07d593f16320c810d6aba8553199ed.png (100%)
rename {static => website/public}/img/__og-image/70f9e59dc60cf417aa38eb890b2a8abe.png (100%)
rename {static => website/public}/img/__og-image/72ac8d3f7585f86cb9acc77b9eb22241.png (100%)
rename {static => website/public}/img/__og-image/77623920b158a75435d48896a8d56b35.png (100%)
rename {static => website/public}/img/__og-image/7a87fe1cfc351a993ed40e01d384e3c6.png (100%)
rename {static => website/public}/img/__og-image/7bb96b3d5660f2d285220d7cdd59eb7f.png (100%)
rename {static => website/public}/img/__og-image/7d2491dd9142a830ac0c3ff1477636d8.png (100%)
rename {static => website/public}/img/__og-image/80869c56bb59f51de6ac8468c18eecdc.png (100%)
rename {static => website/public}/img/__og-image/81daf0dd0b26efdc784ba0a530e54a68.png (100%)
rename {static => website/public}/img/__og-image/888b77af90aa0ff776adc9669a29cb3f.png (100%)
rename {static => website/public}/img/__og-image/88bbc65fe92d08a0404215429f06c113.png (100%)
rename {static => website/public}/img/__og-image/8a1158bda6933f83f43b704bff54ff63.png (100%)
rename {static => website/public}/img/__og-image/94d334f99906d3fc2669fc804e5fae41.png (100%)
rename {static => website/public}/img/__og-image/95e6219a5e20a9e2f9381822460932ac.png (100%)
rename {static => website/public}/img/__og-image/9836184d78d14978c0c49f1e2b900bb9.png (100%)
rename {static => website/public}/img/__og-image/9836d339aaf014a7ced7f87141fcee67.png (100%)
rename {static => website/public}/img/__og-image/9a543325b8802fd94cc9ed81908dc888.png (100%)
rename {static => website/public}/img/__og-image/a44cec64a01063d4c6a11e54cc8d24d3.png (100%)
rename {static => website/public}/img/__og-image/a638dad8443a364e12ed29b3bc50d128.png (100%)
rename {static => website/public}/img/__og-image/a6d43808900bc56bb2ebd675544ee5a3.png (100%)
rename {static => website/public}/img/__og-image/a6f436251a88bb94d5e79099742c9d75.png (100%)
rename {static => website/public}/img/__og-image/abbottry.png (100%)
rename {static => website/public}/img/__og-image/acarlson29.png (100%)
rename {static => website/public}/img/__og-image/adam.sayah.png (100%)
rename {static => website/public}/img/__og-image/afefc1feb47ec68ca6031cfec2e7d46b.png (100%)
rename {static => website/public}/img/__og-image/ajhingran.png (100%)
rename {static => website/public}/img/__og-image/alec102.png (100%)
rename {static => website/public}/img/__og-image/alexsandra.sikora.png (100%)
rename {static => website/public}/img/__og-image/amy1908.png (100%)
rename {static => website/public}/img/__og-image/andreas.heiberg.png (100%)
rename {static => website/public}/img/__og-image/annyce.davis.png (100%)
rename {static => website/public}/img/__og-image/antoine.carossio.png (100%)
rename {static => website/public}/img/__og-image/ardatanrikulu.png (100%)
rename {static => website/public}/img/__og-image/arkenflame.png (100%)
rename {static => website/public}/img/__og-image/ashpak_shaikh.png (100%)
rename {static => website/public}/img/__og-image/b2390bef466348cbe435b14cf34c99a5.png (100%)
rename {static => website/public}/img/__og-image/b38ed79c29a2d0602160d9407bfa3422.png (100%)
rename {static => website/public}/img/__og-image/b3a3fa420d7467c46c215fa09cd548e0.png (100%)
rename {static => website/public}/img/__og-image/b57a1a6027fdab59c05c42c9d0515e71.png (100%)
rename {static => website/public}/img/__og-image/b84ea942d55fb7406e53e3af0c78017e.png (100%)
rename {static => website/public}/img/__og-image/b9e35d673e7b541421d45ce2043dc05e.png (100%)
rename {static => website/public}/img/__og-image/badurinadenis.png (100%)
rename {static => website/public}/img/__og-image/bastiankistner.png (100%)
rename {static => website/public}/img/__og-image/bc5623fa38b3e2a58b357b35d3209023.png (100%)
rename {static => website/public}/img/__og-image/benjie3.png (100%)
rename {static => website/public}/img/__og-image/blacknumber.png (100%)
rename {static => website/public}/img/__og-image/brandon.r.minnick.png (100%)
rename {static => website/public}/img/__og-image/bryan.robinson2.png (100%)
rename {static => website/public}/img/__og-image/bsklar.png (100%)
rename {static => website/public}/img/__og-image/bsy.png (100%)
rename {static => website/public}/img/__og-image/c6bcac25dc965b289bda158441311f23.png (100%)
rename {static => website/public}/img/__og-image/c6cba5c5a91fb3f916acec7de9692bd7.png (100%)
rename {static => website/public}/img/__og-image/c915230f50de5c93eb5c2bbbee3610e6.png (100%)
rename {static => website/public}/img/__og-image/cb1f116f01ae3d2ddf5100a18792abc2.png (100%)
rename {static => website/public}/img/__og-image/cc02f7be2a6fe1dc49f87fa63dec5041.png (100%)
rename {static => website/public}/img/__og-image/cc22599d768dc636a67a0e93cd74bab2.png (100%)
rename {static => website/public}/img/__og-image/cc423d9ba6bacb53c1b24490cb208c17.png (100%)
rename {static => website/public}/img/__og-image/ce430c038efa9a9c19743d1ccc702de9.png (100%)
rename {static => website/public}/img/__og-image/christian.ernst.png (100%)
rename {static => website/public}/img/__og-image/d53044f7df10bcb5a53e6908670c41c1.png (100%)
rename {static => website/public}/img/__og-image/david3103.png (100%)
rename {static => website/public}/img/__og-image/dd289f7ecf487b271e0495ff09bba26e.png (100%)
rename {static => website/public}/img/__og-image/de1472b4294ac91745f3648d9228d8f2.png (100%)
rename {static => website/public}/img/__og-image/de614df0c21b5227fff20767aa065de8.png (100%)
rename {static => website/public}/img/__og-image/de9b490bff0d1e234ec4e19bc03392b5.png (100%)
rename {static => website/public}/img/__og-image/doc.jones.png (100%)
rename {static => website/public}/img/__og-image/donnasiqizhou.png (100%)
rename {static => website/public}/img/__og-image/dotansimha.png (100%)
rename {static => website/public}/img/__og-image/e0985f6bdb4bbf07a5ca5ba72fbcc39c.png (100%)
rename {static => website/public}/img/__og-image/e29bf518adeb99b2319fa8cb70d8f445.png (100%)
rename {static => website/public}/img/__og-image/e3320ba552ee773065a1a132304a36e0.png (100%)
rename {static => website/public}/img/__og-image/e3a855088054e180ec6e046bf3d8be8a.png (100%)
rename {static => website/public}/img/__og-image/e447a52591ed66a452e04d6ce3e3f09e.png (100%)
rename {static => website/public}/img/__og-image/eb08683c706380e0236adb2097358f4c.png (100%)
rename {static => website/public}/img/__og-image/ebee6213b39b87437eb7cc9c41ea972b.png (100%)
rename {static => website/public}/img/__og-image/edcb92ba1f2478b935124038ec1b20f0.png (100%)
rename {static => website/public}/img/__og-image/eitan15.png (100%)
rename {static => website/public}/img/__og-image/en3m.png (100%)
rename {static => website/public}/img/__og-image/ernie.turner1.png (100%)
rename {static => website/public}/img/__og-image/eruf.png (100%)
rename {static => website/public}/img/__og-image/events172.png (100%)
rename {static => website/public}/img/__og-image/f11fd521e00f5b8eedf463781f893c5e.png (100%)
rename {static => website/public}/img/__og-image/f319907e1e15ee620a33d3cbf01f323a.png (100%)
rename {static => website/public}/img/__og-image/f485ec8e2dc60c435e8a3a90185d73bf.png (100%)
rename {static => website/public}/img/__og-image/f653b9931d85c7958993ca62e7853972.png (100%)
rename {static => website/public}/img/__og-image/f802d22f97a3d3d9d2733bf637758f56.png (100%)
rename {static => website/public}/img/__og-image/f8a4d2b939980ffadf787715033e2b4f.png (100%)
rename {static => website/public}/img/__og-image/fc1e6c878fc02b6c2b7534ddebfac6ff.png (100%)
rename {static => website/public}/img/__og-image/ff6a2ae37d87e74c9f7739a1331804a1.png (100%)
rename {static => website/public}/img/__og-image/gerard.klijs.png (100%)
rename {static => website/public}/img/__og-image/gilgardosh.png (100%)
rename {static => website/public}/img/__og-image/gonenj.png (100%)
rename {static => website/public}/img/__og-image/hello2358.png (100%)
rename {static => website/public}/img/__og-image/idit_levine.25krdj4u.png (100%)
rename {static => website/public}/img/__og-image/igorgassmann.png (100%)
rename {static => website/public}/img/__og-image/jamie855.png (100%)
rename {static => website/public}/img/__og-image/jared_cheney.7rad60v.png (100%)
rename {static => website/public}/img/__og-image/jeff.auriemma.png (100%)
rename {static => website/public}/img/__og-image/jens63.png (100%)
rename {static => website/public}/img/__og-image/jhorner3208.png (100%)
rename {static => website/public}/img/__og-image/jim.barton.png (100%)
rename {static => website/public}/img/__og-image/kamilkisiela.png (100%)
rename {static => website/public}/img/__og-image/keerthan.ekbote.png (100%)
rename {static => website/public}/img/__og-image/keith.babo.png (100%)
rename {static => website/public}/img/__og-image/kevin1700.png (100%)
rename {static => website/public}/img/__og-image/laurent57.png (100%)
rename {static => website/public}/img/__og-image/laurent_broudoux.25mh5hbq.png (100%)
rename {static => website/public}/img/__og-image/laurinquast.png (100%)
rename {static => website/public}/img/__og-image/lee_byron.25krdom6.png (100%)
rename {static => website/public}/img/__og-image/lerenzo.png (100%)
rename {static => website/public}/img/__og-image/lthomas70.png (100%)
rename {static => website/public}/img/__og-image/lucy_shen.png (100%)
rename {static => website/public}/img/__og-image/lyonwj1.png (100%)
rename {static => website/public}/img/__og-image/marc_andre_giroux.25krdfz9.png (100%)
rename {static => website/public}/img/__og-image/marion84.png (100%)
rename {static => website/public}/img/__og-image/meenakshi.dhanani1.png (100%)
rename {static => website/public}/img/__og-image/mgiroux7.png (100%)
rename {static => website/public}/img/__og-image/michael2685.png (100%)
rename {static => website/public}/img/__og-image/michael_staib.23xujj9p.png (100%)
rename {static => website/public}/img/__og-image/patrick.arminio.png (100%)
rename {static => website/public}/img/__og-image/plgah.png (100%)
rename {static => website/public}/img/__og-image/pooja.mistry.png (100%)
rename {static => website/public}/img/__og-image/pooja_mistry.25kvpbvt.png (100%)
rename {static => website/public}/img/__og-image/qkw1221.png (100%)
rename {static => website/public}/img/__og-image/ramhadda.png (100%)
rename {static => website/public}/img/__og-image/rbraun3.png (100%)
rename {static => website/public}/img/__og-image/robert.balicki.png (100%)
rename {static => website/public}/img/__og-image/s.daniakash.png (100%)
rename {static => website/public}/img/__og-image/sdk.bens.png (100%)
rename {static => website/public}/img/__og-image/serhii.korin.png (100%)
rename {static => website/public}/img/__og-image/shahar_binyamin.24vrzgo4.png (100%)
rename {static => website/public}/img/__og-image/shweta.12dec.png (100%)
rename {static => website/public}/img/__og-image/siddharthsingh1.png (100%)
rename {static => website/public}/img/__og-image/spencer211.png (100%)
rename {static => website/public}/img/__og-image/sspalding2.png (100%)
rename {static => website/public}/img/__og-image/stephanie.saunders2.png (100%)
rename {static => website/public}/img/__og-image/suresh_muthu.png (100%)
rename {static => website/public}/img/__og-image/tanmaig.png (100%)
rename {static => website/public}/img/__og-image/theo93.png (100%)
rename {static => website/public}/img/__og-image/theo_browne.25qq5dhc.png (100%)
rename {static => website/public}/img/__og-image/thomas.heyenbrock.png (100%)
rename {static => website/public}/img/__og-image/tim.hall.engr.png (100%)
rename {static => website/public}/img/__og-image/tristan119.png (100%)
rename {static => website/public}/img/__og-image/twitter7.png (100%)
rename {static => website/public}/img/__og-image/uri_goldshtein.23xujj9a.png (100%)
rename {static => website/public}/img/__og-image/william_lyon.7rvgomu.png (100%)
rename {static => website/public}/img/__og-image/yaacovcr.png (100%)
rename {static => website/public}/img/__og-image/yassineldeeb94.png (100%)
rename {static => website/public}/img/__og-image/yczhu.png (100%)
rename {static => website/public}/img/bg-graphql-conf.png (100%)
rename {static => website/public}/img/blog/20160502-rest-api-graphql-wrapper/dataloader-query.png (100%)
rename {static => website/public}/img/blog/20160502-rest-api-graphql-wrapper/pathological-query.png (100%)
rename {static => website/public}/img/blog/20160502-rest-api-graphql-wrapper/rest-api-people.png (100%)
rename {static => website/public}/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/banner.jpg (100%)
rename {static => website/public}/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/whiteboard.jpg (100%)
rename {static => website/public}/img/brand/do-example.svg (100%)
rename {static => website/public}/img/brand/do.svg (100%)
rename {static => website/public}/img/brand/dont-example.svg (100%)
rename {static => website/public}/img/brand/dont.svg (100%)
rename {static => website/public}/img/brand/graphql-brand-assets.zip (100%)
rename {static => website/public}/img/brand/logo-dont/dont-add.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-change-typeface.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-color-wordmark.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-color.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-complex-background.jpg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-decorate.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-effect.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-gradient.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-remove.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-resize-1.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-resize-2.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-resize-wordmark.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-rotate.svg (100%)
rename {static => website/public}/img/brand/logo-dont/dont-stretch.svg (100%)
rename {static => website/public}/img/brand/logos/logo-black.svg (100%)
rename {static => website/public}/img/brand/logos/logo-foundation-stacked.svg (100%)
rename {static => website/public}/img/brand/logos/logo-foundation-wordmark.svg (100%)
rename {static => website/public}/img/brand/logos/logo-space.svg (100%)
rename {static => website/public}/img/brand/logos/logo-stacked.svg (100%)
rename {static => website/public}/img/brand/logos/logo-white.svg (100%)
rename {static => website/public}/img/brand/logos/logo-wordmark-space.svg (100%)
rename {static => website/public}/img/brand/logos/logo-wordmark.svg (100%)
rename {static => website/public}/img/brand/logos/logo.svg (100%)
rename {static => website/public}/img/conf/Gallery/1.jpg (100%)
rename {static => website/public}/img/conf/Gallery/10_53228256862_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/11_53229130936_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/12_53229130901_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/13_53229431753_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/14_53228256817_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/151_53229506084_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/15_53228256787_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/16_53229629695_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/17_53229431688_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/18_53229629645_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/1_53229506279_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/2.jpg (100%)
rename {static => website/public}/img/conf/Gallery/2_53229431883_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/3.jpg (100%)
rename {static => website/public}/img/conf/Gallery/31_53228256917_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/3_53229131021_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/4.jpg (100%)
rename {static => website/public}/img/conf/Gallery/5.jpg (100%)
rename {static => website/public}/img/conf/Gallery/5_53228256882_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/6.jpg (100%)
rename {static => website/public}/img/conf/Gallery/7_53229506199_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/8.jpg (100%)
rename {static => website/public}/img/conf/Gallery/8_53229629805_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/9.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphql-cover-1_53228256677_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphql-cover-2_53228256672_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphql-cover-3_53228256612_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202310_53229130641_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202311_53229130636_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202312_53229431468_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202313_53229431453_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202314_53228256402_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202315_53229431418_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202316_53229130551_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202317_53229431408_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202318_53229431413_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202319_53229505639_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20231_53229505964_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202321_53229504679_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202322_53229431348_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202323_53229431353_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202324_53228255322_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202325_53229628480_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202326_53229504664_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202327_53229430403_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202328_53229129426_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202329_53228255262_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20232_53229629585_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202330_53229430393_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202331_53229430378_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202332_53228255222_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202333_53229504589_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202334_53229505599_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202335_53228256247_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202336_53229431263_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202337_53229431268_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202338_53228256132_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202339_53228256117_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20233_53229431633_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202340_53229431183_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202341_53229629225_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202342_53229130301_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202343_53229505484_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202344_53228256077_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202345_53229504499_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202346_53229629115_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202347_53229129301_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202348_53229130226_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202349_53228256032_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20234_53229629525_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202350_53229130146_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202351_53229130151_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202352_53229629035_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202353_53228255937_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202354_53229430998_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202355_53228255882_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202356_53229505199_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202357_53228255742_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202358_53229628875_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202359_53229129286_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20235_53229505904_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202360_53229430883_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202361_53229628295_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202362_53229430868_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202363_53229505084_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202364_53229430858_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202365_53229430258_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202366_53229628825_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202367_53229430268_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202368_53229430823_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202369_53229628795_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20236_53229431543_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202370_53228255572_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202371_53229628710_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202372_53229628695_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202373_53229430683_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202374_53228255537_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202375_53228255527_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202376_53229628665_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202377_53229430648_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202378_53228255107_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202379_53228255097_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20237_53229629480_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202380_53229430623_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202381_53228255092_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202383_53228255462_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202384_53229129586_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202385_53229504819_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202386_53229129601_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202387_53229628600_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202388_53229430518_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202389_53229129526_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-20238_53228256482_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202390_53229628530_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202391_53229504714_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202392_53229430473_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202393_53229129511_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202394_53228255057_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202395_53229430163_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-202396_53229628185_o.jpg (100%)
rename {static => website/public}/img/conf/Gallery/graphqlconf-2023graphqlconf-2023_53228255062_o.jpg (100%)
rename {static => website/public}/img/conf/Partners/AmsterdamGraphQL.svg (100%)
rename {static => website/public}/img/conf/Partners/BangkokGraphQL.svg (100%)
rename {static => website/public}/img/conf/Partners/EscapeTechnologies.svg (100%)
rename {static => website/public}/img/conf/Partners/GraphQLWeekly.svg (100%)
rename {static => website/public}/img/conf/Partners/GraphQLwtf.svg (100%)
rename {static => website/public}/img/conf/Partners/TypeGraphQL.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Graphabase.svg (99%)
rename {static => website/public}/img/conf/Sponsors/Hasura.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Hygraph.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Inigo.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Neo4j.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Postman.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Solo.svg (100%)
rename {static => website/public}/img/conf/Sponsors/Stellate.svg (100%)
rename {static => website/public}/img/conf/Sponsors/StepZen.svg (100%)
rename {static => website/public}/img/conf/Sponsors/TheGraph.svg (100%)
rename {static => website/public}/img/conf/Sponsors/TheGuild.svg (100%)
rename {static => website/public}/img/conf/Sponsors/WunderGraph.svg (100%)
rename {static => website/public}/img/conf/around.svg (100%)
rename {static => website/public}/img/conf/bus.svg (100%)
rename {static => website/public}/img/conf/conf-bg.png (100%)
rename {static => website/public}/img/conf/graphql-conf-bg.png (100%)
rename {static => website/public}/img/conf/graphql-conf-footer.png (100%)
rename {static => website/public}/img/conf/graphql-conf-header.svg (100%)
rename {static => website/public}/img/conf/graphql-conf-logo-simple.svg (100%)
rename {static => website/public}/img/conf/graphql-conf-logo.svg (100%)
rename {static => website/public}/img/conf/logo-color.png (100%)
rename {static => website/public}/img/conf/parking.svg (100%)
rename {static => website/public}/img/conf/sf-hotel-image.png (100%)
rename {static => website/public}/img/conf/social-pk.jpg (100%)
rename {static => website/public}/img/conf/speakers/leebyron.jpg (100%)
rename {static => website/public}/img/conf/speakers/marcandre.jpg (100%)
rename {static => website/public}/img/conf/train.svg (100%)
rename {static => website/public}/img/diagrams/business_layer.png (100%)
rename {static => website/public}/img/downarrow.svg (100%)
rename {static => website/public}/img/edit.svg (100%)
rename {static => website/public}/img/graph-wash.png (100%)
rename {static => website/public}/img/graphiql.mp4 (100%)
rename {static => website/public}/img/graphql-conf-logo.svg (100%)
rename {static => website/public}/img/graphql_conf-details-white.svg (100%)
rename {static => website/public}/img/graphql_conf-details.svg (100%)
rename {static => website/public}/img/graphql_foundation-hero.jpg (100%)
rename {static => website/public}/img/graphql_foundation-logo-white.svg (100%)
rename {static => website/public}/img/hello.png (100%)
rename {static => website/public}/img/logo-gray.svg (100%)
rename {static => website/public}/img/logo.svg (100%)
rename {static => website/public}/img/logos/discord.svg (100%)
rename {static => website/public}/img/logos/facebook.svg (100%)
rename {static => website/public}/img/logos/github.svg (100%)
rename {static => website/public}/img/logos/gsoc.svg (100%)
rename {static => website/public}/img/logos/instagram.svg (100%)
rename {static => website/public}/img/logos/linkedin.svg (100%)
rename {static => website/public}/img/logos/snapchat.svg (100%)
rename {static => website/public}/img/logos/stackoverflow.svg (100%)
rename {static => website/public}/img/logos/twitter.svg (100%)
rename {static => website/public}/img/menu-white.svg (100%)
rename {static => website/public}/img/menu.svg (100%)
rename {static => website/public}/img/news/annual-report-1.png (100%)
rename {static => website/public}/img/news/annual-report-2.png (100%)
rename {static => website/public}/img/news/annual-report-3.png (100%)
rename {static => website/public}/img/news/annual-report-4.png (100%)
rename {static => website/public}/img/news/graphiql-parser.png (100%)
rename {static => website/public}/img/news/playground-transition-banner.png (100%)
rename {static => website/public}/img/og-image.png (100%)
rename {static => website/public}/img/phone.svg (100%)
rename {static => website/public}/img/report/amazon-web-services.svg (100%)
rename {static => website/public}/img/report/apollo-graphql.svg (98%)
rename {static => website/public}/img/report/expedia-group.svg (100%)
rename {static => website/public}/img/report/facebook.svg (100%)
rename {static => website/public}/img/report/hasura.svg (100%)
rename {static => website/public}/img/report/ibm.svg (100%)
rename {static => website/public}/img/report/novvum.svg (100%)
rename {static => website/public}/img/report/paypal.svg (100%)
rename {static => website/public}/img/report/salsify.svg (100%)
rename {static => website/public}/img/search.png (100%)
rename {static => website/public}/img/search.svg (100%)
rename {static => website/public}/img/server.svg (100%)
rename {static => website/public}/users/logos/1stdibs.png (100%)
rename {static => website/public}/users/logos/20minutes.png (100%)
rename {static => website/public}/users/logos/adayroi.png (100%)
rename {static => website/public}/users/logos/airbnb.png (100%)
rename {static => website/public}/users/logos/alembic.png (100%)
rename {static => website/public}/users/logos/allocine.png (100%)
rename {static => website/public}/users/logos/alphasights.png (100%)
rename {static => website/public}/users/logos/amplitude.png (100%)
rename {static => website/public}/users/logos/ants.png (100%)
rename {static => website/public}/users/logos/appier.png (100%)
rename {static => website/public}/users/logos/arangodb.png (100%)
rename {static => website/public}/users/logos/artsy.png (100%)
rename {static => website/public}/users/logos/atlassian.png (100%)
rename {static => website/public}/users/logos/attendify.png (100%)
rename {static => website/public}/users/logos/bazinga.png (100%)
rename {static => website/public}/users/logos/blenderbottle.png (100%)
rename {static => website/public}/users/logos/brewerybuddy.png (100%)
rename {static => website/public}/users/logos/bright.png (100%)
rename {static => website/public}/users/logos/buildkite.png (100%)
rename {static => website/public}/users/logos/bynder.png (100%)
rename {static => website/public}/users/logos/cheddar.png (100%)
rename {static => website/public}/users/logos/circlehd.png (100%)
rename {static => website/public}/users/logos/cloverleaf.png (100%)
rename {static => website/public}/users/logos/clubmed.png (100%)
rename {static => website/public}/users/logos/colectica.png (100%)
rename {static => website/public}/users/logos/commercetools.png (100%)
rename {static => website/public}/users/logos/comparaonline.png (100%)
rename {static => website/public}/users/logos/conduit.png (100%)
rename {static => website/public}/users/logos/coursera.png (100%)
rename {static => website/public}/users/logos/creditkarma.png (100%)
rename {static => website/public}/users/logos/curio.png (100%)
rename {static => website/public}/users/logos/dailymotion.png (100%)
rename {static => website/public}/users/logos/digitransit.png (100%)
rename {static => website/public}/users/logos/directlyrics.png (100%)
rename {static => website/public}/users/logos/drift.png (100%)
rename {static => website/public}/users/logos/duedil.png (100%)
rename {static => website/public}/users/logos/eastview.png (100%)
rename {static => website/public}/users/logos/easycarros.png (100%)
rename {static => website/public}/users/logos/ediket.png (100%)
rename {static => website/public}/users/logos/etmdb.png (100%)
rename {static => website/public}/users/logos/expert360.png (100%)
rename {static => website/public}/users/logos/facebook.png (100%)
rename {static => website/public}/users/logos/fairfaxmedia.png (100%)
rename {static => website/public}/users/logos/filejet.png (100%)
rename {static => website/public}/users/logos/gentux.png (100%)
rename {static => website/public}/users/logos/getninjas.png (100%)
rename {static => website/public}/users/logos/github.png (100%)
rename {static => website/public}/users/logos/goalify.png (100%)
rename {static => website/public}/users/logos/graphcms.png (100%)
rename {static => website/public}/users/logos/graphcool.png (100%)
rename {static => website/public}/users/logos/hackages.png (100%)
rename {static => website/public}/users/logos/hasura.png (100%)
rename {static => website/public}/users/logos/hijup.png (100%)
rename {static => website/public}/users/logos/housinganywhere.png (100%)
rename {static => website/public}/users/logos/hsl.png (100%)
rename {static => website/public}/users/logos/hudl.png (100%)
rename {static => website/public}/users/logos/icon-systems.png (100%)
rename {static => website/public}/users/logos/idobata.png (100%)
rename {static => website/public}/users/logos/indonesiax.png (100%)
rename {static => website/public}/users/logos/inerva.png (100%)
rename {static => website/public}/users/logos/intuit.png (100%)
rename {static => website/public}/users/logos/jusbrasil.png (100%)
rename {static => website/public}/users/logos/klm.png (100%)
rename {static => website/public}/users/logos/leanix.png (100%)
rename {static => website/public}/users/logos/legendsoflearning.png (100%)
rename {static => website/public}/users/logos/lelivrescolaire.png (100%)
rename {static => website/public}/users/logos/letsevents.png (100%)
rename {static => website/public}/users/logos/loggi.png (100%)
rename {static => website/public}/users/logos/m1finance.png (100%)
rename {static => website/public}/users/logos/make-school.png (100%)
rename {static => website/public}/users/logos/medallia.png (100%)
rename {static => website/public}/users/logos/meteor.png (100%)
rename {static => website/public}/users/logos/metric-ai.png (100%)
rename {static => website/public}/users/logos/mixcloud.png (100%)
rename {static => website/public}/users/logos/mojilala.png (100%)
rename {static => website/public}/users/logos/myheritage.png (100%)
rename {static => website/public}/users/logos/myntra.png (100%)
rename {static => website/public}/users/logos/nbc-news-digital.png (100%)
rename {static => website/public}/users/logos/neo4j_logo.png (100%)
rename {static => website/public}/users/logos/newspring.png (100%)
rename {static => website/public}/users/logos/ningensoft.png (100%)
rename {static => website/public}/users/logos/nova-ideo.png (100%)
rename {static => website/public}/users/logos/nyt.png (100%)
rename {static => website/public}/users/logos/okgrow.png (100%)
rename {static => website/public}/users/logos/ovos.png (100%)
rename {static => website/public}/users/logos/paypal.png (100%)
rename {static => website/public}/users/logos/persado.png (100%)
rename {static => website/public}/users/logos/pinterest.png (100%)
rename {static => website/public}/users/logos/product-hunt.png (100%)
rename {static => website/public}/users/logos/project-september.png (100%)
rename {static => website/public}/users/logos/protel.png (100%)
rename {static => website/public}/users/logos/prowl.png (100%)
rename {static => website/public}/users/logos/quri.png (100%)
rename {static => website/public}/users/logos/redbubble.png (100%)
rename {static => website/public}/users/logos/reindex.png (100%)
rename {static => website/public}/users/logos/restorando.png (100%)
rename {static => website/public}/users/logos/salestock.png (100%)
rename {static => website/public}/users/logos/scaphold.png (100%)
rename {static => website/public}/users/logos/serverless.png (100%)
rename {static => website/public}/users/logos/shopify.png (100%)
rename {static => website/public}/users/logos/sky.png (100%)
rename {static => website/public}/users/logos/skyarchnetworks.png (100%)
rename {static => website/public}/users/logos/smarkets.png (100%)
rename {static => website/public}/users/logos/stackshare.png (100%)
rename {static => website/public}/users/logos/startupsco.png (100%)
rename {static => website/public}/users/logos/stem.png (100%)
rename {static => website/public}/users/logos/swapcard.png (100%)
rename {static => website/public}/users/logos/syzygy.png (100%)
rename {static => website/public}/users/logos/taller.png (100%)
rename {static => website/public}/users/logos/teacherspayteachers.png (100%)
rename {static => website/public}/users/logos/teselagen_logo.png (100%)
rename {static => website/public}/users/logos/thehunt.png (100%)
rename {static => website/public}/users/logos/trove.png (100%)
rename {static => website/public}/users/logos/twitter.png (100%)
rename {static => website/public}/users/logos/uctrends.png (100%)
rename {static => website/public}/users/logos/unigraph.png (100%)
rename {static => website/public}/users/logos/universe.png (100%)
rename {static => website/public}/users/logos/ustglobal.png (100%)
rename {static => website/public}/users/logos/vanilaio.png (100%)
rename {static => website/public}/users/logos/waitlessq.png (100%)
rename {static => website/public}/users/logos/waldo-photos.png (100%)
rename {static => website/public}/users/logos/wayfair.png (100%)
rename {static => website/public}/users/logos/whitescape.png (100%)
rename {static => website/public}/users/logos/wirtualnapolska.png (100%)
rename {static => website/public}/users/logos/wishlife.png (100%)
rename {static => website/public}/users/logos/workflowgen.png (100%)
rename {static => website/public}/users/logos/wowair.png (100%)
rename {static => website/public}/users/logos/yelp.png (100%)
rename {static => website/public}/users/logos/zlyde.png (100%)
rename {static => website/public}/users/logos/zzish.png (100%)
diff --git a/.gitignore b/.gitignore
index 158c46771b..2f66df4ba4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -57,7 +57,7 @@ typings/
# gatsby files
.cache/
-public/
+/public/
!static/img/__og-image/
static/img/__og-image/*
diff --git a/static/favicon.ico b/website/public/favicon.ico
similarity index 100%
rename from static/favicon.ico
rename to website/public/favicon.ico
diff --git a/static/files/GraphQL_Foundation-Participation_Agreement-Preview.pdf b/website/public/files/GraphQL_Foundation-Participation_Agreement-Preview.pdf
similarity index 100%
rename from static/files/GraphQL_Foundation-Participation_Agreement-Preview.pdf
rename to website/public/files/GraphQL_Foundation-Participation_Agreement-Preview.pdf
diff --git a/static/files/LF_Membership-Preview.pdf b/website/public/files/LF_Membership-Preview.pdf
similarity index 100%
rename from static/files/LF_Membership-Preview.pdf
rename to website/public/files/LF_Membership-Preview.pdf
diff --git a/static/files/foundation-participation-agreement-revised-jan-2022.pdf b/website/public/files/foundation-participation-agreement-revised-jan-2022.pdf
similarity index 100%
rename from static/files/foundation-participation-agreement-revised-jan-2022.pdf
rename to website/public/files/foundation-participation-agreement-revised-jan-2022.pdf
diff --git a/static/img/__og-image/017d9954f1be1c7e2ab2696c2abe6b9b.png b/website/public/img/__og-image/017d9954f1be1c7e2ab2696c2abe6b9b.png
similarity index 100%
rename from static/img/__og-image/017d9954f1be1c7e2ab2696c2abe6b9b.png
rename to website/public/img/__og-image/017d9954f1be1c7e2ab2696c2abe6b9b.png
diff --git a/static/img/__og-image/09bc04c42310bfe14024455bce46d781.png b/website/public/img/__og-image/09bc04c42310bfe14024455bce46d781.png
similarity index 100%
rename from static/img/__og-image/09bc04c42310bfe14024455bce46d781.png
rename to website/public/img/__og-image/09bc04c42310bfe14024455bce46d781.png
diff --git a/static/img/__og-image/0b5f6bcbfc77f97f4cdc6cdf4a171f82.png b/website/public/img/__og-image/0b5f6bcbfc77f97f4cdc6cdf4a171f82.png
similarity index 100%
rename from static/img/__og-image/0b5f6bcbfc77f97f4cdc6cdf4a171f82.png
rename to website/public/img/__og-image/0b5f6bcbfc77f97f4cdc6cdf4a171f82.png
diff --git a/static/img/__og-image/0bea54e1f79d706f2da4c802f8581ae5.png b/website/public/img/__og-image/0bea54e1f79d706f2da4c802f8581ae5.png
similarity index 100%
rename from static/img/__og-image/0bea54e1f79d706f2da4c802f8581ae5.png
rename to website/public/img/__og-image/0bea54e1f79d706f2da4c802f8581ae5.png
diff --git a/static/img/__og-image/0f57893e761e683f58c4ace9e766c3bf.png b/website/public/img/__og-image/0f57893e761e683f58c4ace9e766c3bf.png
similarity index 100%
rename from static/img/__og-image/0f57893e761e683f58c4ace9e766c3bf.png
rename to website/public/img/__og-image/0f57893e761e683f58c4ace9e766c3bf.png
diff --git a/static/img/__og-image/118f99976647d953d6554bac33dbf3bf.png b/website/public/img/__og-image/118f99976647d953d6554bac33dbf3bf.png
similarity index 100%
rename from static/img/__og-image/118f99976647d953d6554bac33dbf3bf.png
rename to website/public/img/__og-image/118f99976647d953d6554bac33dbf3bf.png
diff --git a/static/img/__og-image/158baff7d8c21cc0c210f805baa3e383.png b/website/public/img/__og-image/158baff7d8c21cc0c210f805baa3e383.png
similarity index 100%
rename from static/img/__og-image/158baff7d8c21cc0c210f805baa3e383.png
rename to website/public/img/__og-image/158baff7d8c21cc0c210f805baa3e383.png
diff --git a/static/img/__og-image/17f150667d13a57f28bae524443f4c60.png b/website/public/img/__og-image/17f150667d13a57f28bae524443f4c60.png
similarity index 100%
rename from static/img/__og-image/17f150667d13a57f28bae524443f4c60.png
rename to website/public/img/__og-image/17f150667d13a57f28bae524443f4c60.png
diff --git a/static/img/__og-image/1e7a35fbd833d9be1aa9719f77c86fb7.png b/website/public/img/__og-image/1e7a35fbd833d9be1aa9719f77c86fb7.png
similarity index 100%
rename from static/img/__og-image/1e7a35fbd833d9be1aa9719f77c86fb7.png
rename to website/public/img/__og-image/1e7a35fbd833d9be1aa9719f77c86fb7.png
diff --git a/static/img/__og-image/217cf30afd15a724ebb42c4d82169a26.png b/website/public/img/__og-image/217cf30afd15a724ebb42c4d82169a26.png
similarity index 100%
rename from static/img/__og-image/217cf30afd15a724ebb42c4d82169a26.png
rename to website/public/img/__og-image/217cf30afd15a724ebb42c4d82169a26.png
diff --git a/static/img/__og-image/247898ad29d5e594611af3cecf82f5e3.png b/website/public/img/__og-image/247898ad29d5e594611af3cecf82f5e3.png
similarity index 100%
rename from static/img/__og-image/247898ad29d5e594611af3cecf82f5e3.png
rename to website/public/img/__og-image/247898ad29d5e594611af3cecf82f5e3.png
diff --git a/static/img/__og-image/2517f7a1d13ad3c0652e1b3cc5b65714.png b/website/public/img/__og-image/2517f7a1d13ad3c0652e1b3cc5b65714.png
similarity index 100%
rename from static/img/__og-image/2517f7a1d13ad3c0652e1b3cc5b65714.png
rename to website/public/img/__og-image/2517f7a1d13ad3c0652e1b3cc5b65714.png
diff --git a/static/img/__og-image/275443caa2eda5df06699b724efa533c.png b/website/public/img/__og-image/275443caa2eda5df06699b724efa533c.png
similarity index 100%
rename from static/img/__og-image/275443caa2eda5df06699b724efa533c.png
rename to website/public/img/__og-image/275443caa2eda5df06699b724efa533c.png
diff --git a/static/img/__og-image/2816d4a81204283289584830acda7826.png b/website/public/img/__og-image/2816d4a81204283289584830acda7826.png
similarity index 100%
rename from static/img/__og-image/2816d4a81204283289584830acda7826.png
rename to website/public/img/__og-image/2816d4a81204283289584830acda7826.png
diff --git a/static/img/__og-image/295679e18701aa2be84f329db1118637.png b/website/public/img/__og-image/295679e18701aa2be84f329db1118637.png
similarity index 100%
rename from static/img/__og-image/295679e18701aa2be84f329db1118637.png
rename to website/public/img/__og-image/295679e18701aa2be84f329db1118637.png
diff --git a/static/img/__og-image/2b7518a6d8f2b72122c17beb92af8c89.png b/website/public/img/__og-image/2b7518a6d8f2b72122c17beb92af8c89.png
similarity index 100%
rename from static/img/__og-image/2b7518a6d8f2b72122c17beb92af8c89.png
rename to website/public/img/__og-image/2b7518a6d8f2b72122c17beb92af8c89.png
diff --git a/static/img/__og-image/3045d1849811f05cc2afaf690ea474a5.png b/website/public/img/__og-image/3045d1849811f05cc2afaf690ea474a5.png
similarity index 100%
rename from static/img/__og-image/3045d1849811f05cc2afaf690ea474a5.png
rename to website/public/img/__og-image/3045d1849811f05cc2afaf690ea474a5.png
diff --git a/static/img/__og-image/34bdd9b21a3cf2db6600a5ef840b3fb3.png b/website/public/img/__og-image/34bdd9b21a3cf2db6600a5ef840b3fb3.png
similarity index 100%
rename from static/img/__og-image/34bdd9b21a3cf2db6600a5ef840b3fb3.png
rename to website/public/img/__og-image/34bdd9b21a3cf2db6600a5ef840b3fb3.png
diff --git a/static/img/__og-image/38cb4033d5cfed2d5b508f08374ebe9b.png b/website/public/img/__og-image/38cb4033d5cfed2d5b508f08374ebe9b.png
similarity index 100%
rename from static/img/__og-image/38cb4033d5cfed2d5b508f08374ebe9b.png
rename to website/public/img/__og-image/38cb4033d5cfed2d5b508f08374ebe9b.png
diff --git a/static/img/__og-image/3a88eedac57e223aa69979407cfcc8f0.png b/website/public/img/__og-image/3a88eedac57e223aa69979407cfcc8f0.png
similarity index 100%
rename from static/img/__og-image/3a88eedac57e223aa69979407cfcc8f0.png
rename to website/public/img/__og-image/3a88eedac57e223aa69979407cfcc8f0.png
diff --git a/static/img/__og-image/3d167cf84012c4ff2dcca8fca736b0dd.png b/website/public/img/__og-image/3d167cf84012c4ff2dcca8fca736b0dd.png
similarity index 100%
rename from static/img/__og-image/3d167cf84012c4ff2dcca8fca736b0dd.png
rename to website/public/img/__og-image/3d167cf84012c4ff2dcca8fca736b0dd.png
diff --git a/static/img/__og-image/3e70d76748962770972c5c80e45ee9d7.png b/website/public/img/__og-image/3e70d76748962770972c5c80e45ee9d7.png
similarity index 100%
rename from static/img/__og-image/3e70d76748962770972c5c80e45ee9d7.png
rename to website/public/img/__og-image/3e70d76748962770972c5c80e45ee9d7.png
diff --git a/static/img/__og-image/47c1bf50ce5556edcae9a84795485a8f.png b/website/public/img/__og-image/47c1bf50ce5556edcae9a84795485a8f.png
similarity index 100%
rename from static/img/__og-image/47c1bf50ce5556edcae9a84795485a8f.png
rename to website/public/img/__og-image/47c1bf50ce5556edcae9a84795485a8f.png
diff --git a/static/img/__og-image/48f4e69c465b793750b5aa47bb7f2b6e.png b/website/public/img/__og-image/48f4e69c465b793750b5aa47bb7f2b6e.png
similarity index 100%
rename from static/img/__og-image/48f4e69c465b793750b5aa47bb7f2b6e.png
rename to website/public/img/__og-image/48f4e69c465b793750b5aa47bb7f2b6e.png
diff --git a/static/img/__og-image/4a4e842d1cd0c06083f484d31225abd1.png b/website/public/img/__og-image/4a4e842d1cd0c06083f484d31225abd1.png
similarity index 100%
rename from static/img/__og-image/4a4e842d1cd0c06083f484d31225abd1.png
rename to website/public/img/__og-image/4a4e842d1cd0c06083f484d31225abd1.png
diff --git a/static/img/__og-image/4feef977ceb883c69c91ccd2dd607aec.png b/website/public/img/__og-image/4feef977ceb883c69c91ccd2dd607aec.png
similarity index 100%
rename from static/img/__og-image/4feef977ceb883c69c91ccd2dd607aec.png
rename to website/public/img/__og-image/4feef977ceb883c69c91ccd2dd607aec.png
diff --git a/static/img/__og-image/50005edb4a441b0335d1b80b4ad62b1a.png b/website/public/img/__og-image/50005edb4a441b0335d1b80b4ad62b1a.png
similarity index 100%
rename from static/img/__og-image/50005edb4a441b0335d1b80b4ad62b1a.png
rename to website/public/img/__og-image/50005edb4a441b0335d1b80b4ad62b1a.png
diff --git a/static/img/__og-image/504049f2217d6c59b9f67eba97089bfe.png b/website/public/img/__og-image/504049f2217d6c59b9f67eba97089bfe.png
similarity index 100%
rename from static/img/__og-image/504049f2217d6c59b9f67eba97089bfe.png
rename to website/public/img/__og-image/504049f2217d6c59b9f67eba97089bfe.png
diff --git a/static/img/__og-image/520b70cfea27170fd6ed21d79f6b0357.png b/website/public/img/__og-image/520b70cfea27170fd6ed21d79f6b0357.png
similarity index 100%
rename from static/img/__og-image/520b70cfea27170fd6ed21d79f6b0357.png
rename to website/public/img/__og-image/520b70cfea27170fd6ed21d79f6b0357.png
diff --git a/static/img/__og-image/55dd5ef56bd778955509d08ea81903ea.png b/website/public/img/__og-image/55dd5ef56bd778955509d08ea81903ea.png
similarity index 100%
rename from static/img/__og-image/55dd5ef56bd778955509d08ea81903ea.png
rename to website/public/img/__og-image/55dd5ef56bd778955509d08ea81903ea.png
diff --git a/static/img/__og-image/5684f90e0472771532ed5ee2b237300f.png b/website/public/img/__og-image/5684f90e0472771532ed5ee2b237300f.png
similarity index 100%
rename from static/img/__og-image/5684f90e0472771532ed5ee2b237300f.png
rename to website/public/img/__og-image/5684f90e0472771532ed5ee2b237300f.png
diff --git a/static/img/__og-image/58b45c125046c6c7a8c35ec084bfbb19.png b/website/public/img/__og-image/58b45c125046c6c7a8c35ec084bfbb19.png
similarity index 100%
rename from static/img/__og-image/58b45c125046c6c7a8c35ec084bfbb19.png
rename to website/public/img/__og-image/58b45c125046c6c7a8c35ec084bfbb19.png
diff --git a/static/img/__og-image/5a0c1b8ab4957bfd83f55480c1508fe5.png b/website/public/img/__og-image/5a0c1b8ab4957bfd83f55480c1508fe5.png
similarity index 100%
rename from static/img/__og-image/5a0c1b8ab4957bfd83f55480c1508fe5.png
rename to website/public/img/__og-image/5a0c1b8ab4957bfd83f55480c1508fe5.png
diff --git a/static/img/__og-image/5bf24cd6483a63e62a2276fe38effb82.png b/website/public/img/__og-image/5bf24cd6483a63e62a2276fe38effb82.png
similarity index 100%
rename from static/img/__og-image/5bf24cd6483a63e62a2276fe38effb82.png
rename to website/public/img/__og-image/5bf24cd6483a63e62a2276fe38effb82.png
diff --git a/static/img/__og-image/5d6afee232e35ba1880e7b25d810ef49.png b/website/public/img/__og-image/5d6afee232e35ba1880e7b25d810ef49.png
similarity index 100%
rename from static/img/__og-image/5d6afee232e35ba1880e7b25d810ef49.png
rename to website/public/img/__og-image/5d6afee232e35ba1880e7b25d810ef49.png
diff --git a/static/img/__og-image/5f920cd134d4dea87fce5e59bc4418dc.png b/website/public/img/__og-image/5f920cd134d4dea87fce5e59bc4418dc.png
similarity index 100%
rename from static/img/__og-image/5f920cd134d4dea87fce5e59bc4418dc.png
rename to website/public/img/__og-image/5f920cd134d4dea87fce5e59bc4418dc.png
diff --git a/static/img/__og-image/61b9efc6ff8e0f295be6c65c08871c23.png b/website/public/img/__og-image/61b9efc6ff8e0f295be6c65c08871c23.png
similarity index 100%
rename from static/img/__og-image/61b9efc6ff8e0f295be6c65c08871c23.png
rename to website/public/img/__og-image/61b9efc6ff8e0f295be6c65c08871c23.png
diff --git a/static/img/__og-image/6543e60efc3f0c20d24a40cffef29558.png b/website/public/img/__og-image/6543e60efc3f0c20d24a40cffef29558.png
similarity index 100%
rename from static/img/__og-image/6543e60efc3f0c20d24a40cffef29558.png
rename to website/public/img/__og-image/6543e60efc3f0c20d24a40cffef29558.png
diff --git a/static/img/__og-image/66e332f155e04efea896d5bd5dcd2ba5.png b/website/public/img/__og-image/66e332f155e04efea896d5bd5dcd2ba5.png
similarity index 100%
rename from static/img/__og-image/66e332f155e04efea896d5bd5dcd2ba5.png
rename to website/public/img/__og-image/66e332f155e04efea896d5bd5dcd2ba5.png
diff --git a/static/img/__og-image/675c416b16ad2b0c519b1ec894353fc5.png b/website/public/img/__og-image/675c416b16ad2b0c519b1ec894353fc5.png
similarity index 100%
rename from static/img/__og-image/675c416b16ad2b0c519b1ec894353fc5.png
rename to website/public/img/__og-image/675c416b16ad2b0c519b1ec894353fc5.png
diff --git a/static/img/__og-image/6c2eefe955e288e974a9182dac06f8fa.png b/website/public/img/__og-image/6c2eefe955e288e974a9182dac06f8fa.png
similarity index 100%
rename from static/img/__og-image/6c2eefe955e288e974a9182dac06f8fa.png
rename to website/public/img/__og-image/6c2eefe955e288e974a9182dac06f8fa.png
diff --git a/static/img/__og-image/6d07d593f16320c810d6aba8553199ed.png b/website/public/img/__og-image/6d07d593f16320c810d6aba8553199ed.png
similarity index 100%
rename from static/img/__og-image/6d07d593f16320c810d6aba8553199ed.png
rename to website/public/img/__og-image/6d07d593f16320c810d6aba8553199ed.png
diff --git a/static/img/__og-image/70f9e59dc60cf417aa38eb890b2a8abe.png b/website/public/img/__og-image/70f9e59dc60cf417aa38eb890b2a8abe.png
similarity index 100%
rename from static/img/__og-image/70f9e59dc60cf417aa38eb890b2a8abe.png
rename to website/public/img/__og-image/70f9e59dc60cf417aa38eb890b2a8abe.png
diff --git a/static/img/__og-image/72ac8d3f7585f86cb9acc77b9eb22241.png b/website/public/img/__og-image/72ac8d3f7585f86cb9acc77b9eb22241.png
similarity index 100%
rename from static/img/__og-image/72ac8d3f7585f86cb9acc77b9eb22241.png
rename to website/public/img/__og-image/72ac8d3f7585f86cb9acc77b9eb22241.png
diff --git a/static/img/__og-image/77623920b158a75435d48896a8d56b35.png b/website/public/img/__og-image/77623920b158a75435d48896a8d56b35.png
similarity index 100%
rename from static/img/__og-image/77623920b158a75435d48896a8d56b35.png
rename to website/public/img/__og-image/77623920b158a75435d48896a8d56b35.png
diff --git a/static/img/__og-image/7a87fe1cfc351a993ed40e01d384e3c6.png b/website/public/img/__og-image/7a87fe1cfc351a993ed40e01d384e3c6.png
similarity index 100%
rename from static/img/__og-image/7a87fe1cfc351a993ed40e01d384e3c6.png
rename to website/public/img/__og-image/7a87fe1cfc351a993ed40e01d384e3c6.png
diff --git a/static/img/__og-image/7bb96b3d5660f2d285220d7cdd59eb7f.png b/website/public/img/__og-image/7bb96b3d5660f2d285220d7cdd59eb7f.png
similarity index 100%
rename from static/img/__og-image/7bb96b3d5660f2d285220d7cdd59eb7f.png
rename to website/public/img/__og-image/7bb96b3d5660f2d285220d7cdd59eb7f.png
diff --git a/static/img/__og-image/7d2491dd9142a830ac0c3ff1477636d8.png b/website/public/img/__og-image/7d2491dd9142a830ac0c3ff1477636d8.png
similarity index 100%
rename from static/img/__og-image/7d2491dd9142a830ac0c3ff1477636d8.png
rename to website/public/img/__og-image/7d2491dd9142a830ac0c3ff1477636d8.png
diff --git a/static/img/__og-image/80869c56bb59f51de6ac8468c18eecdc.png b/website/public/img/__og-image/80869c56bb59f51de6ac8468c18eecdc.png
similarity index 100%
rename from static/img/__og-image/80869c56bb59f51de6ac8468c18eecdc.png
rename to website/public/img/__og-image/80869c56bb59f51de6ac8468c18eecdc.png
diff --git a/static/img/__og-image/81daf0dd0b26efdc784ba0a530e54a68.png b/website/public/img/__og-image/81daf0dd0b26efdc784ba0a530e54a68.png
similarity index 100%
rename from static/img/__og-image/81daf0dd0b26efdc784ba0a530e54a68.png
rename to website/public/img/__og-image/81daf0dd0b26efdc784ba0a530e54a68.png
diff --git a/static/img/__og-image/888b77af90aa0ff776adc9669a29cb3f.png b/website/public/img/__og-image/888b77af90aa0ff776adc9669a29cb3f.png
similarity index 100%
rename from static/img/__og-image/888b77af90aa0ff776adc9669a29cb3f.png
rename to website/public/img/__og-image/888b77af90aa0ff776adc9669a29cb3f.png
diff --git a/static/img/__og-image/88bbc65fe92d08a0404215429f06c113.png b/website/public/img/__og-image/88bbc65fe92d08a0404215429f06c113.png
similarity index 100%
rename from static/img/__og-image/88bbc65fe92d08a0404215429f06c113.png
rename to website/public/img/__og-image/88bbc65fe92d08a0404215429f06c113.png
diff --git a/static/img/__og-image/8a1158bda6933f83f43b704bff54ff63.png b/website/public/img/__og-image/8a1158bda6933f83f43b704bff54ff63.png
similarity index 100%
rename from static/img/__og-image/8a1158bda6933f83f43b704bff54ff63.png
rename to website/public/img/__og-image/8a1158bda6933f83f43b704bff54ff63.png
diff --git a/static/img/__og-image/94d334f99906d3fc2669fc804e5fae41.png b/website/public/img/__og-image/94d334f99906d3fc2669fc804e5fae41.png
similarity index 100%
rename from static/img/__og-image/94d334f99906d3fc2669fc804e5fae41.png
rename to website/public/img/__og-image/94d334f99906d3fc2669fc804e5fae41.png
diff --git a/static/img/__og-image/95e6219a5e20a9e2f9381822460932ac.png b/website/public/img/__og-image/95e6219a5e20a9e2f9381822460932ac.png
similarity index 100%
rename from static/img/__og-image/95e6219a5e20a9e2f9381822460932ac.png
rename to website/public/img/__og-image/95e6219a5e20a9e2f9381822460932ac.png
diff --git a/static/img/__og-image/9836184d78d14978c0c49f1e2b900bb9.png b/website/public/img/__og-image/9836184d78d14978c0c49f1e2b900bb9.png
similarity index 100%
rename from static/img/__og-image/9836184d78d14978c0c49f1e2b900bb9.png
rename to website/public/img/__og-image/9836184d78d14978c0c49f1e2b900bb9.png
diff --git a/static/img/__og-image/9836d339aaf014a7ced7f87141fcee67.png b/website/public/img/__og-image/9836d339aaf014a7ced7f87141fcee67.png
similarity index 100%
rename from static/img/__og-image/9836d339aaf014a7ced7f87141fcee67.png
rename to website/public/img/__og-image/9836d339aaf014a7ced7f87141fcee67.png
diff --git a/static/img/__og-image/9a543325b8802fd94cc9ed81908dc888.png b/website/public/img/__og-image/9a543325b8802fd94cc9ed81908dc888.png
similarity index 100%
rename from static/img/__og-image/9a543325b8802fd94cc9ed81908dc888.png
rename to website/public/img/__og-image/9a543325b8802fd94cc9ed81908dc888.png
diff --git a/static/img/__og-image/a44cec64a01063d4c6a11e54cc8d24d3.png b/website/public/img/__og-image/a44cec64a01063d4c6a11e54cc8d24d3.png
similarity index 100%
rename from static/img/__og-image/a44cec64a01063d4c6a11e54cc8d24d3.png
rename to website/public/img/__og-image/a44cec64a01063d4c6a11e54cc8d24d3.png
diff --git a/static/img/__og-image/a638dad8443a364e12ed29b3bc50d128.png b/website/public/img/__og-image/a638dad8443a364e12ed29b3bc50d128.png
similarity index 100%
rename from static/img/__og-image/a638dad8443a364e12ed29b3bc50d128.png
rename to website/public/img/__og-image/a638dad8443a364e12ed29b3bc50d128.png
diff --git a/static/img/__og-image/a6d43808900bc56bb2ebd675544ee5a3.png b/website/public/img/__og-image/a6d43808900bc56bb2ebd675544ee5a3.png
similarity index 100%
rename from static/img/__og-image/a6d43808900bc56bb2ebd675544ee5a3.png
rename to website/public/img/__og-image/a6d43808900bc56bb2ebd675544ee5a3.png
diff --git a/static/img/__og-image/a6f436251a88bb94d5e79099742c9d75.png b/website/public/img/__og-image/a6f436251a88bb94d5e79099742c9d75.png
similarity index 100%
rename from static/img/__og-image/a6f436251a88bb94d5e79099742c9d75.png
rename to website/public/img/__og-image/a6f436251a88bb94d5e79099742c9d75.png
diff --git a/static/img/__og-image/abbottry.png b/website/public/img/__og-image/abbottry.png
similarity index 100%
rename from static/img/__og-image/abbottry.png
rename to website/public/img/__og-image/abbottry.png
diff --git a/static/img/__og-image/acarlson29.png b/website/public/img/__og-image/acarlson29.png
similarity index 100%
rename from static/img/__og-image/acarlson29.png
rename to website/public/img/__og-image/acarlson29.png
diff --git a/static/img/__og-image/adam.sayah.png b/website/public/img/__og-image/adam.sayah.png
similarity index 100%
rename from static/img/__og-image/adam.sayah.png
rename to website/public/img/__og-image/adam.sayah.png
diff --git a/static/img/__og-image/afefc1feb47ec68ca6031cfec2e7d46b.png b/website/public/img/__og-image/afefc1feb47ec68ca6031cfec2e7d46b.png
similarity index 100%
rename from static/img/__og-image/afefc1feb47ec68ca6031cfec2e7d46b.png
rename to website/public/img/__og-image/afefc1feb47ec68ca6031cfec2e7d46b.png
diff --git a/static/img/__og-image/ajhingran.png b/website/public/img/__og-image/ajhingran.png
similarity index 100%
rename from static/img/__og-image/ajhingran.png
rename to website/public/img/__og-image/ajhingran.png
diff --git a/static/img/__og-image/alec102.png b/website/public/img/__og-image/alec102.png
similarity index 100%
rename from static/img/__og-image/alec102.png
rename to website/public/img/__og-image/alec102.png
diff --git a/static/img/__og-image/alexsandra.sikora.png b/website/public/img/__og-image/alexsandra.sikora.png
similarity index 100%
rename from static/img/__og-image/alexsandra.sikora.png
rename to website/public/img/__og-image/alexsandra.sikora.png
diff --git a/static/img/__og-image/amy1908.png b/website/public/img/__og-image/amy1908.png
similarity index 100%
rename from static/img/__og-image/amy1908.png
rename to website/public/img/__og-image/amy1908.png
diff --git a/static/img/__og-image/andreas.heiberg.png b/website/public/img/__og-image/andreas.heiberg.png
similarity index 100%
rename from static/img/__og-image/andreas.heiberg.png
rename to website/public/img/__og-image/andreas.heiberg.png
diff --git a/static/img/__og-image/annyce.davis.png b/website/public/img/__og-image/annyce.davis.png
similarity index 100%
rename from static/img/__og-image/annyce.davis.png
rename to website/public/img/__og-image/annyce.davis.png
diff --git a/static/img/__og-image/antoine.carossio.png b/website/public/img/__og-image/antoine.carossio.png
similarity index 100%
rename from static/img/__og-image/antoine.carossio.png
rename to website/public/img/__og-image/antoine.carossio.png
diff --git a/static/img/__og-image/ardatanrikulu.png b/website/public/img/__og-image/ardatanrikulu.png
similarity index 100%
rename from static/img/__og-image/ardatanrikulu.png
rename to website/public/img/__og-image/ardatanrikulu.png
diff --git a/static/img/__og-image/arkenflame.png b/website/public/img/__og-image/arkenflame.png
similarity index 100%
rename from static/img/__og-image/arkenflame.png
rename to website/public/img/__og-image/arkenflame.png
diff --git a/static/img/__og-image/ashpak_shaikh.png b/website/public/img/__og-image/ashpak_shaikh.png
similarity index 100%
rename from static/img/__og-image/ashpak_shaikh.png
rename to website/public/img/__og-image/ashpak_shaikh.png
diff --git a/static/img/__og-image/b2390bef466348cbe435b14cf34c99a5.png b/website/public/img/__og-image/b2390bef466348cbe435b14cf34c99a5.png
similarity index 100%
rename from static/img/__og-image/b2390bef466348cbe435b14cf34c99a5.png
rename to website/public/img/__og-image/b2390bef466348cbe435b14cf34c99a5.png
diff --git a/static/img/__og-image/b38ed79c29a2d0602160d9407bfa3422.png b/website/public/img/__og-image/b38ed79c29a2d0602160d9407bfa3422.png
similarity index 100%
rename from static/img/__og-image/b38ed79c29a2d0602160d9407bfa3422.png
rename to website/public/img/__og-image/b38ed79c29a2d0602160d9407bfa3422.png
diff --git a/static/img/__og-image/b3a3fa420d7467c46c215fa09cd548e0.png b/website/public/img/__og-image/b3a3fa420d7467c46c215fa09cd548e0.png
similarity index 100%
rename from static/img/__og-image/b3a3fa420d7467c46c215fa09cd548e0.png
rename to website/public/img/__og-image/b3a3fa420d7467c46c215fa09cd548e0.png
diff --git a/static/img/__og-image/b57a1a6027fdab59c05c42c9d0515e71.png b/website/public/img/__og-image/b57a1a6027fdab59c05c42c9d0515e71.png
similarity index 100%
rename from static/img/__og-image/b57a1a6027fdab59c05c42c9d0515e71.png
rename to website/public/img/__og-image/b57a1a6027fdab59c05c42c9d0515e71.png
diff --git a/static/img/__og-image/b84ea942d55fb7406e53e3af0c78017e.png b/website/public/img/__og-image/b84ea942d55fb7406e53e3af0c78017e.png
similarity index 100%
rename from static/img/__og-image/b84ea942d55fb7406e53e3af0c78017e.png
rename to website/public/img/__og-image/b84ea942d55fb7406e53e3af0c78017e.png
diff --git a/static/img/__og-image/b9e35d673e7b541421d45ce2043dc05e.png b/website/public/img/__og-image/b9e35d673e7b541421d45ce2043dc05e.png
similarity index 100%
rename from static/img/__og-image/b9e35d673e7b541421d45ce2043dc05e.png
rename to website/public/img/__og-image/b9e35d673e7b541421d45ce2043dc05e.png
diff --git a/static/img/__og-image/badurinadenis.png b/website/public/img/__og-image/badurinadenis.png
similarity index 100%
rename from static/img/__og-image/badurinadenis.png
rename to website/public/img/__og-image/badurinadenis.png
diff --git a/static/img/__og-image/bastiankistner.png b/website/public/img/__og-image/bastiankistner.png
similarity index 100%
rename from static/img/__og-image/bastiankistner.png
rename to website/public/img/__og-image/bastiankistner.png
diff --git a/static/img/__og-image/bc5623fa38b3e2a58b357b35d3209023.png b/website/public/img/__og-image/bc5623fa38b3e2a58b357b35d3209023.png
similarity index 100%
rename from static/img/__og-image/bc5623fa38b3e2a58b357b35d3209023.png
rename to website/public/img/__og-image/bc5623fa38b3e2a58b357b35d3209023.png
diff --git a/static/img/__og-image/benjie3.png b/website/public/img/__og-image/benjie3.png
similarity index 100%
rename from static/img/__og-image/benjie3.png
rename to website/public/img/__og-image/benjie3.png
diff --git a/static/img/__og-image/blacknumber.png b/website/public/img/__og-image/blacknumber.png
similarity index 100%
rename from static/img/__og-image/blacknumber.png
rename to website/public/img/__og-image/blacknumber.png
diff --git a/static/img/__og-image/brandon.r.minnick.png b/website/public/img/__og-image/brandon.r.minnick.png
similarity index 100%
rename from static/img/__og-image/brandon.r.minnick.png
rename to website/public/img/__og-image/brandon.r.minnick.png
diff --git a/static/img/__og-image/bryan.robinson2.png b/website/public/img/__og-image/bryan.robinson2.png
similarity index 100%
rename from static/img/__og-image/bryan.robinson2.png
rename to website/public/img/__og-image/bryan.robinson2.png
diff --git a/static/img/__og-image/bsklar.png b/website/public/img/__og-image/bsklar.png
similarity index 100%
rename from static/img/__og-image/bsklar.png
rename to website/public/img/__og-image/bsklar.png
diff --git a/static/img/__og-image/bsy.png b/website/public/img/__og-image/bsy.png
similarity index 100%
rename from static/img/__og-image/bsy.png
rename to website/public/img/__og-image/bsy.png
diff --git a/static/img/__og-image/c6bcac25dc965b289bda158441311f23.png b/website/public/img/__og-image/c6bcac25dc965b289bda158441311f23.png
similarity index 100%
rename from static/img/__og-image/c6bcac25dc965b289bda158441311f23.png
rename to website/public/img/__og-image/c6bcac25dc965b289bda158441311f23.png
diff --git a/static/img/__og-image/c6cba5c5a91fb3f916acec7de9692bd7.png b/website/public/img/__og-image/c6cba5c5a91fb3f916acec7de9692bd7.png
similarity index 100%
rename from static/img/__og-image/c6cba5c5a91fb3f916acec7de9692bd7.png
rename to website/public/img/__og-image/c6cba5c5a91fb3f916acec7de9692bd7.png
diff --git a/static/img/__og-image/c915230f50de5c93eb5c2bbbee3610e6.png b/website/public/img/__og-image/c915230f50de5c93eb5c2bbbee3610e6.png
similarity index 100%
rename from static/img/__og-image/c915230f50de5c93eb5c2bbbee3610e6.png
rename to website/public/img/__og-image/c915230f50de5c93eb5c2bbbee3610e6.png
diff --git a/static/img/__og-image/cb1f116f01ae3d2ddf5100a18792abc2.png b/website/public/img/__og-image/cb1f116f01ae3d2ddf5100a18792abc2.png
similarity index 100%
rename from static/img/__og-image/cb1f116f01ae3d2ddf5100a18792abc2.png
rename to website/public/img/__og-image/cb1f116f01ae3d2ddf5100a18792abc2.png
diff --git a/static/img/__og-image/cc02f7be2a6fe1dc49f87fa63dec5041.png b/website/public/img/__og-image/cc02f7be2a6fe1dc49f87fa63dec5041.png
similarity index 100%
rename from static/img/__og-image/cc02f7be2a6fe1dc49f87fa63dec5041.png
rename to website/public/img/__og-image/cc02f7be2a6fe1dc49f87fa63dec5041.png
diff --git a/static/img/__og-image/cc22599d768dc636a67a0e93cd74bab2.png b/website/public/img/__og-image/cc22599d768dc636a67a0e93cd74bab2.png
similarity index 100%
rename from static/img/__og-image/cc22599d768dc636a67a0e93cd74bab2.png
rename to website/public/img/__og-image/cc22599d768dc636a67a0e93cd74bab2.png
diff --git a/static/img/__og-image/cc423d9ba6bacb53c1b24490cb208c17.png b/website/public/img/__og-image/cc423d9ba6bacb53c1b24490cb208c17.png
similarity index 100%
rename from static/img/__og-image/cc423d9ba6bacb53c1b24490cb208c17.png
rename to website/public/img/__og-image/cc423d9ba6bacb53c1b24490cb208c17.png
diff --git a/static/img/__og-image/ce430c038efa9a9c19743d1ccc702de9.png b/website/public/img/__og-image/ce430c038efa9a9c19743d1ccc702de9.png
similarity index 100%
rename from static/img/__og-image/ce430c038efa9a9c19743d1ccc702de9.png
rename to website/public/img/__og-image/ce430c038efa9a9c19743d1ccc702de9.png
diff --git a/static/img/__og-image/christian.ernst.png b/website/public/img/__og-image/christian.ernst.png
similarity index 100%
rename from static/img/__og-image/christian.ernst.png
rename to website/public/img/__og-image/christian.ernst.png
diff --git a/static/img/__og-image/d53044f7df10bcb5a53e6908670c41c1.png b/website/public/img/__og-image/d53044f7df10bcb5a53e6908670c41c1.png
similarity index 100%
rename from static/img/__og-image/d53044f7df10bcb5a53e6908670c41c1.png
rename to website/public/img/__og-image/d53044f7df10bcb5a53e6908670c41c1.png
diff --git a/static/img/__og-image/david3103.png b/website/public/img/__og-image/david3103.png
similarity index 100%
rename from static/img/__og-image/david3103.png
rename to website/public/img/__og-image/david3103.png
diff --git a/static/img/__og-image/dd289f7ecf487b271e0495ff09bba26e.png b/website/public/img/__og-image/dd289f7ecf487b271e0495ff09bba26e.png
similarity index 100%
rename from static/img/__og-image/dd289f7ecf487b271e0495ff09bba26e.png
rename to website/public/img/__og-image/dd289f7ecf487b271e0495ff09bba26e.png
diff --git a/static/img/__og-image/de1472b4294ac91745f3648d9228d8f2.png b/website/public/img/__og-image/de1472b4294ac91745f3648d9228d8f2.png
similarity index 100%
rename from static/img/__og-image/de1472b4294ac91745f3648d9228d8f2.png
rename to website/public/img/__og-image/de1472b4294ac91745f3648d9228d8f2.png
diff --git a/static/img/__og-image/de614df0c21b5227fff20767aa065de8.png b/website/public/img/__og-image/de614df0c21b5227fff20767aa065de8.png
similarity index 100%
rename from static/img/__og-image/de614df0c21b5227fff20767aa065de8.png
rename to website/public/img/__og-image/de614df0c21b5227fff20767aa065de8.png
diff --git a/static/img/__og-image/de9b490bff0d1e234ec4e19bc03392b5.png b/website/public/img/__og-image/de9b490bff0d1e234ec4e19bc03392b5.png
similarity index 100%
rename from static/img/__og-image/de9b490bff0d1e234ec4e19bc03392b5.png
rename to website/public/img/__og-image/de9b490bff0d1e234ec4e19bc03392b5.png
diff --git a/static/img/__og-image/doc.jones.png b/website/public/img/__og-image/doc.jones.png
similarity index 100%
rename from static/img/__og-image/doc.jones.png
rename to website/public/img/__og-image/doc.jones.png
diff --git a/static/img/__og-image/donnasiqizhou.png b/website/public/img/__og-image/donnasiqizhou.png
similarity index 100%
rename from static/img/__og-image/donnasiqizhou.png
rename to website/public/img/__og-image/donnasiqizhou.png
diff --git a/static/img/__og-image/dotansimha.png b/website/public/img/__og-image/dotansimha.png
similarity index 100%
rename from static/img/__og-image/dotansimha.png
rename to website/public/img/__og-image/dotansimha.png
diff --git a/static/img/__og-image/e0985f6bdb4bbf07a5ca5ba72fbcc39c.png b/website/public/img/__og-image/e0985f6bdb4bbf07a5ca5ba72fbcc39c.png
similarity index 100%
rename from static/img/__og-image/e0985f6bdb4bbf07a5ca5ba72fbcc39c.png
rename to website/public/img/__og-image/e0985f6bdb4bbf07a5ca5ba72fbcc39c.png
diff --git a/static/img/__og-image/e29bf518adeb99b2319fa8cb70d8f445.png b/website/public/img/__og-image/e29bf518adeb99b2319fa8cb70d8f445.png
similarity index 100%
rename from static/img/__og-image/e29bf518adeb99b2319fa8cb70d8f445.png
rename to website/public/img/__og-image/e29bf518adeb99b2319fa8cb70d8f445.png
diff --git a/static/img/__og-image/e3320ba552ee773065a1a132304a36e0.png b/website/public/img/__og-image/e3320ba552ee773065a1a132304a36e0.png
similarity index 100%
rename from static/img/__og-image/e3320ba552ee773065a1a132304a36e0.png
rename to website/public/img/__og-image/e3320ba552ee773065a1a132304a36e0.png
diff --git a/static/img/__og-image/e3a855088054e180ec6e046bf3d8be8a.png b/website/public/img/__og-image/e3a855088054e180ec6e046bf3d8be8a.png
similarity index 100%
rename from static/img/__og-image/e3a855088054e180ec6e046bf3d8be8a.png
rename to website/public/img/__og-image/e3a855088054e180ec6e046bf3d8be8a.png
diff --git a/static/img/__og-image/e447a52591ed66a452e04d6ce3e3f09e.png b/website/public/img/__og-image/e447a52591ed66a452e04d6ce3e3f09e.png
similarity index 100%
rename from static/img/__og-image/e447a52591ed66a452e04d6ce3e3f09e.png
rename to website/public/img/__og-image/e447a52591ed66a452e04d6ce3e3f09e.png
diff --git a/static/img/__og-image/eb08683c706380e0236adb2097358f4c.png b/website/public/img/__og-image/eb08683c706380e0236adb2097358f4c.png
similarity index 100%
rename from static/img/__og-image/eb08683c706380e0236adb2097358f4c.png
rename to website/public/img/__og-image/eb08683c706380e0236adb2097358f4c.png
diff --git a/static/img/__og-image/ebee6213b39b87437eb7cc9c41ea972b.png b/website/public/img/__og-image/ebee6213b39b87437eb7cc9c41ea972b.png
similarity index 100%
rename from static/img/__og-image/ebee6213b39b87437eb7cc9c41ea972b.png
rename to website/public/img/__og-image/ebee6213b39b87437eb7cc9c41ea972b.png
diff --git a/static/img/__og-image/edcb92ba1f2478b935124038ec1b20f0.png b/website/public/img/__og-image/edcb92ba1f2478b935124038ec1b20f0.png
similarity index 100%
rename from static/img/__og-image/edcb92ba1f2478b935124038ec1b20f0.png
rename to website/public/img/__og-image/edcb92ba1f2478b935124038ec1b20f0.png
diff --git a/static/img/__og-image/eitan15.png b/website/public/img/__og-image/eitan15.png
similarity index 100%
rename from static/img/__og-image/eitan15.png
rename to website/public/img/__og-image/eitan15.png
diff --git a/static/img/__og-image/en3m.png b/website/public/img/__og-image/en3m.png
similarity index 100%
rename from static/img/__og-image/en3m.png
rename to website/public/img/__og-image/en3m.png
diff --git a/static/img/__og-image/ernie.turner1.png b/website/public/img/__og-image/ernie.turner1.png
similarity index 100%
rename from static/img/__og-image/ernie.turner1.png
rename to website/public/img/__og-image/ernie.turner1.png
diff --git a/static/img/__og-image/eruf.png b/website/public/img/__og-image/eruf.png
similarity index 100%
rename from static/img/__og-image/eruf.png
rename to website/public/img/__og-image/eruf.png
diff --git a/static/img/__og-image/events172.png b/website/public/img/__og-image/events172.png
similarity index 100%
rename from static/img/__og-image/events172.png
rename to website/public/img/__og-image/events172.png
diff --git a/static/img/__og-image/f11fd521e00f5b8eedf463781f893c5e.png b/website/public/img/__og-image/f11fd521e00f5b8eedf463781f893c5e.png
similarity index 100%
rename from static/img/__og-image/f11fd521e00f5b8eedf463781f893c5e.png
rename to website/public/img/__og-image/f11fd521e00f5b8eedf463781f893c5e.png
diff --git a/static/img/__og-image/f319907e1e15ee620a33d3cbf01f323a.png b/website/public/img/__og-image/f319907e1e15ee620a33d3cbf01f323a.png
similarity index 100%
rename from static/img/__og-image/f319907e1e15ee620a33d3cbf01f323a.png
rename to website/public/img/__og-image/f319907e1e15ee620a33d3cbf01f323a.png
diff --git a/static/img/__og-image/f485ec8e2dc60c435e8a3a90185d73bf.png b/website/public/img/__og-image/f485ec8e2dc60c435e8a3a90185d73bf.png
similarity index 100%
rename from static/img/__og-image/f485ec8e2dc60c435e8a3a90185d73bf.png
rename to website/public/img/__og-image/f485ec8e2dc60c435e8a3a90185d73bf.png
diff --git a/static/img/__og-image/f653b9931d85c7958993ca62e7853972.png b/website/public/img/__og-image/f653b9931d85c7958993ca62e7853972.png
similarity index 100%
rename from static/img/__og-image/f653b9931d85c7958993ca62e7853972.png
rename to website/public/img/__og-image/f653b9931d85c7958993ca62e7853972.png
diff --git a/static/img/__og-image/f802d22f97a3d3d9d2733bf637758f56.png b/website/public/img/__og-image/f802d22f97a3d3d9d2733bf637758f56.png
similarity index 100%
rename from static/img/__og-image/f802d22f97a3d3d9d2733bf637758f56.png
rename to website/public/img/__og-image/f802d22f97a3d3d9d2733bf637758f56.png
diff --git a/static/img/__og-image/f8a4d2b939980ffadf787715033e2b4f.png b/website/public/img/__og-image/f8a4d2b939980ffadf787715033e2b4f.png
similarity index 100%
rename from static/img/__og-image/f8a4d2b939980ffadf787715033e2b4f.png
rename to website/public/img/__og-image/f8a4d2b939980ffadf787715033e2b4f.png
diff --git a/static/img/__og-image/fc1e6c878fc02b6c2b7534ddebfac6ff.png b/website/public/img/__og-image/fc1e6c878fc02b6c2b7534ddebfac6ff.png
similarity index 100%
rename from static/img/__og-image/fc1e6c878fc02b6c2b7534ddebfac6ff.png
rename to website/public/img/__og-image/fc1e6c878fc02b6c2b7534ddebfac6ff.png
diff --git a/static/img/__og-image/ff6a2ae37d87e74c9f7739a1331804a1.png b/website/public/img/__og-image/ff6a2ae37d87e74c9f7739a1331804a1.png
similarity index 100%
rename from static/img/__og-image/ff6a2ae37d87e74c9f7739a1331804a1.png
rename to website/public/img/__og-image/ff6a2ae37d87e74c9f7739a1331804a1.png
diff --git a/static/img/__og-image/gerard.klijs.png b/website/public/img/__og-image/gerard.klijs.png
similarity index 100%
rename from static/img/__og-image/gerard.klijs.png
rename to website/public/img/__og-image/gerard.klijs.png
diff --git a/static/img/__og-image/gilgardosh.png b/website/public/img/__og-image/gilgardosh.png
similarity index 100%
rename from static/img/__og-image/gilgardosh.png
rename to website/public/img/__og-image/gilgardosh.png
diff --git a/static/img/__og-image/gonenj.png b/website/public/img/__og-image/gonenj.png
similarity index 100%
rename from static/img/__og-image/gonenj.png
rename to website/public/img/__og-image/gonenj.png
diff --git a/static/img/__og-image/hello2358.png b/website/public/img/__og-image/hello2358.png
similarity index 100%
rename from static/img/__og-image/hello2358.png
rename to website/public/img/__og-image/hello2358.png
diff --git a/static/img/__og-image/idit_levine.25krdj4u.png b/website/public/img/__og-image/idit_levine.25krdj4u.png
similarity index 100%
rename from static/img/__og-image/idit_levine.25krdj4u.png
rename to website/public/img/__og-image/idit_levine.25krdj4u.png
diff --git a/static/img/__og-image/igorgassmann.png b/website/public/img/__og-image/igorgassmann.png
similarity index 100%
rename from static/img/__og-image/igorgassmann.png
rename to website/public/img/__og-image/igorgassmann.png
diff --git a/static/img/__og-image/jamie855.png b/website/public/img/__og-image/jamie855.png
similarity index 100%
rename from static/img/__og-image/jamie855.png
rename to website/public/img/__og-image/jamie855.png
diff --git a/static/img/__og-image/jared_cheney.7rad60v.png b/website/public/img/__og-image/jared_cheney.7rad60v.png
similarity index 100%
rename from static/img/__og-image/jared_cheney.7rad60v.png
rename to website/public/img/__og-image/jared_cheney.7rad60v.png
diff --git a/static/img/__og-image/jeff.auriemma.png b/website/public/img/__og-image/jeff.auriemma.png
similarity index 100%
rename from static/img/__og-image/jeff.auriemma.png
rename to website/public/img/__og-image/jeff.auriemma.png
diff --git a/static/img/__og-image/jens63.png b/website/public/img/__og-image/jens63.png
similarity index 100%
rename from static/img/__og-image/jens63.png
rename to website/public/img/__og-image/jens63.png
diff --git a/static/img/__og-image/jhorner3208.png b/website/public/img/__og-image/jhorner3208.png
similarity index 100%
rename from static/img/__og-image/jhorner3208.png
rename to website/public/img/__og-image/jhorner3208.png
diff --git a/static/img/__og-image/jim.barton.png b/website/public/img/__og-image/jim.barton.png
similarity index 100%
rename from static/img/__og-image/jim.barton.png
rename to website/public/img/__og-image/jim.barton.png
diff --git a/static/img/__og-image/kamilkisiela.png b/website/public/img/__og-image/kamilkisiela.png
similarity index 100%
rename from static/img/__og-image/kamilkisiela.png
rename to website/public/img/__og-image/kamilkisiela.png
diff --git a/static/img/__og-image/keerthan.ekbote.png b/website/public/img/__og-image/keerthan.ekbote.png
similarity index 100%
rename from static/img/__og-image/keerthan.ekbote.png
rename to website/public/img/__og-image/keerthan.ekbote.png
diff --git a/static/img/__og-image/keith.babo.png b/website/public/img/__og-image/keith.babo.png
similarity index 100%
rename from static/img/__og-image/keith.babo.png
rename to website/public/img/__og-image/keith.babo.png
diff --git a/static/img/__og-image/kevin1700.png b/website/public/img/__og-image/kevin1700.png
similarity index 100%
rename from static/img/__og-image/kevin1700.png
rename to website/public/img/__og-image/kevin1700.png
diff --git a/static/img/__og-image/laurent57.png b/website/public/img/__og-image/laurent57.png
similarity index 100%
rename from static/img/__og-image/laurent57.png
rename to website/public/img/__og-image/laurent57.png
diff --git a/static/img/__og-image/laurent_broudoux.25mh5hbq.png b/website/public/img/__og-image/laurent_broudoux.25mh5hbq.png
similarity index 100%
rename from static/img/__og-image/laurent_broudoux.25mh5hbq.png
rename to website/public/img/__og-image/laurent_broudoux.25mh5hbq.png
diff --git a/static/img/__og-image/laurinquast.png b/website/public/img/__og-image/laurinquast.png
similarity index 100%
rename from static/img/__og-image/laurinquast.png
rename to website/public/img/__og-image/laurinquast.png
diff --git a/static/img/__og-image/lee_byron.25krdom6.png b/website/public/img/__og-image/lee_byron.25krdom6.png
similarity index 100%
rename from static/img/__og-image/lee_byron.25krdom6.png
rename to website/public/img/__og-image/lee_byron.25krdom6.png
diff --git a/static/img/__og-image/lerenzo.png b/website/public/img/__og-image/lerenzo.png
similarity index 100%
rename from static/img/__og-image/lerenzo.png
rename to website/public/img/__og-image/lerenzo.png
diff --git a/static/img/__og-image/lthomas70.png b/website/public/img/__og-image/lthomas70.png
similarity index 100%
rename from static/img/__og-image/lthomas70.png
rename to website/public/img/__og-image/lthomas70.png
diff --git a/static/img/__og-image/lucy_shen.png b/website/public/img/__og-image/lucy_shen.png
similarity index 100%
rename from static/img/__og-image/lucy_shen.png
rename to website/public/img/__og-image/lucy_shen.png
diff --git a/static/img/__og-image/lyonwj1.png b/website/public/img/__og-image/lyonwj1.png
similarity index 100%
rename from static/img/__og-image/lyonwj1.png
rename to website/public/img/__og-image/lyonwj1.png
diff --git a/static/img/__og-image/marc_andre_giroux.25krdfz9.png b/website/public/img/__og-image/marc_andre_giroux.25krdfz9.png
similarity index 100%
rename from static/img/__og-image/marc_andre_giroux.25krdfz9.png
rename to website/public/img/__og-image/marc_andre_giroux.25krdfz9.png
diff --git a/static/img/__og-image/marion84.png b/website/public/img/__og-image/marion84.png
similarity index 100%
rename from static/img/__og-image/marion84.png
rename to website/public/img/__og-image/marion84.png
diff --git a/static/img/__og-image/meenakshi.dhanani1.png b/website/public/img/__og-image/meenakshi.dhanani1.png
similarity index 100%
rename from static/img/__og-image/meenakshi.dhanani1.png
rename to website/public/img/__og-image/meenakshi.dhanani1.png
diff --git a/static/img/__og-image/mgiroux7.png b/website/public/img/__og-image/mgiroux7.png
similarity index 100%
rename from static/img/__og-image/mgiroux7.png
rename to website/public/img/__og-image/mgiroux7.png
diff --git a/static/img/__og-image/michael2685.png b/website/public/img/__og-image/michael2685.png
similarity index 100%
rename from static/img/__og-image/michael2685.png
rename to website/public/img/__og-image/michael2685.png
diff --git a/static/img/__og-image/michael_staib.23xujj9p.png b/website/public/img/__og-image/michael_staib.23xujj9p.png
similarity index 100%
rename from static/img/__og-image/michael_staib.23xujj9p.png
rename to website/public/img/__og-image/michael_staib.23xujj9p.png
diff --git a/static/img/__og-image/patrick.arminio.png b/website/public/img/__og-image/patrick.arminio.png
similarity index 100%
rename from static/img/__og-image/patrick.arminio.png
rename to website/public/img/__og-image/patrick.arminio.png
diff --git a/static/img/__og-image/plgah.png b/website/public/img/__og-image/plgah.png
similarity index 100%
rename from static/img/__og-image/plgah.png
rename to website/public/img/__og-image/plgah.png
diff --git a/static/img/__og-image/pooja.mistry.png b/website/public/img/__og-image/pooja.mistry.png
similarity index 100%
rename from static/img/__og-image/pooja.mistry.png
rename to website/public/img/__og-image/pooja.mistry.png
diff --git a/static/img/__og-image/pooja_mistry.25kvpbvt.png b/website/public/img/__og-image/pooja_mistry.25kvpbvt.png
similarity index 100%
rename from static/img/__og-image/pooja_mistry.25kvpbvt.png
rename to website/public/img/__og-image/pooja_mistry.25kvpbvt.png
diff --git a/static/img/__og-image/qkw1221.png b/website/public/img/__og-image/qkw1221.png
similarity index 100%
rename from static/img/__og-image/qkw1221.png
rename to website/public/img/__og-image/qkw1221.png
diff --git a/static/img/__og-image/ramhadda.png b/website/public/img/__og-image/ramhadda.png
similarity index 100%
rename from static/img/__og-image/ramhadda.png
rename to website/public/img/__og-image/ramhadda.png
diff --git a/static/img/__og-image/rbraun3.png b/website/public/img/__og-image/rbraun3.png
similarity index 100%
rename from static/img/__og-image/rbraun3.png
rename to website/public/img/__og-image/rbraun3.png
diff --git a/static/img/__og-image/robert.balicki.png b/website/public/img/__og-image/robert.balicki.png
similarity index 100%
rename from static/img/__og-image/robert.balicki.png
rename to website/public/img/__og-image/robert.balicki.png
diff --git a/static/img/__og-image/s.daniakash.png b/website/public/img/__og-image/s.daniakash.png
similarity index 100%
rename from static/img/__og-image/s.daniakash.png
rename to website/public/img/__og-image/s.daniakash.png
diff --git a/static/img/__og-image/sdk.bens.png b/website/public/img/__og-image/sdk.bens.png
similarity index 100%
rename from static/img/__og-image/sdk.bens.png
rename to website/public/img/__og-image/sdk.bens.png
diff --git a/static/img/__og-image/serhii.korin.png b/website/public/img/__og-image/serhii.korin.png
similarity index 100%
rename from static/img/__og-image/serhii.korin.png
rename to website/public/img/__og-image/serhii.korin.png
diff --git a/static/img/__og-image/shahar_binyamin.24vrzgo4.png b/website/public/img/__og-image/shahar_binyamin.24vrzgo4.png
similarity index 100%
rename from static/img/__og-image/shahar_binyamin.24vrzgo4.png
rename to website/public/img/__og-image/shahar_binyamin.24vrzgo4.png
diff --git a/static/img/__og-image/shweta.12dec.png b/website/public/img/__og-image/shweta.12dec.png
similarity index 100%
rename from static/img/__og-image/shweta.12dec.png
rename to website/public/img/__og-image/shweta.12dec.png
diff --git a/static/img/__og-image/siddharthsingh1.png b/website/public/img/__og-image/siddharthsingh1.png
similarity index 100%
rename from static/img/__og-image/siddharthsingh1.png
rename to website/public/img/__og-image/siddharthsingh1.png
diff --git a/static/img/__og-image/spencer211.png b/website/public/img/__og-image/spencer211.png
similarity index 100%
rename from static/img/__og-image/spencer211.png
rename to website/public/img/__og-image/spencer211.png
diff --git a/static/img/__og-image/sspalding2.png b/website/public/img/__og-image/sspalding2.png
similarity index 100%
rename from static/img/__og-image/sspalding2.png
rename to website/public/img/__og-image/sspalding2.png
diff --git a/static/img/__og-image/stephanie.saunders2.png b/website/public/img/__og-image/stephanie.saunders2.png
similarity index 100%
rename from static/img/__og-image/stephanie.saunders2.png
rename to website/public/img/__og-image/stephanie.saunders2.png
diff --git a/static/img/__og-image/suresh_muthu.png b/website/public/img/__og-image/suresh_muthu.png
similarity index 100%
rename from static/img/__og-image/suresh_muthu.png
rename to website/public/img/__og-image/suresh_muthu.png
diff --git a/static/img/__og-image/tanmaig.png b/website/public/img/__og-image/tanmaig.png
similarity index 100%
rename from static/img/__og-image/tanmaig.png
rename to website/public/img/__og-image/tanmaig.png
diff --git a/static/img/__og-image/theo93.png b/website/public/img/__og-image/theo93.png
similarity index 100%
rename from static/img/__og-image/theo93.png
rename to website/public/img/__og-image/theo93.png
diff --git a/static/img/__og-image/theo_browne.25qq5dhc.png b/website/public/img/__og-image/theo_browne.25qq5dhc.png
similarity index 100%
rename from static/img/__og-image/theo_browne.25qq5dhc.png
rename to website/public/img/__og-image/theo_browne.25qq5dhc.png
diff --git a/static/img/__og-image/thomas.heyenbrock.png b/website/public/img/__og-image/thomas.heyenbrock.png
similarity index 100%
rename from static/img/__og-image/thomas.heyenbrock.png
rename to website/public/img/__og-image/thomas.heyenbrock.png
diff --git a/static/img/__og-image/tim.hall.engr.png b/website/public/img/__og-image/tim.hall.engr.png
similarity index 100%
rename from static/img/__og-image/tim.hall.engr.png
rename to website/public/img/__og-image/tim.hall.engr.png
diff --git a/static/img/__og-image/tristan119.png b/website/public/img/__og-image/tristan119.png
similarity index 100%
rename from static/img/__og-image/tristan119.png
rename to website/public/img/__og-image/tristan119.png
diff --git a/static/img/__og-image/twitter7.png b/website/public/img/__og-image/twitter7.png
similarity index 100%
rename from static/img/__og-image/twitter7.png
rename to website/public/img/__og-image/twitter7.png
diff --git a/static/img/__og-image/uri_goldshtein.23xujj9a.png b/website/public/img/__og-image/uri_goldshtein.23xujj9a.png
similarity index 100%
rename from static/img/__og-image/uri_goldshtein.23xujj9a.png
rename to website/public/img/__og-image/uri_goldshtein.23xujj9a.png
diff --git a/static/img/__og-image/william_lyon.7rvgomu.png b/website/public/img/__og-image/william_lyon.7rvgomu.png
similarity index 100%
rename from static/img/__og-image/william_lyon.7rvgomu.png
rename to website/public/img/__og-image/william_lyon.7rvgomu.png
diff --git a/static/img/__og-image/yaacovcr.png b/website/public/img/__og-image/yaacovcr.png
similarity index 100%
rename from static/img/__og-image/yaacovcr.png
rename to website/public/img/__og-image/yaacovcr.png
diff --git a/static/img/__og-image/yassineldeeb94.png b/website/public/img/__og-image/yassineldeeb94.png
similarity index 100%
rename from static/img/__og-image/yassineldeeb94.png
rename to website/public/img/__og-image/yassineldeeb94.png
diff --git a/static/img/__og-image/yczhu.png b/website/public/img/__og-image/yczhu.png
similarity index 100%
rename from static/img/__og-image/yczhu.png
rename to website/public/img/__og-image/yczhu.png
diff --git a/static/img/bg-graphql-conf.png b/website/public/img/bg-graphql-conf.png
similarity index 100%
rename from static/img/bg-graphql-conf.png
rename to website/public/img/bg-graphql-conf.png
diff --git a/static/img/blog/20160502-rest-api-graphql-wrapper/dataloader-query.png b/website/public/img/blog/20160502-rest-api-graphql-wrapper/dataloader-query.png
similarity index 100%
rename from static/img/blog/20160502-rest-api-graphql-wrapper/dataloader-query.png
rename to website/public/img/blog/20160502-rest-api-graphql-wrapper/dataloader-query.png
diff --git a/static/img/blog/20160502-rest-api-graphql-wrapper/pathological-query.png b/website/public/img/blog/20160502-rest-api-graphql-wrapper/pathological-query.png
similarity index 100%
rename from static/img/blog/20160502-rest-api-graphql-wrapper/pathological-query.png
rename to website/public/img/blog/20160502-rest-api-graphql-wrapper/pathological-query.png
diff --git a/static/img/blog/20160502-rest-api-graphql-wrapper/rest-api-people.png b/website/public/img/blog/20160502-rest-api-graphql-wrapper/rest-api-people.png
similarity index 100%
rename from static/img/blog/20160502-rest-api-graphql-wrapper/rest-api-people.png
rename to website/public/img/blog/20160502-rest-api-graphql-wrapper/rest-api-people.png
diff --git a/static/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/banner.jpg b/website/public/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/banner.jpg
similarity index 100%
rename from static/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/banner.jpg
rename to website/public/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/banner.jpg
diff --git a/static/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/whiteboard.jpg b/website/public/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/whiteboard.jpg
similarity index 100%
rename from static/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/whiteboard.jpg
rename to website/public/img/blog/2023-08-01-key-insights-from-the-graphql-eu-gathering/whiteboard.jpg
diff --git a/static/img/brand/do-example.svg b/website/public/img/brand/do-example.svg
similarity index 100%
rename from static/img/brand/do-example.svg
rename to website/public/img/brand/do-example.svg
diff --git a/static/img/brand/do.svg b/website/public/img/brand/do.svg
similarity index 100%
rename from static/img/brand/do.svg
rename to website/public/img/brand/do.svg
diff --git a/static/img/brand/dont-example.svg b/website/public/img/brand/dont-example.svg
similarity index 100%
rename from static/img/brand/dont-example.svg
rename to website/public/img/brand/dont-example.svg
diff --git a/static/img/brand/dont.svg b/website/public/img/brand/dont.svg
similarity index 100%
rename from static/img/brand/dont.svg
rename to website/public/img/brand/dont.svg
diff --git a/static/img/brand/graphql-brand-assets.zip b/website/public/img/brand/graphql-brand-assets.zip
similarity index 100%
rename from static/img/brand/graphql-brand-assets.zip
rename to website/public/img/brand/graphql-brand-assets.zip
diff --git a/static/img/brand/logo-dont/dont-add.svg b/website/public/img/brand/logo-dont/dont-add.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-add.svg
rename to website/public/img/brand/logo-dont/dont-add.svg
diff --git a/static/img/brand/logo-dont/dont-change-typeface.svg b/website/public/img/brand/logo-dont/dont-change-typeface.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-change-typeface.svg
rename to website/public/img/brand/logo-dont/dont-change-typeface.svg
diff --git a/static/img/brand/logo-dont/dont-color-wordmark.svg b/website/public/img/brand/logo-dont/dont-color-wordmark.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-color-wordmark.svg
rename to website/public/img/brand/logo-dont/dont-color-wordmark.svg
diff --git a/static/img/brand/logo-dont/dont-color.svg b/website/public/img/brand/logo-dont/dont-color.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-color.svg
rename to website/public/img/brand/logo-dont/dont-color.svg
diff --git a/static/img/brand/logo-dont/dont-complex-background.jpg b/website/public/img/brand/logo-dont/dont-complex-background.jpg
similarity index 100%
rename from static/img/brand/logo-dont/dont-complex-background.jpg
rename to website/public/img/brand/logo-dont/dont-complex-background.jpg
diff --git a/static/img/brand/logo-dont/dont-decorate.svg b/website/public/img/brand/logo-dont/dont-decorate.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-decorate.svg
rename to website/public/img/brand/logo-dont/dont-decorate.svg
diff --git a/static/img/brand/logo-dont/dont-effect.svg b/website/public/img/brand/logo-dont/dont-effect.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-effect.svg
rename to website/public/img/brand/logo-dont/dont-effect.svg
diff --git a/static/img/brand/logo-dont/dont-gradient.svg b/website/public/img/brand/logo-dont/dont-gradient.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-gradient.svg
rename to website/public/img/brand/logo-dont/dont-gradient.svg
diff --git a/static/img/brand/logo-dont/dont-remove.svg b/website/public/img/brand/logo-dont/dont-remove.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-remove.svg
rename to website/public/img/brand/logo-dont/dont-remove.svg
diff --git a/static/img/brand/logo-dont/dont-resize-1.svg b/website/public/img/brand/logo-dont/dont-resize-1.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-resize-1.svg
rename to website/public/img/brand/logo-dont/dont-resize-1.svg
diff --git a/static/img/brand/logo-dont/dont-resize-2.svg b/website/public/img/brand/logo-dont/dont-resize-2.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-resize-2.svg
rename to website/public/img/brand/logo-dont/dont-resize-2.svg
diff --git a/static/img/brand/logo-dont/dont-resize-wordmark.svg b/website/public/img/brand/logo-dont/dont-resize-wordmark.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-resize-wordmark.svg
rename to website/public/img/brand/logo-dont/dont-resize-wordmark.svg
diff --git a/static/img/brand/logo-dont/dont-rotate.svg b/website/public/img/brand/logo-dont/dont-rotate.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-rotate.svg
rename to website/public/img/brand/logo-dont/dont-rotate.svg
diff --git a/static/img/brand/logo-dont/dont-stretch.svg b/website/public/img/brand/logo-dont/dont-stretch.svg
similarity index 100%
rename from static/img/brand/logo-dont/dont-stretch.svg
rename to website/public/img/brand/logo-dont/dont-stretch.svg
diff --git a/static/img/brand/logos/logo-black.svg b/website/public/img/brand/logos/logo-black.svg
similarity index 100%
rename from static/img/brand/logos/logo-black.svg
rename to website/public/img/brand/logos/logo-black.svg
diff --git a/static/img/brand/logos/logo-foundation-stacked.svg b/website/public/img/brand/logos/logo-foundation-stacked.svg
similarity index 100%
rename from static/img/brand/logos/logo-foundation-stacked.svg
rename to website/public/img/brand/logos/logo-foundation-stacked.svg
diff --git a/static/img/brand/logos/logo-foundation-wordmark.svg b/website/public/img/brand/logos/logo-foundation-wordmark.svg
similarity index 100%
rename from static/img/brand/logos/logo-foundation-wordmark.svg
rename to website/public/img/brand/logos/logo-foundation-wordmark.svg
diff --git a/static/img/brand/logos/logo-space.svg b/website/public/img/brand/logos/logo-space.svg
similarity index 100%
rename from static/img/brand/logos/logo-space.svg
rename to website/public/img/brand/logos/logo-space.svg
diff --git a/static/img/brand/logos/logo-stacked.svg b/website/public/img/brand/logos/logo-stacked.svg
similarity index 100%
rename from static/img/brand/logos/logo-stacked.svg
rename to website/public/img/brand/logos/logo-stacked.svg
diff --git a/static/img/brand/logos/logo-white.svg b/website/public/img/brand/logos/logo-white.svg
similarity index 100%
rename from static/img/brand/logos/logo-white.svg
rename to website/public/img/brand/logos/logo-white.svg
diff --git a/static/img/brand/logos/logo-wordmark-space.svg b/website/public/img/brand/logos/logo-wordmark-space.svg
similarity index 100%
rename from static/img/brand/logos/logo-wordmark-space.svg
rename to website/public/img/brand/logos/logo-wordmark-space.svg
diff --git a/static/img/brand/logos/logo-wordmark.svg b/website/public/img/brand/logos/logo-wordmark.svg
similarity index 100%
rename from static/img/brand/logos/logo-wordmark.svg
rename to website/public/img/brand/logos/logo-wordmark.svg
diff --git a/static/img/brand/logos/logo.svg b/website/public/img/brand/logos/logo.svg
similarity index 100%
rename from static/img/brand/logos/logo.svg
rename to website/public/img/brand/logos/logo.svg
diff --git a/static/img/conf/Gallery/1.jpg b/website/public/img/conf/Gallery/1.jpg
similarity index 100%
rename from static/img/conf/Gallery/1.jpg
rename to website/public/img/conf/Gallery/1.jpg
diff --git a/static/img/conf/Gallery/10_53228256862_o.jpg b/website/public/img/conf/Gallery/10_53228256862_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/10_53228256862_o.jpg
rename to website/public/img/conf/Gallery/10_53228256862_o.jpg
diff --git a/static/img/conf/Gallery/11_53229130936_o.jpg b/website/public/img/conf/Gallery/11_53229130936_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/11_53229130936_o.jpg
rename to website/public/img/conf/Gallery/11_53229130936_o.jpg
diff --git a/static/img/conf/Gallery/12_53229130901_o.jpg b/website/public/img/conf/Gallery/12_53229130901_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/12_53229130901_o.jpg
rename to website/public/img/conf/Gallery/12_53229130901_o.jpg
diff --git a/static/img/conf/Gallery/13_53229431753_o.jpg b/website/public/img/conf/Gallery/13_53229431753_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/13_53229431753_o.jpg
rename to website/public/img/conf/Gallery/13_53229431753_o.jpg
diff --git a/static/img/conf/Gallery/14_53228256817_o.jpg b/website/public/img/conf/Gallery/14_53228256817_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/14_53228256817_o.jpg
rename to website/public/img/conf/Gallery/14_53228256817_o.jpg
diff --git a/static/img/conf/Gallery/151_53229506084_o.jpg b/website/public/img/conf/Gallery/151_53229506084_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/151_53229506084_o.jpg
rename to website/public/img/conf/Gallery/151_53229506084_o.jpg
diff --git a/static/img/conf/Gallery/15_53228256787_o.jpg b/website/public/img/conf/Gallery/15_53228256787_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/15_53228256787_o.jpg
rename to website/public/img/conf/Gallery/15_53228256787_o.jpg
diff --git a/static/img/conf/Gallery/16_53229629695_o.jpg b/website/public/img/conf/Gallery/16_53229629695_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/16_53229629695_o.jpg
rename to website/public/img/conf/Gallery/16_53229629695_o.jpg
diff --git a/static/img/conf/Gallery/17_53229431688_o.jpg b/website/public/img/conf/Gallery/17_53229431688_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/17_53229431688_o.jpg
rename to website/public/img/conf/Gallery/17_53229431688_o.jpg
diff --git a/static/img/conf/Gallery/18_53229629645_o.jpg b/website/public/img/conf/Gallery/18_53229629645_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/18_53229629645_o.jpg
rename to website/public/img/conf/Gallery/18_53229629645_o.jpg
diff --git a/static/img/conf/Gallery/1_53229506279_o.jpg b/website/public/img/conf/Gallery/1_53229506279_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/1_53229506279_o.jpg
rename to website/public/img/conf/Gallery/1_53229506279_o.jpg
diff --git a/static/img/conf/Gallery/2.jpg b/website/public/img/conf/Gallery/2.jpg
similarity index 100%
rename from static/img/conf/Gallery/2.jpg
rename to website/public/img/conf/Gallery/2.jpg
diff --git a/static/img/conf/Gallery/2_53229431883_o.jpg b/website/public/img/conf/Gallery/2_53229431883_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/2_53229431883_o.jpg
rename to website/public/img/conf/Gallery/2_53229431883_o.jpg
diff --git a/static/img/conf/Gallery/3.jpg b/website/public/img/conf/Gallery/3.jpg
similarity index 100%
rename from static/img/conf/Gallery/3.jpg
rename to website/public/img/conf/Gallery/3.jpg
diff --git a/static/img/conf/Gallery/31_53228256917_o.jpg b/website/public/img/conf/Gallery/31_53228256917_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/31_53228256917_o.jpg
rename to website/public/img/conf/Gallery/31_53228256917_o.jpg
diff --git a/static/img/conf/Gallery/3_53229131021_o.jpg b/website/public/img/conf/Gallery/3_53229131021_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/3_53229131021_o.jpg
rename to website/public/img/conf/Gallery/3_53229131021_o.jpg
diff --git a/static/img/conf/Gallery/4.jpg b/website/public/img/conf/Gallery/4.jpg
similarity index 100%
rename from static/img/conf/Gallery/4.jpg
rename to website/public/img/conf/Gallery/4.jpg
diff --git a/static/img/conf/Gallery/5.jpg b/website/public/img/conf/Gallery/5.jpg
similarity index 100%
rename from static/img/conf/Gallery/5.jpg
rename to website/public/img/conf/Gallery/5.jpg
diff --git a/static/img/conf/Gallery/5_53228256882_o.jpg b/website/public/img/conf/Gallery/5_53228256882_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/5_53228256882_o.jpg
rename to website/public/img/conf/Gallery/5_53228256882_o.jpg
diff --git a/static/img/conf/Gallery/6.jpg b/website/public/img/conf/Gallery/6.jpg
similarity index 100%
rename from static/img/conf/Gallery/6.jpg
rename to website/public/img/conf/Gallery/6.jpg
diff --git a/static/img/conf/Gallery/7_53229506199_o.jpg b/website/public/img/conf/Gallery/7_53229506199_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/7_53229506199_o.jpg
rename to website/public/img/conf/Gallery/7_53229506199_o.jpg
diff --git a/static/img/conf/Gallery/8.jpg b/website/public/img/conf/Gallery/8.jpg
similarity index 100%
rename from static/img/conf/Gallery/8.jpg
rename to website/public/img/conf/Gallery/8.jpg
diff --git a/static/img/conf/Gallery/8_53229629805_o.jpg b/website/public/img/conf/Gallery/8_53229629805_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/8_53229629805_o.jpg
rename to website/public/img/conf/Gallery/8_53229629805_o.jpg
diff --git a/static/img/conf/Gallery/9.jpg b/website/public/img/conf/Gallery/9.jpg
similarity index 100%
rename from static/img/conf/Gallery/9.jpg
rename to website/public/img/conf/Gallery/9.jpg
diff --git a/static/img/conf/Gallery/graphql-cover-1_53228256677_o.jpg b/website/public/img/conf/Gallery/graphql-cover-1_53228256677_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphql-cover-1_53228256677_o.jpg
rename to website/public/img/conf/Gallery/graphql-cover-1_53228256677_o.jpg
diff --git a/static/img/conf/Gallery/graphql-cover-2_53228256672_o.jpg b/website/public/img/conf/Gallery/graphql-cover-2_53228256672_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphql-cover-2_53228256672_o.jpg
rename to website/public/img/conf/Gallery/graphql-cover-2_53228256672_o.jpg
diff --git a/static/img/conf/Gallery/graphql-cover-3_53228256612_o.jpg b/website/public/img/conf/Gallery/graphql-cover-3_53228256612_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphql-cover-3_53228256612_o.jpg
rename to website/public/img/conf/Gallery/graphql-cover-3_53228256612_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202310_53229130641_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202310_53229130641_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202310_53229130641_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202310_53229130641_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202311_53229130636_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202311_53229130636_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202311_53229130636_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202311_53229130636_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202312_53229431468_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202312_53229431468_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202312_53229431468_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202312_53229431468_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202313_53229431453_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202313_53229431453_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202313_53229431453_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202313_53229431453_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202314_53228256402_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202314_53228256402_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202314_53228256402_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202314_53228256402_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202315_53229431418_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202315_53229431418_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202315_53229431418_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202315_53229431418_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202316_53229130551_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202316_53229130551_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202316_53229130551_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202316_53229130551_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202317_53229431408_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202317_53229431408_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202317_53229431408_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202317_53229431408_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202318_53229431413_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202318_53229431413_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202318_53229431413_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202318_53229431413_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202319_53229505639_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202319_53229505639_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202319_53229505639_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202319_53229505639_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20231_53229505964_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20231_53229505964_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20231_53229505964_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20231_53229505964_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202321_53229504679_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202321_53229504679_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202321_53229504679_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202321_53229504679_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202322_53229431348_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202322_53229431348_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202322_53229431348_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202322_53229431348_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202323_53229431353_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202323_53229431353_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202323_53229431353_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202323_53229431353_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202324_53228255322_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202324_53228255322_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202324_53228255322_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202324_53228255322_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202325_53229628480_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202325_53229628480_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202325_53229628480_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202325_53229628480_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202326_53229504664_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202326_53229504664_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202326_53229504664_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202326_53229504664_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202327_53229430403_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202327_53229430403_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202327_53229430403_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202327_53229430403_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202328_53229129426_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202328_53229129426_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202328_53229129426_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202328_53229129426_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202329_53228255262_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202329_53228255262_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202329_53228255262_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202329_53228255262_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20232_53229629585_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20232_53229629585_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20232_53229629585_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20232_53229629585_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202330_53229430393_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202330_53229430393_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202330_53229430393_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202330_53229430393_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202331_53229430378_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202331_53229430378_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202331_53229430378_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202331_53229430378_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202332_53228255222_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202332_53228255222_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202332_53228255222_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202332_53228255222_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202333_53229504589_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202333_53229504589_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202333_53229504589_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202333_53229504589_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202334_53229505599_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202334_53229505599_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202334_53229505599_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202334_53229505599_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202335_53228256247_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202335_53228256247_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202335_53228256247_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202335_53228256247_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202336_53229431263_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202336_53229431263_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202336_53229431263_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202336_53229431263_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202337_53229431268_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202337_53229431268_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202337_53229431268_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202337_53229431268_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202338_53228256132_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202338_53228256132_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202338_53228256132_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202338_53228256132_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202339_53228256117_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202339_53228256117_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202339_53228256117_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202339_53228256117_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20233_53229431633_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20233_53229431633_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20233_53229431633_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20233_53229431633_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202340_53229431183_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202340_53229431183_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202340_53229431183_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202340_53229431183_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202341_53229629225_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202341_53229629225_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202341_53229629225_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202341_53229629225_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202342_53229130301_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202342_53229130301_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202342_53229130301_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202342_53229130301_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202343_53229505484_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202343_53229505484_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202343_53229505484_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202343_53229505484_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202344_53228256077_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202344_53228256077_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202344_53228256077_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202344_53228256077_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202345_53229504499_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202345_53229504499_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202345_53229504499_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202345_53229504499_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202346_53229629115_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202346_53229629115_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202346_53229629115_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202346_53229629115_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202347_53229129301_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202347_53229129301_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202347_53229129301_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202347_53229129301_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202348_53229130226_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202348_53229130226_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202348_53229130226_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202348_53229130226_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202349_53228256032_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202349_53228256032_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202349_53228256032_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202349_53228256032_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20234_53229629525_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20234_53229629525_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20234_53229629525_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20234_53229629525_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202350_53229130146_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202350_53229130146_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202350_53229130146_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202350_53229130146_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202351_53229130151_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202351_53229130151_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202351_53229130151_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202351_53229130151_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202352_53229629035_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202352_53229629035_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202352_53229629035_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202352_53229629035_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202353_53228255937_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202353_53228255937_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202353_53228255937_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202353_53228255937_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202354_53229430998_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202354_53229430998_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202354_53229430998_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202354_53229430998_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202355_53228255882_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202355_53228255882_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202355_53228255882_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202355_53228255882_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202356_53229505199_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202356_53229505199_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202356_53229505199_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202356_53229505199_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202357_53228255742_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202357_53228255742_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202357_53228255742_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202357_53228255742_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202358_53229628875_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202358_53229628875_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202358_53229628875_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202358_53229628875_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202359_53229129286_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202359_53229129286_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202359_53229129286_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202359_53229129286_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20235_53229505904_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20235_53229505904_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20235_53229505904_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20235_53229505904_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202360_53229430883_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202360_53229430883_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202360_53229430883_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202360_53229430883_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202361_53229628295_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202361_53229628295_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202361_53229628295_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202361_53229628295_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202362_53229430868_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202362_53229430868_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202362_53229430868_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202362_53229430868_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202363_53229505084_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202363_53229505084_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202363_53229505084_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202363_53229505084_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202364_53229430858_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202364_53229430858_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202364_53229430858_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202364_53229430858_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202365_53229430258_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202365_53229430258_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202365_53229430258_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202365_53229430258_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202366_53229628825_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202366_53229628825_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202366_53229628825_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202366_53229628825_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202367_53229430268_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202367_53229430268_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202367_53229430268_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202367_53229430268_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202368_53229430823_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202368_53229430823_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202368_53229430823_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202368_53229430823_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202369_53229628795_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202369_53229628795_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202369_53229628795_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202369_53229628795_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20236_53229431543_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20236_53229431543_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20236_53229431543_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20236_53229431543_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202370_53228255572_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202370_53228255572_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202370_53228255572_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202370_53228255572_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202371_53229628710_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202371_53229628710_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202371_53229628710_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202371_53229628710_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202372_53229628695_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202372_53229628695_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202372_53229628695_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202372_53229628695_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202373_53229430683_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202373_53229430683_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202373_53229430683_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202373_53229430683_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202374_53228255537_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202374_53228255537_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202374_53228255537_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202374_53228255537_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202375_53228255527_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202375_53228255527_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202375_53228255527_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202375_53228255527_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202376_53229628665_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202376_53229628665_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202376_53229628665_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202376_53229628665_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202377_53229430648_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202377_53229430648_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202377_53229430648_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202377_53229430648_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202378_53228255107_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202378_53228255107_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202378_53228255107_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202378_53228255107_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202379_53228255097_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202379_53228255097_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202379_53228255097_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202379_53228255097_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20237_53229629480_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20237_53229629480_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20237_53229629480_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20237_53229629480_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202380_53229430623_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202380_53229430623_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202380_53229430623_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202380_53229430623_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202381_53228255092_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202381_53228255092_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202381_53228255092_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202381_53228255092_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202383_53228255462_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202383_53228255462_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202383_53228255462_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202383_53228255462_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202384_53229129586_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202384_53229129586_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202384_53229129586_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202384_53229129586_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202385_53229504819_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202385_53229504819_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202385_53229504819_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202385_53229504819_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202386_53229129601_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202386_53229129601_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202386_53229129601_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202386_53229129601_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202387_53229628600_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202387_53229628600_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202387_53229628600_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202387_53229628600_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202388_53229430518_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202388_53229430518_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202388_53229430518_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202388_53229430518_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202389_53229129526_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202389_53229129526_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202389_53229129526_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202389_53229129526_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-20238_53228256482_o.jpg b/website/public/img/conf/Gallery/graphqlconf-20238_53228256482_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-20238_53228256482_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-20238_53228256482_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202390_53229628530_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202390_53229628530_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202390_53229628530_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202390_53229628530_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202391_53229504714_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202391_53229504714_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202391_53229504714_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202391_53229504714_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202392_53229430473_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202392_53229430473_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202392_53229430473_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202392_53229430473_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202393_53229129511_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202393_53229129511_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202393_53229129511_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202393_53229129511_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202394_53228255057_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202394_53228255057_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202394_53228255057_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202394_53228255057_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202395_53229430163_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202395_53229430163_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202395_53229430163_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202395_53229430163_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-202396_53229628185_o.jpg b/website/public/img/conf/Gallery/graphqlconf-202396_53229628185_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-202396_53229628185_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-202396_53229628185_o.jpg
diff --git a/static/img/conf/Gallery/graphqlconf-2023graphqlconf-2023_53228255062_o.jpg b/website/public/img/conf/Gallery/graphqlconf-2023graphqlconf-2023_53228255062_o.jpg
similarity index 100%
rename from static/img/conf/Gallery/graphqlconf-2023graphqlconf-2023_53228255062_o.jpg
rename to website/public/img/conf/Gallery/graphqlconf-2023graphqlconf-2023_53228255062_o.jpg
diff --git a/static/img/conf/Partners/AmsterdamGraphQL.svg b/website/public/img/conf/Partners/AmsterdamGraphQL.svg
similarity index 100%
rename from static/img/conf/Partners/AmsterdamGraphQL.svg
rename to website/public/img/conf/Partners/AmsterdamGraphQL.svg
diff --git a/static/img/conf/Partners/BangkokGraphQL.svg b/website/public/img/conf/Partners/BangkokGraphQL.svg
similarity index 100%
rename from static/img/conf/Partners/BangkokGraphQL.svg
rename to website/public/img/conf/Partners/BangkokGraphQL.svg
diff --git a/static/img/conf/Partners/EscapeTechnologies.svg b/website/public/img/conf/Partners/EscapeTechnologies.svg
similarity index 100%
rename from static/img/conf/Partners/EscapeTechnologies.svg
rename to website/public/img/conf/Partners/EscapeTechnologies.svg
diff --git a/static/img/conf/Partners/GraphQLWeekly.svg b/website/public/img/conf/Partners/GraphQLWeekly.svg
similarity index 100%
rename from static/img/conf/Partners/GraphQLWeekly.svg
rename to website/public/img/conf/Partners/GraphQLWeekly.svg
diff --git a/static/img/conf/Partners/GraphQLwtf.svg b/website/public/img/conf/Partners/GraphQLwtf.svg
similarity index 100%
rename from static/img/conf/Partners/GraphQLwtf.svg
rename to website/public/img/conf/Partners/GraphQLwtf.svg
diff --git a/static/img/conf/Partners/TypeGraphQL.svg b/website/public/img/conf/Partners/TypeGraphQL.svg
similarity index 100%
rename from static/img/conf/Partners/TypeGraphQL.svg
rename to website/public/img/conf/Partners/TypeGraphQL.svg
diff --git a/static/img/conf/Sponsors/Graphabase.svg b/website/public/img/conf/Sponsors/Graphabase.svg
similarity index 99%
rename from static/img/conf/Sponsors/Graphabase.svg
rename to website/public/img/conf/Sponsors/Graphabase.svg
index 163ec7d100..fabc6a552d 100644
--- a/static/img/conf/Sponsors/Graphabase.svg
+++ b/website/public/img/conf/Sponsors/Graphabase.svg
@@ -1,19 +1,19 @@
-
+
diff --git a/static/img/conf/Sponsors/Hasura.svg b/website/public/img/conf/Sponsors/Hasura.svg
similarity index 100%
rename from static/img/conf/Sponsors/Hasura.svg
rename to website/public/img/conf/Sponsors/Hasura.svg
diff --git a/static/img/conf/Sponsors/Hygraph.svg b/website/public/img/conf/Sponsors/Hygraph.svg
similarity index 100%
rename from static/img/conf/Sponsors/Hygraph.svg
rename to website/public/img/conf/Sponsors/Hygraph.svg
diff --git a/static/img/conf/Sponsors/Inigo.svg b/website/public/img/conf/Sponsors/Inigo.svg
similarity index 100%
rename from static/img/conf/Sponsors/Inigo.svg
rename to website/public/img/conf/Sponsors/Inigo.svg
diff --git a/static/img/conf/Sponsors/Neo4j.svg b/website/public/img/conf/Sponsors/Neo4j.svg
similarity index 100%
rename from static/img/conf/Sponsors/Neo4j.svg
rename to website/public/img/conf/Sponsors/Neo4j.svg
diff --git a/static/img/conf/Sponsors/Postman.svg b/website/public/img/conf/Sponsors/Postman.svg
similarity index 100%
rename from static/img/conf/Sponsors/Postman.svg
rename to website/public/img/conf/Sponsors/Postman.svg
diff --git a/static/img/conf/Sponsors/Solo.svg b/website/public/img/conf/Sponsors/Solo.svg
similarity index 100%
rename from static/img/conf/Sponsors/Solo.svg
rename to website/public/img/conf/Sponsors/Solo.svg
diff --git a/static/img/conf/Sponsors/Stellate.svg b/website/public/img/conf/Sponsors/Stellate.svg
similarity index 100%
rename from static/img/conf/Sponsors/Stellate.svg
rename to website/public/img/conf/Sponsors/Stellate.svg
diff --git a/static/img/conf/Sponsors/StepZen.svg b/website/public/img/conf/Sponsors/StepZen.svg
similarity index 100%
rename from static/img/conf/Sponsors/StepZen.svg
rename to website/public/img/conf/Sponsors/StepZen.svg
diff --git a/static/img/conf/Sponsors/TheGraph.svg b/website/public/img/conf/Sponsors/TheGraph.svg
similarity index 100%
rename from static/img/conf/Sponsors/TheGraph.svg
rename to website/public/img/conf/Sponsors/TheGraph.svg
diff --git a/static/img/conf/Sponsors/TheGuild.svg b/website/public/img/conf/Sponsors/TheGuild.svg
similarity index 100%
rename from static/img/conf/Sponsors/TheGuild.svg
rename to website/public/img/conf/Sponsors/TheGuild.svg
diff --git a/static/img/conf/Sponsors/WunderGraph.svg b/website/public/img/conf/Sponsors/WunderGraph.svg
similarity index 100%
rename from static/img/conf/Sponsors/WunderGraph.svg
rename to website/public/img/conf/Sponsors/WunderGraph.svg
diff --git a/static/img/conf/around.svg b/website/public/img/conf/around.svg
similarity index 100%
rename from static/img/conf/around.svg
rename to website/public/img/conf/around.svg
diff --git a/static/img/conf/bus.svg b/website/public/img/conf/bus.svg
similarity index 100%
rename from static/img/conf/bus.svg
rename to website/public/img/conf/bus.svg
diff --git a/static/img/conf/conf-bg.png b/website/public/img/conf/conf-bg.png
similarity index 100%
rename from static/img/conf/conf-bg.png
rename to website/public/img/conf/conf-bg.png
diff --git a/static/img/conf/graphql-conf-bg.png b/website/public/img/conf/graphql-conf-bg.png
similarity index 100%
rename from static/img/conf/graphql-conf-bg.png
rename to website/public/img/conf/graphql-conf-bg.png
diff --git a/static/img/conf/graphql-conf-footer.png b/website/public/img/conf/graphql-conf-footer.png
similarity index 100%
rename from static/img/conf/graphql-conf-footer.png
rename to website/public/img/conf/graphql-conf-footer.png
diff --git a/static/img/conf/graphql-conf-header.svg b/website/public/img/conf/graphql-conf-header.svg
similarity index 100%
rename from static/img/conf/graphql-conf-header.svg
rename to website/public/img/conf/graphql-conf-header.svg
diff --git a/static/img/conf/graphql-conf-logo-simple.svg b/website/public/img/conf/graphql-conf-logo-simple.svg
similarity index 100%
rename from static/img/conf/graphql-conf-logo-simple.svg
rename to website/public/img/conf/graphql-conf-logo-simple.svg
diff --git a/static/img/conf/graphql-conf-logo.svg b/website/public/img/conf/graphql-conf-logo.svg
similarity index 100%
rename from static/img/conf/graphql-conf-logo.svg
rename to website/public/img/conf/graphql-conf-logo.svg
diff --git a/static/img/conf/logo-color.png b/website/public/img/conf/logo-color.png
similarity index 100%
rename from static/img/conf/logo-color.png
rename to website/public/img/conf/logo-color.png
diff --git a/static/img/conf/parking.svg b/website/public/img/conf/parking.svg
similarity index 100%
rename from static/img/conf/parking.svg
rename to website/public/img/conf/parking.svg
diff --git a/static/img/conf/sf-hotel-image.png b/website/public/img/conf/sf-hotel-image.png
similarity index 100%
rename from static/img/conf/sf-hotel-image.png
rename to website/public/img/conf/sf-hotel-image.png
diff --git a/static/img/conf/social-pk.jpg b/website/public/img/conf/social-pk.jpg
similarity index 100%
rename from static/img/conf/social-pk.jpg
rename to website/public/img/conf/social-pk.jpg
diff --git a/static/img/conf/speakers/leebyron.jpg b/website/public/img/conf/speakers/leebyron.jpg
similarity index 100%
rename from static/img/conf/speakers/leebyron.jpg
rename to website/public/img/conf/speakers/leebyron.jpg
diff --git a/static/img/conf/speakers/marcandre.jpg b/website/public/img/conf/speakers/marcandre.jpg
similarity index 100%
rename from static/img/conf/speakers/marcandre.jpg
rename to website/public/img/conf/speakers/marcandre.jpg
diff --git a/static/img/conf/train.svg b/website/public/img/conf/train.svg
similarity index 100%
rename from static/img/conf/train.svg
rename to website/public/img/conf/train.svg
diff --git a/static/img/diagrams/business_layer.png b/website/public/img/diagrams/business_layer.png
similarity index 100%
rename from static/img/diagrams/business_layer.png
rename to website/public/img/diagrams/business_layer.png
diff --git a/static/img/downarrow.svg b/website/public/img/downarrow.svg
similarity index 100%
rename from static/img/downarrow.svg
rename to website/public/img/downarrow.svg
diff --git a/static/img/edit.svg b/website/public/img/edit.svg
similarity index 100%
rename from static/img/edit.svg
rename to website/public/img/edit.svg
diff --git a/static/img/graph-wash.png b/website/public/img/graph-wash.png
similarity index 100%
rename from static/img/graph-wash.png
rename to website/public/img/graph-wash.png
diff --git a/static/img/graphiql.mp4 b/website/public/img/graphiql.mp4
similarity index 100%
rename from static/img/graphiql.mp4
rename to website/public/img/graphiql.mp4
diff --git a/static/img/graphql-conf-logo.svg b/website/public/img/graphql-conf-logo.svg
similarity index 100%
rename from static/img/graphql-conf-logo.svg
rename to website/public/img/graphql-conf-logo.svg
diff --git a/static/img/graphql_conf-details-white.svg b/website/public/img/graphql_conf-details-white.svg
similarity index 100%
rename from static/img/graphql_conf-details-white.svg
rename to website/public/img/graphql_conf-details-white.svg
diff --git a/static/img/graphql_conf-details.svg b/website/public/img/graphql_conf-details.svg
similarity index 100%
rename from static/img/graphql_conf-details.svg
rename to website/public/img/graphql_conf-details.svg
diff --git a/static/img/graphql_foundation-hero.jpg b/website/public/img/graphql_foundation-hero.jpg
similarity index 100%
rename from static/img/graphql_foundation-hero.jpg
rename to website/public/img/graphql_foundation-hero.jpg
diff --git a/static/img/graphql_foundation-logo-white.svg b/website/public/img/graphql_foundation-logo-white.svg
similarity index 100%
rename from static/img/graphql_foundation-logo-white.svg
rename to website/public/img/graphql_foundation-logo-white.svg
diff --git a/static/img/hello.png b/website/public/img/hello.png
similarity index 100%
rename from static/img/hello.png
rename to website/public/img/hello.png
diff --git a/static/img/logo-gray.svg b/website/public/img/logo-gray.svg
similarity index 100%
rename from static/img/logo-gray.svg
rename to website/public/img/logo-gray.svg
diff --git a/static/img/logo.svg b/website/public/img/logo.svg
similarity index 100%
rename from static/img/logo.svg
rename to website/public/img/logo.svg
diff --git a/static/img/logos/discord.svg b/website/public/img/logos/discord.svg
similarity index 100%
rename from static/img/logos/discord.svg
rename to website/public/img/logos/discord.svg
diff --git a/static/img/logos/facebook.svg b/website/public/img/logos/facebook.svg
similarity index 100%
rename from static/img/logos/facebook.svg
rename to website/public/img/logos/facebook.svg
diff --git a/static/img/logos/github.svg b/website/public/img/logos/github.svg
similarity index 100%
rename from static/img/logos/github.svg
rename to website/public/img/logos/github.svg
diff --git a/static/img/logos/gsoc.svg b/website/public/img/logos/gsoc.svg
similarity index 100%
rename from static/img/logos/gsoc.svg
rename to website/public/img/logos/gsoc.svg
diff --git a/static/img/logos/instagram.svg b/website/public/img/logos/instagram.svg
similarity index 100%
rename from static/img/logos/instagram.svg
rename to website/public/img/logos/instagram.svg
diff --git a/static/img/logos/linkedin.svg b/website/public/img/logos/linkedin.svg
similarity index 100%
rename from static/img/logos/linkedin.svg
rename to website/public/img/logos/linkedin.svg
diff --git a/static/img/logos/snapchat.svg b/website/public/img/logos/snapchat.svg
similarity index 100%
rename from static/img/logos/snapchat.svg
rename to website/public/img/logos/snapchat.svg
diff --git a/static/img/logos/stackoverflow.svg b/website/public/img/logos/stackoverflow.svg
similarity index 100%
rename from static/img/logos/stackoverflow.svg
rename to website/public/img/logos/stackoverflow.svg
diff --git a/static/img/logos/twitter.svg b/website/public/img/logos/twitter.svg
similarity index 100%
rename from static/img/logos/twitter.svg
rename to website/public/img/logos/twitter.svg
diff --git a/static/img/menu-white.svg b/website/public/img/menu-white.svg
similarity index 100%
rename from static/img/menu-white.svg
rename to website/public/img/menu-white.svg
diff --git a/static/img/menu.svg b/website/public/img/menu.svg
similarity index 100%
rename from static/img/menu.svg
rename to website/public/img/menu.svg
diff --git a/static/img/news/annual-report-1.png b/website/public/img/news/annual-report-1.png
similarity index 100%
rename from static/img/news/annual-report-1.png
rename to website/public/img/news/annual-report-1.png
diff --git a/static/img/news/annual-report-2.png b/website/public/img/news/annual-report-2.png
similarity index 100%
rename from static/img/news/annual-report-2.png
rename to website/public/img/news/annual-report-2.png
diff --git a/static/img/news/annual-report-3.png b/website/public/img/news/annual-report-3.png
similarity index 100%
rename from static/img/news/annual-report-3.png
rename to website/public/img/news/annual-report-3.png
diff --git a/static/img/news/annual-report-4.png b/website/public/img/news/annual-report-4.png
similarity index 100%
rename from static/img/news/annual-report-4.png
rename to website/public/img/news/annual-report-4.png
diff --git a/static/img/news/graphiql-parser.png b/website/public/img/news/graphiql-parser.png
similarity index 100%
rename from static/img/news/graphiql-parser.png
rename to website/public/img/news/graphiql-parser.png
diff --git a/static/img/news/playground-transition-banner.png b/website/public/img/news/playground-transition-banner.png
similarity index 100%
rename from static/img/news/playground-transition-banner.png
rename to website/public/img/news/playground-transition-banner.png
diff --git a/static/img/og-image.png b/website/public/img/og-image.png
similarity index 100%
rename from static/img/og-image.png
rename to website/public/img/og-image.png
diff --git a/static/img/phone.svg b/website/public/img/phone.svg
similarity index 100%
rename from static/img/phone.svg
rename to website/public/img/phone.svg
diff --git a/static/img/report/amazon-web-services.svg b/website/public/img/report/amazon-web-services.svg
similarity index 100%
rename from static/img/report/amazon-web-services.svg
rename to website/public/img/report/amazon-web-services.svg
diff --git a/static/img/report/apollo-graphql.svg b/website/public/img/report/apollo-graphql.svg
similarity index 98%
rename from static/img/report/apollo-graphql.svg
rename to website/public/img/report/apollo-graphql.svg
index bd0ad9f93c..3ba8f37b61 100644
--- a/static/img/report/apollo-graphql.svg
+++ b/website/public/img/report/apollo-graphql.svg
@@ -1,41 +1,41 @@
-
-
-
-
+
+
+
+
diff --git a/static/img/report/expedia-group.svg b/website/public/img/report/expedia-group.svg
similarity index 100%
rename from static/img/report/expedia-group.svg
rename to website/public/img/report/expedia-group.svg
diff --git a/static/img/report/facebook.svg b/website/public/img/report/facebook.svg
similarity index 100%
rename from static/img/report/facebook.svg
rename to website/public/img/report/facebook.svg
diff --git a/static/img/report/hasura.svg b/website/public/img/report/hasura.svg
similarity index 100%
rename from static/img/report/hasura.svg
rename to website/public/img/report/hasura.svg
diff --git a/static/img/report/ibm.svg b/website/public/img/report/ibm.svg
similarity index 100%
rename from static/img/report/ibm.svg
rename to website/public/img/report/ibm.svg
diff --git a/static/img/report/novvum.svg b/website/public/img/report/novvum.svg
similarity index 100%
rename from static/img/report/novvum.svg
rename to website/public/img/report/novvum.svg
diff --git a/static/img/report/paypal.svg b/website/public/img/report/paypal.svg
similarity index 100%
rename from static/img/report/paypal.svg
rename to website/public/img/report/paypal.svg
diff --git a/static/img/report/salsify.svg b/website/public/img/report/salsify.svg
similarity index 100%
rename from static/img/report/salsify.svg
rename to website/public/img/report/salsify.svg
diff --git a/static/img/search.png b/website/public/img/search.png
similarity index 100%
rename from static/img/search.png
rename to website/public/img/search.png
diff --git a/static/img/search.svg b/website/public/img/search.svg
similarity index 100%
rename from static/img/search.svg
rename to website/public/img/search.svg
diff --git a/static/img/server.svg b/website/public/img/server.svg
similarity index 100%
rename from static/img/server.svg
rename to website/public/img/server.svg
diff --git a/static/users/logos/1stdibs.png b/website/public/users/logos/1stdibs.png
similarity index 100%
rename from static/users/logos/1stdibs.png
rename to website/public/users/logos/1stdibs.png
diff --git a/static/users/logos/20minutes.png b/website/public/users/logos/20minutes.png
similarity index 100%
rename from static/users/logos/20minutes.png
rename to website/public/users/logos/20minutes.png
diff --git a/static/users/logos/adayroi.png b/website/public/users/logos/adayroi.png
similarity index 100%
rename from static/users/logos/adayroi.png
rename to website/public/users/logos/adayroi.png
diff --git a/static/users/logos/airbnb.png b/website/public/users/logos/airbnb.png
similarity index 100%
rename from static/users/logos/airbnb.png
rename to website/public/users/logos/airbnb.png
diff --git a/static/users/logos/alembic.png b/website/public/users/logos/alembic.png
similarity index 100%
rename from static/users/logos/alembic.png
rename to website/public/users/logos/alembic.png
diff --git a/static/users/logos/allocine.png b/website/public/users/logos/allocine.png
similarity index 100%
rename from static/users/logos/allocine.png
rename to website/public/users/logos/allocine.png
diff --git a/static/users/logos/alphasights.png b/website/public/users/logos/alphasights.png
similarity index 100%
rename from static/users/logos/alphasights.png
rename to website/public/users/logos/alphasights.png
diff --git a/static/users/logos/amplitude.png b/website/public/users/logos/amplitude.png
similarity index 100%
rename from static/users/logos/amplitude.png
rename to website/public/users/logos/amplitude.png
diff --git a/static/users/logos/ants.png b/website/public/users/logos/ants.png
similarity index 100%
rename from static/users/logos/ants.png
rename to website/public/users/logos/ants.png
diff --git a/static/users/logos/appier.png b/website/public/users/logos/appier.png
similarity index 100%
rename from static/users/logos/appier.png
rename to website/public/users/logos/appier.png
diff --git a/static/users/logos/arangodb.png b/website/public/users/logos/arangodb.png
similarity index 100%
rename from static/users/logos/arangodb.png
rename to website/public/users/logos/arangodb.png
diff --git a/static/users/logos/artsy.png b/website/public/users/logos/artsy.png
similarity index 100%
rename from static/users/logos/artsy.png
rename to website/public/users/logos/artsy.png
diff --git a/static/users/logos/atlassian.png b/website/public/users/logos/atlassian.png
similarity index 100%
rename from static/users/logos/atlassian.png
rename to website/public/users/logos/atlassian.png
diff --git a/static/users/logos/attendify.png b/website/public/users/logos/attendify.png
similarity index 100%
rename from static/users/logos/attendify.png
rename to website/public/users/logos/attendify.png
diff --git a/static/users/logos/bazinga.png b/website/public/users/logos/bazinga.png
similarity index 100%
rename from static/users/logos/bazinga.png
rename to website/public/users/logos/bazinga.png
diff --git a/static/users/logos/blenderbottle.png b/website/public/users/logos/blenderbottle.png
similarity index 100%
rename from static/users/logos/blenderbottle.png
rename to website/public/users/logos/blenderbottle.png
diff --git a/static/users/logos/brewerybuddy.png b/website/public/users/logos/brewerybuddy.png
similarity index 100%
rename from static/users/logos/brewerybuddy.png
rename to website/public/users/logos/brewerybuddy.png
diff --git a/static/users/logos/bright.png b/website/public/users/logos/bright.png
similarity index 100%
rename from static/users/logos/bright.png
rename to website/public/users/logos/bright.png
diff --git a/static/users/logos/buildkite.png b/website/public/users/logos/buildkite.png
similarity index 100%
rename from static/users/logos/buildkite.png
rename to website/public/users/logos/buildkite.png
diff --git a/static/users/logos/bynder.png b/website/public/users/logos/bynder.png
similarity index 100%
rename from static/users/logos/bynder.png
rename to website/public/users/logos/bynder.png
diff --git a/static/users/logos/cheddar.png b/website/public/users/logos/cheddar.png
similarity index 100%
rename from static/users/logos/cheddar.png
rename to website/public/users/logos/cheddar.png
diff --git a/static/users/logos/circlehd.png b/website/public/users/logos/circlehd.png
similarity index 100%
rename from static/users/logos/circlehd.png
rename to website/public/users/logos/circlehd.png
diff --git a/static/users/logos/cloverleaf.png b/website/public/users/logos/cloverleaf.png
similarity index 100%
rename from static/users/logos/cloverleaf.png
rename to website/public/users/logos/cloverleaf.png
diff --git a/static/users/logos/clubmed.png b/website/public/users/logos/clubmed.png
similarity index 100%
rename from static/users/logos/clubmed.png
rename to website/public/users/logos/clubmed.png
diff --git a/static/users/logos/colectica.png b/website/public/users/logos/colectica.png
similarity index 100%
rename from static/users/logos/colectica.png
rename to website/public/users/logos/colectica.png
diff --git a/static/users/logos/commercetools.png b/website/public/users/logos/commercetools.png
similarity index 100%
rename from static/users/logos/commercetools.png
rename to website/public/users/logos/commercetools.png
diff --git a/static/users/logos/comparaonline.png b/website/public/users/logos/comparaonline.png
similarity index 100%
rename from static/users/logos/comparaonline.png
rename to website/public/users/logos/comparaonline.png
diff --git a/static/users/logos/conduit.png b/website/public/users/logos/conduit.png
similarity index 100%
rename from static/users/logos/conduit.png
rename to website/public/users/logos/conduit.png
diff --git a/static/users/logos/coursera.png b/website/public/users/logos/coursera.png
similarity index 100%
rename from static/users/logos/coursera.png
rename to website/public/users/logos/coursera.png
diff --git a/static/users/logos/creditkarma.png b/website/public/users/logos/creditkarma.png
similarity index 100%
rename from static/users/logos/creditkarma.png
rename to website/public/users/logos/creditkarma.png
diff --git a/static/users/logos/curio.png b/website/public/users/logos/curio.png
similarity index 100%
rename from static/users/logos/curio.png
rename to website/public/users/logos/curio.png
diff --git a/static/users/logos/dailymotion.png b/website/public/users/logos/dailymotion.png
similarity index 100%
rename from static/users/logos/dailymotion.png
rename to website/public/users/logos/dailymotion.png
diff --git a/static/users/logos/digitransit.png b/website/public/users/logos/digitransit.png
similarity index 100%
rename from static/users/logos/digitransit.png
rename to website/public/users/logos/digitransit.png
diff --git a/static/users/logos/directlyrics.png b/website/public/users/logos/directlyrics.png
similarity index 100%
rename from static/users/logos/directlyrics.png
rename to website/public/users/logos/directlyrics.png
diff --git a/static/users/logos/drift.png b/website/public/users/logos/drift.png
similarity index 100%
rename from static/users/logos/drift.png
rename to website/public/users/logos/drift.png
diff --git a/static/users/logos/duedil.png b/website/public/users/logos/duedil.png
similarity index 100%
rename from static/users/logos/duedil.png
rename to website/public/users/logos/duedil.png
diff --git a/static/users/logos/eastview.png b/website/public/users/logos/eastview.png
similarity index 100%
rename from static/users/logos/eastview.png
rename to website/public/users/logos/eastview.png
diff --git a/static/users/logos/easycarros.png b/website/public/users/logos/easycarros.png
similarity index 100%
rename from static/users/logos/easycarros.png
rename to website/public/users/logos/easycarros.png
diff --git a/static/users/logos/ediket.png b/website/public/users/logos/ediket.png
similarity index 100%
rename from static/users/logos/ediket.png
rename to website/public/users/logos/ediket.png
diff --git a/static/users/logos/etmdb.png b/website/public/users/logos/etmdb.png
similarity index 100%
rename from static/users/logos/etmdb.png
rename to website/public/users/logos/etmdb.png
diff --git a/static/users/logos/expert360.png b/website/public/users/logos/expert360.png
similarity index 100%
rename from static/users/logos/expert360.png
rename to website/public/users/logos/expert360.png
diff --git a/static/users/logos/facebook.png b/website/public/users/logos/facebook.png
similarity index 100%
rename from static/users/logos/facebook.png
rename to website/public/users/logos/facebook.png
diff --git a/static/users/logos/fairfaxmedia.png b/website/public/users/logos/fairfaxmedia.png
similarity index 100%
rename from static/users/logos/fairfaxmedia.png
rename to website/public/users/logos/fairfaxmedia.png
diff --git a/static/users/logos/filejet.png b/website/public/users/logos/filejet.png
similarity index 100%
rename from static/users/logos/filejet.png
rename to website/public/users/logos/filejet.png
diff --git a/static/users/logos/gentux.png b/website/public/users/logos/gentux.png
similarity index 100%
rename from static/users/logos/gentux.png
rename to website/public/users/logos/gentux.png
diff --git a/static/users/logos/getninjas.png b/website/public/users/logos/getninjas.png
similarity index 100%
rename from static/users/logos/getninjas.png
rename to website/public/users/logos/getninjas.png
diff --git a/static/users/logos/github.png b/website/public/users/logos/github.png
similarity index 100%
rename from static/users/logos/github.png
rename to website/public/users/logos/github.png
diff --git a/static/users/logos/goalify.png b/website/public/users/logos/goalify.png
similarity index 100%
rename from static/users/logos/goalify.png
rename to website/public/users/logos/goalify.png
diff --git a/static/users/logos/graphcms.png b/website/public/users/logos/graphcms.png
similarity index 100%
rename from static/users/logos/graphcms.png
rename to website/public/users/logos/graphcms.png
diff --git a/static/users/logos/graphcool.png b/website/public/users/logos/graphcool.png
similarity index 100%
rename from static/users/logos/graphcool.png
rename to website/public/users/logos/graphcool.png
diff --git a/static/users/logos/hackages.png b/website/public/users/logos/hackages.png
similarity index 100%
rename from static/users/logos/hackages.png
rename to website/public/users/logos/hackages.png
diff --git a/static/users/logos/hasura.png b/website/public/users/logos/hasura.png
similarity index 100%
rename from static/users/logos/hasura.png
rename to website/public/users/logos/hasura.png
diff --git a/static/users/logos/hijup.png b/website/public/users/logos/hijup.png
similarity index 100%
rename from static/users/logos/hijup.png
rename to website/public/users/logos/hijup.png
diff --git a/static/users/logos/housinganywhere.png b/website/public/users/logos/housinganywhere.png
similarity index 100%
rename from static/users/logos/housinganywhere.png
rename to website/public/users/logos/housinganywhere.png
diff --git a/static/users/logos/hsl.png b/website/public/users/logos/hsl.png
similarity index 100%
rename from static/users/logos/hsl.png
rename to website/public/users/logos/hsl.png
diff --git a/static/users/logos/hudl.png b/website/public/users/logos/hudl.png
similarity index 100%
rename from static/users/logos/hudl.png
rename to website/public/users/logos/hudl.png
diff --git a/static/users/logos/icon-systems.png b/website/public/users/logos/icon-systems.png
similarity index 100%
rename from static/users/logos/icon-systems.png
rename to website/public/users/logos/icon-systems.png
diff --git a/static/users/logos/idobata.png b/website/public/users/logos/idobata.png
similarity index 100%
rename from static/users/logos/idobata.png
rename to website/public/users/logos/idobata.png
diff --git a/static/users/logos/indonesiax.png b/website/public/users/logos/indonesiax.png
similarity index 100%
rename from static/users/logos/indonesiax.png
rename to website/public/users/logos/indonesiax.png
diff --git a/static/users/logos/inerva.png b/website/public/users/logos/inerva.png
similarity index 100%
rename from static/users/logos/inerva.png
rename to website/public/users/logos/inerva.png
diff --git a/static/users/logos/intuit.png b/website/public/users/logos/intuit.png
similarity index 100%
rename from static/users/logos/intuit.png
rename to website/public/users/logos/intuit.png
diff --git a/static/users/logos/jusbrasil.png b/website/public/users/logos/jusbrasil.png
similarity index 100%
rename from static/users/logos/jusbrasil.png
rename to website/public/users/logos/jusbrasil.png
diff --git a/static/users/logos/klm.png b/website/public/users/logos/klm.png
similarity index 100%
rename from static/users/logos/klm.png
rename to website/public/users/logos/klm.png
diff --git a/static/users/logos/leanix.png b/website/public/users/logos/leanix.png
similarity index 100%
rename from static/users/logos/leanix.png
rename to website/public/users/logos/leanix.png
diff --git a/static/users/logos/legendsoflearning.png b/website/public/users/logos/legendsoflearning.png
similarity index 100%
rename from static/users/logos/legendsoflearning.png
rename to website/public/users/logos/legendsoflearning.png
diff --git a/static/users/logos/lelivrescolaire.png b/website/public/users/logos/lelivrescolaire.png
similarity index 100%
rename from static/users/logos/lelivrescolaire.png
rename to website/public/users/logos/lelivrescolaire.png
diff --git a/static/users/logos/letsevents.png b/website/public/users/logos/letsevents.png
similarity index 100%
rename from static/users/logos/letsevents.png
rename to website/public/users/logos/letsevents.png
diff --git a/static/users/logos/loggi.png b/website/public/users/logos/loggi.png
similarity index 100%
rename from static/users/logos/loggi.png
rename to website/public/users/logos/loggi.png
diff --git a/static/users/logos/m1finance.png b/website/public/users/logos/m1finance.png
similarity index 100%
rename from static/users/logos/m1finance.png
rename to website/public/users/logos/m1finance.png
diff --git a/static/users/logos/make-school.png b/website/public/users/logos/make-school.png
similarity index 100%
rename from static/users/logos/make-school.png
rename to website/public/users/logos/make-school.png
diff --git a/static/users/logos/medallia.png b/website/public/users/logos/medallia.png
similarity index 100%
rename from static/users/logos/medallia.png
rename to website/public/users/logos/medallia.png
diff --git a/static/users/logos/meteor.png b/website/public/users/logos/meteor.png
similarity index 100%
rename from static/users/logos/meteor.png
rename to website/public/users/logos/meteor.png
diff --git a/static/users/logos/metric-ai.png b/website/public/users/logos/metric-ai.png
similarity index 100%
rename from static/users/logos/metric-ai.png
rename to website/public/users/logos/metric-ai.png
diff --git a/static/users/logos/mixcloud.png b/website/public/users/logos/mixcloud.png
similarity index 100%
rename from static/users/logos/mixcloud.png
rename to website/public/users/logos/mixcloud.png
diff --git a/static/users/logos/mojilala.png b/website/public/users/logos/mojilala.png
similarity index 100%
rename from static/users/logos/mojilala.png
rename to website/public/users/logos/mojilala.png
diff --git a/static/users/logos/myheritage.png b/website/public/users/logos/myheritage.png
similarity index 100%
rename from static/users/logos/myheritage.png
rename to website/public/users/logos/myheritage.png
diff --git a/static/users/logos/myntra.png b/website/public/users/logos/myntra.png
similarity index 100%
rename from static/users/logos/myntra.png
rename to website/public/users/logos/myntra.png
diff --git a/static/users/logos/nbc-news-digital.png b/website/public/users/logos/nbc-news-digital.png
similarity index 100%
rename from static/users/logos/nbc-news-digital.png
rename to website/public/users/logos/nbc-news-digital.png
diff --git a/static/users/logos/neo4j_logo.png b/website/public/users/logos/neo4j_logo.png
similarity index 100%
rename from static/users/logos/neo4j_logo.png
rename to website/public/users/logos/neo4j_logo.png
diff --git a/static/users/logos/newspring.png b/website/public/users/logos/newspring.png
similarity index 100%
rename from static/users/logos/newspring.png
rename to website/public/users/logos/newspring.png
diff --git a/static/users/logos/ningensoft.png b/website/public/users/logos/ningensoft.png
similarity index 100%
rename from static/users/logos/ningensoft.png
rename to website/public/users/logos/ningensoft.png
diff --git a/static/users/logos/nova-ideo.png b/website/public/users/logos/nova-ideo.png
similarity index 100%
rename from static/users/logos/nova-ideo.png
rename to website/public/users/logos/nova-ideo.png
diff --git a/static/users/logos/nyt.png b/website/public/users/logos/nyt.png
similarity index 100%
rename from static/users/logos/nyt.png
rename to website/public/users/logos/nyt.png
diff --git a/static/users/logos/okgrow.png b/website/public/users/logos/okgrow.png
similarity index 100%
rename from static/users/logos/okgrow.png
rename to website/public/users/logos/okgrow.png
diff --git a/static/users/logos/ovos.png b/website/public/users/logos/ovos.png
similarity index 100%
rename from static/users/logos/ovos.png
rename to website/public/users/logos/ovos.png
diff --git a/static/users/logos/paypal.png b/website/public/users/logos/paypal.png
similarity index 100%
rename from static/users/logos/paypal.png
rename to website/public/users/logos/paypal.png
diff --git a/static/users/logos/persado.png b/website/public/users/logos/persado.png
similarity index 100%
rename from static/users/logos/persado.png
rename to website/public/users/logos/persado.png
diff --git a/static/users/logos/pinterest.png b/website/public/users/logos/pinterest.png
similarity index 100%
rename from static/users/logos/pinterest.png
rename to website/public/users/logos/pinterest.png
diff --git a/static/users/logos/product-hunt.png b/website/public/users/logos/product-hunt.png
similarity index 100%
rename from static/users/logos/product-hunt.png
rename to website/public/users/logos/product-hunt.png
diff --git a/static/users/logos/project-september.png b/website/public/users/logos/project-september.png
similarity index 100%
rename from static/users/logos/project-september.png
rename to website/public/users/logos/project-september.png
diff --git a/static/users/logos/protel.png b/website/public/users/logos/protel.png
similarity index 100%
rename from static/users/logos/protel.png
rename to website/public/users/logos/protel.png
diff --git a/static/users/logos/prowl.png b/website/public/users/logos/prowl.png
similarity index 100%
rename from static/users/logos/prowl.png
rename to website/public/users/logos/prowl.png
diff --git a/static/users/logos/quri.png b/website/public/users/logos/quri.png
similarity index 100%
rename from static/users/logos/quri.png
rename to website/public/users/logos/quri.png
diff --git a/static/users/logos/redbubble.png b/website/public/users/logos/redbubble.png
similarity index 100%
rename from static/users/logos/redbubble.png
rename to website/public/users/logos/redbubble.png
diff --git a/static/users/logos/reindex.png b/website/public/users/logos/reindex.png
similarity index 100%
rename from static/users/logos/reindex.png
rename to website/public/users/logos/reindex.png
diff --git a/static/users/logos/restorando.png b/website/public/users/logos/restorando.png
similarity index 100%
rename from static/users/logos/restorando.png
rename to website/public/users/logos/restorando.png
diff --git a/static/users/logos/salestock.png b/website/public/users/logos/salestock.png
similarity index 100%
rename from static/users/logos/salestock.png
rename to website/public/users/logos/salestock.png
diff --git a/static/users/logos/scaphold.png b/website/public/users/logos/scaphold.png
similarity index 100%
rename from static/users/logos/scaphold.png
rename to website/public/users/logos/scaphold.png
diff --git a/static/users/logos/serverless.png b/website/public/users/logos/serverless.png
similarity index 100%
rename from static/users/logos/serverless.png
rename to website/public/users/logos/serverless.png
diff --git a/static/users/logos/shopify.png b/website/public/users/logos/shopify.png
similarity index 100%
rename from static/users/logos/shopify.png
rename to website/public/users/logos/shopify.png
diff --git a/static/users/logos/sky.png b/website/public/users/logos/sky.png
similarity index 100%
rename from static/users/logos/sky.png
rename to website/public/users/logos/sky.png
diff --git a/static/users/logos/skyarchnetworks.png b/website/public/users/logos/skyarchnetworks.png
similarity index 100%
rename from static/users/logos/skyarchnetworks.png
rename to website/public/users/logos/skyarchnetworks.png
diff --git a/static/users/logos/smarkets.png b/website/public/users/logos/smarkets.png
similarity index 100%
rename from static/users/logos/smarkets.png
rename to website/public/users/logos/smarkets.png
diff --git a/static/users/logos/stackshare.png b/website/public/users/logos/stackshare.png
similarity index 100%
rename from static/users/logos/stackshare.png
rename to website/public/users/logos/stackshare.png
diff --git a/static/users/logos/startupsco.png b/website/public/users/logos/startupsco.png
similarity index 100%
rename from static/users/logos/startupsco.png
rename to website/public/users/logos/startupsco.png
diff --git a/static/users/logos/stem.png b/website/public/users/logos/stem.png
similarity index 100%
rename from static/users/logos/stem.png
rename to website/public/users/logos/stem.png
diff --git a/static/users/logos/swapcard.png b/website/public/users/logos/swapcard.png
similarity index 100%
rename from static/users/logos/swapcard.png
rename to website/public/users/logos/swapcard.png
diff --git a/static/users/logos/syzygy.png b/website/public/users/logos/syzygy.png
similarity index 100%
rename from static/users/logos/syzygy.png
rename to website/public/users/logos/syzygy.png
diff --git a/static/users/logos/taller.png b/website/public/users/logos/taller.png
similarity index 100%
rename from static/users/logos/taller.png
rename to website/public/users/logos/taller.png
diff --git a/static/users/logos/teacherspayteachers.png b/website/public/users/logos/teacherspayteachers.png
similarity index 100%
rename from static/users/logos/teacherspayteachers.png
rename to website/public/users/logos/teacherspayteachers.png
diff --git a/static/users/logos/teselagen_logo.png b/website/public/users/logos/teselagen_logo.png
similarity index 100%
rename from static/users/logos/teselagen_logo.png
rename to website/public/users/logos/teselagen_logo.png
diff --git a/static/users/logos/thehunt.png b/website/public/users/logos/thehunt.png
similarity index 100%
rename from static/users/logos/thehunt.png
rename to website/public/users/logos/thehunt.png
diff --git a/static/users/logos/trove.png b/website/public/users/logos/trove.png
similarity index 100%
rename from static/users/logos/trove.png
rename to website/public/users/logos/trove.png
diff --git a/static/users/logos/twitter.png b/website/public/users/logos/twitter.png
similarity index 100%
rename from static/users/logos/twitter.png
rename to website/public/users/logos/twitter.png
diff --git a/static/users/logos/uctrends.png b/website/public/users/logos/uctrends.png
similarity index 100%
rename from static/users/logos/uctrends.png
rename to website/public/users/logos/uctrends.png
diff --git a/static/users/logos/unigraph.png b/website/public/users/logos/unigraph.png
similarity index 100%
rename from static/users/logos/unigraph.png
rename to website/public/users/logos/unigraph.png
diff --git a/static/users/logos/universe.png b/website/public/users/logos/universe.png
similarity index 100%
rename from static/users/logos/universe.png
rename to website/public/users/logos/universe.png
diff --git a/static/users/logos/ustglobal.png b/website/public/users/logos/ustglobal.png
similarity index 100%
rename from static/users/logos/ustglobal.png
rename to website/public/users/logos/ustglobal.png
diff --git a/static/users/logos/vanilaio.png b/website/public/users/logos/vanilaio.png
similarity index 100%
rename from static/users/logos/vanilaio.png
rename to website/public/users/logos/vanilaio.png
diff --git a/static/users/logos/waitlessq.png b/website/public/users/logos/waitlessq.png
similarity index 100%
rename from static/users/logos/waitlessq.png
rename to website/public/users/logos/waitlessq.png
diff --git a/static/users/logos/waldo-photos.png b/website/public/users/logos/waldo-photos.png
similarity index 100%
rename from static/users/logos/waldo-photos.png
rename to website/public/users/logos/waldo-photos.png
diff --git a/static/users/logos/wayfair.png b/website/public/users/logos/wayfair.png
similarity index 100%
rename from static/users/logos/wayfair.png
rename to website/public/users/logos/wayfair.png
diff --git a/static/users/logos/whitescape.png b/website/public/users/logos/whitescape.png
similarity index 100%
rename from static/users/logos/whitescape.png
rename to website/public/users/logos/whitescape.png
diff --git a/static/users/logos/wirtualnapolska.png b/website/public/users/logos/wirtualnapolska.png
similarity index 100%
rename from static/users/logos/wirtualnapolska.png
rename to website/public/users/logos/wirtualnapolska.png
diff --git a/static/users/logos/wishlife.png b/website/public/users/logos/wishlife.png
similarity index 100%
rename from static/users/logos/wishlife.png
rename to website/public/users/logos/wishlife.png
diff --git a/static/users/logos/workflowgen.png b/website/public/users/logos/workflowgen.png
similarity index 100%
rename from static/users/logos/workflowgen.png
rename to website/public/users/logos/workflowgen.png
diff --git a/static/users/logos/wowair.png b/website/public/users/logos/wowair.png
similarity index 100%
rename from static/users/logos/wowair.png
rename to website/public/users/logos/wowair.png
diff --git a/static/users/logos/yelp.png b/website/public/users/logos/yelp.png
similarity index 100%
rename from static/users/logos/yelp.png
rename to website/public/users/logos/yelp.png
diff --git a/static/users/logos/zlyde.png b/website/public/users/logos/zlyde.png
similarity index 100%
rename from static/users/logos/zlyde.png
rename to website/public/users/logos/zlyde.png
diff --git a/static/users/logos/zzish.png b/website/public/users/logos/zzish.png
similarity index 100%
rename from static/users/logos/zzish.png
rename to website/public/users/logos/zzish.png
From c6c1f9aefa19a1910c5e2fa3c1c83692115d6d21 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 16:46:05 +0100
Subject: [PATCH 28/41] polish
---
.../pages/foundation/annual-reports/2019.mdx | 28 +++++++++----------
1 file changed, 14 insertions(+), 14 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index 13aa304ab0..d8d88fea29 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -144,7 +144,7 @@ export const style2 = {
Our members have been active and engaged participants in the GraphQL ecosystem. Here are some of the ways in which our ecosystem has been enriched through their participation.
-
+
- **[Apollo Graph Manager](https://apollographql.com/docs/graph-manager):** Tools and services for teams collaborating on a data graph, including a central schema registry, data graph analytics, workflows for developing and maintaining agile schemas, and machinery for managing graph security and policy and operations.
- **[Federation](https://apollographql.com/docs/apollo-server/federation/introduction):** An open specification for composing multiple GraphQL services into a single data graph. The specification has been widely supported by the GraphQL community, with JavaScript, Kotlin, Java, Go, Python, Ruby, and PHP servers all adopting the federation programming model.
@@ -152,19 +152,19 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
- **[Apollo Server](https://apollographql.com/docs/apollo-server):** An open-source library for building a data graph in JavaScript that’s incrementally adoptable, production-ready, and compatible with any data source. Apollo Server defines the de-facto standard for GraphQL over HTTP and supports essential features for running GraphQL at scale such as federation, tracing, and caching.
- **[Apollo developer tooling](https://github.com/apollographql/apollo-tooling):** The Apollo tooling repository is home to several open-source GraphQL developer tools, including the Apollo CLI and VS Code extension. These tools connect to the Apollo registry, a central hub for managing your data graph, in order to provide workflows for an excellent developer experience.
-
+
- **[GraphQL Kotlin](https://github.com/ExpediaGroup/graphql-kotlin):** Continued work on GraphQL Kotlin libraries for running GraphQL Server, including code first-schema generation and a Spring Boot based Kotlin Graphql Server. This technology powers Expedia.com and its fleet of brands like Orbitz, Wotif, & Travelocity
- **[GraphQL Component](https://github.com/ExpediaGroup/graphql-component):** GraphQL Component is a modular graphql schema framework in javascript being utilized to build APIs for Vrbo travel and owner applications, as well as partner services and public APIs.
-
+
- **[GraphQL Engine](https://github.com/hasura/graphql-engine):** An open-source GraphQL engine for Postgres and other data sources.
- **[GraphQURL](https://github.com/hasura/graphqurl):** A command like utility like curl for GraphQL, with autocomplete and support for subscriptions.
- **[graphql-bench](https://github.com/hasura/graphql-bench):** A GraphQL benchmarking suite to make it easy for developers to test the performance of their GraphQL servers.
- **[learn-graphql](https://github.com/hasura/learn-graphql):** Open-source tutorials for almost all frontend application stacks to get started with GraphQL.
-
+
- **[OpenAPI-to-GraphQL](https://github.com/IBM/openapi-to-graphql):** Released the open-source OpenAPI-to-GraphQL library, which generates GraphQL interfaces on top of existing REST APIs. IBM made numerous other contributions to the open source community.
- **[libgraphqlparser](https://github.com/graphql/libgraphqlparser):** Delivered improvements to the open source GraphQL C++ library
@@ -174,28 +174,28 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
### Publications from our members
-
+
- [Principled GraphQL, best practices for creating, maintaining, and operating a data graph](https://principledgraphql.com)
- [Fullstack GraphQL tutorial](https://apollographql.com/docs/tutorial/introduction)
-
+
- [Merging GraphQL schema files and more from the CLI](https://aws.amazon.com/blogs/mobile/merging-graphql-schema-files-and-more-with-the-cli)
- [Developing and testing GraphQL APIs, Storage and Functions with Amplify Framework Local Mocking features](https://aws.amazon.com/blogs/mobile/amplify-framework-local-mocking)
- [Amplify DataStore – Simplify Development of Offline Apps with GraphQL](https://aws.amazon.com/blogs/aws/amplify-datastore-simplify-development-of-offline-apps-with-graphql)
-
+
- [Architecture of a high performance GraphQL to SQL engine](https://hasura.io/blog/architecture-of-a-high-performance-graphql-to-sql-server-58d9944b8a87)
- [Level up your serverless game with a GraphQL data-as-a-service layer](https://hasura.io/blog/level-up-your-serverless-game-with-a-graphql-data-as-a-service-layer)
- [Fluent GraphQL clients: how to write queries like a boss](https://hasura.io/blog/fluent-graphql-clients-how-to-write-queries-like-a-boss)
-
+
- [An Empirical Study of GraphQL Schemas (at ICSOC conference)](https://arxiv.org/pdf/1907.13012.pdf)
- [An Empirical Study of GraphQL (blog)](https://medium.com/swlh/empirical-study-graphql-icsoc19-29038c48da5)
@@ -205,31 +205,31 @@ Our members have been active and engaged participants in the GraphQL ecosystem.
### Talks, papers, and discussions on GraphQL
-
+
- [GraphQL Summit 2019 Keynote, by Matt DeBergalis](https://youtu.be/EDqw-sGVq3k)
- [Migrating to Apollo and GraphQL at Airbnb, by Brie Bunge](https://youtu.be/pywcFELoU8E)
- [The Architecture of Federation, by Jeff Hampton](https://youtu.be/LKQKn1oFXJU)
- [All GraphQL Summit 2019 talks](https://youtube.com/playlist?list=PLpi1lPB6opQyraZSmwFre_FpL00_3nTzV)
-
+
- Co-organized the [GraphQL London Meetup group](https://meetup.com/GraphQL-London)
- Co-organized the [GraphQL San Francisco Meetup group](https://meetup.com/GraphQL-SF)
- [Archive of Meetup talks](https://youtube.com/c/GraphQLTalks).
- [Building modern APIs with GraphQL](https://youtube.com/watch?v=bRnu7xvU1_Y)
-
+
- [Creating a federated schema for a global company (GraphQL Summit)](https://youtube.com/watch?v=MuD3TAP0D9Y)
-
+
- [Accelerating product and data delivery with GraphQL](https://youtube.com/watch?v=znzdocyfZsc)
- [API management and governance for GraphQL](https://youtube.com/watch?v=ypEtjxVmgoI)
- [Building a high performance realtime GraphQL API on existing databases](https://youtube.com/watch?v=HOKMJkBYaqQ)
-
+
- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net)
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
From 75e8eb0178ae09f6d6c915f74789c04b26e3f824 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 16:50:00 +0100
Subject: [PATCH 29/41] polish
---
.../pages/foundation/annual-reports/2019.mdx | 24 +++++++++----------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index d8d88fea29..0ba0b15e8b 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -86,35 +86,35 @@ export const style2 = {
maxHeight: 150
}
-
+
"GraphQL is a transformative technology that saves time and money for every team building rich, user-centric applications. **Apollo** is proud to play a central role in its rapid rise and maturation in 2019. Apollo’s industry-leading open source and cloud services power many of the world’s most significant online properties, including Expedia, Airbnb, PayPal, The New York Times, SurveyMonkey and thousands more. Apollo also hosts the world’s largest event dedicated to this technology - GraphQL Summit - which in 2019 featured more than 1,200 attendees and over 60 technical talks from some of the world’s most recognizable brands that are already benefiting from GraphQL."
-
+
"Collaborating with the Open Source community is always special; it has allowed **AWS** to improve and better understand the use cases that customers want to tackle, such as local mocking and testing. In order to move fast and ensure that we were releasing a valuable feature, we worked for several months with community members. We want to give a special thanks to Conduit Ventures for their significant contributions to the new Amplify local mocking environment."
-
+
"GraphQL has been a huge accelerator for how **Expedia Group's** web application and service teams build APIs. Being part of the open source community is a priority for us in how we contribute back and learn from others on the same journey."
-
+
"GraphQL is a rare technology that simultaneously improves the communication between _machines_ and between _humans!_ Data becomes easier to explore and consume for humans and GraphQL's spec driven design allows the creation of tools that can automate complex tasks around data fetching on the server and data management on the client. **Hasura's** flagship GraphQL engine automates complex data access work while giving API consumers an API they love using!"
-
+
"**IBM** is pleased to be an active member of the Linux Foundation's GraphQL project by participating on its technical working group and as a founding member of its Governing Board. IBM continued its commitment to innovating on key open technologies such as GraphQL in 2019."
-
+
"At **Novvum**, our team is tiny, but we try to contribute to the foundation and open source community whenever possible. A few projects that come to mind are graphql-playground, graphql-weekly, graphql-birdseye, and the graphql edX course. GraphQL enables teams to focus on their bottom line and less on the nuances of software development. It provides the freedom necessary for frontend devs, UI/UX designers, content marketers, etc. to make incredible stuff without compromising the safety, flexibility, and stability desired by backend teams. It's come a long way since the early days. We are not surprised to see so many big named companies adopting it today."
-
+
"GraphQL has been a complete game changer in the way **PayPal** thinks about data, fetch data and build applications."
-
+
"**Salsify** provides a commerce and content platform that enables the world's largest brands to deliver engaging product experiences across the digital shelf. Our GraphQL powered APIs enable us to support a diverse set of integrated use cases on an extensible microservices platform architecture with great developer ergonomics and excellent performance."
@@ -122,19 +122,19 @@ export const style2 = {
### How our members are using GraphQL
-
+
**Expedia Group** continues to rapidly adopt GraphQL. Over the last 2 years we have transitioned our REST APIs to GraphQL – and now over 90% of all customer interactions in web and native[vrbo.com](http://vrbo.com) apps are powered by GraphQL APIs and over 30% of all customer interactions on Expedia.com as well as other brands such as Hotels.com.
-
+
**Facebook** has used GraphQL to power our production mobile apps for the last 7.5 years, from its creation as an internal API in 2012 to its open sourcing in 2015 and beyond. In 2020, we’re as invested in the community and the technology as ever — we're [discussing our approach to streaming semantics with the GraphQL working group](https://github.com/graphql/graphql-wg/issues/329), and we’re [powering the new Facebook.com with GraphQL and Relay](https://developers.facebook.com/videos/2019/building-the-new-facebookcom-with-react-graphql-and-relay).
-
+
**Novvum** had been deploying graphql into production for the majority of our customers since its inception back in 2015. On any project, we find it extremely beneficial to add GraphQL as the primary communication layer between clients and the data that they need. From building car-sharing platforms on a time crunch to architecting fintech infrastructure to scaffolding MVPs for early-stage startups, we've observed many short- and long-term benefits by introducing GraphQL.
-
+
**PayPal** uses GraphQL to power many of our products and user experiences including PayPal Checkout, our flagship product that facilitates payments for millions of merchants and users.
From dd884c905f1fd1e4acc56555f9a3a0a738d453b1 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 17:07:53 +0100
Subject: [PATCH 30/41] fix images
---
website/src/pages/foundation/annual-reports/2019.mdx | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index 0ba0b15e8b..2248d8e917 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -36,7 +36,7 @@ The GraphQL Foundation also funded community member Ivan Goncharov to work throu
The GraphQL Foundation
[launched](/news/2019/03/12/the-graphql-foundation-announces-collaboration-with-the-joint-development-foundation-to-drive-open-source-and-open-standards) with 10 [members](/foundation/members), and we wrapped the year with 21 members in total, including Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and more. [Join](/join) your industry peers in helping to shape the GraphQL ecosystem.
-
+
Organizations interested in becoming members of the GraphQL Foundation or the GraphQL Specification can learn more on our [new member page](/join). If you have questions about membership, please send an email to membership@graphql.org.
@@ -86,6 +86,8 @@ export const style2 = {
maxHeight: 150
}
+
+

"GraphQL is a transformative technology that saves time and money for every team building rich, user-centric applications. **Apollo** is proud to play a central role in its rapid rise and maturation in 2019. Apollo’s industry-leading open source and cloud services power many of the world’s most significant online properties, including Expedia, Airbnb, PayPal, The New York Times, SurveyMonkey and thousands more. Apollo also hosts the world’s largest event dedicated to this technology - GraphQL Summit - which in 2019 featured more than 1,200 attendees and over 60 technical talks from some of the world’s most recognizable brands that are already benefiting from GraphQL."
@@ -231,6 +233,8 @@ Our members have been active and engaged participants in the GraphQL ecosystem.

+
+
- [GraphQL sessions at 2019 API Conference, Berlin](https://apiconference.net)
- Demonstrated GraphQL API Management in IBM API Connect and IBM DataPower® Gateway enabling determination of GraphQL query characteristics, advanced threat protection, customized rate limiting, and API plan configuration
- [Conducted IBM Developer Meetups where GraphQL work was highlighted in talks and technical demonstrations](https://meetup.com/ibmcodenyc/events/266535427)
From f55e1d816f0a836d51feeaefbd43ea982f3ad1a7 Mon Sep 17 00:00:00 2001
From: Dimitri POSTOLOV
Date: Mon, 8 Jan 2024 17:18:35 +0100
Subject: [PATCH 31/41] polish
---
.../src/pages/foundation/annual-reports/2019.mdx | 15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)
diff --git a/website/src/pages/foundation/annual-reports/2019.mdx b/website/src/pages/foundation/annual-reports/2019.mdx
index 2248d8e917..d33b4f710c 100644
--- a/website/src/pages/foundation/annual-reports/2019.mdx
+++ b/website/src/pages/foundation/annual-reports/2019.mdx
@@ -57,15 +57,12 @@ In addition to multiple community events, GraphQL Summit 2019 was held in San Fr
### Attendee feedback
export const html = (
- <>
-
- The GraphQL Foundation is the primary way
- in which funding is raised and distributed to support essential
- GraphQL community programs. The members listed on this page are
- directly invested in the success and long-term sustainability of the
- GraphQL community.
-
-
-
-
-
- )
-}
-
-export function Head() {
- return
-}
diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts
index ef50879283..d2dffd1891 100644
--- a/website/src/pages/foundation/_meta.ts
+++ b/website/src/pages/foundation/_meta.ts
@@ -4,5 +4,6 @@ export default {
'graphql-conf': 'GraphQL Conf',
'community-grant': '',
contact: 'Contact Us',
- 'annual-reports': ''
+ 'annual-reports': '',
+ members: 'Foundation Members'
}
diff --git a/website/src/pages/foundation/members.mdx b/website/src/pages/foundation/members.mdx
new file mode 100644
index 0000000000..bc3751fc81
--- /dev/null
+++ b/website/src/pages/foundation/members.mdx
@@ -0,0 +1,27 @@
+# GraphQL Foundation members
+
+The [GraphQL Foundation](/foundation) is the primary way
+in which funding is raised and distributed to support essential
+GraphQL community programs. The members listed on this page are
+directly invested in the success and long-term sustainability of the
+GraphQL community.
+
+To learn more about the [GraphQL Foundation](/foundation)
+and becoming a member, please see our
+[FAQ](/faq/graphql-foundation), reach out to
+[membership@graphql.org](mailto:membership@graphql.org),
+or [complete a membership application](https://join.graphql.org).
+
+