From 0607e9f4426ce7c465da0425d2c94765fe7d55f8 Mon Sep 17 00:00:00 2001 From: Mike Cao Date: Wed, 8 Mar 2023 20:23:32 -0800 Subject: [PATCH] Upgraded next to 13. Fixed date filter for websites. --- components/common/FilterLink.js | 18 +- components/common/MobileMenu.js | 6 +- components/input/LogoutButton.js | 16 +- components/layout/Header.js | 12 +- components/layout/MenuLayout.js | 38 ---- components/layout/MenuLayout.module.css | 38 ---- components/messages.js | 2 + components/metrics/MetricsBar.js | 22 +-- components/metrics/MetricsTable.js | 14 +- components/metrics/WebsiteChart.js | 14 +- components/pages/console/TestConsole.js | 27 ++- components/pages/settings/teams/TeamsTable.js | 14 +- .../settings/websites/WebsiteSettings.js | 16 +- .../pages/settings/websites/WebsitesTable.js | 28 ++- components/pages/websites/WebsiteMenuView.js | 20 +- hooks/useDateRange.js | 22 +-- lib/date.js | 10 + package.json | 2 +- yarn.lock | 178 +++++++++--------- 19 files changed, 201 insertions(+), 296 deletions(-) delete mode 100644 components/layout/MenuLayout.js delete mode 100644 components/layout/MenuLayout.module.css diff --git a/components/common/FilterLink.js b/components/common/FilterLink.js index eb410719..0b6c4a6d 100644 --- a/components/common/FilterLink.js +++ b/components/common/FilterLink.js @@ -12,15 +12,15 @@ export default function FilterLink({ id, value, label, externalUrl }) { return (
- - - {safeDecodeURI(label || value)} - + + {safeDecodeURI(label || value)} {externalUrl && ( diff --git a/components/common/MobileMenu.js b/components/common/MobileMenu.js index 1c93f18a..65c69a7b 100644 --- a/components/common/MobileMenu.js +++ b/components/common/MobileMenu.js @@ -16,10 +16,8 @@ export default function MobileMenu({ items = [], onClose }) {
{items.map(({ label, value }) => ( - - - {label} - + + {label} ))}
diff --git a/components/input/LogoutButton.js b/components/input/LogoutButton.js index 31b4317d..9fb9adbf 100644 --- a/components/input/LogoutButton.js +++ b/components/input/LogoutButton.js @@ -7,15 +7,13 @@ export default function LogoutButton({ tooltipPosition = 'top' }) { const { formatMessage } = useIntl(); return ( - - - - - + + + ); } diff --git a/components/layout/Header.js b/components/layout/Header.js index 9b5f0a2f..10451998 100644 --- a/components/layout/Header.js +++ b/components/layout/Header.js @@ -11,13 +11,11 @@ export default function Header() {
- - - - - - umami - + + + + + umami diff --git a/components/layout/MenuLayout.js b/components/layout/MenuLayout.js deleted file mode 100644 index 6832e06d..00000000 --- a/components/layout/MenuLayout.js +++ /dev/null @@ -1,38 +0,0 @@ -import { useRouter } from 'next/router'; -import classNames from 'classnames'; -import NavMenu from 'components/common/NavMenu'; -import styles from './MenuLayout.module.css'; - -export default function MenuLayout({ - menu, - selectedOption, - className, - menuClassName, - contentClassName, - children, - replace = false, -}) { - const router = useRouter(); - - function handleSelect(url) { - if (replace) { - router.replace(url, undefined, { shallow: true }); - } else { - router.push(url, undefined, { shallow: true }); - } - } - - return ( -
- -
- {children} -
-
- ); -} diff --git a/components/layout/MenuLayout.module.css b/components/layout/MenuLayout.module.css deleted file mode 100644 index b5a812a4..00000000 --- a/components/layout/MenuLayout.module.css +++ /dev/null @@ -1,38 +0,0 @@ -.container { - display: flex; - flex: 1; - height: 100%; -} - -.container .menu { - padding: 30px 0; - border: 0; -} - -.container .content { - flex: 1; - position: relative; - border-left: 1px solid var(--base300); - padding-left: 30px; - margin-left: 30px; -} - -@media only screen and (max-width: 992px) { - .container { - flex-direction: column; - height: auto; - } - - .container .menu { - display: flex; - justify-content: space-around; - align-items: flex-start; - } - - .container .content { - border-top: 1px solid var(--base300); - border-left: 0; - padding-left: 0; - margin-left: 0; - } -} diff --git a/components/messages.js b/components/messages.js index 6cd93be9..608d4fbe 100644 --- a/components/messages.js +++ b/components/messages.js @@ -102,6 +102,8 @@ export const labels = defineMessages({ poweredBy: { id: 'label.powered-by', defaultMessage: 'Powered by {name}' }, pageViews: { id: 'label.page-views', defaultMessage: 'Page views' }, uniqueVisitors: { id: 'label.unique-visitors', defaultMessage: 'Unique visitors' }, + bounceRate: { id: 'label.bounce-rate', defaultMessage: 'Bounce rate' }, + averageVisitTime: { id: 'label.average-visit-time', defaultMessage: 'Average visit time' }, }); export const messages = defineMessages({ diff --git a/components/metrics/MetricsBar.js b/components/metrics/MetricsBar.js index 887fad7d..ae9689f3 100644 --- a/components/metrics/MetricsBar.js +++ b/components/metrics/MetricsBar.js @@ -1,16 +1,17 @@ import { useState } from 'react'; import { Loading } from 'react-basics'; -import { FormattedMessage } from 'react-intl'; -import classNames from 'classnames'; +import { useIntl } from 'react-intl'; import ErrorMessage from 'components/common/ErrorMessage'; import useApi from 'hooks/useApi'; import useDateRange from 'hooks/useDateRange'; import usePageQuery from 'hooks/usePageQuery'; import { formatShortTime, formatNumber, formatLongNumber } from 'lib/format'; import MetricCard from './MetricCard'; +import { labels } from 'components/messages'; import styles from './MetricsBar.module.css'; -export default function MetricsBar({ websiteId, className }) { +export default function MetricsBar({ websiteId }) { + const { formatMessage } = useIntl(); const { get, useQuery } = useApi(); const [dateRange] = useDateRange(websiteId); const { startDate, endDate, modified } = dateRange; @@ -52,25 +53,25 @@ export default function MetricsBar({ websiteId, className }) { }; return ( -
+
{isLoading && !isFetched && } {error && } {data && !error && isFetched && ( <> } + label={formatMessage(labels.views)} value={pageviews.value} change={pageviews.change} format={formatFunc} /> } + label={formatMessage(labels.visitors)} value={uniques.value} change={uniques.change} format={formatFunc} /> } + label={formatMessage(labels.bounceRate)} value={uniques.value ? (num / uniques.value) * 100 : 0} change={ uniques.value && uniques.change @@ -82,12 +83,7 @@ export default function MetricsBar({ websiteId, className }) { reverseColors /> - } + label={formatMessage(labels.averageVisitTime)} value={ totaltime.value && pageviews.value ? totaltime.value / (pageviews.value - bounces.value) diff --git a/components/metrics/MetricsTable.js b/components/metrics/MetricsTable.js index de356dc7..258ea1e8 100644 --- a/components/metrics/MetricsTable.js +++ b/components/metrics/MetricsTable.js @@ -80,14 +80,12 @@ export default function MetricsTable({
{data && !error && limit && ( - - - + )}
diff --git a/components/metrics/WebsiteChart.js b/components/metrics/WebsiteChart.js index 0d8bc322..9489767c 100644 --- a/components/metrics/WebsiteChart.js +++ b/components/metrics/WebsiteChart.js @@ -71,14 +71,12 @@ export default function WebsiteChart({ {showDetailsButton && ( - - - + )} diff --git a/components/pages/console/TestConsole.js b/components/pages/console/TestConsole.js index 0f9c144e..88e69d7d 100644 --- a/components/pages/console/TestConsole.js +++ b/components/pages/console/TestConsole.js @@ -59,26 +59,25 @@ export default function TestConsole() {
Page links
- - page one - + page one
- - page two - + page two
diff --git a/components/pages/settings/teams/TeamsTable.js b/components/pages/settings/teams/TeamsTable.js index db99f9db..7f22435c 100644 --- a/components/pages/settings/teams/TeamsTable.js +++ b/components/pages/settings/teams/TeamsTable.js @@ -49,14 +49,12 @@ export default function TeamsTable({ data = [], onDelete }) { action: ( - - - + - + + diff --git a/components/pages/settings/websites/WebsitesTable.js b/components/pages/settings/websites/WebsitesTable.js index fc51bee4..7a969d94 100644 --- a/components/pages/settings/websites/WebsitesTable.js +++ b/components/pages/settings/websites/WebsitesTable.js @@ -42,24 +42,20 @@ export default function WebsitesTable({ data = [] }) { row.action = ( - - - + - - - + ); diff --git a/components/pages/websites/WebsiteMenuView.js b/components/pages/websites/WebsiteMenuView.js index c8b9db9c..d8f0b7ff 100644 --- a/components/pages/websites/WebsiteMenuView.js +++ b/components/pages/websites/WebsiteMenuView.js @@ -86,22 +86,20 @@ export default function WebsiteMenuView({ websiteId, websiteDomain }) { - - - - - + + + {({ key, label }) => ( - {label} + {label} )} diff --git a/hooks/useDateRange.js b/hooks/useDateRange.js index b16aad34..16f3818c 100644 --- a/hooks/useDateRange.js +++ b/hooks/useDateRange.js @@ -3,27 +3,15 @@ import { parseDateRange } from 'lib/date'; import { setItem } from 'next-basics'; import { DATE_RANGE_CONFIG, DEFAULT_DATE_RANGE } from 'lib/constants'; import useLocale from './useLocale'; -import { getWebsiteDateRange, setWebsiteDateRange } from 'store/websites'; -import useStore, { setDateRange } from 'store/app'; - -function parseValue(value, locale) { - if (typeof value === 'string') { - return parseDateRange(value, locale); - } else if (typeof value === 'object') { - return { - ...value, - startDate: parseISO(value.startDate), - endDate: parseISO(value.endDate), - }; - } -} +import websiteStore, { setWebsiteDateRange } from 'store/websites'; +import appStore, { setDateRange } from 'store/app'; export default function useDateRange(websiteId) { const { locale } = useLocale(); - const websiteConfig = getWebsiteDateRange(websiteId); + const websiteConfig = websiteStore(state => state[websiteId]?.dateRange); const defaultConfig = DEFAULT_DATE_RANGE; - const globalConfig = useStore(state => state.dateRange); - const dateRange = parseValue(websiteConfig || globalConfig || defaultConfig, locale); + const globalConfig = appStore(state => state.dateRange); + const dateRange = parseDateRange(websiteConfig || globalConfig || defaultConfig, locale); function saveDateRange(value) { if (websiteId) { diff --git a/lib/date.js b/lib/date.js index 3817fb71..b1273603 100644 --- a/lib/date.js +++ b/lib/date.js @@ -26,6 +26,7 @@ import { differenceInCalendarMonths, differenceInCalendarYears, format, + parseISO, } from 'date-fns'; import { getDateLocale } from 'lib/lang'; @@ -38,6 +39,15 @@ export function getLocalTime(t) { } export function parseDateRange(value, locale = 'en-US') { + if (typeof value === 'object') { + const { startDate, endDate } = value; + return { + ...value, + startDate: typeof startDate === 'string' ? parseISO(startDate) : startDate, + endDate: typeof endDate === 'string' ? parseISO(endDate) : endDate, + }; + } + const now = new Date(); const dateLocale = getDateLocale(locale); diff --git a/package.json b/package.json index 90193353..2e4bdd9f 100644 --- a/package.json +++ b/package.json @@ -88,7 +88,7 @@ "kafkajs": "^2.1.0", "maxmind": "^4.3.6", "moment-timezone": "^0.5.35", - "next": "^12.3.1", + "next": "^13.2.3", "next-basics": "^0.27.0", "node-fetch": "^3.2.8", "npm-run-all": "^4.1.5", diff --git a/yarn.lock b/yarn.lock index 274d1539..8257b3c5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1922,10 +1922,10 @@ slash "^3.0.0" tiny-glob "^0.2.9" -"@next/env@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/env/-/env-12.3.4.tgz#c787837d36fcad75d72ff8df6b57482027d64a47" - integrity sha512-H/69Lc5Q02dq3o+dxxy5O/oNxFsZpdL6WREtOOtOM1B/weonIwDXkekr1KV5DPVPr12IHFPrMrcJQ6bgPMfn7A== +"@next/env@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/env/-/env-13.2.3.tgz#77ca49edb3c1d7c5263bb8f2ebe686080e98279e" + integrity sha512-FN50r/E+b8wuqyRjmGaqvqNDuWBWYWQiigfZ50KnSFH0f+AMQQyaZl+Zm2+CIpKk0fL9QxhLxOpTVA3xFHgFow== "@next/eslint-plugin-next@12.3.4": version "12.3.4" @@ -1934,70 +1934,70 @@ dependencies: glob "7.1.7" -"@next/swc-android-arm-eabi@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-12.3.4.tgz#fd1c2dafe92066c6120761c6a39d19e666dc5dd0" - integrity sha512-cM42Cw6V4Bz/2+j/xIzO8nK/Q3Ly+VSlZJTa1vHzsocJRYz8KT6MrreXaci2++SIZCF1rVRCDgAg5PpqRibdIA== +"@next/swc-android-arm-eabi@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.2.3.tgz#85eed560c87c7996558c868a117be9780778f192" + integrity sha512-mykdVaAXX/gm+eFO2kPeVjnOCKwanJ9mV2U0lsUGLrEdMUifPUjiXKc6qFAIs08PvmTMOLMNnUxqhGsJlWGKSw== -"@next/swc-android-arm64@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-12.3.4.tgz#11a146dae7b8bca007239b21c616e83f77b19ed4" - integrity sha512-5jf0dTBjL+rabWjGj3eghpLUxCukRhBcEJgwLedewEA/LJk2HyqCvGIwj5rH+iwmq1llCWbOky2dO3pVljrapg== +"@next/swc-android-arm64@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-android-arm64/-/swc-android-arm64-13.2.3.tgz#8ac54ca9795a48afc4631b4823a4864bd5db0129" + integrity sha512-8XwHPpA12gdIFtope+n9xCtJZM3U4gH4vVTpUwJ2w1kfxFmCpwQ4xmeGSkR67uOg80yRMuF0h9V1ueo05sws5w== -"@next/swc-darwin-arm64@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-12.3.4.tgz#14ac8357010c95e67327f47082af9c9d75d5be79" - integrity sha512-DqsSTd3FRjQUR6ao0E1e2OlOcrF5br+uegcEGPVonKYJpcr0MJrtYmPxd4v5T6UCJZ+XzydF7eQo5wdGvSZAyA== +"@next/swc-darwin-arm64@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.2.3.tgz#f674e3c65aec505b6d218a662ade3fe248ccdbda" + integrity sha512-TXOubiFdLpMfMtaRu1K5d1I9ipKbW5iS2BNbu8zJhoqrhk3Kp7aRKTxqFfWrbliAHhWVE/3fQZUYZOWSXVQi1w== -"@next/swc-darwin-x64@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-12.3.4.tgz#e7dc63cd2ac26d15fb84d4d2997207fb9ba7da0f" - integrity sha512-PPF7tbWD4k0dJ2EcUSnOsaOJ5rhT3rlEt/3LhZUGiYNL8KvoqczFrETlUx0cUYaXe11dRA3F80Hpt727QIwByQ== +"@next/swc-darwin-x64@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-darwin-x64/-/swc-darwin-x64-13.2.3.tgz#a15ea7fb4c46034a8f5e387906d0cad08387075a" + integrity sha512-GZctkN6bJbpjlFiS5pylgB2pifHvgkqLAPumJzxnxkf7kqNm6rOGuNjsROvOWVWXmKhrzQkREO/WPS2aWsr/yw== -"@next/swc-freebsd-x64@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-12.3.4.tgz#fe7ceec58746fdf03f1fcb37ec1331c28e76af93" - integrity sha512-KM9JXRXi/U2PUM928z7l4tnfQ9u8bTco/jb939pdFUHqc28V43Ohd31MmZD1QzEK4aFlMRaIBQOWQZh4D/E5lQ== +"@next/swc-freebsd-x64@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.2.3.tgz#f7ac6ae4f7d706ff2431f33e40230a554c8c2cbc" + integrity sha512-rK6GpmMt/mU6MPuav0/M7hJ/3t8HbKPCELw/Uqhi4732xoq2hJ2zbo2FkYs56y6w0KiXrIp4IOwNB9K8L/q62g== -"@next/swc-linux-arm-gnueabihf@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-12.3.4.tgz#d7016934d02bfc8bd69818ffb0ae364b77b17af7" - integrity sha512-3zqD3pO+z5CZyxtKDTnOJ2XgFFRUBciOox6EWkoZvJfc9zcidNAQxuwonUeNts6Xbm8Wtm5YGIRC0x+12YH7kw== +"@next/swc-linux-arm-gnueabihf@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.2.3.tgz#84ad9e9679d55542a23b590ad9f2e1e9b2df62f7" + integrity sha512-yeiCp/Odt1UJ4KUE89XkeaaboIDiVFqKP4esvoLKGJ0fcqJXMofj4ad3tuQxAMs3F+qqrz9MclqhAHkex1aPZA== -"@next/swc-linux-arm64-gnu@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-12.3.4.tgz#43a7bc409b03487bff5beb99479cacdc7bd29af5" - integrity sha512-kiX0vgJGMZVv+oo1QuObaYulXNvdH/IINmvdZnVzMO/jic/B8EEIGlZ8Bgvw8LCjH3zNVPO3mGrdMvnEEPEhKA== +"@next/swc-linux-arm64-gnu@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.2.3.tgz#56f9175bc632d647c60b9e8bedc0875edf92d8b7" + integrity sha512-/miIopDOUsuNlvjBjTipvoyjjaxgkOuvlz+cIbbPcm1eFvzX2ltSfgMgty15GuOiR8Hub4FeTSiq3g2dmCkzGA== -"@next/swc-linux-arm64-musl@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-12.3.4.tgz#4d1db6de6dc982b974cd1c52937111e3e4a34bd3" - integrity sha512-EETZPa1juczrKLWk5okoW2hv7D7WvonU+Cf2CgsSoxgsYbUCZ1voOpL4JZTOb6IbKMDo6ja+SbY0vzXZBUMvkQ== +"@next/swc-linux-arm64-musl@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.2.3.tgz#7d4cf00e8f1729a3de464da0624773f5d0d14888" + integrity sha512-sujxFDhMMDjqhruup8LLGV/y+nCPi6nm5DlFoThMJFvaaKr/imhkXuk8uCTq4YJDbtRxnjydFv2y8laBSJVC2g== -"@next/swc-linux-x64-gnu@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-12.3.4.tgz#c3b414d77bab08b35f7dd8943d5586f0adb15e38" - integrity sha512-4csPbRbfZbuWOk3ATyWcvVFdD9/Rsdq5YHKvRuEni68OCLkfy4f+4I9OBpyK1SKJ00Cih16NJbHE+k+ljPPpag== +"@next/swc-linux-x64-gnu@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.2.3.tgz#17de404910c4ebf7a1d366b19334d7e27e126ab0" + integrity sha512-w5MyxPknVvC9LVnMenAYMXMx4KxPwXuJRMQFvY71uXg68n7cvcas85U5zkdrbmuZ+JvsO5SIG8k36/6X3nUhmQ== -"@next/swc-linux-x64-musl@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-12.3.4.tgz#187a883ec09eb2442a5ebf126826e19037313c61" - integrity sha512-YeBmI+63Ro75SUiL/QXEVXQ19T++58aI/IINOyhpsRL1LKdyfK/35iilraZEFz9bLQrwy1LYAR5lK200A9Gjbg== +"@next/swc-linux-x64-musl@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.2.3.tgz#07cb7b7f3a3a98034e2533f82638a9b099ba4ab1" + integrity sha512-CTeelh8OzSOVqpzMFMFnVRJIFAFQoTsI9RmVJWW/92S4xfECGcOzgsX37CZ8K982WHRzKU7exeh7vYdG/Eh4CA== -"@next/swc-win32-arm64-msvc@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-12.3.4.tgz#89befa84e453ed2ef9a888f375eba565a0fde80b" - integrity sha512-Sd0qFUJv8Tj0PukAYbCCDbmXcMkbIuhnTeHm9m4ZGjCf6kt7E/RMs55Pd3R5ePjOkN7dJEuxYBehawTR/aPDSQ== +"@next/swc-win32-arm64-msvc@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.2.3.tgz#b9ac98c954c71ec9de45d3497a8585096b873152" + integrity sha512-7N1KBQP5mo4xf52cFCHgMjzbc9jizIlkTepe9tMa2WFvEIlKDfdt38QYcr9mbtny17yuaIw02FXOVEytGzqdOQ== -"@next/swc-win32-ia32-msvc@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-12.3.4.tgz#cb50c08f0e40ead63642a7f269f0c8254261f17c" - integrity sha512-rt/vv/vg/ZGGkrkKcuJ0LyliRdbskQU+91bje+PgoYmxTZf/tYs6IfbmgudBJk6gH3QnjHWbkphDdRQrseRefQ== +"@next/swc-win32-ia32-msvc@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.2.3.tgz#5ec48653a48fd664e940c69c96bba698fdae92eb" + integrity sha512-LzWD5pTSipUXTEMRjtxES/NBYktuZdo7xExJqGDMnZU8WOI+v9mQzsmQgZS/q02eIv78JOCSemqVVKZBGCgUvA== -"@next/swc-win32-x64-msvc@12.3.4": - version "12.3.4" - resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-12.3.4.tgz#d28ea15a72cdcf96201c60a43e9630cd7fda168f" - integrity sha512-DQ20JEfTBZAgF8QCjYfJhv2/279M6onxFjdG/+5B0Cyj00/EdBxiWb2eGGFgQhrBbNv/lsvzFbbi0Ptf8Vw/bg== +"@next/swc-win32-x64-msvc@13.2.3": + version "13.2.3" + resolved "https://registry.yarnpkg.com/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.2.3.tgz#cd432f280beb8d8de5b7cd2501e9f502e9f3dd72" + integrity sha512-aLG2MaFs4y7IwaMTosz2r4mVbqRyCnMoFqOcmfTi7/mAS+G4IMH0vJp4oLdbshqiVoiVuKrAfqtXj55/m7Qu1Q== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -2390,10 +2390,10 @@ "@svgr/plugin-jsx" "^6.5.1" "@svgr/plugin-svgo" "^6.5.1" -"@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== +"@swc/helpers@0.4.14": + version "0.4.14" + resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.4.14.tgz#1352ac6d95e3617ccb7c1498ff019654f1e12a74" + integrity sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw== dependencies: tslib "^2.4.0" @@ -3440,6 +3440,11 @@ clickhouse@^2.5.0: tsv "0.2.0" uuid "3.4.0" +client-only@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/client-only/-/client-only-0.0.1.tgz#38bba5d403c41ab150bff64a95c85013cf73bca1" + integrity sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA== + clipboardy@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/clipboardy/-/clipboardy-3.0.0.tgz#f3876247404d334c9ed01b6f269c11d09a5e3092" @@ -6171,31 +6176,30 @@ next-basics@^0.27.0: bcryptjs "^2.4.3" jsonwebtoken "^9.0.0" -next@^12.3.1: - version "12.3.4" - resolved "https://registry.yarnpkg.com/next/-/next-12.3.4.tgz#f2780a6ebbf367e071ce67e24bd8a6e05de2fcb1" - integrity sha512-VcyMJUtLZBGzLKo3oMxrEF0stxh8HwuW976pAzlHhI3t8qJ4SROjCrSh1T24bhrbjw55wfZXAbXPGwPt5FLRfQ== +next@^13.2.3: + version "13.2.3" + resolved "https://registry.yarnpkg.com/next/-/next-13.2.3.tgz#92d170e7aca421321f230ff80c35c4751035f42e" + integrity sha512-nKFJC6upCPN7DWRx4+0S/1PIOT7vNlCT157w9AzbXEgKy6zkiPKEt5YyRUsRZkmpEqBVrGgOqNfwecTociyg+w== dependencies: - "@next/env" "12.3.4" - "@swc/helpers" "0.4.11" + "@next/env" "13.2.3" + "@swc/helpers" "0.4.14" caniuse-lite "^1.0.30001406" postcss "8.4.14" - styled-jsx "5.0.7" - use-sync-external-store "1.2.0" + styled-jsx "5.1.1" optionalDependencies: - "@next/swc-android-arm-eabi" "12.3.4" - "@next/swc-android-arm64" "12.3.4" - "@next/swc-darwin-arm64" "12.3.4" - "@next/swc-darwin-x64" "12.3.4" - "@next/swc-freebsd-x64" "12.3.4" - "@next/swc-linux-arm-gnueabihf" "12.3.4" - "@next/swc-linux-arm64-gnu" "12.3.4" - "@next/swc-linux-arm64-musl" "12.3.4" - "@next/swc-linux-x64-gnu" "12.3.4" - "@next/swc-linux-x64-musl" "12.3.4" - "@next/swc-win32-arm64-msvc" "12.3.4" - "@next/swc-win32-ia32-msvc" "12.3.4" - "@next/swc-win32-x64-msvc" "12.3.4" + "@next/swc-android-arm-eabi" "13.2.3" + "@next/swc-android-arm64" "13.2.3" + "@next/swc-darwin-arm64" "13.2.3" + "@next/swc-darwin-x64" "13.2.3" + "@next/swc-freebsd-x64" "13.2.3" + "@next/swc-linux-arm-gnueabihf" "13.2.3" + "@next/swc-linux-arm64-gnu" "13.2.3" + "@next/swc-linux-arm64-musl" "13.2.3" + "@next/swc-linux-x64-gnu" "13.2.3" + "@next/swc-linux-x64-musl" "13.2.3" + "@next/swc-win32-arm64-msvc" "13.2.3" + "@next/swc-win32-ia32-msvc" "13.2.3" + "@next/swc-win32-x64-msvc" "13.2.3" nice-try@^1.0.4: version "1.0.5" @@ -7982,10 +7986,12 @@ style-search@^0.1.0: resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902" integrity sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg== -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== +styled-jsx@5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-5.1.1.tgz#839a1c3aaacc4e735fed0781b8619ea5d0009d1f" + integrity sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw== + dependencies: + client-only "0.0.1" stylelint-config-css-modules@^4.1.0: version "4.2.0" @@ -8541,7 +8547,7 @@ use-memo-one@^1.1.1: resolved "https://registry.yarnpkg.com/use-memo-one/-/use-memo-one-1.1.3.tgz#2fd2e43a2169eabc7496960ace8c79efef975e99" integrity sha512-g66/K7ZQGYrI6dy8GLpVcMsBp4s17xNkYJVSMvTEevGy3nDxHOfE6z8BVE22+5G5x7t3+bhzrlTDB7ObrEE0cQ== -use-sync-external-store@1.2.0, use-sync-external-store@^1.2.0: +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==