-
- {" "}
-
-
-
- {" "}
-
+const DynamicLiveCodeSandpack = dynamic(() => import("./LiveCodeSandpack"), {
+ loading: () => {
+ const loadingWindow = (
+
+
- );
-
- return (
-
- {loadingWindow}
+
+ );
-
-
-
+ return (
+
+ {loadingWindow}
- {loadingWindow}
+
+
- );
- },
- }
-);
+
+ {loadingWindow}
+
+ );
+ },
+});
+
+export { DynamicLiveCodeSandpack };
diff --git a/apps/docs/components/LiveCodeSandpack.tsx b/apps/docs/components/LiveCodeSandpack.tsx
index 8b59bfd..4fa946a 100644
--- a/apps/docs/components/LiveCodeSandpack.tsx
+++ b/apps/docs/components/LiveCodeSandpack.tsx
@@ -1,8 +1,8 @@
import { transform } from "@babel/standalone";
import { SandpackProvider } from "@codesandbox/sandpack-react";
+// @ts-expect-error
import reactUnforgetBabelPlugin from "@react-unforget/babel-plugin";
import { MoveRight } from "lucide-react";
-// @ts-expect-error
import jsxBabelPlugin from "@babel/plugin-syntax-jsx";
import { useTheme } from "nextra-theme-docs";
import { useCallback, useEffect, useMemo, useState } from "react";
diff --git a/apps/docs/next.config.js b/apps/docs/next.config.js
deleted file mode 100644
index 456c83b..0000000
--- a/apps/docs/next.config.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const withNextra = require("nextra")({
- theme: "nextra-theme-docs",
- themeConfig: "./theme.config.jsx",
-});
-
-/** @type {import('next').NextConfig} */
-module.exports = {
- transpilePackages: [],
- ...withNextra(),
-};
diff --git a/apps/docs/next.config.mjs b/apps/docs/next.config.mjs
new file mode 100644
index 0000000..a8cd21e
--- /dev/null
+++ b/apps/docs/next.config.mjs
@@ -0,0 +1,13 @@
+import nextra from "nextra";
+
+const withNextra = nextra({
+ theme: "nextra-theme-docs",
+ themeConfig: "./theme.config.jsx",
+});
+
+export default withNextra({
+ reactStrictMode: false,
+ eslint: {
+ ignoreDuringBuilds: true,
+ },
+});
diff --git a/apps/docs/package.json b/apps/docs/package.json
index b869a74..d7ce9e2 100644
--- a/apps/docs/package.json
+++ b/apps/docs/package.json
@@ -9,12 +9,11 @@
"lint": "eslint . --max-warnings 0"
},
"dependencies": {
- "@babel/core": "^7.23.9",
- "@babel/parser": "^7.24.0",
"@babel/plugin-syntax-jsx": "^7.23.3",
+ "@babel/standalone": "^7.24.0",
"@codesandbox/sandpack-react": "^2.13.4",
- "@react-unforget/babel-plugin": "0.1.0-dev.4",
- "@react-unforget/compiler": "0.1.0-dev.5",
+ "@react-unforget/babel-plugin": "0.1.0-dev.6",
+ "@react-unforget/compiler": "0.1.0-dev.7",
"@react-unforget/runtime": "0.1.0-dev.4",
"@vercel/analytics": "^1.2.2",
"classnames": "^2.5.1",
@@ -29,9 +28,9 @@
"@next/eslint-plugin-next": "^14.0.4",
"@react-unforget/eslint-config": "*",
"@react-unforget/typescript-config": "*",
- "@types/eslint": "^8.56.1",
- "@types/node": "^20.10.6",
- "@types/react": "^18.2.46",
+ "@types/eslint": "^8.56.5",
+ "@types/node": "^20.11.24",
+ "@types/react": "^18.2.61",
"@types/react-dom": "^18.2.18",
"autoprefixer": "^10.4.17",
"daisyui": "^4.7.2",
diff --git a/apps/docs/pages/examples/component-with-early-return.mdx b/apps/docs/pages/examples/component-with-early-return.mdx
index b1d786c..aae566c 100644
--- a/apps/docs/pages/examples/component-with-early-return.mdx
+++ b/apps/docs/pages/examples/component-with-early-return.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### Component with Early Return
diff --git a/apps/docs/pages/examples/component-with-props.mdx b/apps/docs/pages/examples/component-with-props.mdx
index 2db7305..be90b5f 100644
--- a/apps/docs/pages/examples/component-with-props.mdx
+++ b/apps/docs/pages/examples/component-with-props.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### Component with Props
diff --git a/apps/docs/pages/examples/counter-with-mutated-dependency.mdx b/apps/docs/pages/examples/counter-with-mutated-dependency.mdx
index fa35bf5..e177bdd 100644
--- a/apps/docs/pages/examples/counter-with-mutated-dependency.mdx
+++ b/apps/docs/pages/examples/counter-with-mutated-dependency.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### Counter with Mutation Tracking
@@ -10,23 +10,22 @@ React Unforget can trace statements that will mutate a variable.
export default function CounterWithMutationTracking() {
const [state, setState] = useState(0);
- let text = "The number is: ";
-
- if (state % 2 === 0) {
- text += "even";
- } else {
- text += "odd";
- }
-
- return (
-
-
-
- Count: {state} {text}
-
-
- );
+let text = "The number is: ";
+
+if (state % 2 === 0) {
+text += "even";
+} else {
+text += "odd";
}
-`}
+
+return (
+
+
+
+
+ Count: {state} {text}
+
+
+); } `}
diff --git a/apps/docs/pages/examples/simple-counter.mdx b/apps/docs/pages/examples/simple-counter.mdx
index 0968c43..0dac01d 100644
--- a/apps/docs/pages/examples/simple-counter.mdx
+++ b/apps/docs/pages/examples/simple-counter.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### Simple Counter App
diff --git a/apps/docs/pages/examples/simple-jsx.mdx b/apps/docs/pages/examples/simple-jsx.mdx
index c694cc9..19ed9fb 100644
--- a/apps/docs/pages/examples/simple-jsx.mdx
+++ b/apps/docs/pages/examples/simple-jsx.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### Simple JSX
diff --git a/apps/docs/pages/examples/with-data-fetching.mdx b/apps/docs/pages/examples/with-data-fetching.mdx
index ba117d6..9d617df 100644
--- a/apps/docs/pages/examples/with-data-fetching.mdx
+++ b/apps/docs/pages/examples/with-data-fetching.mdx
@@ -1,4 +1,4 @@
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
### With Data Fetching
@@ -32,7 +32,7 @@ function UserList() {
const [followers, setFollowers] = useState([]);
const [loading, setLoading] = useState(true);
const [error, setError] = useState(null);
- const [setFilterUsers, setShouldFilterUsers] = useState(false);
+ const [shouldFilterUsers, setShouldFilterUsers] = useState(false);
useEffect(() => {
Promise.all([
@@ -72,7 +72,7 @@ function UserList() {
}
}
- const usersForUI = setFilterUsers ? filteredUsers : memoizedFollowers;
+ const usersForUI = shouldFilterUsers ? filteredUsers : memoizedFollowers;
// Early return for loading state
if (loading) return
Loading...
;
@@ -89,7 +89,7 @@ function UserList() {
Follwers of {user.name}
User List
handleUserClick(user.id)}>{userListElement}
@@ -126,40 +126,3 @@ export default UserList;
`}
-
-{/*
-{`import {useState} from "react";
-
-const numbers1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
-const numbers2 = numbers1.filter((number) => number % 2 === 0);
-
-export default function UserList() {
- const [numbers, setNumbers] = useState(numbers1);
-
- const filteredNumbers = [];
- for (let i = 0; i < numbers.length; i++) {
- const currentN = numbers[i];
- if (i % 2 === 0) {
- filteredNumbers.push(currentN);
- }
- }
-
- const handleUserClick = () => {
- setNumbers((p) => (numbers1 === p ? numbers2 : numbers1));
- };
-
- return (
-
-
-
- {filteredNumbers.map((n) => (
- {n}
- ))}
-
-
- );
-}
-
-`}
-
- */}
diff --git a/apps/docs/pages/index.mdx b/apps/docs/pages/index.mdx
index dae97a9..ae3b0f6 100644
--- a/apps/docs/pages/index.mdx
+++ b/apps/docs/pages/index.mdx
@@ -2,7 +2,7 @@
title: "Home"
---
-import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandPack";
+import { DynamicLiveCodeSandPack } from "@components/DynamicLiveCodeSandpack";
# React Unforget
diff --git a/apps/docs/tsconfig.json b/apps/docs/tsconfig.json
index 9ebd3e8..541b1e3 100644
--- a/apps/docs/tsconfig.json
+++ b/apps/docs/tsconfig.json
@@ -1,24 +1,31 @@
{
- "extends": "@react-unforget/typescript-config/nextjs.json",
"compilerOptions": {
- "plugins": [
- {
- "name": "next"
- }
- ],
+ "baseUrl": ".",
+ "target": "es5",
+ "lib": ["dom", "dom.iterable", "esnext"],
+ "allowJs": true,
+ "skipLibCheck": true,
+ "strict": false,
+ "forceConsistentCasingInFileNames": true,
+ "noEmit": true,
+ "incremental": true,
+ "esModuleInterop": true,
+ "isolatedModules": true,
+ "moduleResolution": "node",
+ "jsx": "preserve",
+ "module": "esnext",
+ "resolveJsonModule": true,
"paths": {
- "@components/*": ["./components/*"]
+ "@components/*": ["components/*"]
}
},
"include": [
"next-env.d.ts",
- "next.config.js",
- "theme.config.jsx",
- "tailwind.config.js",
- "postcss.config.js",
"**/*.ts",
"**/*.tsx",
- ".next/types/**/*.ts"
- ],
+ "**/*.js",
+ "**/*.jsx",
+ "**/*.mdx"
+, "next.config.mjs" ],
"exclude": ["node_modules"]
}
diff --git a/apps/docs/vercel.json b/apps/docs/vercel.json
new file mode 100644
index 0000000..2b6de8d
--- /dev/null
+++ b/apps/docs/vercel.json
@@ -0,0 +1,3 @@
+{
+ "public": true
+}
diff --git a/package.json b/package.json
index ea4344c..2b1efe7 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "react-unforget",
"private": true,
"scripts": {
- "build": "turbo run --scope=@react-unforget/* --no-deps build",
+ "build": "turbo build",
"dev": "turbo dev",
"lint": "turbo lint",
"test": "turbo test",
diff --git a/packages/babel-plugin/package.json b/packages/babel-plugin/package.json
index 2f8bfe8..0b9cff6 100644
--- a/packages/babel-plugin/package.json
+++ b/packages/babel-plugin/package.json
@@ -26,7 +26,7 @@
"@react-unforget/eslint-config": "*",
"@react-unforget/jest-config": "*",
"@react-unforget/typescript-config": "*",
- "@types/react": "^18.2.58",
+ "@types/react": "^18.2.61",
"react": "^18.2.0",
"tsup": "^8.0.2"
},
diff --git a/packages/compiler/package.json b/packages/compiler/package.json
index e35977e..ab06f80 100644
--- a/packages/compiler/package.json
+++ b/packages/compiler/package.json
@@ -35,9 +35,8 @@
},
"dependencies": {
"@babel/helper-validator-identifier": "^7.22.20",
- "@babel/parser": "^7.23.9",
- "@babel/standalone": "^7.23.10",
- "@babel/traverse": "^7.23.9",
+ "@babel/parser": "^7.24.0",
+ "@babel/traverse": "^7.24.0",
"@babel/types": "^7.24.0"
},
"publishConfig": {
diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json
index b472d8c..a9483cc 100644
--- a/packages/eslint-config/package.json
+++ b/packages/eslint-config/package.json
@@ -8,12 +8,12 @@
"react-internal.js"
],
"devDependencies": {
+ "@typescript-eslint/eslint-plugin": "^7.1.0",
+ "@typescript-eslint/parser": "^7.1.0",
"@vercel/style-guide": "^5.1.0",
- "eslint-config-turbo": "^1.11.3",
"eslint-config-prettier": "^9.1.0",
+ "eslint-config-turbo": "^1.11.3",
"eslint-plugin-only-warn": "^1.1.0",
- "@typescript-eslint/parser": "^6.17.0",
- "@typescript-eslint/eslint-plugin": "^6.17.0",
"typescript": "^5.3.3"
}
}
diff --git a/packages/runtime/package.json b/packages/runtime/package.json
index b9faa39..395c105 100644
--- a/packages/runtime/package.json
+++ b/packages/runtime/package.json
@@ -25,7 +25,7 @@
"@react-unforget/eslint-config": "*",
"@react-unforget/jest-config": "*",
"@react-unforget/typescript-config": "*",
- "@types/react": "^18.2.58",
+ "@types/react": "^18.2.61",
"react": "^18.2.0",
"tsup": "^8.0.2"
},
diff --git a/yarn.lock b/yarn.lock
index 477dcaa..cd42a76 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -296,7 +296,7 @@
dependencies:
regenerator-runtime "^0.14.0"
-"@babel/standalone@^7.23.10":
+"@babel/standalone@^7.24.0":
version "7.24.0"
resolved "https://registry.yarnpkg.com/@babel/standalone/-/standalone-7.24.0.tgz#f18fe69246f8329c0b36a8cf6757a6a2f57d9067"
integrity sha512-yIZ/X3EAASgX/MW1Bn8iZKxCwixgYJAUaIScoZ9C6Gapw5l3eKIbtVSgO/IGldQed9QXm22yurKVWyWj5/j+SQ==
@@ -326,6 +326,22 @@
debug "^4.3.1"
globals "^11.1.0"
+"@babel/traverse@^7.24.0":
+ version "7.24.0"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.0.tgz#4a408fbf364ff73135c714a2ab46a5eab2831b1e"
+ integrity sha512-HfuJlI8qq3dEDmNU5ChzzpZRWq+oxCZQyMzIMEqLho+AQnhMnKQUzH6ydo3RBl/YjPCuk68Y6s0Gx0AeyULiWw==
+ dependencies:
+ "@babel/code-frame" "^7.23.5"
+ "@babel/generator" "^7.23.6"
+ "@babel/helper-environment-visitor" "^7.22.20"
+ "@babel/helper-function-name" "^7.23.0"
+ "@babel/helper-hoist-variables" "^7.22.5"
+ "@babel/helper-split-export-declaration" "^7.22.6"
+ "@babel/parser" "^7.24.0"
+ "@babel/types" "^7.24.0"
+ debug "^4.3.1"
+ globals "^11.1.0"
+
"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.23.6", "@babel/types@^7.23.9", "@babel/types@^7.3.3":
version "7.23.9"
resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.9.tgz#1dd7b59a9a2b5c87f8b41e52770b5ecbf492e002"
@@ -1436,22 +1452,6 @@
resolved "https://registry.yarnpkg.com/@react-hook/passive-layout-effect/-/passive-layout-effect-1.2.1.tgz#c06dac2d011f36d61259aa1c6df4f0d5e28bc55e"
integrity sha512-IwEphTD75liO8g+6taS+4oqz+nnroocNfWVHWz7j+N+ZO2vYrc6PV1q7GQhuahL0IOR7JccFTsFKQ/mb6iZWAg==
-"@react-unforget/babel-plugin@0.1.0-dev.4":
- version "0.1.0-dev.4"
- resolved "https://registry.yarnpkg.com/@react-unforget/babel-plugin/-/babel-plugin-0.1.0-dev.4.tgz#583a4b5f0d43ba861ccd4fa1707b0fe1d8c2abbf"
- integrity sha512-fIWTBAYyzLhh2MbgiCQf13AfUog/nIuc7Hc0UIiI1dtng8dWxDj6wWPh+zEgxXAoHWdGicPy81yxtu9o7yOTxA==
- dependencies:
- "@react-unforget/compiler" "0.1.0-dev.5"
-
-"@react-unforget/compiler@0.1.0-dev.5":
- version "0.1.0-dev.5"
- resolved "https://registry.yarnpkg.com/@react-unforget/compiler/-/compiler-0.1.0-dev.5.tgz#490cf25ce5b0ca1d38213b6fde4aa86d0d18ea03"
- integrity sha512-F61wRReXZibnJy2hqarDy7WT0d77Ef6TMZ3e08JEacn8VEBJt1jSDIXJjNefugaHkKGINzCWoELNPhaA3no7OA==
- dependencies:
- "@babel/core" "^7.23.9"
- "@babel/parser" "^7.23.9"
- "@babel/traverse" "^7.23.9"
-
"@rollup/rollup-android-arm-eabi@4.12.0":
version "4.12.0"
resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.0.tgz#38c3abd1955a3c21d492af6b1a1dca4bb1d894d6"
@@ -1677,10 +1677,10 @@
dependencies:
"@types/ms" "*"
-"@types/eslint@^8.56.1":
- version "8.56.3"
- resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.3.tgz#d1f6b2303ac5ed53cb2cf59e0ab680cde1698f5f"
- integrity sha512-PvSf1wfv2wJpVIFUMSb+i4PvqNYkB9Rkp9ZDO3oaWzq4SKhsQk4mrMBr3ZH06I0hKrVGLBacmgl8JM4WVjb9dg==
+"@types/eslint@^8.56.5":
+ version "8.56.5"
+ resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.56.5.tgz#94b88cab77588fcecdd0771a6d576fa1c0af9d02"
+ integrity sha512-u5/YPJHo1tvkSF2CE0USEkxon82Z5DBy2xR+qfyYNszpX9qcs4sT6uq2kBbj4BXY1+DBGDPnrhMZV3pKWGNukw==
dependencies:
"@types/estree" "*"
"@types/json-schema" "*"
@@ -1803,7 +1803,7 @@
resolved "https://registry.yarnpkg.com/@types/ms/-/ms-0.7.34.tgz#10964ba0dee6ac4cd462e2795b6bebd407303433"
integrity sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==
-"@types/node@*", "@types/node@^20.10.6":
+"@types/node@*":
version "20.11.20"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.20.tgz#f0a2aee575215149a62784210ad88b3a34843659"
integrity sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==
@@ -1815,6 +1815,13 @@
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.20.55.tgz#c329cbd434c42164f846b909bd6f85b5537f6240"
integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==
+"@types/node@^20.11.24":
+ version "20.11.24"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-20.11.24.tgz#cc207511104694e84e9fb17f9a0c4c42d4517792"
+ integrity sha512-Kza43ewS3xoLgCEpQrsT+xRo/EJej1y0kVYGiLFE1NEODXGzTfwiC6tXTLMQskn1X4/Rjlh0MQUvx9W+L9long==
+ dependencies:
+ undici-types "~5.26.4"
+
"@types/normalize-package-data@^2.4.0":
version "2.4.4"
resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901"
@@ -1832,7 +1839,7 @@
dependencies:
"@types/react" "*"
-"@types/react@*", "@types/react@^18.2.46", "@types/react@^18.2.58":
+"@types/react@*":
version "18.2.58"
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.58.tgz#22082d12898d11806f4a1aefb5583116a047493d"
integrity sha512-TaGvMNhxvG2Q0K0aYxiKfNDS5m5ZsoIBBbtfUorxdH4NGSXIlYvZxLJI+9Dd3KjeB3780bciLyAb7ylO8pLhPw==
@@ -1841,7 +1848,7 @@
"@types/scheduler" "*"
csstype "^3.0.2"
-"@types/react@>=16":
+"@types/react@>=16", "@types/react@^18.2.61":
version "18.2.61"
resolved "https://registry.yarnpkg.com/@types/react/-/react-18.2.61.tgz#5607308495037436779939ec0348a5816c08799d"
integrity sha512-NURTN0qNnJa7O/k4XUkEW2yfygA+NxS0V5h1+kp9jPwhzZy95q3ADoGMP0+JypMhrZBTTgjKAUlTctde1zzeQA==
@@ -1892,7 +1899,7 @@
dependencies:
"@types/yargs-parser" "*"
-"@typescript-eslint/eslint-plugin@^6.17.0", "@typescript-eslint/eslint-plugin@^6.5.0":
+"@typescript-eslint/eslint-plugin@^6.5.0":
version "6.21.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.21.0.tgz#30830c1ca81fd5f3c2714e524c4303e0194f9cd3"
integrity sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==
@@ -1909,7 +1916,24 @@
semver "^7.5.4"
ts-api-utils "^1.0.1"
-"@typescript-eslint/parser@^6.17.0", "@typescript-eslint/parser@^6.5.0":
+"@typescript-eslint/eslint-plugin@^7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.1.0.tgz#22bb999a8d59893c0ea07923e8a21f9d985ad740"
+ integrity sha512-j6vT/kCulhG5wBmGtstKeiVr1rdXE4nk+DT1k6trYkwlrvW9eOF5ZbgKnd/YR6PcM4uTEXa0h6Fcvf6X7Dxl0w==
+ dependencies:
+ "@eslint-community/regexpp" "^4.5.1"
+ "@typescript-eslint/scope-manager" "7.1.0"
+ "@typescript-eslint/type-utils" "7.1.0"
+ "@typescript-eslint/utils" "7.1.0"
+ "@typescript-eslint/visitor-keys" "7.1.0"
+ debug "^4.3.4"
+ graphemer "^1.4.0"
+ ignore "^5.2.4"
+ natural-compare "^1.4.0"
+ semver "^7.5.4"
+ ts-api-utils "^1.0.1"
+
+"@typescript-eslint/parser@^6.5.0":
version "6.21.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.21.0.tgz#af8fcf66feee2edc86bc5d1cf45e33b0630bf35b"
integrity sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==
@@ -1920,6 +1944,17 @@
"@typescript-eslint/visitor-keys" "6.21.0"
debug "^4.3.4"
+"@typescript-eslint/parser@^7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-7.1.0.tgz#b89dab90840f7d2a926bf4c23b519576e8c31970"
+ integrity sha512-V1EknKUubZ1gWFjiOZhDSNToOjs63/9O0puCgGS8aDOgpZY326fzFu15QAUjwaXzRZjf/qdsdBrckYdv9YxB8w==
+ dependencies:
+ "@typescript-eslint/scope-manager" "7.1.0"
+ "@typescript-eslint/types" "7.1.0"
+ "@typescript-eslint/typescript-estree" "7.1.0"
+ "@typescript-eslint/visitor-keys" "7.1.0"
+ debug "^4.3.4"
+
"@typescript-eslint/scope-manager@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
@@ -1936,6 +1971,14 @@
"@typescript-eslint/types" "6.21.0"
"@typescript-eslint/visitor-keys" "6.21.0"
+"@typescript-eslint/scope-manager@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-7.1.0.tgz#e4babaa39a3d612eff0e3559f3e99c720a2b4a54"
+ integrity sha512-6TmN4OJiohHfoOdGZ3huuLhpiUgOGTpgXNUPJgeZOZR3DnIpdSgtt83RS35OYNNXxM4TScVlpVKC9jyQSETR1A==
+ dependencies:
+ "@typescript-eslint/types" "7.1.0"
+ "@typescript-eslint/visitor-keys" "7.1.0"
+
"@typescript-eslint/type-utils@6.21.0":
version "6.21.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.21.0.tgz#6473281cfed4dacabe8004e8521cee0bd9d4c01e"
@@ -1946,6 +1989,16 @@
debug "^4.3.4"
ts-api-utils "^1.0.1"
+"@typescript-eslint/type-utils@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-7.1.0.tgz#372dfa470df181bcee0072db464dc778b75ed722"
+ integrity sha512-UZIhv8G+5b5skkcuhgvxYWHjk7FW7/JP5lPASMEUoliAPwIH/rxoUSQPia2cuOj9AmDZmwUl1usKm85t5VUMew==
+ dependencies:
+ "@typescript-eslint/typescript-estree" "7.1.0"
+ "@typescript-eslint/utils" "7.1.0"
+ debug "^4.3.4"
+ ts-api-utils "^1.0.1"
+
"@typescript-eslint/types@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
@@ -1956,6 +2009,11 @@
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.21.0.tgz#205724c5123a8fef7ecd195075fa6e85bac3436d"
integrity sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==
+"@typescript-eslint/types@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-7.1.0.tgz#52a86d6236fda646e7e5fe61154991dc0dc433ef"
+ integrity sha512-qTWjWieJ1tRJkxgZYXx6WUYtWlBc48YRxgY2JN1aGeVpkhmnopq+SUC8UEVGNXIvWH7XyuTjwALfG6bFEgCkQA==
+
"@typescript-eslint/typescript-estree@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
@@ -1983,6 +2041,20 @@
semver "^7.5.4"
ts-api-utils "^1.0.1"
+"@typescript-eslint/typescript-estree@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-7.1.0.tgz#419b1310f061feee6df676c5bed460537310c593"
+ integrity sha512-k7MyrbD6E463CBbSpcOnwa8oXRdHzH1WiVzOipK3L5KSML92ZKgUBrTlehdi7PEIMT8k0bQixHUGXggPAlKnOQ==
+ dependencies:
+ "@typescript-eslint/types" "7.1.0"
+ "@typescript-eslint/visitor-keys" "7.1.0"
+ debug "^4.3.4"
+ globby "^11.1.0"
+ is-glob "^4.0.3"
+ minimatch "9.0.3"
+ semver "^7.5.4"
+ ts-api-utils "^1.0.1"
+
"@typescript-eslint/utils@6.21.0":
version "6.21.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.21.0.tgz#4714e7a6b39e773c1c8e97ec587f520840cd8134"
@@ -1996,6 +2068,19 @@
"@typescript-eslint/typescript-estree" "6.21.0"
semver "^7.5.4"
+"@typescript-eslint/utils@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-7.1.0.tgz#710ecda62aff4a3c8140edabf3c5292d31111ddd"
+ integrity sha512-WUFba6PZC5OCGEmbweGpnNJytJiLG7ZvDBJJoUcX4qZYf1mGZ97mO2Mps6O2efxJcJdRNpqweCistDbZMwIVHw==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.4.0"
+ "@types/json-schema" "^7.0.12"
+ "@types/semver" "^7.5.0"
+ "@typescript-eslint/scope-manager" "7.1.0"
+ "@typescript-eslint/types" "7.1.0"
+ "@typescript-eslint/typescript-estree" "7.1.0"
+ semver "^7.5.4"
+
"@typescript-eslint/utils@^5.10.0", "@typescript-eslint/utils@^5.58.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86"
@@ -2026,6 +2111,14 @@
"@typescript-eslint/types" "6.21.0"
eslint-visitor-keys "^3.4.1"
+"@typescript-eslint/visitor-keys@7.1.0":
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-7.1.0.tgz#576c4ad462ca1378135a55e2857d7aced96ce0a0"
+ integrity sha512-FhUqNWluiGNzlvnDZiXad4mZRhtghdoKW6e98GoEOYSu5cND+E39rG5KwJMUzeENwm1ztYBRqof8wMLP+wNPIA==
+ dependencies:
+ "@typescript-eslint/types" "7.1.0"
+ eslint-visitor-keys "^3.4.1"
+
"@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0":
version "1.2.0"
resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.2.0.tgz#756641adb587851b5ccb3e095daf27ae581c8406"