diff --git a/pages/csr.js b/app/csr/page.js
similarity index 76%
rename from pages/csr.js
rename to app/csr/page.js
index 0636753..d1bbc42 100644
--- a/pages/csr.js
+++ b/app/csr/page.js
@@ -1,14 +1,16 @@
+'use client'
+
import { Suspense, useEffect, useState } from 'react'
// Client Components
-import Page from '../components/page.client'
-import Story from '../components/story.client'
+import Page from '../../components/page.client'
+import Story from '../../components/story.client'
// Utils
-import fetchData from '../lib/fetch-data'
-import { transform } from '../lib/get-item'
-import useData from '../lib/use-data'
-import Skeletons from '../components/skeletons'
+import fetchData from '../../lib/fetch-data'
+import { transform } from '../../lib/get-item'
+import useData from '../../lib/use-data'
+import Skeletons from '../../components/skeletons'
function StoryWithData({ id }) {
if (typeof window === 'undefined') return
diff --git a/app/item/page.js b/app/item/page.js
new file mode 100644
index 0000000..5920be5
--- /dev/null
+++ b/app/item/page.js
@@ -0,0 +1,5 @@
+import ItemPage from '../../components/item.server'
+
+export default function Item({ searchParams }) {
+ return
+}
\ No newline at end of file
diff --git a/app/layout.js b/app/layout.js
new file mode 100644
index 0000000..afac59a
--- /dev/null
+++ b/app/layout.js
@@ -0,0 +1,9 @@
+export default function RootLayout({ children }) {
+ return (
+
+
{children}
+
+ );
+ }
+
\ No newline at end of file
diff --git a/pages/index.js b/app/page.js
similarity index 100%
rename from pages/index.js
rename to app/page.js
diff --git a/pages/rsc.server.js b/app/rsc/page.js
similarity index 61%
rename from pages/rsc.server.js
rename to app/rsc/page.js
index 587c7ed..23c1b97 100644
--- a/pages/rsc.server.js
+++ b/app/rsc/page.js
@@ -1,21 +1,21 @@
import { Suspense } from 'react'
// Shared Components
-import Skeletons from '../components/skeletons'
+import Skeletons from '../../components/skeletons'
// Server Components
-import SystemInfo from '../components/server-info.server'
+import SystemInfo from '../../components/server-info.server'
// Client Components
-import Page from '../components/page.client'
-import Story from '../components/story.client'
-import Footer from '../components/footer.client'
-import ErrorPlaceholder from '../components/error-placeholder.client'
+import Page from '../../components/page.client'
+import Story from '../../components/story.client'
+import Footer from '../../components/footer.client'
+import ErrorPlaceholder from '../../components/error-placeholder.client'
// Utils
-import fetchData from '../lib/fetch-data'
-import { transform } from '../lib/get-item'
-import useData from '../lib/use-data'
+import fetchData from '../../lib/fetch-data'
+import { transform } from '../../lib/get-item'
+import useData from '../../lib/use-data'
function StoryWithData({ id }) {
const { data } = useData(`s-${id}`, () => fetchData(`item/${id}`).then(transform))
@@ -48,7 +48,3 @@ export default function News() {
)
}
-
-export const config = {
- runtime: 'experimental-edge',
-}
\ No newline at end of file
diff --git a/pages/slow.server.js b/app/slow/page.js
similarity index 64%
rename from pages/slow.server.js
rename to app/slow/page.js
index 18e5ec8..3f8d775 100644
--- a/pages/slow.server.js
+++ b/app/slow/page.js
@@ -1,18 +1,18 @@
import { Suspense } from 'react'
// Server Components
-import SystemInfo from '../components/server-info.server'
+import SystemInfo from '../../components/server-info.server'
// Client Components
-import Page from '../components/page.client'
-import Story from '../components/story.client'
-import Footer from '../components/footer.client'
+import Page from '../../components/page.client'
+import Story from '../../components/story.client'
+import Footer from '../../components/footer.client'
// Utils
-import fetchData from '../lib/fetch-data'
-import { transform } from '../lib/get-item'
-import useData from '../lib/use-data'
-import Skeletons from '../components/skeletons'
+import fetchData from '../../lib/fetch-data'
+import { transform } from '../../lib/get-item'
+import useData from '../../lib/use-data'
+import Skeletons from '../../components/skeletons'
function StoryWithData({ id }) {
const { data } = useData(`s-${id}`, () =>
@@ -47,7 +47,3 @@ export default function News() {
)
}
-
-export const config = {
- runtime: 'experimental-edge',
-}
diff --git a/app/ssr/page.js b/app/ssr/page.js
new file mode 100644
index 0000000..4bb3f19
--- /dev/null
+++ b/app/ssr/page.js
@@ -0,0 +1,33 @@
+import { experimental_use as use } from 'react'
+
+import Page from '../../components/page.client'
+import Story from '../../components/story.client'
+import Footer from '../../components/footer.client'
+
+// Utils
+import fetchData from '../../lib/fetch-data'
+import { transform } from '../../lib/get-item'
+
+async function getData() {
+ const storyIds = await fetchData('topstories', 2000)
+ const data = await Promise.all(
+ storyIds
+ .slice(0, 30)
+ .map((id) => fetchData(`item/${id}`).then(transform))
+ )
+
+ return data;
+}
+
+export default function News(props) {
+ const data = use(getData())
+
+ return (
+
-
- {/* TODO: time hydration mismatch */}
- {user} {timeAgo(new Date(date))} ago{' '}
-
- {this.state.toggled
- ? `[+${(this.props.commentsCount || 0) + 1}]`
- : '[-]'}
-
-
+export default function Comment({ user, text, date, comments, commentsCount }) {
+ const [toggled, setToggled] = useState(false)
- {this.state.toggled
- ? null
- : [
-
,
-
- {comments.map((comment) => (
-
- ))}
-
,
- ]}
+ const toggle = () => setToggled(!toggled)
-
+ return (
+
+
+ {/* TODO: time hydration mismatch */}
+ {user} {timeAgo(new Date(date))} ago{' '}
+
+ {toggled
+ ? `[+${(commentsCount || 0) + 1}]`
+ : "[-]"}
+
- )
- }
- toggle() {
- this.setState({ toggled: !this.state.toggled })
- }
+ {toggled
+ ? null
+ : [
+
,
+
+ {comments.map((comment) => (
+
+ ))}
+
,
+ ]}
+
+
+
+ );
}
diff --git a/components/story.client.js b/components/story.client.js
index b0cd14c..dfef5c8 100644
--- a/components/story.client.js
+++ b/components/story.client.js
@@ -1,3 +1,5 @@
+'use client'
+
import { useState } from 'react'
import timeAgo from '../lib/time-ago'
diff --git a/next.config.js b/next.config.js
index 86e1884..7f76ef0 100644
--- a/next.config.js
+++ b/next.config.js
@@ -1,6 +1,6 @@
module.exports = {
experimental: {
+ appDir: true,
runtime: 'experimental-edge',
- serverComponents: true,
},
}
diff --git a/package.json b/package.json
index 14bfd24..28234e4 100644
--- a/package.json
+++ b/package.json
@@ -6,8 +6,8 @@
},
"dependencies": {
"ms": "2.1.3",
- "next": "12.2.1",
- "react": "^18.1.0",
- "react-dom": "^18.1.0"
+ "next": "canary",
+ "react": "experimental",
+ "react-dom": "experimental"
}
}
diff --git a/pages/item.server.js b/pages/item.server.js
deleted file mode 100644
index a45e569..0000000
--- a/pages/item.server.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import ItemPage from '../components/item.server'
-
-export default function Item({ id }) {
- return
-}
-
-export async function getServerSideProps({ query }) {
- return {
- props: {
- id: query.id
- }
- }
-}
\ No newline at end of file
diff --git a/pages/ssr.js b/pages/ssr.js
deleted file mode 100644
index 3e5723b..0000000
--- a/pages/ssr.js
+++ /dev/null
@@ -1,33 +0,0 @@
-import Page from '../components/page.client'
-import Story from '../components/story.client'
-import Footer from '../components/footer.client'
-
-// Utils
-import fetchData from '../lib/fetch-data'
-import { transform } from '../lib/get-item'
-
-export async function getServerSideProps() {
- const storyIds = await fetchData('topstories', 2000)
- const data = await Promise.all(
- storyIds
- .slice(0, 30)
- .map((id) => fetchData(`item/${id}`).then(transform))
- )
-
- return {
- props: {
- data,
- },
- }
-}
-
-export default function News({ data }) {
- return (
-
- {data.map((item, i) => {
- return
- })}
-
-
- )
-}
diff --git a/yarn.lock b/yarn.lock
index 8e60cb3..b375b27 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -2,87 +2,87 @@
# yarn lockfile v1
-"@next/env@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/env/-/env-12.2.1.tgz#083cc88469931fc3dc32bb633623321c29971a09"
- integrity sha512-lz3TJKIvbdGRUsUr/+h3vy7XvBNGTGzHwhurk5AtqrABj4Zyo70xbshcI7YQTNUK4x9OA/E+SOcXvVx0DHmFRw==
-
-"@next/swc-android-arm-eabi@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.2.1.tgz#26a4363bd3857b934e7ad63aa1647d83b380ce1f"
- integrity sha512-Gk7fvo1McA9gues9hixoeoxKnvvUusW0P+fya4ZAU3us+bQm1EqSoDrnOrUsdsgwIPQ3HobOJPY5C3xvKOl/tA==
-
-"@next/swc-android-arm64@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.2.1.tgz#28c7e964208e80d4b3ff791f323fbe425eae26fe"
- integrity sha512-J+QwWRm2+bOtacZFahoplX3dCYGDpou86VjfcE+M5/E0UCtBmZ6JvItyV4scK8wSKHQQUWq8DmOEm/C0lhsSRQ==
-
-"@next/swc-darwin-arm64@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.2.1.tgz#ae68b105956c985214219d4f676b2e57c882d5ae"
- integrity sha512-teSfpKHdHQER4FVVCdvS0fHff35Gh4LB2DZ2eNAateIluP2Gnl+tT881MeM4Knvl2Mvm3Z3vtSJNthVoveJnMA==
-
-"@next/swc-darwin-x64@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.2.1.tgz#27da7988d01847b642b8d5c274f14bd82439fbb0"
- integrity sha512-flA1H+9krrINtdWoXBzeESkdIV34OKX0+Lnqd90J1nsERTXntYy6CNOMxMtv1otAcnFy7EHYJQIL8URuu/2XXg==
-
-"@next/swc-freebsd-x64@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.2.1.tgz#0b4cd5c1707218cac86a7a58e116c74998da6286"
- integrity sha512-SkAjp7B7aBxAsRVMZGiAp/qMkh65PLzYuLBTsBSu+4fxFuKF7MAEgaIUhvC8zzD58A+Y9yrY/3813bhtrwkcuA==
-
-"@next/swc-linux-arm-gnueabihf@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.2.1.tgz#3b93a18f1264a88985bc3a01e0067aa1afe0ab72"
- integrity sha512-V7ov2LXrLWuYVH/syzrzpmwWumg5rCh0siwOPNCRzVkrpgP8WoIRNdeZ/NQIj0ng+kq7gDF1jib583Lk0wbDeQ==
-
-"@next/swc-linux-arm64-gnu@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.2.1.tgz#9887a772f96680afa440ac3e6f716fd20d7f4178"
- integrity sha512-HlnDQD3r4YqCj2gu6uo86oEM0ixBsyKLaPcZcGwWAD5mFG5R4zzTZG7BO2wJkGWmkzijHluE14dlTmfzc8jdEQ==
-
-"@next/swc-linux-arm64-musl@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.2.1.tgz#7ed5981b7afd3d9c4678ff36e1dd7f06a5f0c3d6"
- integrity sha512-P8AkWd4RHbuF24ol3jk2akXpntcDI0gv5uD7eMpAOXb8W2A6y/sv0tKNSGUV3efSutOyu23jNn2EiTNxHgU4NQ==
-
-"@next/swc-linux-x64-gnu@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.2.1.tgz#0bb3e5162b189cb4d88761ff1781896781c7bd65"
- integrity sha512-ZbsM+rIMqK6xi3lovspzPJoIPre3LglKrCXKLkln7rD0uiymzfLhS2VCj8u4qRynz22iAzuI4mJNpZa3AsJFrA==
-
-"@next/swc-linux-x64-musl@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.2.1.tgz#64e983e38a5e86bc613bfc46e0b92a1787ba5392"
- integrity sha512-JeATguMe37bviPwkIUjO7T3kcefMBQwJFLhkFTaJYGmPm12EsW1FtKcg87AI87xdGvfrHQKlM3phNaG/dkneTQ==
-
-"@next/swc-win32-arm64-msvc@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.2.1.tgz#2394b05230f0011a01010524e25d8f4ec71e27e1"
- integrity sha512-8dal/MdrVshDKYBtloJw/RhJx140KUoRRYoRfpJ9oAdP8UXBdR0haKfg5EdOy98t8Q76apArxPsK7DfwoR1f3w==
-
-"@next/swc-win32-ia32-msvc@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.2.1.tgz#90acd18e63e7620992ee3f7d3dec80ccc7120f9e"
- integrity sha512-uSAoOBpCp4oxVD9gTY1f27hr9xNLEOCglxZPH1+FonHpM5n9Sp4H01uQHWE/Y26iHmJeUJAWxtRxEYylnO4U9A==
-
-"@next/swc-win32-x64-msvc@12.2.1":
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.2.1.tgz#f3b186c8f7278656c7690a64f362d0d5b1d738af"
- integrity sha512-gx4aLMAZAVjtShiCrUSszoxnzBWJWf09Lkey6mcc0jFZjbz4xkyDbp53V229DtOYTUL4t0IZJ0I7+ftQ5CYIjg==
-
-"@swc/helpers@0.4.2":
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.2.tgz#ed1f6997ffbc22396665d9ba74e2a5c0a2d782f8"
- integrity sha512-556Az0VX7WR6UdoTn4htt/l3zPQ7bsQWK+HqdG4swV7beUCxo/BqmvbOpUkTIm/9ih86LIf1qsUnywNL3obGHw==
+"@next/env@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/env/-/env-12.3.2-canary.29.tgz#2fc6b27eba3991422aefab4747b7fc90ca9aecb8"
+ integrity sha512-UQjy8QLGg0uhd2Gv+dpHNACkiUWDFSWRJ2PL4suPxceVeOWQpoco2bSnAi31h+E+nk7gtIn7ia8S/U5Hctg1QQ==
+
+"@next/swc-android-arm-eabi@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.3.2-canary.29.tgz#b4cbdce97b089fd52a847290f00cce99009e57ce"
+ integrity sha512-754Hkwt1fyBjJzmfkhWnmLYWrQZFluiTKAVaYis2XpDI+i8XyypgYVipLljUhAy/9fFECYBRETvUmLP2lKJuFw==
+
+"@next/swc-android-arm64@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.3.2-canary.29.tgz#b0adbf21dc5811022f220195f4bbcfefbd1c29eb"
+ integrity sha512-jv00a1xOC1+1syHw5t3ICAmQdhdpeWICKnKD9dyP0XOGx/ZB+JdkL1tsYVjNNcTBNbp3ao4V+TiauQAhPr6Ssg==
+
+"@next/swc-darwin-arm64@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.2-canary.29.tgz#f5d900e27945bb6314e0c07ab82928e3dff08653"
+ integrity sha512-UIC0tDxnuZVD/xZpLQjLq6/goBCjeH+1L9x3p+KN0Znlah2Xx9CgklJMyXT6h3JMyThSvZ7z6u830xZuht0K5Q==
+
+"@next/swc-darwin-x64@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.2-canary.29.tgz#eee42d69e2bc4acd9e7b3e01909781b474aa56c0"
+ integrity sha512-EBgP4MwQUAm5utUmMpdXuIyrvk6ZQ2Pmi1rTNMdSUsoaHmCYYRzSUaud3tTs7eqhPKO0K4ekBFr/jQSQgxmtHg==
+
+"@next/swc-freebsd-x64@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.3.2-canary.29.tgz#e227cb39061ad25aa5ac676e98e1480464ee53fb"
+ integrity sha512-rX7/EA3iFfEzZgu6H+0ZjZ04/FgMDxulTXmgC9OOe+Ob6uesiQHI26bkxmRt4dmEbjEa7iWui0uZwy5RKukcVg==
+
+"@next/swc-linux-arm-gnueabihf@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.3.2-canary.29.tgz#b48080b1c1c764ab9beceef8f51e962e529f813e"
+ integrity sha512-o6+GTJHN5EdfjYvE3DIsjIpQVBZWCN41njf5h2HiC47KfiJTIS3JkxG8cCCdulcXuFx9a/Km9x/uBA//qJu93A==
+
+"@next/swc-linux-arm64-gnu@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.2-canary.29.tgz#812caa1ed7369804bf11ad2388f55f7df2849b2f"
+ integrity sha512-n2j+qyGulEpY5acBFtL7Mm9IyYSotz7bWyCoKBmBPfC6uKt7kWfVMDtFlPwF01Dad7YLAZH3d6hgrJoGGZSPZQ==
+
+"@next/swc-linux-arm64-musl@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.2-canary.29.tgz#5e057afe356e33f0ac8b1e062d3e48cbeeaca041"
+ integrity sha512-OkpjI+zf7GCtZYRUbaffNd6c0JhrdCuUjzHriozAAvaL/00twQRLUIj5ICiGU8f2mReHXokn5hnWj9svfSvQPw==
+
+"@next/swc-linux-x64-gnu@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.2-canary.29.tgz#9a626b40af90847ecdcfd029bc933c8468a0701b"
+ integrity sha512-U5N9aes4NauFmlW5Jn2t4fn9XTVg0Kel0Q5ginCmRBfcaQnFRx780a1UA5nAEwYnSNOZKQXHH84g1mOTLwS6lQ==
+
+"@next/swc-linux-x64-musl@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.2-canary.29.tgz#cd4f9549376f7276d7e185d90ef2553ca7b5e31f"
+ integrity sha512-fiSs14DwdPxo/NIF55eo09vw46HjSE7yMx1CVdFhgr0usUVxuVsJ4NSsMFq2Xr2EA5Upnjdp0825fRDx1GH4xA==
+
+"@next/swc-win32-arm64-msvc@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.2-canary.29.tgz#c0b87831e9e2b4c939cdaa0a62a3c673f182acd8"
+ integrity sha512-QoQAGDdMPiZ1KP9qxIh94iKRfQzLsCgdLU+7yCvl4c9dSpVu1A+NxtgtSLSdopb9U4et4cAryruAeVGqq3M+ew==
+
+"@next/swc-win32-ia32-msvc@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.2-canary.29.tgz#ea63fc7d9b5cd51576bd8b4374a0deb5c07fcaab"
+ integrity sha512-zxtxUgsGoojZwifmYVnKdvv7R/ZtJ30Gs4VsmBNKa32677IPXCtq+d+Z+Z71ZUhn+3prYRRj7Y9lhqQkxoXGGQ==
+
+"@next/swc-win32-x64-msvc@12.3.2-canary.29":
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.2-canary.29.tgz#09686fc3453c8ee3e785c0b8692d98e76b3e7e99"
+ integrity sha512-+SMW3Lnsf6JdhvT+OL8SFkxpsgSTlV1+GGPoNgbXJmESZaOdCo1ix9zswhs9+dWhj7rDeJE54CD2gihfckicNg==
+
+"@swc/helpers@0.4.11":
+ version "0.4.11"
+ resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.11.tgz#db23a376761b3d31c26502122f349a21b592c8de"
+ integrity sha512-rEUrBSGIoSFuYxwBYtlUFMlE2CwGhmW+w9355/5oduSw8e5h2+Tj4UrAGNNgP9915++wj5vkQo0UuOBqOAq4nw==
dependencies:
tslib "^2.4.0"
-caniuse-lite@^1.0.30001332:
- version "1.0.30001341"
- resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001341.tgz#59590c8ffa8b5939cf4161f00827b8873ad72498"
- integrity sha512-2SodVrFFtvGENGCv0ChVJIDQ0KPaS1cg7/qtfMaICgeMolDdo/Z2OD32F0Aq9yl6F4YFwGPBS5AaPqNYiW4PoA==
+caniuse-lite@^1.0.30001406:
+ version "1.0.30001421"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001421.tgz#979993aaacff5ab72a8d0d58c28ddbcb7b4deba6"
+ integrity sha512-Sw4eLbgUJAEhjLs1Fa+mk45sidp1wRn5y6GtDpHGBaNJ9OCDJaVh2tIaWWUnGfuXfKf1JCBaIarak3FkVAvEeA==
"js-tokens@^3.0.0 || ^4.0.0":
version "4.0.0"
@@ -101,89 +101,89 @@ ms@2.1.3:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
-nanoid@^3.1.30:
- version "3.3.1"
- resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.1.tgz#6347a18cac88af88f58af0b3594b723d5e99bb35"
- integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==
+nanoid@^3.3.4:
+ version "3.3.4"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
+ integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
-next@12.2.1:
- version "12.2.1"
- resolved "https://registry.yarnpkg.com/next/-/next-12.2.1.tgz#b487dc598ef1373a1b1275d68531a7088fe5653d"
- integrity sha512-090KB5CZRlLG/GWxb8tA1ZFwqL8OfpUtH4mXA7POuisa6NL5ihiAZhfk5nRBdPHvkXuSt0n7zQaVym6SrT3Wiw==
+next@canary:
+ version "12.3.2-canary.29"
+ resolved "https://registry.yarnpkg.com/next/-/next-12.3.2-canary.29.tgz#7b8c0443110ebdcf15943ecb4d059a3ccc9b7bb7"
+ integrity sha512-4syimnUj/SMIfhBEd0khbjLvlEVMpKE/BEkd8qdxQj+uR4f5gVyaZV7yEL8lMEdsxlsX0uhwLtlH/JJSfKhRVg==
dependencies:
- "@next/env" "12.2.1"
- "@swc/helpers" "0.4.2"
- caniuse-lite "^1.0.30001332"
- postcss "8.4.5"
- styled-jsx "5.0.2"
- use-sync-external-store "1.1.0"
+ "@next/env" "12.3.2-canary.29"
+ "@swc/helpers" "0.4.11"
+ caniuse-lite "^1.0.30001406"
+ postcss "8.4.14"
+ styled-jsx "5.0.7"
+ use-sync-external-store "1.2.0"
optionalDependencies:
- "@next/swc-android-arm-eabi" "12.2.1"
- "@next/swc-android-arm64" "12.2.1"
- "@next/swc-darwin-arm64" "12.2.1"
- "@next/swc-darwin-x64" "12.2.1"
- "@next/swc-freebsd-x64" "12.2.1"
- "@next/swc-linux-arm-gnueabihf" "12.2.1"
- "@next/swc-linux-arm64-gnu" "12.2.1"
- "@next/swc-linux-arm64-musl" "12.2.1"
- "@next/swc-linux-x64-gnu" "12.2.1"
- "@next/swc-linux-x64-musl" "12.2.1"
- "@next/swc-win32-arm64-msvc" "12.2.1"
- "@next/swc-win32-ia32-msvc" "12.2.1"
- "@next/swc-win32-x64-msvc" "12.2.1"
+ "@next/swc-android-arm-eabi" "12.3.2-canary.29"
+ "@next/swc-android-arm64" "12.3.2-canary.29"
+ "@next/swc-darwin-arm64" "12.3.2-canary.29"
+ "@next/swc-darwin-x64" "12.3.2-canary.29"
+ "@next/swc-freebsd-x64" "12.3.2-canary.29"
+ "@next/swc-linux-arm-gnueabihf" "12.3.2-canary.29"
+ "@next/swc-linux-arm64-gnu" "12.3.2-canary.29"
+ "@next/swc-linux-arm64-musl" "12.3.2-canary.29"
+ "@next/swc-linux-x64-gnu" "12.3.2-canary.29"
+ "@next/swc-linux-x64-musl" "12.3.2-canary.29"
+ "@next/swc-win32-arm64-msvc" "12.3.2-canary.29"
+ "@next/swc-win32-ia32-msvc" "12.3.2-canary.29"
+ "@next/swc-win32-x64-msvc" "12.3.2-canary.29"
picocolors@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c"
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
-postcss@8.4.5:
- version "8.4.5"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.5.tgz#bae665764dfd4c6fcc24dc0fdf7e7aa00cc77f95"
- integrity sha512-jBDboWM8qpaqwkMwItqTQTiFikhs/67OYVvblFFTM7MrZjt6yMKd6r2kgXizEbTTljacm4NldIlZnhbjr84QYg==
+postcss@8.4.14:
+ version "8.4.14"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.14.tgz#ee9274d5622b4858c1007a74d76e42e56fd21caf"
+ integrity sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==
dependencies:
- nanoid "^3.1.30"
+ nanoid "^3.3.4"
picocolors "^1.0.0"
- source-map-js "^1.0.1"
+ source-map-js "^1.0.2"
-react-dom@^18.1.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.2.0.tgz#22aaf38708db2674ed9ada224ca4aa708d821e3d"
- integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
+react-dom@experimental:
+ version "0.0.0-experimental-54f297a60-20221017"
+ resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-0.0.0-experimental-54f297a60-20221017.tgz#21aef2b8f3bc01905c4f24b40cfa1f889c06c020"
+ integrity sha512-TA9bu9a84CH0yVkcB7mGzR2alVGR8ojfWoUWJUw3w3y2VBkQcZ5IxyuH2W3GaGCzPy70T2DnAbD+fMUSiDmuqg==
dependencies:
loose-envify "^1.1.0"
- scheduler "^0.23.0"
+ scheduler "0.0.0-experimental-54f297a60-20221017"
-react@^18.1.0:
- version "18.2.0"
- resolved "https://registry.yarnpkg.com/react/-/react-18.2.0.tgz#555bd98592883255fa00de14f1151a917b5d77d5"
- integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
+react@experimental:
+ version "0.0.0-experimental-54f297a60-20221017"
+ resolved "https://registry.yarnpkg.com/react/-/react-0.0.0-experimental-54f297a60-20221017.tgz#cbfcc85b3a39121672de036289367e258f140625"
+ integrity sha512-TTczlddoMVx7JN/M7LVU5bEUg+zT4da65b96HuKMQYtkyNQuG8CQKbeOu+Stw56bTDXuHxK+sRTp9UiUsn6v9g==
dependencies:
loose-envify "^1.1.0"
-scheduler@^0.23.0:
- version "0.23.0"
- resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.0.tgz#ba8041afc3d30eb206a487b6b384002e4e61fdfe"
- integrity sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==
+scheduler@0.0.0-experimental-54f297a60-20221017:
+ version "0.0.0-experimental-54f297a60-20221017"
+ resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.0.0-experimental-54f297a60-20221017.tgz#4e596cde2e37ece74e6e4dfd32514fc4b9183bd0"
+ integrity sha512-7LYiiBacemksniyp7bNFKH2ubGPveEQQCfhqaxOIWIYrUszWet7YsdD9SDbO6vhHIdNQpHZdAeugg7PQTNkBsA==
dependencies:
loose-envify "^1.1.0"
-source-map-js@^1.0.1:
+source-map-js@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
-styled-jsx@5.0.2:
- version "5.0.2"
- resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.2.tgz#ff230fd593b737e9e68b630a694d460425478729"
- integrity sha512-LqPQrbBh3egD57NBcHET4qcgshPks+yblyhPlH2GY8oaDgKs8SK4C3dBh3oSJjgzJ3G5t1SYEZGHkP+QEpX9EQ==
+styled-jsx@5.0.7:
+ version "5.0.7"
+ resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.0.7.tgz#be44afc53771b983769ac654d355ca8d019dff48"
+ integrity sha512-b3sUzamS086YLRuvnaDigdAewz1/EFYlHpYBP5mZovKEdQQOIIYq8lApylub3HHZ6xFjV051kkGU7cudJmrXEA==
tslib@^2.4.0:
version "2.4.0"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3"
integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==
-use-sync-external-store@1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.1.0.tgz#3343c3fe7f7e404db70f8c687adf5c1652d34e82"
- integrity sha512-SEnieB2FPKEVne66NpXPd1Np4R1lTNKfjuy3XdIoPQKYBAFdzbzSZlSn1KJZUiihQLQC5Znot4SBz1EOTBwQAQ==
+use-sync-external-store@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz#7dbefd6ef3fe4e767a0cf5d7287aacfb5846928a"
+ integrity sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==