diff --git a/.gitignore b/.gitignore index 17635a7fd3..2f66df4ba4 100644 --- a/.gitignore +++ b/.gitignore @@ -57,7 +57,7 @@ typings/ # gatsby files .cache/ -public/ +/public/ !static/img/__og-image/ static/img/__og-image/* @@ -80,3 +80,5 @@ yarn-error.log src/__generated__/ .idea/ +next-env.d.ts +.next/ diff --git a/src/pages/foundation/members.tsx b/src/pages/foundation/members.tsx deleted file mode 100644 index c8acd5fe8d..0000000000 --- a/src/pages/foundation/members.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import React from "react" -import type { PageProps } from "gatsby" -import Layout from "../../components/Layout" -import Seo from "../../components/Seo" - -export default ({ pageContext }: PageProps<{}, { sourcePath: string }>) => { - return ( - -
-
-

GraphQL Foundation members

-

- 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. -

-

- To learn more about the GraphQL Foundation{" "} - and becoming a member, please see our{" "} - FAQ, reach out to{" "} - membership@graphql.org, - or{" "} - - complete a membership application - - . -

-
- - -
-
- ) -} - -export function Head() { - return -} diff --git a/website/next.config.js b/website/next.config.js new file mode 100644 index 0000000000..0dfa0b2ba3 --- /dev/null +++ b/website/next.config.js @@ -0,0 +1,13 @@ +import nextra from 'nextra' + +const withNextra = nextra({ + theme: 'nextra-theme-docs', + themeConfig: './theme.config.tsx', +}) + +/** + * @type {import('next').NextConfig} + */ +export default withNextra({ + reactStrictMode: true +}) diff --git a/website/package.json b/website/package.json new file mode 100644 index 0000000000..8875dc5a68 --- /dev/null +++ b/website/package.json @@ -0,0 +1,32 @@ +{ + "name": "graphql.org", + "version": "0.0.0", + "private": true, + "scripts": { + "dev": "next", + "build": "next build", + "start": "next start", + "lint": "next lint" + }, + "type": "module", + "dependencies": { + "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.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": { + "flexsearch": "0.7.31" + } + } +} diff --git a/website/pnpm-lock.yaml b/website/pnpm-lock.yaml new file mode 100644 index 0000000000..baf7274b80 --- /dev/null +++ b/website/pnpm-lock.yaml @@ -0,0 +1,3913 @@ +lockfileVersion: '6.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +overrides: + flexsearch: 0.7.31 + +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.2.0 + version: 18.2.0 + react-dom: + specifier: ^18.2.0 + version: 18.2.0(react@18.2.0) + +devDependencies: + '@types/node': + specifier: ^20.10.7 + version: 20.10.7 + '@types/react': + specifier: ^18.2.47 + version: 18.2.47 + autoprefixer: + specifier: ^10.4.16 + version: 10.4.16(postcss@8.4.33) + postcss: + specifier: ^8.4.33 + version: 8.4.33 + tailwindcss: + specifier: ^3.4.1 + version: 3.4.1 + typescript: + specifier: ^5.3.3 + 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@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.31: + resolution: {integrity: sha512-XGozTsMPYkm+6b5QL3Z9wQcJjNYxp0CYn3U1gO7dwD6PAqU1SVWZxI9CCg3z+ml3YfqdPnrBehaBrnH2AGKbNA==} + 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.31 + 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 diff --git a/website/postcss.config.cjs b/website/postcss.config.cjs new file mode 100644 index 0000000000..33ad091d26 --- /dev/null +++ b/website/postcss.config.cjs @@ -0,0 +1,6 @@ +module.exports = { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +} 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 diff --git a/website/src/pages/_app.tsx b/website/src/pages/_app.tsx new file mode 100644 index 0000000000..021681f4dd --- /dev/null +++ b/website/src/pages/_app.tsx @@ -0,0 +1,6 @@ +import '@/styles/globals.css' +import type { AppProps } from 'next/app' + +export default function App({ Component, pageProps }: AppProps) { + return +} diff --git a/website/src/pages/_document.tsx b/website/src/pages/_document.tsx new file mode 100644 index 0000000000..54e8bf3e2a --- /dev/null +++ b/website/src/pages/_document.tsx @@ -0,0 +1,13 @@ +import { Html, Head, Main, NextScript } from 'next/document' + +export default function Document() { + return ( + + + +
+ + + + ) +} diff --git a/website/src/pages/_meta.ts b/website/src/pages/_meta.ts new file mode 100644 index 0000000000..0888313c13 --- /dev/null +++ b/website/src/pages/_meta.ts @@ -0,0 +1,29 @@ +export default { + index: { + type: "page", + display: "hidden", + }, + learn: { + type: "page", + title: "Learn", + }, + faq: { + type: "page", + title: "FAQ", + }, + spec: { + type: "page", + title: "Spec ↗", + href: "https://spec.graphql.org", + newWindow: true, + }, + foundation: { + type: "page", + title: "Foundation", + }, + community: { + type: "page", + title: "Community", + }, + // code: {} +} diff --git a/website/src/pages/api/hello.ts b/website/src/pages/api/hello.ts new file mode 100644 index 0000000000..f8bcc7e5ca --- /dev/null +++ b/website/src/pages/api/hello.ts @@ -0,0 +1,13 @@ +// Next.js API route support: https://nextjs.org/docs/api-routes/introduction +import type { NextApiRequest, NextApiResponse } from 'next' + +type Data = { + name: string +} + +export default function handler( + req: NextApiRequest, + res: NextApiResponse +) { + res.status(200).json({ name: 'John Doe' }) +} diff --git a/website/src/pages/community/_meta.ts b/website/src/pages/community/_meta.ts new file mode 100644 index 0000000000..7758b869f0 --- /dev/null +++ b/website/src/pages/community/_meta.ts @@ -0,0 +1,3 @@ +export default { + index: "GraphQL Community", +} diff --git a/website/src/pages/community/index.mdx b/website/src/pages/community/index.mdx new file mode 100644 index 0000000000..370f10faff --- /dev/null +++ b/website/src/pages/community/index.mdx @@ -0,0 +1,155 @@ +--- +heroText: An open and neutral home for the GraphQL community, dedicated to promoting widespread adoption and accelerating development of the surrounding ecosystem +layout: community +category: GraphQL Community +permalink: /community/ +--- + +# Join the GraphQL Community + +The GraphQL community is growing fast, with conferences, workshops, and meetups happening around the world. + +Join our community to stay up to date with the latest developments, to learn from your peers, and to share your own experiences. + +Browse the list of community meetups below, or search through the GraphQL events to find an event near you. + +import { useData } from 'nextra/hooks' + +export const getStaticProps = async () => { + const meetups = await fetch('https://graphql-events.org/api/meetups').then((res) => res.json()); + const events = await fetch('https://graphql-events.org/api/events').then((res) => res.json()); + + return { + props: { + ssg: { + meetups, + events + }, + }, + } +} + +export const CommunityIntro = () => { + const { meetups } = useData(); + + return

Join one of {meetups.length} GraphQL Meetups around the world!

+} + +export const UrlList = ({ urls }) => { + return ( +
+ +
+ ); +} + +export const CommunityList = () => { + const data = useData(); + const meetups = data.meetups; + const unsetContinents = meetups.map((meetup) => meetup.continent); + const continents = [...new Set(unsetContinents)]; + + return ( +
+
+
+ {continents.map((continent, index) => { + const urls = meetups.filter( + (meetup) => meetup.continent === continent + ); + + return ( +
+

{continent}

+ +
+ ); + })} +
+
+
+ ) +} + +export const EventsIntro = () => { + const { events } = useData(); + + return

Join one of {events.length} recent or upcoming GraphQL events around the world!

+} + +export const EventsList = () => { + const data = useData(); + const events = data.events; + + return ( +
+
+
+ {events.map((event) => { + return ( +
+ {event.name} +
+ + {event.name} + +

+ Hosted by:{" "} + + {event.host} + +

+
+
+

+ Location:{" "} + {event.location} +

+
+
+ ); + })} +
+
+
+ ) +} + +## GraphQL Communities + + + + +## GraphQL Events + + + diff --git a/website/src/pages/faq/_meta.ts b/website/src/pages/faq/_meta.ts new file mode 100644 index 0000000000..8c251e61ae --- /dev/null +++ b/website/src/pages/faq/_meta.ts @@ -0,0 +1,14 @@ +export default { + index: { + title: 'Overview', + theme: { + toc: false, + } + }, + 'getting-started': '', + general: '', + 'best-practices': '', + specification: '', + frontend: '', + foundation: '' +} diff --git a/src/content/faq/BestPractices.md b/website/src/pages/faq/best-practices.mdx similarity index 91% rename from src/content/faq/BestPractices.md rename to website/src/pages/faq/best-practices.mdx index f4ec70cf41..46efd039c0 100644 --- a/src/content/faq/BestPractices.md +++ b/website/src/pages/faq/best-practices.mdx @@ -1,23 +1,18 @@ ---- -title: Best Practices -layout: faq -permalink: /faq/best-practices -position: 3 ---- +# Best Practices -### Is GraphQL scalable? +## Is GraphQL scalable? Yes, GraphQL is designed to be scalable and is used by many companies in production under a very high load. GraphQL comes with some [built-in performance boosts](#how-does-graphql-affect-my-product-s-performance) that can help. But once you push it to production, you're responsible for scaling it across instances and monitoring performance. -### Does GraphQL support offline usage? +## Does GraphQL support offline usage? No, or at least not natively. But there are [GraphQL clients](#what-is-a-graphql-client-and-why-would-i-need-one) that enable you to build offline-first. They use features designed to perform data operations while offline, such as caching and service workers. You can find a list of GraphQL clients in various languages on our [Code page](/code/). -### What are the security concerns with GraphQL? +## What are the security concerns with GraphQL? Most of the security concerns associated with GraphQL are typical for any API or service. A few examples: SQL injections, Denial of Service (DoS) attacks, or someone abusing flawed authentication. But there are also some attacks specific to GraphQL. For instance, [batching attacks](https://cheatsheetseries.owasp.org/cheatsheets/GraphQL_Cheat_Sheet.html#batching-attacks). These attacks can happen as a result of GraphQL allowing you to batch multiple queries (or requests for multiple object instances) in a single network call. @@ -25,13 +20,13 @@ No matter the concern, it’s important to be proactive. There are many ways to For an overview of common security concerns and how to address them, check out the [Security tutorial on How to GraphQL](https://www.howtographql.com/advanced/4-security/) and [OWASP’s GraphQL Cheat Sheet](https://cheatsheetseries.owasp.org/cheatsheets/GraphQL_Cheat_Sheet.html). -### How can I set up authorization with GraphQL? +## How can I set up authorization with GraphQL? We recommend enforcing authorization behavior in the [business logic layer](/learn/thinking-in-graphs/#business-logic-layer). That way, you have a single source of truth for authorization. For a more detailed explanation, go to our [Authorization documentation](/learn/authorization/). -### How does authentication work with GraphQL? +## How does authentication work with GraphQL? You can implement authentication with common patterns, such as [OAuth](https://oauth.net/) or [JWT](https://jwt.io/). There’s nothing special about authentication within the GraphQL specification. @@ -39,13 +34,13 @@ Some [GraphQL libraries](/code/#language-support) include a specific protocol fo If you’re using [GraphQL.js](/graphql-js/) to build your API server, we have documentation on [handling authentication with Express middleware](/graphql-js/authentication-and-express-middleware/). -### Is GraphQL the right fit for designing a microservice architecture? +## Is GraphQL the right fit for designing a microservice architecture? Yes, it can be. If you’re integrating GraphQL into your microservice architecture, we’d recommend having one GraphQL schema as an API gateway rather than having your client talk to multiple GraphQL services. This way, you can split your backend into microservices, but then still aggregate all your data to the frontend from a single API. There are many ways to create an API gateway. The benefit of using GraphQL is that you can take advantage of features like [caching](/learn/caching/), request budgeting, and planning out query schedules. -### How does versioning work in GraphQL? +## How does versioning work in GraphQL? There’s nothing that will prevent a GraphQL service from being versioned like any other REST API. That said, GraphQL avoids versioning by design. @@ -53,7 +48,7 @@ Instead, GraphQL provides the tools to continually build and evolve your schema. You can read more about [how versioning works in GraphQL](/learn/best-practices/#versioning) in our Best Practices section. -### How can I document my GraphQL API? +## How can I document my GraphQL API? One of the benefits of GraphQL is that it's inherently self-documenting. This means that when you use an interactive tool like [GraphiQL](https://github.com/graphql/graphiql), you’re able to explore what data is exposed by your GraphQL API. This includes the [fields](/learn/queries/#fields), [types](/learn/schema/#type-system), and more. You can also add a [description field](https://spec.graphql.org/draft/#sec-Documentation) to provide supplementary notes about your endpoint. This description field supports strings and Markdown. diff --git a/src/content/faq/Foundation.md b/website/src/pages/faq/foundation.mdx similarity index 84% rename from src/content/faq/Foundation.md rename to website/src/pages/faq/foundation.mdx index 76cfc3879e..94a2e827f7 100644 --- a/src/content/faq/Foundation.md +++ b/website/src/pages/faq/foundation.mdx @@ -1,15 +1,10 @@ ---- -title: GraphQL Foundation -layout: faq -permalink: /faq/graphql-foundation -position: 6 ---- +# GraphQL Foundation -### What does the GraphQL Foundation do? +## What does the GraphQL Foundation do? The primary responsibility of the Foundation is to set policy and allocate the budget to maximize the sustainability of the GraphQL community. Members participate on a governing board that meets monthly and decides how to allocate its funding. -### Where does the funding go when I become a member? +## Where does the funding go when I become a member? The GraphQL Foundation is funded exclusively through the support of our members. The governing board sets an annual budget to use the dues to the maximum benefit of the community. Ways the Foundation distributes the money raised through memberships include: @@ -21,34 +16,34 @@ Ways the Foundation distributes the money raised through memberships include: The GraphQL Foundation budget is realigned as the needs of the community change. -### How are decisions made? +## How are decisions made? As with other Linux Foundation projects, the governing board makes decisions through votes. Every vote is equal and no members have special voting rights or privileges. The charter currently limits the governing board to 25 members. -### Who can join the GraphQL Foundation? +## Who can join the GraphQL Foundation? GraphQL Foundation membership is open to companies who wish to support the GraphQL ecosystem. As the GraphQL Foundation is hosted at the [Linux Foundation](https://linuxfoundation.org), members must also join the Linux Foundation. -### Do I need to join the Foundation to participate in GraphQL development? +## Do I need to join the Foundation to participate in GraphQL development? No, Foundation membership is separate from the technical development community. There is no cost to participate in GraphQL development, although you must sign the [free GraphQL Specification membership agreement](https://github.com/graphql/graphql-wg/tree/main/membership) in order to participate. These two things are different from each other. Members join the Foundation in order to provide essential funding and participate in the decisions on how it is used. Developers join the GraphQL Specification in order to contribute ideas, code, and other content. Many companies do both. -### How do I participate in technical development? +## How do I participate in technical development? We would love to have you! The best place to get started is the [GraphQL Working Group](https://github.com/graphql/graphql-wg/tree/HEAD/membership), which meets monthly. Open a PR to add yourself to the agenda, and you are welcome to join. Otherwise, you can get involved in [any of our other projects](https://github.com/graphql/graphql-wg/blob/main/GraphQL-TSC.md#about-the-graphql-specification-project). -### Who founded the organization? +## Who founded the organization? The GraphQL Foundation was founded by Apollo, AWS, Butterfly Network, Dgraph Labs, Facebook, Gatsby, GraphZen, Hasura, IBM, Intuit, Neo4j, Novvum, Pipefy, Salsify, Solo.io and Thicit. -### Who is currently a member? +## Who is currently a member? -You can learn more about our membership on the [GraphQL Foundation membership page](/foundation/members/). +You can learn more about our membership on the [GraphQL Foundation membership page](/foundation/members). -### How do we join? +## How do we join? You can become a member of GraphQL Foundation and the Linux Foundation by completing our [membership application form](https://join.graphql.org). diff --git a/src/content/faq/Frontend.md b/website/src/pages/faq/frontend.mdx similarity index 83% rename from src/content/faq/Frontend.md rename to website/src/pages/faq/frontend.mdx index 1d3de9e230..7a89ca2704 100644 --- a/src/content/faq/Frontend.md +++ b/website/src/pages/faq/frontend.mdx @@ -1,11 +1,6 @@ ---- -title: Frontend -layout: faq -permalink: /faq/frontend -position: 5 ---- +# Frontend -### Does GraphQL replace Redux or other state management libraries? +## Does GraphQL replace Redux or other state management libraries? No, GraphQL isn’t a state management library - but it can reduce the need for one. diff --git a/src/content/faq/General.md b/website/src/pages/faq/general.mdx similarity index 94% rename from src/content/faq/General.md rename to website/src/pages/faq/general.mdx index 1072910a9e..b0549d9bc9 100644 --- a/src/content/faq/General.md +++ b/website/src/pages/faq/general.mdx @@ -1,27 +1,22 @@ ---- -title: General -layout: faq -permalink: /faq/general -position: 2 ---- +# General -### Is GraphQL frontend or backend? +## Is GraphQL frontend or backend? Both. GraphQL specifies how you can [exchange information between client and server](https://www.howtographql.com/basics/3-big-picture/). This includes how the server can indicate [what data and operations are available](/learn/introspection/), how the client should [format requests](/learn/queries/), how the server should [execute these queries](/learn/execution/), and what the client will [receive in response](/learn/serving-over-http/#response). -### Does GraphQL use HTTP? +## Does GraphQL use HTTP? Yes, [GraphQL is typically served over HTTP](/learn/best-practices/#http). This is largely due to how pervasive the HTTP protocol is in our industry. But it helps that you can try out GraphQL by creating [a single HTTP request](#why-should-i-use-graphql). Guidelines for setting up a GraphQL server to operate over HTTP are available in our [Serving over HTTP](/learn/serving-over-http/) documentation. While HTTP is the most common choice for client-server protocol, it’s not the only one. GraphQL is agnostic to the transport layer. So, for example, you could use [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) for GraphQL subscriptions instead of HTTP to consume realtime data. -### How does GraphQL affect my product’s performance? +## How does GraphQL affect my product’s performance? On a typical GraphQL backend, every field on every type has a focused, single-purpose function for resolving that value. Also, instead of trying to handle data batching on the client, [GraphQL moves that logic to the server](/learn/best-practices/#server-side-batching-caching). As a result, there are some inherent performance benefits. Minimizing over-fetching and making [fewer roundtrips to the server](/learn/queries/#fields) are two of them. Other performance factors should be considered when building out your GraphQL implementation. For example, it’s possible for a GraphQL service to be ‘chatty’ and repeatedly load data from your database. This is commonly solved by [implementing a batching technique](/learn/best-practices/#server-side-batching-caching) or [utilizing a tool like DataLoader](https://github.com/graphql/dataloader). -### What is a GraphQL client and why would I use one? +## What is a GraphQL client and why would I use one? GraphQL clients can help you handle [queries, mutations,](/learn/queries/) and [subscriptions](https://spec.graphql.org/draft/#sec-Subscription) to a [GraphQL server](https://www.howtographql.com/advanced/1-server/). They use the underlying structure of a GraphQL API to automate certain processes. This includes batching, UI updates, build-time schema validation, and more. @@ -29,17 +24,17 @@ A list of GraphQL clients in various languages is available on our [Code page](/ You don't need a specific client to work with GraphQL, though. You might want to start out by [issuing GraphQL results with a regular HTTP client](/learn/serving-over-http/). Then later switch to a GraphQL-optimized client as your application grows in complexity. -### Does GraphQL replace ORMs? +## Does GraphQL replace ORMs? No, GraphQL is a specification typically used for remote client-server communications. It's [agnostic to the data source(s) used](#is-graphql-a-database-language-like-sql) and doesn’t implement an object-relational mapping technique. But there are ORMs built specifically for GraphQL. A few of those are listed under the [Services section of our Code page](/code/#services). -### Is GraphQL owned by Facebook? +## Is GraphQL owned by Facebook? No, GraphQL is governed by the [GraphQL Foundation](#what-is-the-graphql-foundation). That said, the specification was originally developed at Facebook and [Facebook is a member](https://foundation.graphql.org/members/) of the GraphQL Foundation. You might notice that some of our [GitHub repositories](https://github.com/graphql/) still have the license listed under Facebook Inc. We're updating those and have already converted major projects, like [GraphiQL](https://github.com/graphql/graphiql/blob/main/LICENSE) and [DataLoader](https://github.com/graphql/dataloader/blob/master/LICENSE), to the the new copyright: "Copyright (c) 2020 GraphQL Contributors." -### Who is behind GraphQL? +## Who is behind GraphQL? Many people! The [GraphQL specification and all related projects](http://github.com/graphql/) are open source, so anyone is welcome to [contribute](#how-can-i-contribute-to-the-specification). That said, there is a structure in place behind the repositories. This exists to resolve conflicts within the community and guiding technical decisions. @@ -51,7 +46,7 @@ In the [November 2020 WG meeting](https://www.youtube.com/watch?v=UybZp9O24Ow), If this is confusing, don’t worry - there’s a lot going on. To get a more visual, high-level overview, check out the [GraphQL Landscape](https://landscape.graphql.org/). -### What is the GraphQL Foundation? +## What is the GraphQL Foundation? The [GraphQL Foundation](https://foundation.graphql.org/faq/) is a neutral foundation that provides governance for GraphQL. This includes vendor-neutral oversight of open-source repositories, funding, events, and more. It's hosted under the [Linux Foundation](https://www.linuxfoundation.org/) and consists of [representatives from dozens of different companies](https://foundation.graphql.org/members/). The idea is that it’s an impartial and open home for the GraphQL community. diff --git a/src/content/faq/GettingStarted.md b/website/src/pages/faq/getting-started.mdx similarity index 94% rename from src/content/faq/GettingStarted.md rename to website/src/pages/faq/getting-started.mdx index 8a8630af4f..76b09cd11f 100644 --- a/src/content/faq/GettingStarted.md +++ b/website/src/pages/faq/getting-started.mdx @@ -1,11 +1,6 @@ ---- -title: Getting Started -layout: faq -permalink: /faq/getting-started -position: 1 ---- +# Getting Started -### Why should I use GraphQL? +## Why should I use GraphQL? It depends on your use case, but in general, GraphQL has a few key features that stand out. For example, GraphQL enables you to: @@ -19,7 +14,7 @@ It depends on your use case, but in general, GraphQL has a few key features that You can try out GraphQL without rewriting your entire application. For instance, starting with a single HTTP request that wraps an existing REST call. Your [GraphQL schema](/learn/thinking-in-graphs/#shared-language) and [business domain model](/learn/thinking-in-graphs/#business-logic-layer) can expand gradually. We recommend focusing on one use case at first and only building the part of the schema needed for that. -### Does GraphQL replace REST? +## Does GraphQL replace REST? No, not necessarily. They both handle APIs and can [serve similar purposes](/learn/thinking-in-graphs/#business-logic-layer) from a business perspective. GraphQL is often considered an alternative to REST, but it’s not a definitive replacement. @@ -27,7 +22,7 @@ GraphQL and REST can actually co-exist in your stack. For example, you can abstr For an opinionated perspective on how GraphQL compares to REST, check out [How To GraphQL](https://www.howtographql.com/basics/1-graphql-is-the-better-rest/). -### Is GraphQL a database language like SQL? +## Is GraphQL a database language like SQL? No, but this is a common misconception. @@ -35,7 +30,7 @@ GraphQL is a specification typically used for remote client-server communication For more information on how to get GraphQL to interact with your database, check out our [documentation on resolvers](/learn/execution/#root-fields-resolvers). -### How can I learn GraphQL? +## How can I learn GraphQL? There are many resources available to help you learn GraphQL, including this website. In [our documentation](/learn/), you’ll find a series of articles that explain essential GraphQL concepts and how they work. Our [Community page](/community) is full of resources to reference and groups to join. @@ -43,7 +38,7 @@ For more practical guides, visit the [How to GraphQL](https://www.howtographql.c Before you start your learning journey, make sure you know [what an API is](https://www.codenewbie.org/blogs/an-intro-to-apis) and how communication generally works between client and server. -### Is GraphQL only for React or JavaScript developers? +## Is GraphQL only for React or JavaScript developers? No, not at all. [GraphQL is a specification](https://spec.graphql.org/) that can be [implemented in any language](/learn/schema/#type-language). Our [Code page](/code/) contains a long list of libraries in many different programming languages to help with that. diff --git a/website/src/pages/faq/index.mdx b/website/src/pages/faq/index.mdx new file mode 100644 index 0000000000..2a0a6574ef --- /dev/null +++ b/website/src/pages/faq/index.mdx @@ -0,0 +1,14 @@ +import { Cards } from 'nextra/components' +import metaFile from './_meta' + +# Frequently Asked Questions (FAQ) + + + {Object.entries(metaFile).slice(1).map(([key]) => ( + word[0].toUpperCase() + word.slice(1)).join(' ')} + href={`/faq/${key}`} arrow + /> + ))} + diff --git a/src/content/faq/Specification.md b/website/src/pages/faq/specification.mdx similarity index 89% rename from src/content/faq/Specification.md rename to website/src/pages/faq/specification.mdx index 4a21c82964..395f79d8d8 100644 --- a/src/content/faq/Specification.md +++ b/website/src/pages/faq/specification.mdx @@ -1,23 +1,18 @@ ---- -title: Specification -layout: faq -permalink: /faq/specification -position: 4 ---- +# Specification -### What is the best way to follow specification releases? +## What is the best way to follow specification releases? The latest working draft release of the GraphQL specification can be found at [spec.graphql.org/draft](https://spec.graphql.org/draft/). Previous editions are also available at permalinks that match their [release tag](https://github.com/graphql/graphql-spec/releases). The entire process behind each release is open source. You can monitor specification proposals by following [pull requests in the graphql-spec repository](https://github.com/graphql/graphql-spec/pulls). You can also watch past GraphQL Working Group discussions about various proposals on [YouTube](https://www.youtube.com/channel/UCERcwLeheOXp_u61jEXxHMA). -### How can I contribute to the GraphQL specification? +## How can I contribute to the GraphQL specification? GraphQL is still evolving and contributions are very welcome! The specification (including the [latest working draft](https://spec.graphql.org/)) is open source. [Contributor guidelines](https://github.com/graphql/graphql-spec/blob/main/CONTRIBUTING.md) are available on GitHub. There are more ways to get involved with GraphQL beyond the specification though. Updating the content on [this website and the documentation](https://github.com/graphql/graphql.github.io), for example. Or contributing to [graphql-js](https://github.com/graphql/graphql-js), [express-graphql](https://github.com/graphql/express-graphql), [GraphiQL](https://github.com/graphql/graphiql), or [one of the many other projects](https://github.com/graphql/) maintained by the [GraphQL Foundation](#what-is-the-graphql-foundation). -### What is GraphQL Specification membership? +## What is GraphQL Specification membership? The [GraphQL Specification](https://specification.graphql.org) and the associated reference implementations are a Joint Development Foundation project (also part of the Linux Foundation family). Individual or corporate contributors sign a document at no cost that they agree their contributions are under the open source licenses of the project. Because this is not GraphQL Foundation membership, specification members do not decide how to spend the budget. @@ -25,7 +20,7 @@ To sign the [GraphQL Specification membership document](https://github.com/graph If your organization uses and benefits from GraphQL, please consider becoming a member of both by opening a PR on behalf of your company and [joining the GraphQL Foundation](https://join.graphql.org). -### Where is the documentation for subscriptions? +## Where is the documentation for subscriptions? It's not on this website yet, but we're working on it. If you'd like to help write guides on subscriptions, please [let us know](https://github.com/graphql/graphql.github.io/issues/993). diff --git a/website/src/pages/foundation/_meta.ts b/website/src/pages/foundation/_meta.ts new file mode 100644 index 0000000000..79a4fb9027 --- /dev/null +++ b/website/src/pages/foundation/_meta.ts @@ -0,0 +1,14 @@ +export default { + index: 'About the Foundation', + join: 'Join GraphQL', + 'graphql-conf': 'GraphQL Conf', + 'community-grant': '', + contact: 'Contact Us', + 'annual-reports': '', + members: 'Foundation Members', + landscape: { + title: 'GraphQL Landscape ↗', + href: 'https://landscape.graphql.org', + newWindow: true + } +} 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 56% rename from src/content/foundation/annual-report/2019.md rename to website/src/pages/foundation/annual-reports/2019.mdx index 78e332e972..d33b4f710c 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. @@ -19,157 +19,151 @@ 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. -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 +## 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. -
Lee presenting
+![Lee presenting](/img/news/annual-report-1.png) 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 = ( + <> + {/* TODO: use static tweets with server components in Nextra 4 with app router support */} + -
+{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', + padding: '40px 0 20px' +} + +export const style2 = { + width: 200, + maxHeight: 150 +} -
Apollo GraphQL logo
+
+ +![Apollo GraphQL logo](/img/report/apollo-graphql.svg) "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." -
AWS logo
+![AWS logo](/img/report/amazon-web-services.svg) "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." -
Expedia Group logo
+![Expedia Group logo](/img/report/expedia-group.svg) "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." -
Hasura logo
+![Hasura logo](/img/report/hasura.svg) "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 logo
+![IBM logo](/img/report/ibm.svg) "**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." -
Novvum logo
+![Novvum logo](/img/report/novvum.svg) "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." -
PayPal logo
+![PayPal logo](/img/report/paypal.svg) "GraphQL has been a complete game changer in the way **PayPal** thinks about data, fetch data and build applications." -
Salsify logo
+![Salsify logo](/img/report/salsify.svg) "**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." --- -### HOW OUR MEMBERS ARE USING GRAPHQL +### How our members are using GraphQL -
Expedia Group logo
+![Expedia Group logo](/img/report/expedia-group.svg) -**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 logo
+![Facebook logo](/img/report/facebook.svg) -**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 logo
+![Novvum logo](/img/report/novvum.svg) **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 logo
+![PayPal logo](/img/report/paypal.svg) **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. --- -### 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. -
Apollo GraphQL logo
+![Apollo GraphQL logo](/img/report/apollo-graphql.svg) -- **[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. -
Expedia Group logo
+![Expedia Group logo](/img/report/expedia-group.svg) - **[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. -
Hasura logo
+![Hasura logo](/img/report/hasura.svg) - **[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. -
IBM logo
+![IBM logo](/img/report/ibm.svg) - **[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 @@ -177,84 +171,86 @@ Our members have been active and engaged participants in the GraphQL ecosystem. --- -### PUBLICATIONS FROM OUR MEMBERS +### Publications from our members -
Apollo GraphQL logo
+![Apollo GraphQL logo](/img/report/apollo-graphql.svg) -- [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) -
AWS logo
+![AWS logo](/img/report/amazon-web-services.svg) -- [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) -
Expedia Group logo
+![Expedia Group logo](/img/report/expedia-group.svg) - [The Architectural Principles Behind Vrbo’s GraphQL Implementation](https://medium.com/expedia-group-tech/graphql-component-architecture-principles-homeaway-ede8a58d6fde) -
Hasura logo
+![Hasura logo](/img/report/hasura.svg) -- [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) -
IBM logo
+![IBM logo](/img/report/ibm.svg) - [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 +### Talks, papers, and discussions on GraphQL -
Apollo GraphQL logo
+![Apollo GraphQL logo](/img/report/apollo-graphql.svg) - [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) + +![AWS logo](/img/report/amazon-web-services.svg) -
AWS logo
+- 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) -- 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) +![Expedia Group logo](/img/report/expedia-group.svg) -
Expedia Group logo
+- [Creating a federated schema for a global company (GraphQL Summit)](https://youtube.com/watch?v=MuD3TAP0D9Y) -- [Creating a federated schema for a global company (GraphQL Summit)](https://www.youtube.com/watch?v=MuD3TAP0D9Y) +![Hasura logo](/img/report/hasura.svg) -
Hasura logo
+- [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) -- [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) +![IBM logo](/img/report/ibm.svg) -
IBM logo
+
-- [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 +## 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. 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. +The [GraphQL Interactive Landscape](https://landscape.graphql.org) was recently published by the GraphQL Foundation. ![GraphQL Landscape](https://landscape.graphql.org/images/landscape.png) @@ -262,15 +258,15 @@ 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://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 +## 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. 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. 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 +``` 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 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. 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. 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). + +