From 33b19176556c34fbd032eee84a22dd2eb3460d41 Mon Sep 17 00:00:00 2001
From: Justin H <1746134+soupaJ@users.noreply.github.com>
Date: Mon, 4 Sep 2023 16:29:13 -0700
Subject: [PATCH 1/4] upgrades to next.js 13
---
components/footer.tsx | 6 +-
components/link/link-with-avatar.tsx | 3 +-
components/link/link.tsx | 18 +-
components/theme-toggle/theme-toggle.tsx | 4 +-
constants.js | 9 -
constants.ts | 9 +
next-env.d.ts | 1 +
package-lock.json | 471 ++++++++++++-----------
package.json | 2 +-
tailwind.config.js | 1 +
tsconfig.json | 22 +-
11 files changed, 293 insertions(+), 253 deletions(-)
delete mode 100644 constants.js
create mode 100644 constants.ts
diff --git a/components/footer.tsx b/components/footer.tsx
index 39e317f..ed41320 100644
--- a/components/footer.tsx
+++ b/components/footer.tsx
@@ -4,10 +4,8 @@ import Logo from "./logo";
export default function Footer() {
return (
);
diff --git a/components/link/link-with-avatar.tsx b/components/link/link-with-avatar.tsx
index ec457f8..f858381 100644
--- a/components/link/link-with-avatar.tsx
+++ b/components/link/link-with-avatar.tsx
@@ -10,12 +10,13 @@ export default function LinkWithAvatar({
alt,
href,
children,
+ variant = "subtle",
...rest
}: LinkWithAvatarProps) {
return (
diff --git a/components/link/link.tsx b/components/link/link.tsx
index c29b29c..5621d02 100644
--- a/components/link/link.tsx
+++ b/components/link/link.tsx
@@ -1,9 +1,10 @@
import NextLink, { LinkProps as NextLinkProps } from "next/link";
import { AnchorHTMLAttributes } from "react";
-export interface LinkProps extends AnchorHTMLAttributes {
+export type LinkProps = {
variant?: "subtle" | "button" | "unstyled";
-}
+} & NextLinkProps &
+ AnchorHTMLAttributes;
const variantClasses = {
normal: "text-sky-600 no-underline hover:underline",
@@ -15,18 +16,17 @@ const variantClasses = {
export default function Link({
href,
- variant,
+ variant = "unstyled",
className,
...props
}: React.PropsWithChildren) {
const baseClasses = variantClasses[variant] ?? variantClasses.normal;
return (
-
-
-
+
);
}
diff --git a/components/theme-toggle/theme-toggle.tsx b/components/theme-toggle/theme-toggle.tsx
index 7fdd53f..e267817 100644
--- a/components/theme-toggle/theme-toggle.tsx
+++ b/components/theme-toggle/theme-toggle.tsx
@@ -8,7 +8,7 @@ export default function ThemeToggle() {
// This is required to prevent the animation from playing on
// initial mount as well as update the aria-label.
const changedRef = useRef(false);
- const [colorScheme, setColorScheme] = useState(null);
+ const [colorScheme, setColorScheme] = useState<"dark" | "light" | null>(null);
const handleChange = useCallback(
(ev) => {
const colorScheme = resolveColorScheme(ev.target.checked);
@@ -56,7 +56,7 @@ export default function ThemeToggle() {
// It's set to auto for the first time since the user didn't
// actually change it and we set the theme automatically based
// on preference.
- aria-label={hasThemeChanged ? colorScheme : "auto"}
+ aria-label={(hasThemeChanged && colorScheme) || "auto"}
aria-live="polite"
id="theme-toggle"
className={`sr-only peer`}
diff --git a/constants.js b/constants.js
deleted file mode 100644
index 8eec179..0000000
--- a/constants.js
+++ /dev/null
@@ -1,9 +0,0 @@
-const constants = {
- GITHUB_API_BASE_URL: 'https://api.github.com',
- GIST: {
- HOME: '59ff2b40f69fc7f4ea2fdd6b1a044648',
- CHANGELOG: '2ff7302367044178af3eeaee4384a4ba'
- }
-}
-
-export default constants;
\ No newline at end of file
diff --git a/constants.ts b/constants.ts
new file mode 100644
index 0000000..1b74056
--- /dev/null
+++ b/constants.ts
@@ -0,0 +1,9 @@
+const constants = {
+ GITHUB_API_BASE_URL: "https://api.github.com",
+ GIST: {
+ HOME: "59ff2b40f69fc7f4ea2fdd6b1a044648",
+ CHANGELOG: "2ff7302367044178af3eeaee4384a4ba",
+ },
+};
+
+export default constants;
diff --git a/next-env.d.ts b/next-env.d.ts
index 4f11a03..fd36f94 100644
--- a/next-env.d.ts
+++ b/next-env.d.ts
@@ -1,5 +1,6 @@
///
///
+///
// NOTE: This file should not be edited
// see https://nextjs.org/docs/basic-features/typescript for more information.
diff --git a/package-lock.json b/package-lock.json
index 0ea3bc4..de18568 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,7 +12,7 @@
"@codemirror/view": "^6.0.2",
"@lezer/highlight": "^1.0.0",
"dayjs": "^1.10.7",
- "next": "^12.1.6",
+ "next": "^13.4.19",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-markdown": "^7.1.2",
@@ -518,9 +518,9 @@
}
},
"node_modules/@next/env": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-12.1.6.tgz",
- "integrity": "sha512-Te/OBDXFSodPU6jlXYPAXpmZr/AkG6DCATAxttQxqOWaq6eDFX25Db3dK0120GZrSZmv4QCe9KsZmJKDbWs4OA=="
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz",
+ "integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ=="
},
"node_modules/@next/eslint-plugin-next": {
"version": "12.0.7",
@@ -531,40 +531,10 @@
"glob": "7.1.7"
}
},
- "node_modules/@next/swc-android-arm-eabi": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.6.tgz",
- "integrity": "sha512-BxBr3QAAAXWgk/K7EedvzxJr2dE014mghBSA9iOEAv0bMgF+MRq4PoASjuHi15M2zfowpcRG8XQhMFtxftCleQ==",
- "cpu": [
- "arm"
- ],
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/@next/swc-android-arm64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.6.tgz",
- "integrity": "sha512-EboEk3ROYY7U6WA2RrMt/cXXMokUTXXfnxe2+CU+DOahvbrO8QSWhlBl9I9ZbFzJx28AGB9Yo3oQHCvph/4Lew==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
"node_modules/@next/swc-darwin-arm64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.6.tgz",
- "integrity": "sha512-P0EXU12BMSdNj1F7vdkP/VrYDuCNwBExtRPDYawgSUakzi6qP0iKJpya2BuLvNzXx+XPU49GFuDC5X+SvY0mOw==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz",
+ "integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==",
"cpu": [
"arm64"
],
@@ -577,9 +547,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.6.tgz",
- "integrity": "sha512-9FptMnbgHJK3dRDzfTpexs9S2hGpzOQxSQbe8omz6Pcl7rnEp9x4uSEKY51ho85JCjL4d0tDLBcXEJZKKLzxNg==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz",
+ "integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==",
"cpu": [
"x64"
],
@@ -591,25 +561,10 @@
"node": ">= 10"
}
},
- "node_modules/@next/swc-linux-arm-gnueabihf": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.6.tgz",
- "integrity": "sha512-PvfEa1RR55dsik/IDkCKSFkk6ODNGJqPY3ysVUZqmnWMDSuqFtf7BPWHFa/53znpvVB5XaJ5Z1/6aR5CTIqxPw==",
- "cpu": [
- "arm"
- ],
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">= 10"
- }
- },
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.6.tgz",
- "integrity": "sha512-53QOvX1jBbC2ctnmWHyRhMajGq7QZfl974WYlwclXarVV418X7ed7o/EzGY+YVAEKzIVaAB9JFFWGXn8WWo0gQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz",
+ "integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==",
"cpu": [
"arm64"
],
@@ -622,9 +577,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.6.tgz",
- "integrity": "sha512-CMWAkYqfGdQCS+uuMA1A2UhOfcUYeoqnTW7msLr2RyYAys15pD960hlDfq7QAi8BCAKk0sQ2rjsl0iqMyziohQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz",
+ "integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==",
"cpu": [
"arm64"
],
@@ -637,9 +592,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.6.tgz",
- "integrity": "sha512-AC7jE4Fxpn0s3ujngClIDTiEM/CQiB2N2vkcyWWn6734AmGT03Duq6RYtPMymFobDdAtZGFZd5nR95WjPzbZAQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz",
+ "integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==",
"cpu": [
"x64"
],
@@ -652,9 +607,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.6.tgz",
- "integrity": "sha512-c9Vjmi0EVk0Kou2qbrynskVarnFwfYIi+wKufR9Ad7/IKKuP6aEhOdZiIIdKsYWRtK2IWRF3h3YmdnEa2WLUag==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz",
+ "integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==",
"cpu": [
"x64"
],
@@ -667,9 +622,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.6.tgz",
- "integrity": "sha512-3UTOL/5XZSKFelM7qN0it35o3Cegm6LsyuERR3/OoqEExyj3aCk7F025b54/707HTMAnjlvQK3DzLhPu/xxO4g==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz",
+ "integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==",
"cpu": [
"arm64"
],
@@ -682,9 +637,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.6.tgz",
- "integrity": "sha512-8ZWoj6nCq6fI1yCzKq6oK0jE6Mxlz4MrEsRyu0TwDztWQWe7rh4XXGLAa2YVPatYcHhMcUL+fQQbqd1MsgaSDA==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz",
+ "integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==",
"cpu": [
"ia32"
],
@@ -697,9 +652,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.6.tgz",
- "integrity": "sha512-4ZEwiRuZEicXhXqmhw3+de8Z4EpOLQj/gp+D9fFWo6ii6W1kBkNNvvEx4A90ugppu+74pT1lIJnOuz3A9oQeJA==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz",
+ "integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==",
"cpu": [
"x64"
],
@@ -752,6 +707,19 @@
"integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A==",
"dev": true
},
+ "node_modules/@swc/helpers": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
+ "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@swc/helpers/node_modules/tslib": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
+ },
"node_modules/@tailwindcss/typography": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.2.tgz",
@@ -1331,6 +1299,17 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
+ "node_modules/busboy": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
+ "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
+ "dependencies": {
+ "streamsearch": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=10.16.0"
+ }
+ },
"node_modules/call-bind": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
@@ -1363,9 +1342,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001359",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz",
- "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw==",
+ "version": "1.0.30001525",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz",
+ "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q==",
"funding": [
{
"type": "opencollective",
@@ -1374,6 +1353,10 @@
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
}
]
},
@@ -1438,6 +1421,11 @@
"fsevents": "~2.3.2"
}
},
+ "node_modules/client-only": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
+ "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
+ },
"node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -2518,6 +2506,11 @@
"node": ">= 6"
}
},
+ "node_modules/glob-to-regexp": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
+ },
"node_modules/globby": {
"version": "11.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
@@ -2547,6 +2540,11 @@
"node": ">= 4"
}
},
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ },
"node_modules/has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
@@ -3950,47 +3948,44 @@
"dev": true
},
"node_modules/next": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/next/-/next-12.1.6.tgz",
- "integrity": "sha512-cebwKxL3/DhNKfg9tPZDQmbRKjueqykHHbgaoG4VBRH3AHQJ2HO0dbKFiS1hPhe1/qgc2d/hFeadsbPicmLD+A==",
- "dependencies": {
- "@next/env": "12.1.6",
- "caniuse-lite": "^1.0.30001332",
- "postcss": "8.4.5",
- "styled-jsx": "5.0.2"
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz",
+ "integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==",
+ "dependencies": {
+ "@next/env": "13.4.19",
+ "@swc/helpers": "0.5.1",
+ "busboy": "1.6.0",
+ "caniuse-lite": "^1.0.30001406",
+ "postcss": "8.4.14",
+ "styled-jsx": "5.1.1",
+ "watchpack": "2.4.0",
+ "zod": "3.21.4"
},
"bin": {
"next": "dist/bin/next"
},
"engines": {
- "node": ">=12.22.0"
+ "node": ">=16.8.0"
},
"optionalDependencies": {
- "@next/swc-android-arm-eabi": "12.1.6",
- "@next/swc-android-arm64": "12.1.6",
- "@next/swc-darwin-arm64": "12.1.6",
- "@next/swc-darwin-x64": "12.1.6",
- "@next/swc-linux-arm-gnueabihf": "12.1.6",
- "@next/swc-linux-arm64-gnu": "12.1.6",
- "@next/swc-linux-arm64-musl": "12.1.6",
- "@next/swc-linux-x64-gnu": "12.1.6",
- "@next/swc-linux-x64-musl": "12.1.6",
- "@next/swc-win32-arm64-msvc": "12.1.6",
- "@next/swc-win32-ia32-msvc": "12.1.6",
- "@next/swc-win32-x64-msvc": "12.1.6"
+ "@next/swc-darwin-arm64": "13.4.19",
+ "@next/swc-darwin-x64": "13.4.19",
+ "@next/swc-linux-arm64-gnu": "13.4.19",
+ "@next/swc-linux-arm64-musl": "13.4.19",
+ "@next/swc-linux-x64-gnu": "13.4.19",
+ "@next/swc-linux-x64-musl": "13.4.19",
+ "@next/swc-win32-arm64-msvc": "13.4.19",
+ "@next/swc-win32-ia32-msvc": "13.4.19",
+ "@next/swc-win32-x64-msvc": "13.4.19"
},
"peerDependencies": {
- "fibers": ">= 3.1.0",
- "node-sass": "^6.0.0 || ^7.0.0",
- "react": "^17.0.2 || ^18.0.0-0",
- "react-dom": "^17.0.2 || ^18.0.0-0",
+ "@opentelemetry/api": "^1.1.0",
+ "react": "^18.2.0",
+ "react-dom": "^18.2.0",
"sass": "^1.3.0"
},
"peerDependenciesMeta": {
- "fibers": {
- "optional": true
- },
- "node-sass": {
+ "@opentelemetry/api": {
"optional": true
},
"sass": {
@@ -3998,23 +3993,6 @@
}
}
},
- "node_modules/next/node_modules/postcss": {
- "version": "8.4.5",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz",
- "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==",
- "dependencies": {
- "nanoid": "^3.1.30",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.1"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- }
- },
"node_modules/node-releases": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.2.tgz",
@@ -4254,7 +4232,6 @@
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
"funding": [
{
"type": "opencollective",
@@ -4779,6 +4756,14 @@
"url": "https://github.com/sponsors/wooorm"
}
},
+ "node_modules/streamsearch": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
+ "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
+ "engines": {
+ "node": ">=10.0.0"
+ }
+ },
"node_modules/string.prototype.matchall": {
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz",
@@ -4871,9 +4856,12 @@
}
},
"node_modules/styled-jsx": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz",
- "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==",
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
+ "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
+ "dependencies": {
+ "client-only": "0.0.1"
+ },
"engines": {
"node": ">= 12.0.0"
},
@@ -5240,6 +5228,18 @@
"resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.4.tgz",
"integrity": "sha512-tOhfEwEzFLJzf6d1ZPkYfGj+FWhIpBux9ppoP3rlclw3Z0BZv3N7b7030Z1kYth+6rDuAsXUFr+d0VE6Ed1ikw=="
},
+ "node_modules/watchpack": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
+ "dependencies": {
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -5310,6 +5310,14 @@
"node": ">= 6"
}
},
+ "node_modules/zod": {
+ "version": "3.21.4",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
+ "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==",
+ "funding": {
+ "url": "https://github.com/sponsors/colinhacks"
+ }
+ },
"node_modules/zwitch": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.2.tgz",
@@ -5766,9 +5774,9 @@
}
},
"@next/env": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-12.1.6.tgz",
- "integrity": "sha512-Te/OBDXFSodPU6jlXYPAXpmZr/AkG6DCATAxttQxqOWaq6eDFX25Db3dK0120GZrSZmv4QCe9KsZmJKDbWs4OA=="
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-13.4.19.tgz",
+ "integrity": "sha512-FsAT5x0jF2kkhNkKkukhsyYOrRqtSxrEhfliniIq0bwWbuXLgyt3Gv0Ml+b91XwjwArmuP7NxCiGd++GGKdNMQ=="
},
"@next/eslint-plugin-next": {
"version": "12.0.7",
@@ -5779,76 +5787,58 @@
"glob": "7.1.7"
}
},
- "@next/swc-android-arm-eabi": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.1.6.tgz",
- "integrity": "sha512-BxBr3QAAAXWgk/K7EedvzxJr2dE014mghBSA9iOEAv0bMgF+MRq4PoASjuHi15M2zfowpcRG8XQhMFtxftCleQ==",
- "optional": true
- },
- "@next/swc-android-arm64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-12.1.6.tgz",
- "integrity": "sha512-EboEk3ROYY7U6WA2RrMt/cXXMokUTXXfnxe2+CU+DOahvbrO8QSWhlBl9I9ZbFzJx28AGB9Yo3oQHCvph/4Lew==",
- "optional": true
- },
"@next/swc-darwin-arm64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.1.6.tgz",
- "integrity": "sha512-P0EXU12BMSdNj1F7vdkP/VrYDuCNwBExtRPDYawgSUakzi6qP0iKJpya2BuLvNzXx+XPU49GFuDC5X+SvY0mOw==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.4.19.tgz",
+ "integrity": "sha512-vv1qrjXeGbuF2mOkhkdxMDtv9np7W4mcBtaDnHU+yJG+bBwa6rYsYSCI/9Xm5+TuF5SbZbrWO6G1NfTh1TMjvQ==",
"optional": true
},
"@next/swc-darwin-x64": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-12.1.6.tgz",
- "integrity": "sha512-9FptMnbgHJK3dRDzfTpexs9S2hGpzOQxSQbe8omz6Pcl7rnEp9x4uSEKY51ho85JCjL4d0tDLBcXEJZKKLzxNg==",
- "optional": true
- },
- "@next/swc-linux-arm-gnueabihf": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.1.6.tgz",
- "integrity": "sha512-PvfEa1RR55dsik/IDkCKSFkk6ODNGJqPY3ysVUZqmnWMDSuqFtf7BPWHFa/53znpvVB5XaJ5Z1/6aR5CTIqxPw==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.4.19.tgz",
+ "integrity": "sha512-jyzO6wwYhx6F+7gD8ddZfuqO4TtpJdw3wyOduR4fxTUCm3aLw7YmHGYNjS0xRSYGAkLpBkH1E0RcelyId6lNsw==",
"optional": true
},
"@next/swc-linux-arm64-gnu": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.1.6.tgz",
- "integrity": "sha512-53QOvX1jBbC2ctnmWHyRhMajGq7QZfl974WYlwclXarVV418X7ed7o/EzGY+YVAEKzIVaAB9JFFWGXn8WWo0gQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.4.19.tgz",
+ "integrity": "sha512-vdlnIlaAEh6H+G6HrKZB9c2zJKnpPVKnA6LBwjwT2BTjxI7e0Hx30+FoWCgi50e+YO49p6oPOtesP9mXDRiiUg==",
"optional": true
},
"@next/swc-linux-arm64-musl": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.1.6.tgz",
- "integrity": "sha512-CMWAkYqfGdQCS+uuMA1A2UhOfcUYeoqnTW7msLr2RyYAys15pD960hlDfq7QAi8BCAKk0sQ2rjsl0iqMyziohQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.4.19.tgz",
+ "integrity": "sha512-aU0HkH2XPgxqrbNRBFb3si9Ahu/CpaR5RPmN2s9GiM9qJCiBBlZtRTiEca+DC+xRPyCThTtWYgxjWHgU7ZkyvA==",
"optional": true
},
"@next/swc-linux-x64-gnu": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.1.6.tgz",
- "integrity": "sha512-AC7jE4Fxpn0s3ujngClIDTiEM/CQiB2N2vkcyWWn6734AmGT03Duq6RYtPMymFobDdAtZGFZd5nR95WjPzbZAQ==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.4.19.tgz",
+ "integrity": "sha512-htwOEagMa/CXNykFFeAHHvMJeqZfNQEoQvHfsA4wgg5QqGNqD5soeCer4oGlCol6NGUxknrQO6VEustcv+Md+g==",
"optional": true
},
"@next/swc-linux-x64-musl": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.1.6.tgz",
- "integrity": "sha512-c9Vjmi0EVk0Kou2qbrynskVarnFwfYIi+wKufR9Ad7/IKKuP6aEhOdZiIIdKsYWRtK2IWRF3h3YmdnEa2WLUag==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.4.19.tgz",
+ "integrity": "sha512-4Gj4vvtbK1JH8ApWTT214b3GwUh9EKKQjY41hH/t+u55Knxi/0wesMzwQRhppK6Ddalhu0TEttbiJ+wRcoEj5Q==",
"optional": true
},
"@next/swc-win32-arm64-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.1.6.tgz",
- "integrity": "sha512-3UTOL/5XZSKFelM7qN0it35o3Cegm6LsyuERR3/OoqEExyj3aCk7F025b54/707HTMAnjlvQK3DzLhPu/xxO4g==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.4.19.tgz",
+ "integrity": "sha512-bUfDevQK4NsIAHXs3/JNgnvEY+LRyneDN788W2NYiRIIzmILjba7LaQTfihuFawZDhRtkYCv3JDC3B4TwnmRJw==",
"optional": true
},
"@next/swc-win32-ia32-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.1.6.tgz",
- "integrity": "sha512-8ZWoj6nCq6fI1yCzKq6oK0jE6Mxlz4MrEsRyu0TwDztWQWe7rh4XXGLAa2YVPatYcHhMcUL+fQQbqd1MsgaSDA==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.4.19.tgz",
+ "integrity": "sha512-Y5kikILFAr81LYIFaw6j/NrOtmiM4Sf3GtOc0pn50ez2GCkr+oejYuKGcwAwq3jiTKuzF6OF4iT2INPoxRycEA==",
"optional": true
},
"@next/swc-win32-x64-msvc": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.1.6.tgz",
- "integrity": "sha512-4ZEwiRuZEicXhXqmhw3+de8Z4EpOLQj/gp+D9fFWo6ii6W1kBkNNvvEx4A90ugppu+74pT1lIJnOuz3A9oQeJA==",
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.4.19.tgz",
+ "integrity": "sha512-YzA78jBDXMYiINdPdJJwGgPNT3YqBNNGhsthsDoWHL9p24tEJn9ViQf/ZqTbwSpX/RrkPupLfuuTH2sf73JBAw==",
"optional": true
},
"@nodelib/fs.scandir": {
@@ -5883,6 +5873,21 @@
"integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A==",
"dev": true
},
+ "@swc/helpers": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz",
+ "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==",
+ "requires": {
+ "tslib": "^2.4.0"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
+ }
+ }
+ },
"@tailwindcss/typography": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.2.tgz",
@@ -6287,6 +6292,14 @@
"picocolors": "^1.0.0"
}
},
+ "busboy": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
+ "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
+ "requires": {
+ "streamsearch": "^1.1.0"
+ }
+ },
"call-bind": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
@@ -6310,9 +6323,9 @@
"dev": true
},
"caniuse-lite": {
- "version": "1.0.30001359",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001359.tgz",
- "integrity": "sha512-Xln/BAsPzEuiVLgJ2/45IaqD9jShtk3Y33anKb4+yLwQzws3+v6odKfpgES/cDEaZMLzSChpIGdbOYtH9MyuHw=="
+ "version": "1.0.30001525",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001525.tgz",
+ "integrity": "sha512-/3z+wB4icFt3r0USMwxujAqRvaD/B7rvGTsKhbhSQErVrJvkZCLhgNLJxU8MevahQVH6hCU9FsHdNUFbiwmE7Q=="
},
"ccount": {
"version": "2.0.1",
@@ -6350,6 +6363,11 @@
"readdirp": "~3.6.0"
}
},
+ "client-only": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
+ "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
+ },
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
@@ -7176,6 +7194,11 @@
"is-glob": "^4.0.1"
}
},
+ "glob-to-regexp": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw=="
+ },
"globby": {
"version": "11.1.0",
"resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
@@ -7198,6 +7221,11 @@
}
}
},
+ "graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ=="
+ },
"has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
@@ -8110,38 +8138,27 @@
"dev": true
},
"next": {
- "version": "12.1.6",
- "resolved": "https://registry.npmjs.org/next/-/next-12.1.6.tgz",
- "integrity": "sha512-cebwKxL3/DhNKfg9tPZDQmbRKjueqykHHbgaoG4VBRH3AHQJ2HO0dbKFiS1hPhe1/qgc2d/hFeadsbPicmLD+A==",
- "requires": {
- "@next/env": "12.1.6",
- "@next/swc-android-arm-eabi": "12.1.6",
- "@next/swc-android-arm64": "12.1.6",
- "@next/swc-darwin-arm64": "12.1.6",
- "@next/swc-darwin-x64": "12.1.6",
- "@next/swc-linux-arm-gnueabihf": "12.1.6",
- "@next/swc-linux-arm64-gnu": "12.1.6",
- "@next/swc-linux-arm64-musl": "12.1.6",
- "@next/swc-linux-x64-gnu": "12.1.6",
- "@next/swc-linux-x64-musl": "12.1.6",
- "@next/swc-win32-arm64-msvc": "12.1.6",
- "@next/swc-win32-ia32-msvc": "12.1.6",
- "@next/swc-win32-x64-msvc": "12.1.6",
- "caniuse-lite": "^1.0.30001332",
- "postcss": "8.4.5",
- "styled-jsx": "5.0.2"
- },
- "dependencies": {
- "postcss": {
- "version": "8.4.5",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.5.tgz",
- "integrity": "sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==",
- "requires": {
- "nanoid": "^3.1.30",
- "picocolors": "^1.0.0",
- "source-map-js": "^1.0.1"
- }
- }
+ "version": "13.4.19",
+ "resolved": "https://registry.npmjs.org/next/-/next-13.4.19.tgz",
+ "integrity": "sha512-HuPSzzAbJ1T4BD8e0bs6B9C1kWQ6gv8ykZoRWs5AQoiIuqbGHHdQO7Ljuvg05Q0Z24E2ABozHe6FxDvI6HfyAw==",
+ "requires": {
+ "@next/env": "13.4.19",
+ "@next/swc-darwin-arm64": "13.4.19",
+ "@next/swc-darwin-x64": "13.4.19",
+ "@next/swc-linux-arm64-gnu": "13.4.19",
+ "@next/swc-linux-arm64-musl": "13.4.19",
+ "@next/swc-linux-x64-gnu": "13.4.19",
+ "@next/swc-linux-x64-musl": "13.4.19",
+ "@next/swc-win32-arm64-msvc": "13.4.19",
+ "@next/swc-win32-ia32-msvc": "13.4.19",
+ "@next/swc-win32-x64-msvc": "13.4.19",
+ "@swc/helpers": "0.5.1",
+ "busboy": "1.6.0",
+ "caniuse-lite": "^1.0.30001406",
+ "postcss": "8.4.14",
+ "styled-jsx": "5.1.1",
+ "watchpack": "2.4.0",
+ "zod": "3.21.4"
}
},
"node-releases": {
@@ -8317,7 +8334,6 @@
"version": "8.4.14",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz",
"integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==",
- "dev": true,
"requires": {
"nanoid": "^3.3.4",
"picocolors": "^1.0.0",
@@ -8651,6 +8667,11 @@
"resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.1.tgz",
"integrity": "sha512-ekwEbFp5aqSPKaqeY1PGrlGQxPNaq+Cnx4+bE2D8sciBQrHpbwoBbawqTN2+6jPs9IdWxxiUcN0K2pkczD3zmw=="
},
+ "streamsearch": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
+ "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg=="
+ },
"string.prototype.matchall": {
"version": "4.0.6",
"resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz",
@@ -8722,10 +8743,12 @@
}
},
"styled-jsx": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.0.2.tgz",
- "integrity": "sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==",
- "requires": {}
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz",
+ "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==",
+ "requires": {
+ "client-only": "0.0.1"
+ }
},
"supports-color": {
"version": "7.2.0",
@@ -8984,6 +9007,15 @@
"resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.4.tgz",
"integrity": "sha512-tOhfEwEzFLJzf6d1ZPkYfGj+FWhIpBux9ppoP3rlclw3Z0BZv3N7b7030Z1kYth+6rDuAsXUFr+d0VE6Ed1ikw=="
},
+ "watchpack": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz",
+ "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==",
+ "requires": {
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
+ }
+ },
"which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -9036,6 +9068,11 @@
"integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
"dev": true
},
+ "zod": {
+ "version": "3.21.4",
+ "resolved": "https://registry.npmjs.org/zod/-/zod-3.21.4.tgz",
+ "integrity": "sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw=="
+ },
"zwitch": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.2.tgz",
diff --git a/package.json b/package.json
index a53b5c2..77e1acd 100644
--- a/package.json
+++ b/package.json
@@ -14,7 +14,7 @@
"@codemirror/view": "^6.0.2",
"@lezer/highlight": "^1.0.0",
"dayjs": "^1.10.7",
- "next": "^12.1.6",
+ "next": "^13.4.19",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-markdown": "^7.1.2",
diff --git a/tailwind.config.js b/tailwind.config.js
index a5f438c..819a97b 100644
--- a/tailwind.config.js
+++ b/tailwind.config.js
@@ -1,6 +1,7 @@
module.exports = {
darkMode: "class",
content: [
+ "./app/**/*.{js,ts,jsx,tsx,mdx}",
"./pages/**/*.{js,ts,jsx,tsx}",
"./components/**/*.{js,ts,jsx,tsx}",
],
diff --git a/tsconfig.json b/tsconfig.json
index 6db37c0..e5fc6ce 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,11 +1,7 @@
{
"compilerOptions": {
"target": "es5",
- "lib": [
- "dom",
- "dom.iterable",
- "esnext"
- ],
+ "lib": ["dom", "dom.iterable", "esnext"],
"allowJs": true,
"skipLibCheck": true,
"strict": false,
@@ -17,14 +13,20 @@
"moduleResolution": "node",
"resolveJsonModule": true,
"isolatedModules": true,
- "jsx": "preserve"
+ "jsx": "preserve",
+ "plugins": [
+ {
+ "name": "next"
+ }
+ ],
+ "strictNullChecks": true
},
"include": [
"next-env.d.ts",
+ "**/*.js",
"**/*.ts",
- "**/*.tsx"
+ "**/*.tsx",
+ ".next/types/**/*.ts"
],
- "exclude": [
- "node_modules"
- ]
+ "exclude": ["node_modules"]
}
From 6f0cbf665e3f50e2981770ce2bf4fd41a8b91a95 Mon Sep 17 00:00:00 2001
From: Justin H <1746134+soupaJ@users.noreply.github.com>
Date: Mon, 4 Sep 2023 17:13:46 -0700
Subject: [PATCH 2/4] fixes typescript errors
---
components/gist-document/gist-document.tsx | 2 +-
components/link/link.tsx | 9 ++++++---
components/markdown/CodeBlock.tsx | 11 +++++++----
components/syntax-highlighter/syntax-highlighter.tsx | 11 ++++++++---
4 files changed, 22 insertions(+), 11 deletions(-)
diff --git a/components/gist-document/gist-document.tsx b/components/gist-document/gist-document.tsx
index 425df43..3971100 100644
--- a/components/gist-document/gist-document.tsx
+++ b/components/gist-document/gist-document.tsx
@@ -22,7 +22,7 @@ export default function GistDocument({
const filenames = Object.keys(files);
const markdownFile = findMarkdownFile(filenames);
- if (!markdownFile) return ;
+ if (!markdownFile || !gistData) return ;
const { content } = files[markdownFile];
diff --git a/components/link/link.tsx b/components/link/link.tsx
index 5621d02..08129bd 100644
--- a/components/link/link.tsx
+++ b/components/link/link.tsx
@@ -1,9 +1,11 @@
+import type { Url } from "next/dist/shared/lib/router/router";
import NextLink, { LinkProps as NextLinkProps } from "next/link";
import { AnchorHTMLAttributes } from "react";
export type LinkProps = {
variant?: "subtle" | "button" | "unstyled";
-} & NextLinkProps &
+ href?: Url;
+} & Omit &
AnchorHTMLAttributes;
const variantClasses = {
@@ -21,10 +23,11 @@ export default function Link({
...props
}: React.PropsWithChildren) {
const baseClasses = variantClasses[variant] ?? variantClasses.normal;
+ const LinkComponent = href ? NextLink : "a";
return (
-
diff --git a/components/markdown/CodeBlock.tsx b/components/markdown/CodeBlock.tsx
index 548f811..391877a 100644
--- a/components/markdown/CodeBlock.tsx
+++ b/components/markdown/CodeBlock.tsx
@@ -30,14 +30,17 @@ export default function CodeBlock({
);
}
- const language = className.replace("language-", "");
+ const language = className?.replace("language-", "");
const codeToParse = String(children?.[0] || "");
+ const child = language ? (
+
+ ) : (
+ codeToParse
+ );
return (
-
-
-
+ {child}
);
}
diff --git a/components/syntax-highlighter/syntax-highlighter.tsx b/components/syntax-highlighter/syntax-highlighter.tsx
index aa9325d..b425870 100644
--- a/components/syntax-highlighter/syntax-highlighter.tsx
+++ b/components/syntax-highlighter/syntax-highlighter.tsx
@@ -28,13 +28,15 @@ export default function SyntaxHighlighter({
const languageConfig = languages.find((langConfig) =>
langConfig.alias.includes(language)
);
- const block = useRef();
+ const block = useRef(null);
useEffect(() => {
let mounted = true;
(async function () {
- const languageSupport = await languageConfig.load();
+ const languageSupport = languageConfig
+ ? await languageConfig.load()
+ : null;
if (block.current && mounted) {
const extensions = [
@@ -58,10 +60,13 @@ export default function SyntaxHighlighter({
syntaxHighlighting(defaultHighlightStyle),
syntaxHighlighting(highlightStyle),
highlightSpecialChars(),
- languageSupport,
EditorState.tabSize.of(2),
];
+ if (languageSupport) {
+ extensions.push(languageSupport);
+ }
+
let view = new EditorView({
doc: code.trimEnd(),
extensions,
From 515a5dc24effd65d0665106579fa451086185eb9 Mon Sep 17 00:00:00 2001
From: Justin H <1746134+soupaJ@users.noreply.github.com>
Date: Mon, 4 Sep 2023 17:33:50 -0700
Subject: [PATCH 3/4] fixes some lint warnings
---
.eslintrc.json | 5 ++++-
components/footer.tsx | 2 +-
components/link/link-with-avatar.tsx | 5 ++++-
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/.eslintrc.json b/.eslintrc.json
index bffb357..f0f3abe 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -1,3 +1,6 @@
{
- "extends": "next/core-web-vitals"
+ "extends": "next/core-web-vitals",
+ "rules": {
+ "@next/next/no-img-element": "off"
+ }
}
diff --git a/components/footer.tsx b/components/footer.tsx
index ed41320..88d23dc 100644
--- a/components/footer.tsx
+++ b/components/footer.tsx
@@ -4,7 +4,7 @@ import Logo from "./logo";
export default function Footer() {
return (
-
+
diff --git a/components/link/link-with-avatar.tsx b/components/link/link-with-avatar.tsx
index f858381..c3605ea 100644
--- a/components/link/link-with-avatar.tsx
+++ b/components/link/link-with-avatar.tsx
@@ -1,3 +1,4 @@
+import Image from "next/image";
import Link, { LinkProps } from "./link";
interface LinkWithAvatarProps extends LinkProps {
@@ -23,7 +24,9 @@ export default function LinkWithAvatar({
{children}
From 6a3e9e395e71d6583250b632ce7efc6a963ba806 Mon Sep 17 00:00:00 2001
From: Justin H <1746134+soupaJ@users.noreply.github.com>
Date: Mon, 4 Sep 2023 17:37:44 -0700
Subject: [PATCH 4/4] updates node versions
---
.github/workflows/build.yml | 25 ++++++++++++-------------
1 file changed, 12 insertions(+), 13 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index f3e28b5..8d2a129 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -5,26 +5,25 @@ name: Node.js CI
on:
push:
- branches: [ main ]
+ branches: [main]
pull_request:
- branches: [ main ]
+ branches: [main]
jobs:
build:
-
runs-on: ubuntu-latest
strategy:
matrix:
- node-version: [14.x, 16.x]
+ node-version: [16.x, 18.x]
steps:
- - uses: actions/checkout@v2
- - name: Use Node.js ${{ matrix.node-version }}
- uses: actions/setup-node@v2
- with:
- node-version: ${{ matrix.node-version }}
- cache: 'npm'
- - run: npm i
- - run: npm run lint
- - run: npm run build
+ - uses: actions/checkout@v2
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v2
+ with:
+ node-version: ${{ matrix.node-version }}
+ cache: "npm"
+ - run: npm i
+ - run: npm run lint
+ - run: npm run build