diff --git a/examples/nextjs-root-layout/.eslintrc.json b/examples/nextjs-root-layout/.eslintrc.json
new file mode 100644
index 0000000..bffb357
--- /dev/null
+++ b/examples/nextjs-root-layout/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "next/core-web-vitals"
+}
diff --git a/examples/nextjs-root-layout/.gitignore b/examples/nextjs-root-layout/.gitignore
new file mode 100644
index 0000000..8f322f0
--- /dev/null
+++ b/examples/nextjs-root-layout/.gitignore
@@ -0,0 +1,35 @@
+# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
+
+# dependencies
+/node_modules
+/.pnp
+.pnp.js
+
+# testing
+/coverage
+
+# next.js
+/.next/
+/out/
+
+# production
+/build
+
+# misc
+.DS_Store
+*.pem
+
+# debug
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# local env files
+.env*.local
+
+# vercel
+.vercel
+
+# typescript
+*.tsbuildinfo
+next-env.d.ts
diff --git a/examples/nextjs-root-layout/README.md b/examples/nextjs-root-layout/README.md
new file mode 100644
index 0000000..e5f733e
--- /dev/null
+++ b/examples/nextjs-root-layout/README.md
@@ -0,0 +1,34 @@
+This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
+
+## Getting Started
+
+First, run the development server:
+
+```bash
+npm run dev
+# or
+yarn dev
+# or
+pnpm dev
+```
+
+Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
+
+You can start editing the page by modifying `app/page.js`. The page auto-updates as you edit the file.
+
+This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
+
+## Learn More
+
+To learn more about Next.js, take a look at the following resources:
+
+- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
+- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
+
+You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome!
+
+## Deploy on Vercel
+
+The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
+
+Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
diff --git a/examples/nextjs-root-layout/jsconfig.json b/examples/nextjs-root-layout/jsconfig.json
new file mode 100644
index 0000000..b8d6842
--- /dev/null
+++ b/examples/nextjs-root-layout/jsconfig.json
@@ -0,0 +1,7 @@
+{
+ "compilerOptions": {
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ }
+}
diff --git a/examples/nextjs-root-layout/next.config.js b/examples/nextjs-root-layout/next.config.js
new file mode 100644
index 0000000..767719f
--- /dev/null
+++ b/examples/nextjs-root-layout/next.config.js
@@ -0,0 +1,4 @@
+/** @type {import('next').NextConfig} */
+const nextConfig = {}
+
+module.exports = nextConfig
diff --git a/examples/nextjs-root-layout/package.json b/examples/nextjs-root-layout/package.json
new file mode 100644
index 0000000..73d434e
--- /dev/null
+++ b/examples/nextjs-root-layout/package.json
@@ -0,0 +1,23 @@
+{
+ "name": "nextjs-root-layout",
+ "version": "0.1.0",
+ "private": true,
+ "scripts": {
+ "dev": "next dev",
+ "build": "next build",
+ "start": "next start",
+ "lint": "next lint"
+ },
+ "dependencies": {
+ "autoprefixer": "10.4.14",
+ "eslint": "8.40.0",
+ "eslint-config-next": "13.4.1",
+ "next": "13.4.1",
+ "postcss": "8.4.23",
+ "react": "18.2.0",
+ "react-dom": "18.2.0",
+ "tailwindcss": "3.3.2",
+ "use-shopping-cart": "workspace:^3.1.5"
+ }
+}
+
diff --git a/examples/nextjs-root-layout/postcss.config.js b/examples/nextjs-root-layout/postcss.config.js
new file mode 100644
index 0000000..33ad091
--- /dev/null
+++ b/examples/nextjs-root-layout/postcss.config.js
@@ -0,0 +1,6 @@
+module.exports = {
+ plugins: {
+ tailwindcss: {},
+ autoprefixer: {},
+ },
+}
diff --git a/examples/nextjs-root-layout/src/app/components/CartItem.js b/examples/nextjs-root-layout/src/app/components/CartItem.js
new file mode 100644
index 0000000..d0425ec
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/CartItem.js
@@ -0,0 +1,30 @@
+import { useShoppingCart } from "use-shopping-cart";
+import { formatCurrencyString } from "use-shopping-cart";
+import Image from "next/image";
+
+export default function CartItem({ item }) {
+ const { name, emoji, quantity, price } = item;
+ const { removeItem } = useShoppingCart();
+
+ const removeItemFromCart = () => {
+ removeItem(item.id);
+ };
+
+ return (
+
+
{emoji}
+
+ {name} ({quantity})
+
+
+ {formatCurrencyString({ value: price, currency: "GBP" })}
+
+
removeItemFromCart()}
+ className="hover:bg-emerald-50 transition-colors rounded-full duration-500 p-1"
+ >
+
+
+
+ );
+}
diff --git a/examples/nextjs-root-layout/src/app/components/CheckoutButton.js b/examples/nextjs-root-layout/src/app/components/CheckoutButton.js
new file mode 100644
index 0000000..796e92e
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/CheckoutButton.js
@@ -0,0 +1,55 @@
+import { useState } from "react";
+import { useShoppingCart } from "use-shopping-cart";
+
+export default function CheckoutButton() {
+ const [status, setStatus] = useState("idle");
+ const { redirectToCheckout, cartCount, totalPrice } = useShoppingCart();
+
+ async function handleClick(event) {
+ event.preventDefault();
+ if (cartCount > 0) {
+ setStatus("loading");
+ try {
+ const result = await redirectToCheckout();
+ if (result?.error) {
+ console.error(result);
+ setStatus("redirect-error");
+ }
+ } catch (error) {
+ console.error(error);
+ setStatus("redirect-error");
+ }
+ } else {
+ setStatus("no-items");
+ }
+ }
+
+ return (
+
+
+ {totalPrice && totalPrice < 30
+ ? "You must have at least £0.30 in your basket"
+ : cartCount && cartCount > 20
+ ? "You cannot have more than 20 items"
+ : status === "redirect-error"
+ ? "Unable to redirect to Stripe checkout page"
+ : status === "no-items"
+ ? "Please add some items to your cart"
+ : null}
+
+ 20) ||
+ status == "no-items"
+ ? true
+ : false
+ }
+ >
+ {status !== "loading" ? "Proceed to checkout" : "Loading..."}
+
+
+ );
+}
diff --git a/examples/nextjs-root-layout/src/app/components/Layout.js b/examples/nextjs-root-layout/src/app/components/Layout.js
new file mode 100644
index 0000000..0bcb67d
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/Layout.js
@@ -0,0 +1,24 @@
+'use client'
+
+import Head from 'next/head'
+import NavBar from './NavBar'
+
+export default function Layout({ children }) {
+ return (
+ <>
+
+ fresh
+
+
+
+
+
+
+ {children}
+
+ >
+ )
+}
diff --git a/examples/nextjs-root-layout/src/app/components/NavBar.js b/examples/nextjs-root-layout/src/app/components/NavBar.js
new file mode 100644
index 0000000..25b440c
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/NavBar.js
@@ -0,0 +1,31 @@
+'use client'
+
+import { useShoppingCart } from 'use-shopping-cart'
+import Image from 'next/image'
+import Link from 'next/link'
+import ShoppingCart from './ShoppingCart'
+
+export default function NavBar() {
+ const { handleCartClick, cartCount } = useShoppingCart()
+ return (
+
+
+
+ fresh
+
+
+ handleCartClick()}>
+
+
+ {cartCount}
+
+
+
+
+ )
+}
diff --git a/examples/nextjs-root-layout/src/app/components/Product.js b/examples/nextjs-root-layout/src/app/components/Product.js
new file mode 100644
index 0000000..88995df
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/Product.js
@@ -0,0 +1,57 @@
+'use client'
+
+import { useState } from 'react'
+import { formatCurrencyString } from 'use-shopping-cart'
+import { useShoppingCart } from 'use-shopping-cart'
+
+export default function Product({ product }) {
+ const { addItem } = useShoppingCart()
+ const { name, price, emoji } = product
+ const [quantity, setQuantity] = useState(1)
+
+ const decreaseQuantity = () => {
+ if (quantity > 1) {
+ setQuantity(quantity - 1)
+ }
+ }
+
+ const increaseQuantity = () => {
+ setQuantity(quantity + 1)
+ }
+
+ const addToCart = () => {
+ addItem(product, { count: quantity })
+ setQuantity(1)
+ }
+
+ return (
+
+ {emoji}
+ {name}
+
+ {formatCurrencyString({ value: price, currency: 'GBP' })}
+
+
+
+ -
+
+ {quantity}
+
+ +
+
+
+ addToCart()}
+ className="bg-emerald-50 hover:bg-emerald-500 hover:text-white transition-colors duration-500 text-emerald-500 rounded-md px-5 py-2"
+ >
+ Add to cart
+
+
+ )
+}
diff --git a/examples/nextjs-root-layout/src/app/components/ShoppingCart.js b/examples/nextjs-root-layout/src/app/components/ShoppingCart.js
new file mode 100644
index 0000000..a6f4300
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/ShoppingCart.js
@@ -0,0 +1,25 @@
+import { useShoppingCart } from "use-shopping-cart";
+import CartItem from "./CartItem";
+import CheckoutButton from "./CheckoutButton";
+
+export default function ShoppingCart() {
+ const { shouldDisplayCart, cartCount, cartDetails } = useShoppingCart();
+ return (
+
+ {cartCount && cartCount > 0 ? (
+ <>
+ {Object.values(cartDetails ?? {}).map((entry) => (
+
+ ))}
+
+ >
+ ) : (
+
You have no items in your cart
+ )}
+
+ );
+}
diff --git a/examples/nextjs-root-layout/src/app/components/providers.js b/examples/nextjs-root-layout/src/app/components/providers.js
new file mode 100644
index 0000000..8381445
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/components/providers.js
@@ -0,0 +1,23 @@
+'use client'
+
+import React from 'react'
+import { CartProvider as USCProvider } from 'use-shopping-cart'
+
+function CartProvider({ children }) {
+ return (
+
+ {children}
+
+ )
+}
+
+export default CartProvider
+
diff --git a/examples/nextjs-root-layout/src/app/data/products.js b/examples/nextjs-root-layout/src/app/data/products.js
new file mode 100644
index 0000000..c852d6f
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/data/products.js
@@ -0,0 +1,36 @@
+/* Note: these are product IDs that are in my Stripe dashboard,
+ you'll need to replace them with products you create on your own dashboard */
+export const products = [
+ {
+ id: "price_1McB1XC4V4bOyW0mEbCcuNPe",
+ name: "Watermelon",
+ /* Prices are in smallest currency unit, 100 pence = £1 */
+ price: 100,
+ emoji: "🍉",
+ currency: "GBP",
+ },
+ {
+ id: "price_1McBPVC4V4bOyW0mqtp8qNLn",
+ name: "Apple",
+ /* Prices are in smallest currency unit, 20 pence = £0.20 */
+ price: 20,
+ emoji: "🍎",
+ currency: "GBP",
+ },
+ {
+ id: "price_1McBQBC4V4bOyW0m4sCYXwDz",
+ name: "Pineapple",
+ /* Prices are in smallest currency unit, 105 pence = £1.05 */
+ price: 105,
+ emoji: "🍍",
+ currency: "GBP",
+ },
+ {
+ id: "price_1McBQkC4V4bOyW0mk4NGp6bY",
+ name: "Banana",
+ /* Prices are in smallest currency unit, 20 pence = £0.20 */
+ price: 20,
+ emoji: "🍌",
+ currency: "GBP",
+ },
+];
diff --git a/examples/nextjs-root-layout/src/app/favicon.ico b/examples/nextjs-root-layout/src/app/favicon.ico
new file mode 100644
index 0000000..09b3f98
Binary files /dev/null and b/examples/nextjs-root-layout/src/app/favicon.ico differ
diff --git a/examples/nextjs-root-layout/src/app/globals.css b/examples/nextjs-root-layout/src/app/globals.css
new file mode 100644
index 0000000..fd81e88
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/globals.css
@@ -0,0 +1,27 @@
+@tailwind base;
+@tailwind components;
+@tailwind utilities;
+
+:root {
+ --foreground-rgb: 0, 0, 0;
+ --background-start-rgb: 214, 219, 220;
+ --background-end-rgb: 255, 255, 255;
+}
+
+@media (prefers-color-scheme: dark) {
+ :root {
+ --foreground-rgb: 255, 255, 255;
+ --background-start-rgb: 0, 0, 0;
+ --background-end-rgb: 0, 0, 0;
+ }
+}
+
+body {
+ color: rgb(var(--foreground-rgb));
+ background: linear-gradient(
+ to bottom,
+ transparent,
+ rgb(var(--background-end-rgb))
+ )
+ rgb(var(--background-start-rgb));
+}
diff --git a/examples/nextjs-root-layout/src/app/layout.js b/examples/nextjs-root-layout/src/app/layout.js
new file mode 100644
index 0000000..52da278
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/layout.js
@@ -0,0 +1,26 @@
+import './globals.css'
+import { Inter } from 'next/font/google'
+
+// import { CartProvider } from 'use-shopping-cart'
+import CartProvider from './components/providers'
+import Layout from './components/Layout'
+
+const inter = Inter({ subsets: ['latin'] })
+
+export const metadata = {
+ title: 'Create Next App',
+ description: 'Generated by create next app'
+}
+
+export default function RootLayout({ children }) {
+ return (
+
+
+
+ {children}
+
+
+
+ )
+}
+
diff --git a/examples/nextjs-root-layout/src/app/page.js b/examples/nextjs-root-layout/src/app/page.js
new file mode 100644
index 0000000..d0bcb21
--- /dev/null
+++ b/examples/nextjs-root-layout/src/app/page.js
@@ -0,0 +1,13 @@
+import Product from './components/Product'
+import { products } from './data/products'
+
+export default function Home() {
+ return (
+
+ {products.map((product) => (
+
+ ))}
+
+ )
+}
+
diff --git a/examples/nextjs-root-layout/tailwind.config.js b/examples/nextjs-root-layout/tailwind.config.js
new file mode 100644
index 0000000..d53b2ea
--- /dev/null
+++ b/examples/nextjs-root-layout/tailwind.config.js
@@ -0,0 +1,18 @@
+/** @type {import('tailwindcss').Config} */
+module.exports = {
+ content: [
+ './src/pages/**/*.{js,ts,jsx,tsx,mdx}',
+ './src/components/**/*.{js,ts,jsx,tsx,mdx}',
+ './src/app/**/*.{js,ts,jsx,tsx,mdx}',
+ ],
+ theme: {
+ extend: {
+ backgroundImage: {
+ 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
+ 'gradient-conic':
+ 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
+ },
+ },
+ },
+ plugins: [],
+}
diff --git a/package.json b/package.json
index ffc70ca..fe494f4 100644
--- a/package.json
+++ b/package.json
@@ -5,6 +5,7 @@
"prepare": "husky install",
"dev:vite-react": "pnpm run bundle && pnpm --filter vite-react run dev",
"dev:nextjs": "pnpm run bundle && pnpm --filter nextjs run dev",
+ "dev:nextjs-root-layout": "pnpm run bundle && pnpm --filter nextjs-root-layout run dev",
"dev:typescript-cra": "pnpm run bundle && pnpm --filter typescript-usage run start",
"dev:docs": "pnpm run bundle && pnpm --filter docs run start",
"test": "pnpm --filter use-shopping-cart run test",
@@ -44,3 +45,4 @@
}
]
}
+
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index e1a6c3f..ef63119 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -70,6 +70,28 @@ importers:
postcss: 8.4.21
tailwindcss: 3.2.7_postcss@8.4.21
+ examples/nextjs-root-layout:
+ specifiers:
+ autoprefixer: 10.4.14
+ eslint: 8.40.0
+ eslint-config-next: 13.4.1
+ next: 13.4.1
+ postcss: 8.4.23
+ react: 18.2.0
+ react-dom: 18.2.0
+ tailwindcss: 3.3.2
+ use-shopping-cart: workspace:^3.1.5
+ dependencies:
+ autoprefixer: 10.4.14_postcss@8.4.23
+ eslint: 8.40.0
+ eslint-config-next: 13.4.1_jgkqkwom7vrxl4kyi454n2sy2i
+ next: 13.4.1_biqbaboplfbrettd7655fr4n2y
+ postcss: 8.4.23
+ react: 18.2.0
+ react-dom: 18.2.0_react@18.2.0
+ tailwindcss: 3.3.2
+ use-shopping-cart: link:../../use-shopping-cart
+
examples/typescript-usage:
specifiers:
'@babel/plugin-syntax-jsx': ^7.14.5
@@ -211,6 +233,7 @@ importers:
redux-persist: ^6.0.0
rollup: ^2.3.3
rollup-plugin-node-externals: ^2.2.0
+ rollup-plugin-preserve-directives: ^0.1.0
rollup-plugin-visualizer: ^4.2.2
typescript: ^4.3.4
uuid: ^8.3.1
@@ -276,6 +299,7 @@ importers:
redux-mock-store: 1.5.4
rollup: 2.79.1
rollup-plugin-node-externals: 2.2.0_builtin-modules@3.3.0
+ rollup-plugin-preserve-directives: 0.1.0_rollup@2.79.1
rollup-plugin-visualizer: 4.2.2_rollup@2.79.1
packages:
@@ -398,6 +422,11 @@ packages:
'@algolia/requester-common': 4.15.0
dev: false
+ /@alloc/quick-lru/5.2.0:
+ resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
+ engines: {node: '>=10'}
+ dev: false
+
/@ampproject/remapping/2.2.0:
resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==}
engines: {node: '>=6.0.0'}
@@ -3763,6 +3792,21 @@ packages:
dev: true
optional: true
+ /@eslint-community/eslint-utils/4.4.0_eslint@8.40.0:
+ resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ dependencies:
+ eslint: 8.40.0
+ eslint-visitor-keys: 3.4.1
+ dev: false
+
+ /@eslint-community/regexpp/4.5.1:
+ resolution: {integrity: sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ dev: false
+
/@eslint/eslintrc/0.4.3:
resolution: {integrity: sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==}
engines: {node: ^10.12.0 || >=12.0.0}
@@ -3779,6 +3823,28 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@eslint/eslintrc/2.0.3:
+ resolution: {integrity: sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ ajv: 6.12.6
+ debug: 4.3.4
+ espree: 9.5.2
+ globals: 13.20.0
+ ignore: 5.2.4
+ import-fresh: 3.3.0
+ js-yaml: 4.1.0
+ minimatch: 3.1.2
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /@eslint/js/8.40.0:
+ resolution: {integrity: sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
/@gar/promisify/1.1.3:
resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==}
@@ -3819,6 +3885,17 @@ packages:
'@hapi/hoek': 9.3.0
dev: false
+ /@humanwhocodes/config-array/0.11.8:
+ resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==}
+ engines: {node: '>=10.10.0'}
+ dependencies:
+ '@humanwhocodes/object-schema': 1.2.1
+ debug: 4.3.4
+ minimatch: 3.1.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/@humanwhocodes/config-array/0.5.0:
resolution: {integrity: sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==}
engines: {node: '>=10.10.0'}
@@ -3829,6 +3906,11 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@humanwhocodes/module-importer/1.0.1:
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+ dev: false
+
/@humanwhocodes/object-schema/1.2.1:
resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
@@ -4768,6 +4850,16 @@ packages:
resolution: {integrity: sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg==}
dev: false
+ /@next/env/13.4.1:
+ resolution: {integrity: sha512-eD6WCBMFjLFooLM19SIhSkWBHtaFrZFfg2Cxnyl3vS3DAdFRfnx5TY2RxlkuKXdIRCC0ySbtK9JXXt8qLCqzZg==}
+ dev: false
+
+ /@next/eslint-plugin-next/13.4.1:
+ resolution: {integrity: sha512-tVPS/2FKlA3ANCRCYZVT5jdbUKasBU8LG6bYqcNhyORDFTlDYa4cAWQJjZ7msIgLwMQIbL8CAsxrOL8maa/4Lg==}
+ dependencies:
+ glob: 7.1.7
+ dev: false
+
/@next/font/13.1.6:
resolution: {integrity: sha512-AITjmeb1RgX1HKMCiA39ztx2mxeAyxl4ljv2UoSBUGAbFFMg8MO7YAvjHCgFhD39hL7YTbFjol04e/BPBH5RzQ==}
dev: false
@@ -4799,6 +4891,15 @@ packages:
dev: false
optional: true
+ /@next/swc-darwin-arm64/13.4.1:
+ resolution: {integrity: sha512-eF8ARHtYfnoYtDa6xFHriUKA/Mfj/cCbmKb3NofeKhMccs65G6/loZ15a6wYCCx4rPAd6x4t1WmVYtri7EdeBg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-darwin-x64/13.1.6:
resolution: {integrity: sha512-/uOky5PaZDoaU99ohjtNcDTJ6ks/gZ5ykTQDvNZDjIoCxFe3+t06bxsTPY6tAO6uEAw5f6vVFX5H5KLwhrkZCA==}
engines: {node: '>= 10'}
@@ -4808,6 +4909,15 @@ packages:
dev: false
optional: true
+ /@next/swc-darwin-x64/13.4.1:
+ resolution: {integrity: sha512-7cmDgF9tGWTgn5Gw+vP17miJbH4wcraMHDCOHTYWkO/VeKT73dUWG23TNRLfgtCNSPgH4V5B4uLHoZTanx9bAw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-freebsd-x64/13.1.6:
resolution: {integrity: sha512-qaEALZeV7to6weSXk3Br80wtFQ7cFTpos/q+m9XVRFggu+8Ib895XhMWdJBzew6aaOcMvYR6KQ6JmHA2/eMzWw==}
engines: {node: '>= 10'}
@@ -4835,6 +4945,15 @@ packages:
dev: false
optional: true
+ /@next/swc-linux-arm64-gnu/13.4.1:
+ resolution: {integrity: sha512-qwJqmCri2ie8aTtE5gjTSr8S6O8B67KCYgVZhv9gKH44yvc/zXbAY8u23QGULsYOyh1islWE5sWfQNLOj9iryg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-linux-arm64-musl/13.1.6:
resolution: {integrity: sha512-ECagB8LGX25P9Mrmlc7Q/TQBb9rGScxHbv/kLqqIWs2fIXy6Y/EiBBiM72NTwuXUFCNrWR4sjUPSooVBJJ3ESQ==}
engines: {node: '>= 10'}
@@ -4844,6 +4963,15 @@ packages:
dev: false
optional: true
+ /@next/swc-linux-arm64-musl/13.4.1:
+ resolution: {integrity: sha512-qcC54tWNGDv/VVIFkazxhqH1Bnagjfs4enzELVRlUOoJPD2BGJTPI7z08pQPbbgxLtRiu8gl2mXvpB8WlOkMeA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-linux-x64-gnu/13.1.6:
resolution: {integrity: sha512-GT5w2mruk90V/I5g6ScuueE7fqj/d8Bui2qxdw6lFxmuTgMeol5rnzAv4uAoVQgClOUO/MULilzlODg9Ib3Y4Q==}
engines: {node: '>= 10'}
@@ -4853,6 +4981,15 @@ packages:
dev: false
optional: true
+ /@next/swc-linux-x64-gnu/13.4.1:
+ resolution: {integrity: sha512-9TeWFlpLsBosZ+tsm/rWBaMwt5It9tPH8m3nawZqFUUrZyGRfGcI67js774vtx0k3rL9qbyY6+3pw9BCVpaYUA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-linux-x64-musl/13.1.6:
resolution: {integrity: sha512-keFD6KvwOPzmat4TCnlnuxJCQepPN+8j3Nw876FtULxo8005Y9Ghcl7ACcR8GoiKoddAq8gxNBrpjoxjQRHeAQ==}
engines: {node: '>= 10'}
@@ -4862,6 +4999,15 @@ packages:
dev: false
optional: true
+ /@next/swc-linux-x64-musl/13.4.1:
+ resolution: {integrity: sha512-sNDGaWmSqTS4QRUzw61wl4mVPeSqNIr1OOjLlQTRuyInxMxtqImRqdvzDvFTlDfdeUMU/DZhWGYoHrXLlZXe6A==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-win32-arm64-msvc/13.1.6:
resolution: {integrity: sha512-OwertslIiGQluFvHyRDzBCIB07qJjqabAmINlXUYt7/sY7Q7QPE8xVi5beBxX/rxTGPIbtyIe3faBE6Z2KywhQ==}
engines: {node: '>= 10'}
@@ -4871,6 +5017,15 @@ packages:
dev: false
optional: true
+ /@next/swc-win32-arm64-msvc/13.4.1:
+ resolution: {integrity: sha512-+CXZC7u1iXdLRudecoUYbhbsXpglYv8KFYsFxKBPn7kg+bk7eJo738wAA4jXIl8grTF2mPdmO93JOQym+BlYGA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-win32-ia32-msvc/13.1.6:
resolution: {integrity: sha512-g8zowiuP8FxUR9zslPmlju7qYbs2XBtTLVSxVikPtUDQedhcls39uKYLvOOd1JZg0ehyhopobRoH1q+MHlIN/w==}
engines: {node: '>= 10'}
@@ -4880,6 +5035,15 @@ packages:
dev: false
optional: true
+ /@next/swc-win32-ia32-msvc/13.4.1:
+ resolution: {integrity: sha512-vIoXVVc7UYO68VwVMDKwJC2+HqAZQtCYiVlApyKEeIPIQpz2gpufzGxk1z3/gwrJt/kJ5CDZjlhYDCzd3hdz+g==}
+ engines: {node: '>= 10'}
+ cpu: [ia32]
+ os: [win32]
+ requiresBuild: true
+ dev: false
+ optional: true
+
/@next/swc-win32-x64-msvc/13.1.6:
resolution: {integrity: sha512-Ls2OL9hi3YlJKGNdKv8k3X/lLgc3VmLG3a/DeTkAd+lAituJp8ZHmRmm9f9SL84fT3CotlzcgbdaCDfFwFA6bA==}
engines: {node: '>= 10'}
@@ -4889,6 +5053,15 @@ packages:
dev: false
optional: true
+ /@next/swc-win32-x64-msvc/13.4.1:
+ resolution: {integrity: sha512-n8V5ImLQZibKTu10UUdI3nIeTLkliEXe628qxqW9v8My3BAH2a7H0SaCqkV2OgqFnn8sG1wxKYw9/SNJ632kSA==}
+ 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'}
@@ -5342,6 +5515,18 @@ packages:
'@octokit/openapi-types': 16.0.0
dev: true
+ /@pkgr/utils/2.4.0:
+ resolution: {integrity: sha512-2OCURAmRtdlL8iUDTypMrrxfwe8frXTeXaxGsVOaYtc/wrUyk8Z/0OBetM7cdlsy7ZFWlMX72VogKeh+A4Xcjw==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ dependencies:
+ cross-spawn: 7.0.3
+ fast-glob: 3.2.12
+ is-glob: 4.0.3
+ open: 9.1.0
+ picocolors: 1.0.0
+ tslib: 2.5.0
+ dev: false
+
/@pmmmwh/react-refresh-webpack-plugin/0.4.3_t4ezke4netssl24gycl5qjajya:
resolution: {integrity: sha512-br5Qwvh8D2OQqSXpd1g/xqXKnK0r+Jz6qVKBbWmpUcrbGOxUrf39V5oZ1876084CGn18uMdR5uvPqBv9UqtBjQ==}
engines: {node: '>= 10.x'}
@@ -5588,6 +5773,10 @@ packages:
rollup: 2.79.1
dev: true
+ /@rushstack/eslint-patch/1.2.0:
+ resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==}
+ dev: false
+
/@sideway/address/4.1.4:
resolution: {integrity: sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==}
dependencies:
@@ -5999,6 +6188,12 @@ packages:
tslib: 2.5.0
dev: false
+ /@swc/helpers/0.5.1:
+ resolution: {integrity: sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==}
+ dependencies:
+ tslib: 2.5.0
+ dev: false
+
/@szmarczak/http-timer/1.1.2:
resolution: {integrity: sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==}
engines: {node: '>=6'}
@@ -6725,6 +6920,26 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@typescript-eslint/parser/5.59.2_jgkqkwom7vrxl4kyi454n2sy2i:
+ resolution: {integrity: sha512-uq0sKyw6ao1iFOZZGk9F8Nro/8+gfB5ezl1cA06SrqbgJAt0SRoFhb9pXaHvkrxUpZaoLxt8KlovHNk8Gp6/HQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/scope-manager': 5.59.2
+ '@typescript-eslint/types': 5.59.2
+ '@typescript-eslint/typescript-estree': 5.59.2_typescript@4.9.5
+ debug: 4.3.4
+ eslint: 8.40.0
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/@typescript-eslint/scope-manager/4.33.0:
resolution: {integrity: sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==}
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
@@ -6732,6 +6947,14 @@ packages:
'@typescript-eslint/types': 4.33.0
'@typescript-eslint/visitor-keys': 4.33.0
+ /@typescript-eslint/scope-manager/5.59.2:
+ resolution: {integrity: sha512-dB1v7ROySwQWKqQ8rEWcdbTsFjh2G0vn8KUyvTXdPoyzSL6lLGkiXEV5CvpJsEe9xIdKV+8Zqb7wif2issoOFA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': 5.59.2
+ '@typescript-eslint/visitor-keys': 5.59.2
+ dev: false
+
/@typescript-eslint/types/3.10.1:
resolution: {integrity: sha512-+3+FCUJIahE9q0lDi1WleYzjCwJs5hIsbugIgnbB+dSCYUxl8L6PwmsyOPFZde2hc1DlTo/xnkOgiTLSyAbHiQ==}
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
@@ -6740,6 +6963,11 @@ packages:
resolution: {integrity: sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==}
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
+ /@typescript-eslint/types/5.59.2:
+ resolution: {integrity: sha512-LbJ/HqoVs2XTGq5shkiKaNTuVv5tTejdHgfdjqRUGdYhjW1crm/M7og2jhVskMt8/4wS3T1+PfFvL1K3wqYj4w==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
/@typescript-eslint/typescript-estree/2.34.0_shc5hhm663u77riiouotjjskuu:
resolution: {integrity: sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==}
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
@@ -6844,6 +7072,27 @@ packages:
transitivePeerDependencies:
- supports-color
+ /@typescript-eslint/typescript-estree/5.59.2_typescript@4.9.5:
+ resolution: {integrity: sha512-+j4SmbwVmZsQ9jEyBMgpuBD0rKwi9RxRpjX71Brr73RsYnEr3Lt5QZ624Bxphp8HUkSKfqGnPJp1kA5nl0Sh7Q==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@typescript-eslint/types': 5.59.2
+ '@typescript-eslint/visitor-keys': 5.59.2
+ debug: 4.3.4
+ globby: 11.1.0
+ is-glob: 4.0.3
+ semver: 7.3.8
+ tsutils: 3.21.0_typescript@4.9.5
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/@typescript-eslint/visitor-keys/3.10.1:
resolution: {integrity: sha512-9JgC82AaQeglebjZMgYR5wgmfUdUc+EitGUUMW8u2nDckaeimzW+VsoLV6FoimPv2id3VQzfjwBxEMVz08ameQ==}
engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1}
@@ -6857,6 +7106,14 @@ packages:
'@typescript-eslint/types': 4.33.0
eslint-visitor-keys: 2.1.0
+ /@typescript-eslint/visitor-keys/5.59.2:
+ resolution: {integrity: sha512-EEpsO8m3RASrKAHI9jpavNv9NlEUebV4qmF1OWxSTtKSFBpC1NCmWazDQHFivRf0O1DV11BA645yrLEVQ0/Lig==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ '@typescript-eslint/types': 5.59.2
+ eslint-visitor-keys: 3.4.1
+ dev: false
+
/@ungap/from-entries/0.2.1:
resolution: {integrity: sha512-CAqefTFAfnUPwYqsWHXpOxHaq1Zo5UQ3m9Zm2p09LggGe57rqHoBn3c++xcoomzXKynAUuiBMDUCQvKMnXjUpA==}
dev: true
@@ -7148,6 +7405,14 @@ packages:
dependencies:
acorn: 7.4.1
+ /acorn-jsx/5.3.2_acorn@8.8.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+ dependencies:
+ acorn: 8.8.2
+ dev: false
+
/acorn-node/1.8.2:
resolution: {integrity: sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==}
dependencies:
@@ -7430,7 +7695,6 @@ packages:
/any-promise/1.3.0:
resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
- dev: true
/anymatch/2.0.0:
resolution: {integrity: sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==}
@@ -7759,6 +8023,22 @@ packages:
postcss: 8.4.21
postcss-value-parser: 4.2.0
+ /autoprefixer/10.4.14_postcss@8.4.23:
+ resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+ dependencies:
+ browserslist: 4.21.5
+ caniuse-lite: 1.0.30001464
+ fraction.js: 4.2.0
+ normalize-range: 0.1.2
+ picocolors: 1.0.0
+ postcss: 8.4.23
+ postcss-value-parser: 4.2.0
+ dev: false
+
/autoprefixer/9.8.8:
resolution: {integrity: sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==}
hasBin: true
@@ -8218,6 +8498,11 @@ packages:
hoopy: 0.1.4
tryer: 1.0.1
+ /big-integer/1.6.51:
+ resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==}
+ engines: {node: '>=0.6'}
+ dev: false
+
/big.js/5.2.2:
resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
@@ -8372,6 +8657,13 @@ packages:
wrap-ansi: 8.1.0
dev: false
+ /bplist-parser/0.2.0:
+ resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==}
+ engines: {node: '>= 5.10.0'}
+ dependencies:
+ big-integer: 1.6.51
+ dev: false
+
/brace-expansion/1.1.11:
resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
dependencies:
@@ -8583,6 +8875,20 @@ packages:
resolution: {integrity: sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ==}
dev: true
+ /bundle-name/3.0.0:
+ resolution: {integrity: sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==}
+ engines: {node: '>=12'}
+ dependencies:
+ run-applescript: 5.0.0
+ dev: false
+
+ /busboy/1.6.0:
+ resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==}
+ engines: {node: '>=10.16.0'}
+ dependencies:
+ streamsearch: 1.1.0
+ dev: false
+
/byline/5.0.0:
resolution: {integrity: sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==}
engines: {node: '>=0.10.0'}
@@ -10467,6 +10773,24 @@ packages:
resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==}
engines: {node: '>=0.10.0'}
+ /default-browser-id/3.0.0:
+ resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==}
+ engines: {node: '>=12'}
+ dependencies:
+ bplist-parser: 0.2.0
+ untildify: 4.0.0
+ dev: false
+
+ /default-browser/4.0.0:
+ resolution: {integrity: sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==}
+ engines: {node: '>=14.16'}
+ dependencies:
+ bundle-name: 3.0.0
+ default-browser-id: 3.0.0
+ execa: 7.1.1
+ titleize: 3.0.0
+ dev: false
+
/default-gateway/4.2.0:
resolution: {integrity: sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==}
engines: {node: '>=6'}
@@ -10493,6 +10817,11 @@ packages:
resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
engines: {node: '>=8'}
+ /define-lazy-prop/3.0.0:
+ resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}
+ engines: {node: '>=12'}
+ dev: false
+
/define-properties/1.2.0:
resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==}
engines: {node: '>= 0.4'}
@@ -10788,7 +11117,6 @@ packages:
/didyoumean/1.2.2:
resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
- dev: true
/diff-sequences/26.6.2:
resolution: {integrity: sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q==}
@@ -10816,7 +11144,6 @@ packages:
/dlv/1.1.3:
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
- dev: true
/dns-equal/1.0.0:
resolution: {integrity: sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==}
@@ -11446,6 +11773,31 @@ packages:
optionalDependencies:
source-map: 0.6.1
+ /eslint-config-next/13.4.1_jgkqkwom7vrxl4kyi454n2sy2i:
+ resolution: {integrity: sha512-ajuxjCkW1hvirr0EQZb3/B/bFH52Z7CT89uCtTcICFL9l30i5c8hN4p0LXvTjdOXNPV5fEDcxBgGHgXdzTj1/A==}
+ peerDependencies:
+ eslint: ^7.23.0 || ^8.0.0
+ typescript: '>=3.3.1'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ dependencies:
+ '@next/eslint-plugin-next': 13.4.1
+ '@rushstack/eslint-patch': 1.2.0
+ '@typescript-eslint/parser': 5.59.2_jgkqkwom7vrxl4kyi454n2sy2i
+ eslint: 8.40.0
+ eslint-import-resolver-node: 0.3.7
+ eslint-import-resolver-typescript: 3.5.5_z3vaj6szdsyhfxoum3z2qrcb2a
+ eslint-plugin-import: 2.27.5_eslint@8.40.0
+ eslint-plugin-jsx-a11y: 6.7.1_eslint@8.40.0
+ eslint-plugin-react: 7.32.2_eslint@8.40.0
+ eslint-plugin-react-hooks: 4.6.0_eslint@8.40.0
+ typescript: 4.9.5
+ transitivePeerDependencies:
+ - eslint-import-resolver-webpack
+ - supports-color
+ dev: false
+
/eslint-config-react-app/6.0.0_kohjzaa6aqi6ukoymo4oeljby4:
resolution: {integrity: sha512-bpoAAC+YRfzq0dsTk+6v9aHm/uqnDwayNAXleMypGl6CpxI9oXXscVHo4fk3eJPIn+rsbtNetB4r/ZIidFIE8A==}
engines: {node: ^10.12.0 || >=12.0.0}
@@ -11530,6 +11882,60 @@ packages:
transitivePeerDependencies:
- supports-color
+ /eslint-import-resolver-typescript/3.5.5_z3vaj6szdsyhfxoum3z2qrcb2a:
+ resolution: {integrity: sha512-TdJqPHs2lW5J9Zpe17DZNQuDnox4xo2o+0tE7Pggain9Rbc19ik8kFtXdxZ250FVx2kF4vlt2RSf4qlUpG7bhw==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ eslint: '*'
+ eslint-plugin-import: '*'
+ dependencies:
+ debug: 4.3.4
+ enhanced-resolve: 5.12.0
+ eslint: 8.40.0
+ eslint-module-utils: 2.7.4_mqrncgw2rbveclzcza5iljyn5y
+ eslint-plugin-import: 2.27.5_eslint@8.40.0
+ get-tsconfig: 4.5.0
+ globby: 13.1.3
+ is-core-module: 2.11.0
+ is-glob: 4.0.3
+ synckit: 0.8.5
+ transitivePeerDependencies:
+ - '@typescript-eslint/parser'
+ - eslint-import-resolver-node
+ - eslint-import-resolver-webpack
+ - supports-color
+ dev: false
+
+ /eslint-module-utils/2.7.4_mqrncgw2rbveclzcza5iljyn5y:
+ resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
+ dependencies:
+ '@typescript-eslint/parser': 5.59.2_jgkqkwom7vrxl4kyi454n2sy2i
+ debug: 3.2.7
+ eslint: 8.40.0
+ eslint-import-resolver-node: 0.3.7
+ eslint-import-resolver-typescript: 3.5.5_z3vaj6szdsyhfxoum3z2qrcb2a
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/eslint-module-utils/2.7.4_n7wmpe4hfzj47xhbzj4etqyjdi:
resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==}
engines: {node: '>=4'}
@@ -11558,6 +11964,34 @@ packages:
transitivePeerDependencies:
- supports-color
+ /eslint-module-utils/2.7.4_psn6fw4moe3x2es443hwiatkh4:
+ resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
+ dependencies:
+ debug: 3.2.7
+ eslint: 8.40.0
+ eslint-import-resolver-node: 0.3.7
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/eslint-plugin-es/3.0.1_eslint@7.32.0:
resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==}
engines: {node: '>=8.10.0'}
@@ -11579,6 +12013,38 @@ packages:
lodash: 4.17.21
string-natural-compare: 3.0.1
+ /eslint-plugin-import/2.27.5_eslint@8.40.0:
+ resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ dependencies:
+ array-includes: 3.1.6
+ array.prototype.flat: 1.3.1
+ array.prototype.flatmap: 1.3.1
+ debug: 3.2.7
+ doctrine: 2.1.0
+ eslint: 8.40.0
+ eslint-import-resolver-node: 0.3.7
+ eslint-module-utils: 2.7.4_psn6fw4moe3x2es443hwiatkh4
+ has: 1.0.3
+ is-core-module: 2.11.0
+ is-glob: 4.0.3
+ minimatch: 3.1.2
+ object.values: 1.1.6
+ resolve: 1.22.1
+ semver: 6.3.0
+ tsconfig-paths: 3.14.2
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+ dev: false
+
/eslint-plugin-import/2.27.5_ffi3uiz42rv3jyhs6cr7p7qqry:
resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==}
engines: {node: '>=4'}
@@ -11652,6 +12118,31 @@ packages:
object.fromentries: 2.0.6
semver: 6.3.0
+ /eslint-plugin-jsx-a11y/6.7.1_eslint@8.40.0:
+ resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ dependencies:
+ '@babel/runtime': 7.21.0
+ aria-query: 5.1.3
+ array-includes: 3.1.6
+ array.prototype.flatmap: 1.3.1
+ ast-types-flow: 0.0.7
+ axe-core: 4.6.3
+ axobject-query: 3.1.1
+ damerau-levenshtein: 1.0.8
+ emoji-regex: 9.2.2
+ eslint: 8.40.0
+ has: 1.0.3
+ jsx-ast-utils: 3.3.3
+ language-tags: 1.0.5
+ minimatch: 3.1.2
+ object.entries: 1.1.6
+ object.fromentries: 2.0.6
+ semver: 6.3.0
+ dev: false
+
/eslint-plugin-node/11.1.0_eslint@7.32.0:
resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==}
engines: {node: '>=8.10.0'}
@@ -11680,6 +12171,15 @@ packages:
dependencies:
eslint: 7.32.0
+ /eslint-plugin-react-hooks/4.6.0_eslint@8.40.0:
+ resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0
+ dependencies:
+ eslint: 8.40.0
+ dev: false
+
/eslint-plugin-react/7.32.2_eslint@7.32.0:
resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==}
engines: {node: '>=4'}
@@ -11703,6 +12203,30 @@ packages:
semver: 6.3.0
string.prototype.matchall: 4.0.8
+ /eslint-plugin-react/7.32.2_eslint@8.40.0:
+ resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+ dependencies:
+ array-includes: 3.1.6
+ array.prototype.flatmap: 1.3.1
+ array.prototype.tosorted: 1.1.1
+ doctrine: 2.1.0
+ eslint: 8.40.0
+ estraverse: 5.3.0
+ jsx-ast-utils: 3.3.3
+ minimatch: 3.1.2
+ object.entries: 1.1.6
+ object.fromentries: 2.0.6
+ object.hasown: 1.1.2
+ object.values: 1.1.6
+ prop-types: 15.8.1
+ resolve: 2.0.0-next.4
+ semver: 6.3.0
+ string.prototype.matchall: 4.0.8
+ dev: false
+
/eslint-plugin-standard/4.1.0_eslint@7.32.0:
resolution: {integrity: sha512-ZL7+QRixjTR6/528YNGyDotyffm5OQst/sGxKDwGb9Uqs4In5Egi4+jbobhqJoyoCM6/7v/1A5fhQ7ScMtDjaQ==}
peerDependencies:
@@ -11737,6 +12261,14 @@ packages:
esrecurse: 4.3.0
estraverse: 4.3.0
+ /eslint-scope/7.2.0:
+ resolution: {integrity: sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+ dev: false
+
/eslint-utils/2.1.0:
resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==}
engines: {node: '>=6'}
@@ -11760,6 +12292,11 @@ packages:
resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==}
engines: {node: '>=10'}
+ /eslint-visitor-keys/3.4.1:
+ resolution: {integrity: sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dev: false
+
/eslint-webpack-plugin/2.7.0_a7xmpkungfd35is2c4kqy55h3i:
resolution: {integrity: sha512-bNaVVUvU4srexGhVcayn/F4pJAz19CWBkKoMx7aSQ4wtTbZQCnG5O9LHCE42mM+JSKOUp7n6vd5CIwzj7lOVGA==}
engines: {node: '>= 10.13.0'}
@@ -11824,6 +12361,55 @@ packages:
transitivePeerDependencies:
- supports-color
+ /eslint/8.40.0:
+ resolution: {integrity: sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ hasBin: true
+ dependencies:
+ '@eslint-community/eslint-utils': 4.4.0_eslint@8.40.0
+ '@eslint-community/regexpp': 4.5.1
+ '@eslint/eslintrc': 2.0.3
+ '@eslint/js': 8.40.0
+ '@humanwhocodes/config-array': 0.11.8
+ '@humanwhocodes/module-importer': 1.0.1
+ '@nodelib/fs.walk': 1.2.8
+ ajv: 6.12.6
+ chalk: 4.1.2
+ cross-spawn: 7.0.3
+ debug: 4.3.4
+ doctrine: 3.0.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 7.2.0
+ eslint-visitor-keys: 3.4.1
+ espree: 9.5.2
+ esquery: 1.5.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ globals: 13.20.0
+ grapheme-splitter: 1.0.4
+ ignore: 5.2.4
+ import-fresh: 3.3.0
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ is-path-inside: 3.0.3
+ js-sdsl: 4.4.0
+ js-yaml: 4.1.0
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 3.1.2
+ natural-compare: 1.4.0
+ optionator: 0.9.1
+ strip-ansi: 6.0.1
+ strip-json-comments: 3.1.1
+ text-table: 0.2.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/espree/7.3.1:
resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==}
engines: {node: ^10.12.0 || >=12.0.0}
@@ -11832,6 +12418,15 @@ packages:
acorn-jsx: 5.3.2_acorn@7.4.1
eslint-visitor-keys: 1.3.0
+ /espree/9.5.2:
+ resolution: {integrity: sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ dependencies:
+ acorn: 8.8.2
+ acorn-jsx: 5.3.2_acorn@8.8.2
+ eslint-visitor-keys: 3.4.1
+ dev: false
+
/esprima/4.0.1:
resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
engines: {node: '>=4'}
@@ -11995,6 +12590,21 @@ packages:
signal-exit: 3.0.7
strip-final-newline: 2.0.0
+ /execa/7.1.1:
+ resolution: {integrity: sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==}
+ engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0}
+ dependencies:
+ cross-spawn: 7.0.3
+ get-stream: 6.0.1
+ human-signals: 4.3.1
+ is-stream: 3.0.0
+ merge-stream: 2.0.0
+ npm-run-path: 5.1.0
+ onetime: 6.0.0
+ signal-exit: 3.0.7
+ strip-final-newline: 3.0.0
+ dev: false
+
/exit/0.1.2:
resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
engines: {node: '>= 0.8.0'}
@@ -12842,7 +13452,7 @@ packages:
resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==}
engines: {node: '>= 4.0'}
os: [darwin]
- deprecated: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
+ deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2
requiresBuild: true
dependencies:
bindings: 1.5.0
@@ -12990,6 +13600,10 @@ packages:
call-bind: 1.0.2
get-intrinsic: 1.2.0
+ /get-tsconfig/4.5.0:
+ resolution: {integrity: sha512-MjhiaIWCJ1sAU4pIQ5i5OfOuHHxVo1oYeNsWTON7jxYkod8pHocXeh+SSbmu5OZZZK73B6cbJ2XADzXehLyovQ==}
+ dev: false
+
/get-value/2.0.6:
resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==}
engines: {node: '>=0.10.0'}
@@ -13077,7 +13691,17 @@ packages:
minimatch: 3.1.2
once: 1.4.0
path-is-absolute: 1.0.1
- dev: true
+
+ /glob/7.1.7:
+ resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==}
+ dependencies:
+ fs.realpath: 1.0.0
+ inflight: 1.0.6
+ inherits: 2.0.4
+ minimatch: 3.1.2
+ once: 1.4.0
+ path-is-absolute: 1.0.1
+ dev: false
/glob/7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
@@ -13274,6 +13898,10 @@ packages:
/graceful-fs/4.2.10:
resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
+ /grapheme-splitter/1.0.4:
+ resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
+ dev: false
+
/gray-matter/4.0.3:
resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
engines: {node: '>=6.0'}
@@ -13860,6 +14488,11 @@ packages:
resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
engines: {node: '>=10.17.0'}
+ /human-signals/4.3.1:
+ resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==}
+ engines: {node: '>=14.18.0'}
+ dev: false
+
/humanize-url/1.0.1:
resolution: {integrity: sha512-RtgTzXCPVb/te+e82NDhAc5paj+DuKSratIGAr+v+HZK24eAQ8LMoBGYoL7N/O+9iEc33AKHg45dOMKw3DNldQ==}
engines: {node: '>=0.10.0'}
@@ -14302,6 +14935,12 @@ packages:
engines: {node: '>=8'}
hasBin: true
+ /is-docker/3.0.0:
+ resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ hasBin: true
+ dev: false
+
/is-extendable/0.1.1:
resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
engines: {node: '>=0.10.0'}
@@ -14358,6 +14997,14 @@ packages:
resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==}
dev: false
+ /is-inside-container/1.0.0:
+ resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
+ engines: {node: '>=14.16'}
+ hasBin: true
+ dependencies:
+ is-docker: 3.0.0
+ dev: false
+
/is-installed-globally/0.3.2:
resolution: {integrity: sha512-wZ8x1js7Ia0kecP/CHM/3ABkAmujX7WPvQk6uu3Fly/Mk44pySulQpnHG46OMjHGXApINnV4QhY3SWnECO2z5g==}
engines: {node: '>=8'}
@@ -14526,6 +15173,11 @@ packages:
resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
engines: {node: '>=8'}
+ /is-stream/3.0.0:
+ resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dev: false
+
/is-string/1.0.7:
resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
engines: {node: '>= 0.4'}
@@ -15331,6 +15983,11 @@ packages:
- ts-node
- utf-8-validate
+ /jiti/1.18.2:
+ resolution: {integrity: sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==}
+ hasBin: true
+ dev: false
+
/jmespath/0.16.0:
resolution: {integrity: sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw==}
engines: {node: '>= 0.6.0'}
@@ -15346,6 +16003,10 @@ packages:
'@sideway/pinpoint': 2.0.0
dev: false
+ /js-sdsl/4.4.0:
+ resolution: {integrity: sha512-FfVSdx6pJ41Oa+CF7RDaFmTnCaFhua+SNYQX74riGOpl96x+2jQCqEfQ2bnXu/5DPCqlRuiqyvTJM0Qjz26IVg==}
+ dev: false
+
/js-string-escape/1.0.1:
resolution: {integrity: sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==}
engines: {node: '>= 0.8'}
@@ -16364,6 +17025,11 @@ packages:
engines: {node: '>=8'}
dev: true
+ /mimic-fn/4.0.0:
+ resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==}
+ engines: {node: '>=12'}
+ dev: false
+
/mimic-response/1.0.1:
resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==}
engines: {node: '>=4'}
@@ -16607,7 +17273,6 @@ packages:
any-promise: 1.3.0
object-assign: 4.1.1
thenify-all: 1.6.0
- dev: true
/nan/2.17.0:
resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==}
@@ -16618,6 +17283,12 @@ packages:
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
hasBin: true
+ /nanoid/3.3.6:
+ resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+ dev: false
+
/nanomatch/1.2.13:
resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==}
engines: {node: '>=0.10.0'}
@@ -17002,6 +17673,51 @@ packages:
- babel-plugin-macros
dev: false
+ /next/13.4.1_biqbaboplfbrettd7655fr4n2y:
+ resolution: {integrity: sha512-JBw2kAIyhKDpjhEWvNVoFeIzNp9xNxg8wrthDOtMctfn3EpqGCmW0FSviNyGgOSOSn6zDaX48pmvbdf6X2W9xA==}
+ engines: {node: '>=16.8.0'}
+ hasBin: true
+ peerDependencies:
+ '@opentelemetry/api': ^1.1.0
+ fibers: '>= 3.1.0'
+ node-sass: ^6.0.0 || ^7.0.0
+ react: ^18.2.0
+ react-dom: ^18.2.0
+ sass: ^1.3.0
+ peerDependenciesMeta:
+ '@opentelemetry/api':
+ optional: true
+ fibers:
+ optional: true
+ node-sass:
+ optional: true
+ sass:
+ optional: true
+ dependencies:
+ '@next/env': 13.4.1
+ '@swc/helpers': 0.5.1
+ busboy: 1.6.0
+ caniuse-lite: 1.0.30001464
+ postcss: 8.4.14
+ react: 18.2.0
+ react-dom: 18.2.0_react@18.2.0
+ styled-jsx: 5.1.1_react@18.2.0
+ zod: 3.21.4
+ optionalDependencies:
+ '@next/swc-darwin-arm64': 13.4.1
+ '@next/swc-darwin-x64': 13.4.1
+ '@next/swc-linux-arm64-gnu': 13.4.1
+ '@next/swc-linux-arm64-musl': 13.4.1
+ '@next/swc-linux-x64-gnu': 13.4.1
+ '@next/swc-linux-x64-musl': 13.4.1
+ '@next/swc-win32-arm64-msvc': 13.4.1
+ '@next/swc-win32-ia32-msvc': 13.4.1
+ '@next/swc-win32-x64-msvc': 13.4.1
+ transitivePeerDependencies:
+ - '@babel/core'
+ - babel-plugin-macros
+ dev: false
+
/nice-try/1.0.5:
resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==}
@@ -17239,6 +17955,13 @@ packages:
dependencies:
path-key: 3.1.1
+ /npm-run-path/5.1.0:
+ resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ dependencies:
+ path-key: 4.0.0
+ dev: false
+
/npmlog/4.1.2:
resolution: {integrity: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==}
dependencies:
@@ -17301,7 +18024,6 @@ packages:
/object-hash/3.0.0:
resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
engines: {node: '>= 6'}
- dev: true
/object-inspect/1.12.3:
resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==}
@@ -17427,6 +18149,13 @@ packages:
dependencies:
mimic-fn: 2.1.0
+ /onetime/6.0.0:
+ resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==}
+ engines: {node: '>=12'}
+ dependencies:
+ mimic-fn: 4.0.0
+ dev: false
+
/only/0.0.2:
resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==}
dev: true
@@ -17458,6 +18187,16 @@ packages:
is-docker: 2.2.1
is-wsl: 2.2.0
+ /open/9.1.0:
+ resolution: {integrity: sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==}
+ engines: {node: '>=14.16'}
+ dependencies:
+ default-browser: 4.0.0
+ define-lazy-prop: 3.0.0
+ is-inside-container: 1.0.0
+ is-wsl: 2.2.0
+ dev: false
+
/opener/1.5.2:
resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==}
hasBin: true
@@ -17848,6 +18587,11 @@ packages:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
+ /path-key/4.0.0:
+ resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==}
+ engines: {node: '>=12'}
+ dev: false
+
/path-parse/1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
@@ -18269,6 +19013,18 @@ packages:
resolve: 1.22.1
dev: true
+ /postcss-import/15.1.0_postcss@8.4.23:
+ resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ postcss: ^8.0.0
+ dependencies:
+ postcss: 8.4.23
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.2
+ dev: false
+
/postcss-initial/3.0.4:
resolution: {integrity: sha512-3RLn6DIpMsK1l5UUy9jxQvoDeUN4gP939tDcKUHD/kM8SGSKbFAnvkpFpj3Bhtz3HGk1jWY5ZNWX6mPta5M9fg==}
dependencies:
@@ -18284,6 +19040,16 @@ packages:
postcss: 8.4.21
dev: true
+ /postcss-js/4.0.1_postcss@8.4.23:
+ 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.23
+ dev: false
+
/postcss-lab-function/2.0.1:
resolution: {integrity: sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==}
engines: {node: '>=6.0.0'}
@@ -18316,6 +19082,23 @@ packages:
yaml: 1.10.2
dev: true
+ /postcss-load-config/4.0.1_postcss@8.4.23:
+ resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==}
+ engines: {node: '>= 14'}
+ peerDependencies:
+ postcss: '>=8.0.9'
+ ts-node: '>=9.0.0'
+ peerDependenciesMeta:
+ postcss:
+ optional: true
+ ts-node:
+ optional: true
+ dependencies:
+ lilconfig: 2.1.0
+ postcss: 8.4.23
+ yaml: 2.2.2
+ dev: false
+
/postcss-loader/3.0.0:
resolution: {integrity: sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==}
engines: {node: '>= 6'}
@@ -18565,6 +19348,16 @@ packages:
postcss-selector-parser: 6.0.11
dev: true
+ /postcss-nested/6.0.1_postcss@8.4.23:
+ resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.2.14
+ dependencies:
+ postcss: 8.4.23
+ postcss-selector-parser: 6.0.11
+ dev: false
+
/postcss-nesting/7.0.1:
resolution: {integrity: sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==}
engines: {node: '>=6.0.0'}
@@ -19023,7 +19816,7 @@ packages:
resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==}
engines: {node: ^10 || ^12 || >=14}
dependencies:
- nanoid: 3.3.4
+ nanoid: 3.3.6
picocolors: 1.0.0
source-map-js: 1.0.2
dev: false
@@ -19036,6 +19829,15 @@ packages:
picocolors: 1.0.0
source-map-js: 1.0.2
+ /postcss/8.4.23:
+ resolution: {integrity: sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==}
+ engines: {node: ^10 || ^12 || >=14}
+ dependencies:
+ nanoid: 3.3.6
+ picocolors: 1.0.0
+ source-map-js: 1.0.2
+ dev: false
+
/precinct/6.3.1:
resolution: {integrity: sha512-JAwyLCgTylWminoD7V0VJwMElWmwrVSR6r9HaPWCoswkB4iFzX7aNtO7VBfAVPy+NhmjKb8IF8UmlWJXzUkOIQ==}
engines: {node: '>=6.0.0'}
@@ -19878,7 +20680,6 @@ packages:
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
dependencies:
pify: 2.3.0
- dev: true
/read-package-json-fast/2.0.3:
resolution: {integrity: sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==}
@@ -20377,6 +21178,15 @@ packages:
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
+ /resolve/1.22.2:
+ resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
+ hasBin: true
+ dependencies:
+ is-core-module: 2.11.0
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+ dev: false
+
/resolve/2.0.0-next.4:
resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==}
hasBin: true
@@ -20495,6 +21305,14 @@ packages:
rollup-plugin-inject: 3.0.2
dev: true
+ /rollup-plugin-preserve-directives/0.1.0_rollup@2.79.1:
+ resolution: {integrity: sha512-fgzIK3hwF/afa6L1Qdsvshn0JlCHZRx0Sh9l0jjUgz3VK0unMFuEB4uqL3Vdae4OXkn+MBYCeNEN9vm81IteiA==}
+ peerDependencies:
+ rollup: 2.x || 3.x
+ dependencies:
+ rollup: 2.79.1
+ dev: true
+
/rollup-plugin-terser/5.3.1_rollup@1.32.1:
resolution: {integrity: sha512-1pkwkervMJQGFYvM9nscrUoncPwiKR/K+bHdjv6PFgRo3cgPHoRT83y2Aa3GvINj4539S15t/tpFPb775TDs6w==}
deprecated: This package has been deprecated and is no longer maintained. Please use @rollup/plugin-terser
@@ -20582,6 +21400,13 @@ packages:
strip-json-comments: 3.1.1
dev: false
+ /run-applescript/5.0.0:
+ resolution: {integrity: sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==}
+ engines: {node: '>=12'}
+ dependencies:
+ execa: 5.1.1
+ dev: false
+
/run-async/2.4.1:
resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==}
engines: {node: '>=0.12.0'}
@@ -21485,6 +22310,11 @@ packages:
/stream-shift/1.0.1:
resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==}
+ /streamsearch/1.1.0:
+ resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==}
+ engines: {node: '>=10.0.0'}
+ dev: false
+
/strict-uri-encode/1.1.0:
resolution: {integrity: sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==}
engines: {node: '>=0.10.0'}
@@ -21682,6 +22512,11 @@ packages:
resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
engines: {node: '>=6'}
+ /strip-final-newline/3.0.0:
+ resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==}
+ engines: {node: '>=12'}
+ dev: false
+
/strip-indent/3.0.0:
resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
engines: {node: '>=8'}
@@ -21803,6 +22638,20 @@ packages:
ts-interface-checker: 0.1.13
dev: true
+ /sucrase/3.32.0:
+ resolution: {integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==}
+ engines: {node: '>=8'}
+ hasBin: true
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.2
+ commander: 4.1.1
+ glob: 7.1.6
+ lines-and-columns: 1.2.4
+ mz: 2.7.0
+ pirates: 4.0.5
+ ts-interface-checker: 0.1.13
+ dev: false
+
/supports-color/0.2.0:
resolution: {integrity: sha512-tdCZ28MnM7k7cJDJc7Eq80A9CsRFAAOZUy41npOZCs++qSjfIy7o5Rh46CBk+Dk5FbKJ33X3Tqg4YrV07N5RaA==}
engines: {node: '>=0.10.0'}
@@ -21884,6 +22733,14 @@ packages:
/symbol-tree/3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+ /synckit/0.8.5:
+ resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ dependencies:
+ '@pkgr/utils': 2.4.0
+ tslib: 2.5.0
+ dev: false
+
/table/6.8.1:
resolution: {integrity: sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==}
engines: {node: '>=10.0.0'}
@@ -21928,6 +22785,38 @@ packages:
- ts-node
dev: true
+ /tailwindcss/3.3.2:
+ resolution: {integrity: sha512-9jPkMiIBXvPc2KywkraqsUfbfj+dHDb+JPWtSJa9MLFdrPyazI7q6WX2sUrm7R9eVR7qqv3Pas7EvQFzxKnI6w==}
+ 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.2.12
+ glob-parent: 6.0.2
+ is-glob: 4.0.3
+ jiti: 1.18.2
+ lilconfig: 2.1.0
+ micromatch: 4.0.5
+ normalize-path: 3.0.0
+ object-hash: 3.0.0
+ picocolors: 1.0.0
+ postcss: 8.4.23
+ postcss-import: 15.1.0_postcss@8.4.23
+ postcss-js: 4.0.1_postcss@8.4.23
+ postcss-load-config: 4.0.1_postcss@8.4.23
+ postcss-nested: 6.0.1_postcss@8.4.23
+ postcss-selector-parser: 6.0.11
+ postcss-value-parser: 4.2.0
+ resolve: 1.22.2
+ sucrase: 3.32.0
+ transitivePeerDependencies:
+ - ts-node
+ dev: false
+
/tapable/1.1.3:
resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==}
engines: {node: '>=6'}
@@ -22151,13 +23040,11 @@ packages:
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
/throat/5.0.0:
resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==}
@@ -22215,6 +23102,11 @@ packages:
resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
dev: false
+ /titleize/3.0.0:
+ resolution: {integrity: sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==}
+ engines: {node: '>=12'}
+ dev: false
+
/tmp-promise/3.0.3:
resolution: {integrity: sha512-RwM7MoPojPxsOBYnyd2hy0bxtIlVrihNs9pj5SUvY8Zz1sQcQG2tG1hSr8PDxfgEB8RNKDhqbIlroIarSNDNsQ==}
dependencies:
@@ -22385,7 +23277,6 @@ packages:
/ts-interface-checker/0.1.13:
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
- dev: true
/ts-pnp/1.2.0_typescript@4.9.5:
resolution: {integrity: sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==}
@@ -22734,6 +23625,11 @@ packages:
has-value: 0.3.1
isobject: 3.0.1
+ /untildify/4.0.0:
+ resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==}
+ engines: {node: '>=8'}
+ dev: false
+
/upath/1.2.0:
resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==}
engines: {node: '>=4'}
@@ -23940,6 +24836,11 @@ packages:
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
engines: {node: '>= 6'}
+ /yaml/2.2.2:
+ resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==}
+ engines: {node: '>= 14'}
+ dev: false
+
/yargs-parser/13.1.2:
resolution: {integrity: sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==}
dependencies:
@@ -24042,6 +24943,10 @@ packages:
readable-stream: 3.6.2
dev: true
+ /zod/3.21.4:
+ resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==}
+ dev: false
+
/zwitch/1.0.5:
resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==}
dev: false
diff --git a/use-shopping-cart/package.json b/use-shopping-cart/package.json
index b2190ab..351a125 100644
--- a/use-shopping-cart/package.json
+++ b/use-shopping-cart/package.json
@@ -1,6 +1,6 @@
{
"name": "use-shopping-cart",
- "version": "3.1.6",
+ "version": "3.1.7",
"description": "Shopping cart state and logic for Stripe",
"author": "dayhaysoos",
"license": "MIT",
@@ -109,6 +109,7 @@
"redux-mock-store": "^1.5.4",
"rollup": "^2.3.3",
"rollup-plugin-node-externals": "^2.2.0",
+ "rollup-plugin-preserve-directives": "^0.1.0",
"rollup-plugin-visualizer": "^4.2.2"
},
"dependencies": {
@@ -121,3 +122,4 @@
"uuid": "^8.3.1"
}
}
+
diff --git a/use-shopping-cart/react/index.js b/use-shopping-cart/react/index.js
index 23791f8..e095661 100644
--- a/use-shopping-cart/react/index.js
+++ b/use-shopping-cart/react/index.js
@@ -1,3 +1,5 @@
+'use client'
+
import * as React from 'react'
import { actions, initialState } from '../core/slice'
import {
@@ -18,12 +20,11 @@ export const useSelector = createSelectorHook(CartContext)
export const useDispatch = createDispatchHook(CartContext)
export function CartProvider({ loading = null, children, ...props }) {
- if (!isClient) return null
-
const store = React.useMemo(() => createShoppingCartStore(props), [props])
- if (props?.shouldPersist || props.shouldPersist === undefined) {
+ if (isClient && props.shouldPersist) {
const persistor = persistStore(store)
+
return (
)
- } else {
+ } else if (isClient && !props.shouldPersist) {
return (
{children}
diff --git a/use-shopping-cart/rollup.config.js b/use-shopping-cart/rollup.config.js
index a5895b7..96733d1 100644
--- a/use-shopping-cart/rollup.config.js
+++ b/use-shopping-cart/rollup.config.js
@@ -75,6 +75,15 @@ function clearDist() {
}
}
+function addUseClientDirective() {
+ return {
+ name: 'add-use-client-directive',
+ banner() {
+ return "'use client';"
+ }
+ }
+}
+
const common = {
react: {
input: './react/index.js',
@@ -99,7 +108,8 @@ const common = {
copyTypes(), // Copies the types to dist/
externals({ deps: true }), // automatically externalizes dependencies in package.json
resolve(),
- commonjs()
+ commonjs(),
+ addUseClientDirective()
],
// fixes an issue with uuid
get aliases() {