From 8e41208a14a4e1535faccea77f3c0488600c1721 Mon Sep 17 00:00:00 2001
From: Alex <8125011+alex-kinokon@users.noreply.github.com>
Date: Sun, 9 Feb 2025 21:37:27 -0500
Subject: [PATCH] composeRenderProps
---
README.md | 2 +
package.json | 18 +-
pnpm-lock.yaml | 839 ++++++++++++++++++++++++------------
scripts/index.ts | 18 +-
src/__tests__/base.test.ts | 22 +-
src/__tests__/merge.test.ts | 25 ++
src/__tests__/utils.ts | 1 +
src/babel/index.ts | 85 +++-
src/index.ts | 51 ++-
src/react-env.d.ts | 5 +
src/shared-v4.ts | 55 +++
src/shared.ts | 4 +-
src/vite-plugin.ts | 3 +
13 files changed, 789 insertions(+), 339 deletions(-)
create mode 100644 src/react-env.d.ts
create mode 100644 src/shared-v4.ts
diff --git a/README.md b/README.md
index 6643598..0a6a66e 100644
--- a/README.md
+++ b/README.md
@@ -3,6 +3,8 @@
Compile-run Tailwind compiler.
```tsx
+///
+
export function App() {
return
;
}
diff --git a/package.json b/package.json
index 43e724f..cb12805 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@aet/tailwind",
- "version": "1.0.25",
+ "version": "1.0.28",
"license": "MIT",
"type": "module",
"scripts": {
@@ -30,10 +30,13 @@
"./plugin/typography": "./dist/vendor/typography.js",
"./macro": {
"types": "./dist/macro.d.ts"
+ },
+ "./react-env": {
+ "types": "./dist/react-env.d.ts"
}
},
"devDependencies": {
- "@aet/eslint-rules": "2.0.36",
+ "@aet/eslint-rules": "^2.0.36",
"@types/babel__core": "^7.20.5",
"@types/bun": "^1.2.2",
"@types/dedent": "^0.7.2",
@@ -42,13 +45,14 @@
"@types/postcss-safe-parser": "^5.0.4",
"@types/react": "^19.0.8",
"@types/stylis": "^4.2.7",
+ "@vitejs/plugin-react": "^4.3.4",
"cli-highlight": "^2.1.11",
"clsx": "^2.1.1",
"colord": "^2.9.3",
"css-what": "^6.1.0",
"dedent": "^1.5.3",
"esbuild-register": "^3.6.0",
- "eslint": "^9.19.0",
+ "eslint": "^9.20.0",
"nolyfill": "^1.0.43",
"postcss-nested": "^7.0.2",
"prettier": "^3.4.2",
@@ -63,14 +67,14 @@
"tailwindcss": "^3.4.17"
},
"dependencies": {
- "@babel/core": "^7.26.7",
+ "@babel/core": "^7.26.8",
"@emotion/hash": "^0.9.2",
- "esbuild": "^0.24.2",
+ "esbuild": "^0.25.0",
"json5": "^2.2.3",
"lodash-es": "^4.17.21",
"postcss": "^8.5.1",
- "postcss-selector-parser": "^7.0.0",
- "stylis": "^4.3.5",
+ "postcss-selector-parser": "^7.1.0",
+ "stylis": "^4.3.6",
"tiny-invariant": "^1.3.3",
"type-fest": "^4.33.0"
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 96f67e1..fd7f884 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -13,14 +13,14 @@ importers:
.:
dependencies:
'@babel/core':
- specifier: ^7.26.7
- version: 7.26.7
+ specifier: ^7.26.8
+ version: 7.26.8
'@emotion/hash':
specifier: ^0.9.2
version: 0.9.2
esbuild:
- specifier: ^0.24.2
- version: 0.24.2
+ specifier: ^0.25.0
+ version: 0.25.0
json5:
specifier: ^2.2.3
version: 2.2.3
@@ -31,11 +31,11 @@ importers:
specifier: ^8.5.1
version: 8.5.1
postcss-selector-parser:
- specifier: ^7.0.0
- version: 7.0.0
+ specifier: ^7.1.0
+ version: 7.1.0
stylis:
- specifier: ^4.3.5
- version: 4.3.5
+ specifier: ^4.3.6
+ version: 4.3.6
tiny-invariant:
specifier: ^1.3.3
version: 1.3.3
@@ -44,8 +44,8 @@ importers:
version: 4.33.0
devDependencies:
'@aet/eslint-rules':
- specifier: 2.0.36
- version: 2.0.36(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
+ specifier: ^2.0.36
+ version: 2.0.36(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
'@types/babel__core':
specifier: ^7.20.5
version: 7.20.5
@@ -70,6 +70,9 @@ importers:
'@types/stylis':
specifier: ^4.2.7
version: 4.2.7
+ '@vitejs/plugin-react':
+ specifier: ^4.3.4
+ version: 4.3.4(vite@6.1.0(@types/node@22.13.1)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.5.0))
cli-highlight:
specifier: ^2.1.11
version: 2.1.11
@@ -87,10 +90,10 @@ importers:
version: 1.5.3
esbuild-register:
specifier: ^3.6.0
- version: 3.6.0(esbuild@0.24.2)
+ version: 3.6.0(esbuild@0.25.0)
eslint:
- specifier: ^9.19.0
- version: 9.19.0(jiti@2.4.2)
+ specifier: ^9.20.0
+ version: 9.20.0(jiti@2.4.2)
nolyfill:
specifier: ^1.0.43
version: 1.0.43
@@ -151,12 +154,12 @@ packages:
resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==}
engines: {node: '>=6.9.0'}
- '@babel/core@7.26.7':
- resolution: {integrity: sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==}
+ '@babel/core@7.26.8':
+ resolution: {integrity: sha512-l+lkXCHS6tQEc5oUpK28xBOZ6+HwaH7YwoYQbLFiYb4nS2/l1tKnZEtEWkD0GuiYdvArf9qBS0XlQGXzPMsNqQ==}
engines: {node: '>=6.9.0'}
- '@babel/generator@7.26.5':
- resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==}
+ '@babel/generator@7.26.8':
+ resolution: {integrity: sha512-ef383X5++iZHWAXX0SXQR6ZyQhw/0KtTkrTz61WXRhFM6dhpHulO/RJz79L8S6ugZHJkOOkUrUdxgdF2YiPFnA==}
engines: {node: '>=6.9.0'}
'@babel/helper-compilation-targets@7.26.5':
@@ -173,6 +176,10 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0
+ '@babel/helper-plugin-utils@7.26.5':
+ resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-string-parser@7.25.9':
resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
engines: {node: '>=6.9.0'}
@@ -199,12 +206,29 @@ packages:
engines: {node: '>=6.0.0'}
hasBin: true
- '@babel/template@7.25.9':
- resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==}
+ '@babel/parser@7.26.8':
+ resolution: {integrity: sha512-TZIQ25pkSoaKEYYaHbbxkfL36GNsQ6iFiBbeuzAkLnXayKR1yP1zFe+NxuZWWsUyvt8icPU9CCq0sgWGXR1GEw==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ '@babel/plugin-transform-react-jsx-self@7.25.9':
+ resolution: {integrity: sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-jsx-source@7.25.9':
+ resolution: {integrity: sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/template@7.26.8':
+ resolution: {integrity: sha512-iNKaX3ZebKIsCvJ+0jd6embf+Aulaa3vNBqZ41kM7iTWjx5qzWKXGHiJUW3+nTpQ18SG11hdF8OAzKrpXkb96Q==}
engines: {node: '>=6.9.0'}
- '@babel/traverse@7.26.7':
- resolution: {integrity: sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==}
+ '@babel/traverse@7.26.8':
+ resolution: {integrity: sha512-nic9tRkjYH0oB2dzr/JoGIm+4Q6SuYeLEiIiZDwBscRMYFJ+tMAz98fuel9ZnbXViA2I0HVSSRRK8DW5fjXStA==}
engines: {node: '>=6.9.0'}
'@babel/types@7.26.7':
@@ -220,150 +244,300 @@ packages:
cpu: [ppc64]
os: [aix]
+ '@esbuild/aix-ppc64@0.25.0':
+ resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
'@esbuild/android-arm64@0.24.2':
resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [android]
+ '@esbuild/android-arm64@0.25.0':
+ resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
'@esbuild/android-arm@0.24.2':
resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
engines: {node: '>=18'}
cpu: [arm]
os: [android]
+ '@esbuild/android-arm@0.25.0':
+ resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
'@esbuild/android-x64@0.24.2':
resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
engines: {node: '>=18'}
cpu: [x64]
os: [android]
+ '@esbuild/android-x64@0.25.0':
+ resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
'@esbuild/darwin-arm64@0.24.2':
resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
+ '@esbuild/darwin-arm64@0.25.0':
+ resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
'@esbuild/darwin-x64@0.24.2':
resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
+ '@esbuild/darwin-x64@0.25.0':
+ resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
'@esbuild/freebsd-arm64@0.24.2':
resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [freebsd]
+ '@esbuild/freebsd-arm64@0.25.0':
+ resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
'@esbuild/freebsd-x64@0.24.2':
resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
engines: {node: '>=18'}
cpu: [x64]
os: [freebsd]
+ '@esbuild/freebsd-x64@0.25.0':
+ resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
'@esbuild/linux-arm64@0.24.2':
resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
+ '@esbuild/linux-arm64@0.25.0':
+ resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
'@esbuild/linux-arm@0.24.2':
resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
engines: {node: '>=18'}
cpu: [arm]
os: [linux]
+ '@esbuild/linux-arm@0.25.0':
+ resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
'@esbuild/linux-ia32@0.24.2':
resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
engines: {node: '>=18'}
cpu: [ia32]
os: [linux]
+ '@esbuild/linux-ia32@0.25.0':
+ resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
'@esbuild/linux-loong64@0.24.2':
resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
engines: {node: '>=18'}
cpu: [loong64]
os: [linux]
+ '@esbuild/linux-loong64@0.25.0':
+ resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
'@esbuild/linux-mips64el@0.24.2':
resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
engines: {node: '>=18'}
cpu: [mips64el]
os: [linux]
+ '@esbuild/linux-mips64el@0.25.0':
+ resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
'@esbuild/linux-ppc64@0.24.2':
resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
+ '@esbuild/linux-ppc64@0.25.0':
+ resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
'@esbuild/linux-riscv64@0.24.2':
resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
+ '@esbuild/linux-riscv64@0.25.0':
+ resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
'@esbuild/linux-s390x@0.24.2':
resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
+ '@esbuild/linux-s390x@0.25.0':
+ resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
'@esbuild/linux-x64@0.24.2':
resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
engines: {node: '>=18'}
cpu: [x64]
os: [linux]
+ '@esbuild/linux-x64@0.25.0':
+ resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
'@esbuild/netbsd-arm64@0.24.2':
resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==}
engines: {node: '>=18'}
cpu: [arm64]
os: [netbsd]
+ '@esbuild/netbsd-arm64@0.25.0':
+ resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
'@esbuild/netbsd-x64@0.24.2':
resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
engines: {node: '>=18'}
cpu: [x64]
os: [netbsd]
+ '@esbuild/netbsd-x64@0.25.0':
+ resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
'@esbuild/openbsd-arm64@0.24.2':
resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==}
engines: {node: '>=18'}
cpu: [arm64]
os: [openbsd]
+ '@esbuild/openbsd-arm64@0.25.0':
+ resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
'@esbuild/openbsd-x64@0.24.2':
resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
engines: {node: '>=18'}
cpu: [x64]
os: [openbsd]
+ '@esbuild/openbsd-x64@0.25.0':
+ resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
'@esbuild/sunos-x64@0.24.2':
resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
engines: {node: '>=18'}
cpu: [x64]
os: [sunos]
+ '@esbuild/sunos-x64@0.25.0':
+ resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
'@esbuild/win32-arm64@0.24.2':
resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
engines: {node: '>=18'}
cpu: [arm64]
os: [win32]
+ '@esbuild/win32-arm64@0.25.0':
+ resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
'@esbuild/win32-ia32@0.24.2':
resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
engines: {node: '>=18'}
cpu: [ia32]
os: [win32]
+ '@esbuild/win32-ia32@0.25.0':
+ resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
'@esbuild/win32-x64@0.24.2':
resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
engines: {node: '>=18'}
cpu: [x64]
os: [win32]
+ '@esbuild/win32-x64@0.25.0':
+ resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
'@eslint-community/eslint-utils@4.4.1':
resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -416,6 +590,10 @@ packages:
resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/core@0.11.0':
+ resolution: {integrity: sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/eslintrc@3.2.0':
resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -424,6 +602,10 @@ packages:
resolution: {integrity: sha512-rbq9/g38qjfqFLOVPvwjIvFFdNziEC5S65jmjPw5r6A//QH+W91akh9irMwjDN8zKUTak6W9EsAv4m/7Wnw0UQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@eslint/js@9.20.0':
+ resolution: {integrity: sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
'@eslint/object-schema@2.1.4':
resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -717,6 +899,9 @@ packages:
'@types/estree@1.0.6':
resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
+ '@types/gensync@1.0.4':
+ resolution: {integrity: sha512-C3YYeRQWp2fmq9OryX+FoDy8nXS6scQ7dPptD8LnFDAUNcKWJjXQKDNJD3HVm+kOUsXhTOkpi69vI4EuAr95bA==}
+
'@types/json-schema@7.0.15':
resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
@@ -759,10 +944,6 @@ packages:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
- '@typescript-eslint/scope-manager@8.22.0':
- resolution: {integrity: sha512-/lwVV0UYgkj7wPSw0o8URy6YI64QmcOdwHuGuxWIYznO6d45ER0wXUbksr9pYdViAofpUCNJx/tAzNukgvaaiQ==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
'@typescript-eslint/scope-manager@8.23.0':
resolution: {integrity: sha512-OGqo7+dXHqI7Hfm+WqkZjKjsiRtFUQHPdGMXzk5mYXhJUedO7e/Y7i8AK3MyLMgZR93TX4bIzYrfyVjLC+0VSw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -774,20 +955,10 @@ packages:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
- '@typescript-eslint/types@8.22.0':
- resolution: {integrity: sha512-0S4M4baNzp612zwpD4YOieP3VowOARgK2EkN/GBn95hpyF8E2fbMT55sRHWBq+Huaqk3b3XK+rxxlM8sPgGM6A==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
'@typescript-eslint/types@8.23.0':
resolution: {integrity: sha512-1sK4ILJbCmZOTt9k4vkoulT6/y5CHJ1qUYxqpF1K/DBAd8+ZUL4LlSCxOssuH5m4rUaaN0uS0HlVPvd45zjduQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/typescript-estree@8.22.0':
- resolution: {integrity: sha512-SJX99NAS2ugGOzpyhMza/tX+zDwjvwAtQFLsBo3GQxiGcvaKlqGBkmZ+Y1IdiSi9h4Q0Lr5ey+Cp9CGWNY/F/w==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- peerDependencies:
- typescript: '>=4.8.4 <5.8.0'
-
'@typescript-eslint/typescript-estree@8.23.0':
resolution: {integrity: sha512-LcqzfipsB8RTvH8FX24W4UUFk1bl+0yTOf9ZA08XngFwMg4Kj8A+9hwz8Cr/ZS4KwHrmo9PJiLZkOt49vPnuvQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -801,14 +972,16 @@ packages:
eslint: ^8.57.0 || ^9.0.0
typescript: '>=4.8.4 <5.8.0'
- '@typescript-eslint/visitor-keys@8.22.0':
- resolution: {integrity: sha512-AWpYAXnUgvLNabGTy3uBylkgZoosva/miNd1I8Bz3SjotmQPbVqhO4Cczo8AsZ44XVErEBPr/CRSgaj8sG7g0w==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
'@typescript-eslint/visitor-keys@8.23.0':
resolution: {integrity: sha512-oWWhcWDLwDfu++BGTZcmXWqpwtkwb5o7fxUIGksMQQDSdPW9prsSnfIOZMlsj4vBOSrcnjIUZMiIjODgGosFhQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@vitejs/plugin-react@4.3.4':
+ resolution: {integrity: sha512-SCCPBJtYLdE8PX/7ZQAs1QAZ8Jqwih+0VBLum1EGqmCCQal+MIUqLCzj3ZUy8ufbC0cAM4LRlSTm7IQJwWT4ug==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^4.2.0 || ^5.0.0 || ^6.0.0
+
'@vitest/expect@3.0.5':
resolution: {integrity: sha512-nNIOqupgZ4v5jWuQx2DSlHLEs7Q4Oh/7AYwNyE+k0UQzG7tSmjPXShUikn1mpNGzYEN2jJbTvLejwShMitovBA==}
@@ -1133,6 +1306,11 @@ packages:
engines: {node: '>=18'}
hasBin: true
+ esbuild@0.25.0:
+ resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==}
+ engines: {node: '>=18'}
+ hasBin: true
+
escalade@3.1.2:
resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
engines: {node: '>=6'}
@@ -1279,8 +1457,8 @@ packages:
resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- eslint@9.19.0:
- resolution: {integrity: sha512-ug92j0LepKlbbEv6hD911THhoRHmbdXt2gX+VDABAW/Ir7D3nqKdv5Pf5vtlyY6HQMTEP2skXY43ueqTCWssEA==}
+ eslint@9.20.0:
+ resolution: {integrity: sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
hasBin: true
peerDependencies:
@@ -1870,8 +2048,8 @@ packages:
resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
engines: {node: '>=4'}
- postcss-selector-parser@7.0.0:
- resolution: {integrity: sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==}
+ postcss-selector-parser@7.1.0:
+ resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==}
engines: {node: '>=4'}
postcss-value-parser@4.2.0:
@@ -1897,6 +2075,10 @@ packages:
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ react-refresh@0.14.2:
+ resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==}
+ engines: {node: '>=0.10.0'}
+
read-cache@1.0.0:
resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
@@ -2044,8 +2226,8 @@ packages:
resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
engines: {node: '>=8'}
- stylis@4.3.5:
- resolution: {integrity: sha512-K7npNOKGRYuhAFFzkzMGfxFDpN6gDwf8hcMiE+uveTVbBgm93HrNP3ZDUpKqzZ4pG7TP6fmb+EMAQPjq9FqqvA==}
+ stylis@4.3.6:
+ resolution: {integrity: sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==}
sucrase@3.35.0:
resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
@@ -2112,12 +2294,6 @@ packages:
resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
hasBin: true
- ts-api-utils@2.0.0:
- resolution: {integrity: sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==}
- engines: {node: '>=18.12'}
- peerDependencies:
- typescript: '>=4.8.4'
-
ts-api-utils@2.0.1:
resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==}
engines: {node: '>=18.12'}
@@ -2332,20 +2508,20 @@ snapshots:
'@aet/eslint-define-config@0.1.7': {}
- '@aet/eslint-rules@2.0.36(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)':
+ '@aet/eslint-rules@2.0.36(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)':
dependencies:
'@aet/eslint-define-config': 0.1.7
'@antfu/install-pkg': 1.0.0
- '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2))
- '@eslint-react/eslint-plugin': 1.26.1(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2))
+ '@eslint-react/eslint-plugin': 1.26.1(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
'@eslint/js': 9.19.0
'@nolyfill/is-core-module': 1.0.39
- '@stylistic/eslint-plugin': 3.0.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@stylistic/eslint-plugin': 3.0.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@types/eslint': 9.6.1
- '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/parser': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
aria-query: 5.3.2
axe-core: 4.10.2
axobject-query: 4.1.0
@@ -2354,13 +2530,13 @@ snapshots:
doctrine: 3.0.0
emoji-regex: 10.4.0
enhanced-resolve: 5.18.1
- eslint: 9.19.0(jiti@2.4.2)
- eslint-config-prettier: 10.0.1(eslint@9.19.0(jiti@2.4.2))
+ eslint: 9.20.0(jiti@2.4.2)
+ eslint-config-prettier: 10.0.1(eslint@9.20.0(jiti@2.4.2))
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))
- eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2)))(eslint@9.19.0(jiti@2.4.2))
- eslint-plugin-import-x: 4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-unicorn: 56.0.1(eslint@9.19.0(jiti@2.4.2))
+ eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))
+ eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2)))(eslint@9.20.0(jiti@2.4.2))
+ eslint-plugin-import-x: 4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-unicorn: 56.0.1(eslint@9.20.0(jiti@2.4.2))
esprima: 4.0.1
esquery: 1.6.0
estraverse: 5.3.0
@@ -2375,9 +2551,9 @@ snapshots:
minimatch: 10.0.1
semver: 7.7.1
typescript: 5.7.3
- typescript-eslint: 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ typescript-eslint: 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
optionalDependencies:
- '@tanstack/eslint-plugin-query': 5.64.2(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@tanstack/eslint-plugin-query': 5.64.2(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
transitivePeerDependencies:
- eslint-import-resolver-webpack
- eslint-plugin-import
@@ -2404,18 +2580,19 @@ snapshots:
'@babel/compat-data@7.26.5': {}
- '@babel/core@7.26.7':
+ '@babel/core@7.26.8':
dependencies:
'@ampproject/remapping': 2.3.0
'@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.5
+ '@babel/generator': 7.26.8
'@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
+ '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.8)
'@babel/helpers': 7.26.7
- '@babel/parser': 7.26.7
- '@babel/template': 7.25.9
- '@babel/traverse': 7.26.7
+ '@babel/parser': 7.26.8
+ '@babel/template': 7.26.8
+ '@babel/traverse': 7.26.8
'@babel/types': 7.26.7
+ '@types/gensync': 1.0.4
convert-source-map: 2.0.0
debug: 4.4.0
gensync: 1.0.0-beta.2
@@ -2424,9 +2601,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@babel/generator@7.26.5':
+ '@babel/generator@7.26.8':
dependencies:
- '@babel/parser': 7.26.7
+ '@babel/parser': 7.26.8
'@babel/types': 7.26.7
'@jridgewell/gen-mapping': 0.3.5
'@jridgewell/trace-mapping': 0.3.25
@@ -2442,20 +2619,22 @@ snapshots:
'@babel/helper-module-imports@7.25.9':
dependencies:
- '@babel/traverse': 7.26.7
+ '@babel/traverse': 7.26.8
'@babel/types': 7.26.7
transitivePeerDependencies:
- supports-color
- '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.7)':
+ '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.8)':
dependencies:
- '@babel/core': 7.26.7
+ '@babel/core': 7.26.8
'@babel/helper-module-imports': 7.25.9
'@babel/helper-validator-identifier': 7.25.9
- '@babel/traverse': 7.26.7
+ '@babel/traverse': 7.26.8
transitivePeerDependencies:
- supports-color
+ '@babel/helper-plugin-utils@7.26.5': {}
+
'@babel/helper-string-parser@7.25.9': {}
'@babel/helper-validator-identifier@7.25.9': {}
@@ -2464,7 +2643,7 @@ snapshots:
'@babel/helpers@7.26.7':
dependencies:
- '@babel/template': 7.25.9
+ '@babel/template': 7.26.8
'@babel/types': 7.26.7
'@babel/parser@7.25.3':
@@ -2475,18 +2654,32 @@ snapshots:
dependencies:
'@babel/types': 7.26.7
- '@babel/template@7.25.9':
+ '@babel/parser@7.26.8':
dependencies:
- '@babel/code-frame': 7.26.2
- '@babel/parser': 7.26.7
'@babel/types': 7.26.7
- '@babel/traverse@7.26.7':
+ '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.8)':
+ dependencies:
+ '@babel/core': 7.26.8
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.26.8)':
+ dependencies:
+ '@babel/core': 7.26.8
+ '@babel/helper-plugin-utils': 7.26.5
+
+ '@babel/template@7.26.8':
dependencies:
'@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.5
- '@babel/parser': 7.26.7
- '@babel/template': 7.25.9
+ '@babel/parser': 7.26.8
+ '@babel/types': 7.26.7
+
+ '@babel/traverse@7.26.8':
+ dependencies:
+ '@babel/code-frame': 7.26.2
+ '@babel/generator': 7.26.8
+ '@babel/parser': 7.26.8
+ '@babel/template': 7.26.8
'@babel/types': 7.26.7
debug: 4.4.0
globals: 11.12.0
@@ -2503,91 +2696,166 @@ snapshots:
'@esbuild/aix-ppc64@0.24.2':
optional: true
+ '@esbuild/aix-ppc64@0.25.0':
+ optional: true
+
'@esbuild/android-arm64@0.24.2':
optional: true
+ '@esbuild/android-arm64@0.25.0':
+ optional: true
+
'@esbuild/android-arm@0.24.2':
optional: true
+ '@esbuild/android-arm@0.25.0':
+ optional: true
+
'@esbuild/android-x64@0.24.2':
optional: true
+ '@esbuild/android-x64@0.25.0':
+ optional: true
+
'@esbuild/darwin-arm64@0.24.2':
optional: true
+ '@esbuild/darwin-arm64@0.25.0':
+ optional: true
+
'@esbuild/darwin-x64@0.24.2':
optional: true
+ '@esbuild/darwin-x64@0.25.0':
+ optional: true
+
'@esbuild/freebsd-arm64@0.24.2':
optional: true
+ '@esbuild/freebsd-arm64@0.25.0':
+ optional: true
+
'@esbuild/freebsd-x64@0.24.2':
optional: true
+ '@esbuild/freebsd-x64@0.25.0':
+ optional: true
+
'@esbuild/linux-arm64@0.24.2':
optional: true
+ '@esbuild/linux-arm64@0.25.0':
+ optional: true
+
'@esbuild/linux-arm@0.24.2':
optional: true
+ '@esbuild/linux-arm@0.25.0':
+ optional: true
+
'@esbuild/linux-ia32@0.24.2':
optional: true
+ '@esbuild/linux-ia32@0.25.0':
+ optional: true
+
'@esbuild/linux-loong64@0.24.2':
optional: true
+ '@esbuild/linux-loong64@0.25.0':
+ optional: true
+
'@esbuild/linux-mips64el@0.24.2':
optional: true
+ '@esbuild/linux-mips64el@0.25.0':
+ optional: true
+
'@esbuild/linux-ppc64@0.24.2':
optional: true
+ '@esbuild/linux-ppc64@0.25.0':
+ optional: true
+
'@esbuild/linux-riscv64@0.24.2':
optional: true
+ '@esbuild/linux-riscv64@0.25.0':
+ optional: true
+
'@esbuild/linux-s390x@0.24.2':
optional: true
+ '@esbuild/linux-s390x@0.25.0':
+ optional: true
+
'@esbuild/linux-x64@0.24.2':
optional: true
+ '@esbuild/linux-x64@0.25.0':
+ optional: true
+
'@esbuild/netbsd-arm64@0.24.2':
optional: true
+ '@esbuild/netbsd-arm64@0.25.0':
+ optional: true
+
'@esbuild/netbsd-x64@0.24.2':
optional: true
+ '@esbuild/netbsd-x64@0.25.0':
+ optional: true
+
'@esbuild/openbsd-arm64@0.24.2':
optional: true
+ '@esbuild/openbsd-arm64@0.25.0':
+ optional: true
+
'@esbuild/openbsd-x64@0.24.2':
optional: true
+ '@esbuild/openbsd-x64@0.25.0':
+ optional: true
+
'@esbuild/sunos-x64@0.24.2':
optional: true
+ '@esbuild/sunos-x64@0.25.0':
+ optional: true
+
'@esbuild/win32-arm64@0.24.2':
optional: true
+ '@esbuild/win32-arm64@0.25.0':
+ optional: true
+
'@esbuild/win32-ia32@0.24.2':
optional: true
+ '@esbuild/win32-ia32@0.25.0':
+ optional: true
+
'@esbuild/win32-x64@0.24.2':
optional: true
- '@eslint-community/eslint-utils@4.4.1(eslint@9.19.0(jiti@2.4.2))':
+ '@esbuild/win32-x64@0.25.0':
+ optional: true
+
+ '@eslint-community/eslint-utils@4.4.1(eslint@9.20.0(jiti@2.4.2))':
dependencies:
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.1': {}
- '@eslint-react/ast@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@eslint-react/ast@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
'@eslint-react/eff': 1.26.1
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/typescript-estree': 8.22.0(typescript@5.7.3)
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
string-ts: 2.2.0
ts-pattern: 5.6.2
transitivePeerDependencies:
@@ -2595,17 +2863,17 @@ snapshots:
- supports-color
- typescript
- '@eslint-react/core@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@eslint-react/core@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
birecord: 0.1.1
ts-pattern: 5.6.2
transitivePeerDependencies:
@@ -2615,45 +2883,45 @@ snapshots:
'@eslint-react/eff@1.26.1': {}
- '@eslint-react/eslint-plugin@1.26.1(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)':
+ '@eslint-react/eslint-plugin@1.26.1(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)':
dependencies:
'@eslint-react/eff': 1.26.1
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
- eslint-plugin-react-debug: 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-react-dom: 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-react-hooks-extra: 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-react-naming-convention: 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-react-web-api: 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint-plugin-react-x: 1.26.1(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
+ eslint-plugin-react-debug: 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-react-dom: 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-react-hooks-extra: 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-react-naming-convention: 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-react-web-api: 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-react-x: 1.26.1(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3)
optionalDependencies:
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
- ts-api-utils
- '@eslint-react/jsx@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@eslint-react/jsx@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
ts-pattern: 5.6.2
transitivePeerDependencies:
- eslint
- supports-color
- typescript
- '@eslint-react/shared@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@eslint-react/shared@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
'@eslint-react/eff': 1.26.1
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
picomatch: 4.0.2
ts-pattern: 5.6.2
transitivePeerDependencies:
@@ -2661,13 +2929,13 @@ snapshots:
- supports-color
- typescript
- '@eslint-react/var@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@eslint-react/var@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
string-ts: 2.2.0
ts-pattern: 5.6.2
transitivePeerDependencies:
@@ -2687,6 +2955,10 @@ snapshots:
dependencies:
'@types/json-schema': 7.0.15
+ '@eslint/core@0.11.0':
+ dependencies:
+ '@types/json-schema': 7.0.15
+
'@eslint/eslintrc@3.2.0':
dependencies:
ajv: 6.12.6
@@ -2703,6 +2975,8 @@ snapshots:
'@eslint/js@9.19.0': {}
+ '@eslint/js@9.20.0': {}
+
'@eslint/object-schema@2.1.4': {}
'@eslint/plugin-kit@0.2.5':
@@ -2877,10 +3151,10 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.34.4':
optional: true
- '@stylistic/eslint-plugin@3.0.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@stylistic/eslint-plugin@3.0.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
eslint-visitor-keys: 4.2.0
espree: 10.3.0
estraverse: 5.3.0
@@ -2889,10 +3163,10 @@ snapshots:
- supports-color
- typescript
- '@tanstack/eslint-plugin-query@5.64.2(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@tanstack/eslint-plugin-query@5.64.2(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
transitivePeerDependencies:
- supports-color
- typescript
@@ -2912,7 +3186,7 @@ snapshots:
'@types/babel__template@7.4.4':
dependencies:
- '@babel/parser': 7.25.3
+ '@babel/parser': 7.26.7
'@babel/types': 7.26.7
'@types/babel__traverse@7.20.6':
@@ -2934,6 +3208,8 @@ snapshots:
'@types/estree@1.0.6': {}
+ '@types/gensync@1.0.4': {}
+
'@types/json-schema@7.0.15': {}
'@types/lodash-es@4.17.12':
@@ -2962,15 +3238,15 @@ snapshots:
dependencies:
'@types/node': 22.13.1
- '@typescript-eslint/eslint-plugin@8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@typescript-eslint/eslint-plugin@8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@typescript-eslint/scope-manager': 8.23.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.23.0
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
graphemer: 1.4.0
ignore: 5.3.2
natural-compare: 1.4.0
@@ -2979,57 +3255,36 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
'@typescript-eslint/scope-manager': 8.23.0
'@typescript-eslint/types': 8.23.0
'@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3)
'@typescript-eslint/visitor-keys': 8.23.0
debug: 4.4.0
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/scope-manager@8.22.0':
- dependencies:
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/visitor-keys': 8.22.0
-
'@typescript-eslint/scope-manager@8.23.0':
dependencies:
'@typescript-eslint/types': 8.23.0
'@typescript-eslint/visitor-keys': 8.23.0
- '@typescript-eslint/type-utils@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@typescript-eslint/type-utils@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
'@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3)
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
debug: 4.4.0
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
ts-api-utils: 2.0.1(typescript@5.7.3)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/types@8.22.0': {}
-
'@typescript-eslint/types@8.23.0': {}
- '@typescript-eslint/typescript-estree@8.22.0(typescript@5.7.3)':
- dependencies:
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/visitor-keys': 8.22.0
- debug: 4.4.0
- fast-glob: 3.3.3
- is-glob: 4.0.3
- minimatch: 9.0.5
- semver: 7.7.1
- ts-api-utils: 2.0.0(typescript@5.7.3)
- typescript: 5.7.3
- transitivePeerDependencies:
- - supports-color
-
'@typescript-eslint/typescript-estree@8.23.0(typescript@5.7.3)':
dependencies:
'@typescript-eslint/types': 8.23.0
@@ -3044,27 +3299,33 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)':
+ '@typescript-eslint/utils@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)':
dependencies:
- '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2))
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2))
'@typescript-eslint/scope-manager': 8.23.0
'@typescript-eslint/types': 8.23.0
'@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/visitor-keys@8.22.0':
- dependencies:
- '@typescript-eslint/types': 8.22.0
- eslint-visitor-keys: 4.2.0
-
'@typescript-eslint/visitor-keys@8.23.0':
dependencies:
'@typescript-eslint/types': 8.23.0
eslint-visitor-keys: 4.2.0
+ '@vitejs/plugin-react@4.3.4(vite@6.1.0(@types/node@22.13.1)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.5.0))':
+ dependencies:
+ '@babel/core': 7.26.8
+ '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.8)
+ '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.8)
+ '@types/babel__core': 7.20.5
+ react-refresh: 0.14.2
+ vite: 6.1.0(@types/node@22.13.1)(jiti@2.4.2)(lightningcss@1.29.1)(yaml@2.5.0)
+ transitivePeerDependencies:
+ - supports-color
+
'@vitest/expect@3.0.5':
dependencies:
'@vitest/spy': 3.0.5
@@ -3339,10 +3600,10 @@ snapshots:
es-module-lexer@1.6.0: {}
- esbuild-register@3.6.0(esbuild@0.24.2):
+ esbuild-register@3.6.0(esbuild@0.25.0):
dependencies:
debug: 4.3.6
- esbuild: 0.24.2
+ esbuild: 0.25.0
transitivePeerDependencies:
- supports-color
@@ -3374,6 +3635,34 @@ snapshots:
'@esbuild/win32-ia32': 0.24.2
'@esbuild/win32-x64': 0.24.2
+ esbuild@0.25.0:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.25.0
+ '@esbuild/android-arm': 0.25.0
+ '@esbuild/android-arm64': 0.25.0
+ '@esbuild/android-x64': 0.25.0
+ '@esbuild/darwin-arm64': 0.25.0
+ '@esbuild/darwin-x64': 0.25.0
+ '@esbuild/freebsd-arm64': 0.25.0
+ '@esbuild/freebsd-x64': 0.25.0
+ '@esbuild/linux-arm': 0.25.0
+ '@esbuild/linux-arm64': 0.25.0
+ '@esbuild/linux-ia32': 0.25.0
+ '@esbuild/linux-loong64': 0.25.0
+ '@esbuild/linux-mips64el': 0.25.0
+ '@esbuild/linux-ppc64': 0.25.0
+ '@esbuild/linux-riscv64': 0.25.0
+ '@esbuild/linux-s390x': 0.25.0
+ '@esbuild/linux-x64': 0.25.0
+ '@esbuild/netbsd-arm64': 0.25.0
+ '@esbuild/netbsd-x64': 0.25.0
+ '@esbuild/openbsd-arm64': 0.25.0
+ '@esbuild/openbsd-x64': 0.25.0
+ '@esbuild/sunos-x64': 0.25.0
+ '@esbuild/win32-arm64': 0.25.0
+ '@esbuild/win32-ia32': 0.25.0
+ '@esbuild/win32-x64': 0.25.0
+
escalade@3.1.2: {}
escalade@3.2.0: {}
@@ -3382,9 +3671,9 @@ snapshots:
escape-string-regexp@4.0.0: {}
- eslint-config-prettier@10.0.1(eslint@9.19.0(jiti@2.4.2)):
+ eslint-config-prettier@10.0.1(eslint@9.20.0(jiti@2.4.2)):
dependencies:
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
eslint-import-resolver-node@0.3.9:
dependencies:
@@ -3394,42 +3683,42 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2)):
+ eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2)):
dependencies:
'@nolyfill/is-core-module': 1.0.39
debug: 4.4.0
enhanced-resolve: 5.18.1
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
fast-glob: 3.3.3
get-tsconfig: 4.10.0
is-bun-module: 1.3.0
is-glob: 4.0.3
stable-hash: 0.0.4
optionalDependencies:
- eslint-plugin-import-x: 4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint-plugin-import-x: 4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
transitivePeerDependencies:
- supports-color
- eslint-module-utils@2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2)))(eslint@9.19.0(jiti@2.4.2)):
+ eslint-module-utils@2.12.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2)))(eslint@9.20.0(jiti@2.4.2)):
dependencies:
debug: 3.2.7
optionalDependencies:
- '@typescript-eslint/parser': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))
+ eslint-import-resolver-typescript: 3.7.0(eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))
transitivePeerDependencies:
- supports-color
- eslint-plugin-import-x@4.6.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-import-x@4.6.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
'@types/doctrine': 0.0.9
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
debug: 4.4.0
doctrine: 3.0.0
enhanced-resolve: 5.18.1
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
eslint-import-resolver-node: 0.3.9
get-tsconfig: 4.10.0
is-glob: 4.0.3
@@ -3441,19 +3730,19 @@ snapshots:
- supports-color
- typescript
- eslint-plugin-react-debug@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-react-debug@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3461,19 +3750,19 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-react-dom@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-react-dom@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
compare-versions: 6.1.1
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3481,19 +3770,19 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-react-hooks-extra@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-react-hooks-extra@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3501,18 +3790,18 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-react-naming-convention@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-react-naming-convention@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3520,18 +3809,18 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-react-web-api@1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ eslint-plugin-react-web-api@1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3539,21 +3828,21 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-react-x@1.26.1(eslint@9.19.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3):
+ eslint-plugin-react-x@1.26.1(eslint@9.20.0(jiti@2.4.2))(ts-api-utils@2.0.1(typescript@5.7.3))(typescript@5.7.3):
dependencies:
- '@eslint-react/ast': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/core': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/ast': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/core': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
'@eslint-react/eff': 1.26.1
- '@eslint-react/jsx': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/shared': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@eslint-react/var': 1.26.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/scope-manager': 8.22.0
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/types': 8.22.0
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/jsx': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/shared': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@eslint-react/var': 1.26.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/scope-manager': 8.23.0
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/types': 8.23.0
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
compare-versions: 6.1.1
- eslint: 9.19.0(jiti@2.4.2)
- is-immutable-type: 5.0.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
+ is-immutable-type: 5.0.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
string-ts: 2.2.0
ts-pattern: 5.6.2
optionalDependencies:
@@ -3562,14 +3851,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-unicorn@56.0.1(eslint@9.19.0(jiti@2.4.2)):
+ eslint-plugin-unicorn@56.0.1(eslint@9.20.0(jiti@2.4.2)):
dependencies:
'@babel/helper-validator-identifier': 7.25.9
- '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2))
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2))
ci-info: 4.0.0
clean-regexp: 1.0.0
core-js-compat: 3.39.0
- eslint: 9.19.0(jiti@2.4.2)
+ eslint: 9.20.0(jiti@2.4.2)
esquery: 1.6.0
globals: 15.14.0
indent-string: 4.0.0
@@ -3591,14 +3880,14 @@ snapshots:
eslint-visitor-keys@4.2.0: {}
- eslint@9.19.0(jiti@2.4.2):
+ eslint@9.20.0(jiti@2.4.2):
dependencies:
- '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2))
+ '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2))
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.19.0
- '@eslint/core': 0.10.0
+ '@eslint/core': 0.11.0
'@eslint/eslintrc': 3.2.0
- '@eslint/js': 9.19.0
+ '@eslint/js': 9.20.0
'@eslint/plugin-kit': 0.2.5
'@humanfs/node': 0.16.6
'@humanwhocodes/module-importer': 1.0.1
@@ -3789,11 +4078,11 @@ snapshots:
dependencies:
is-extglob: 2.1.1
- is-immutable-type@5.0.1(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ is-immutable-type@5.0.1(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@typescript-eslint/type-utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
- ts-api-utils: 2.0.0(typescript@5.7.3)
+ '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
+ ts-api-utils: 2.0.1(typescript@5.7.3)
ts-declaration-location: 1.0.4(typescript@5.7.3)
typescript: 5.7.3
transitivePeerDependencies:
@@ -4095,14 +4384,14 @@ snapshots:
postcss-nested@7.0.2(postcss@8.5.1):
dependencies:
postcss: 8.5.1
- postcss-selector-parser: 7.0.0
+ postcss-selector-parser: 7.1.0
postcss-selector-parser@6.1.2:
dependencies:
cssesc: 3.0.0
util-deprecate: 1.0.2
- postcss-selector-parser@7.0.0:
+ postcss-selector-parser@7.1.0:
dependencies:
cssesc: 3.0.0
util-deprecate: 1.0.2
@@ -4123,6 +4412,8 @@ snapshots:
queue-microtask@1.2.3: {}
+ react-refresh@0.14.2: {}
+
read-cache@1.0.0:
dependencies:
pify: 2.3.0
@@ -4291,7 +4582,7 @@ snapshots:
strip-json-comments@3.1.1: {}
- stylis@4.3.5: {}
+ stylis@4.3.6: {}
sucrase@3.35.0:
dependencies:
@@ -4373,10 +4664,6 @@ snapshots:
tree-kill@1.2.2: {}
- ts-api-utils@2.0.0(typescript@5.7.3):
- dependencies:
- typescript: 5.7.3
-
ts-api-utils@2.0.1(typescript@5.7.3):
dependencies:
typescript: 5.7.3
@@ -4429,12 +4716,12 @@ snapshots:
type-fest@4.33.0: {}
- typescript-eslint@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3):
+ typescript-eslint@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3):
dependencies:
- '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/parser': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- '@typescript-eslint/utils': 8.23.0(eslint@9.19.0(jiti@2.4.2))(typescript@5.7.3)
- eslint: 9.19.0(jiti@2.4.2)
+ '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)
+ eslint: 9.20.0(jiti@2.4.2)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
diff --git a/scripts/index.ts b/scripts/index.ts
index 0a5f85a..1e2923a 100755
--- a/scripts/index.ts
+++ b/scripts/index.ts
@@ -1,7 +1,6 @@
#!/usr/bin/env bun
import { promises as fs } from "node:fs";
-import { pick } from "lodash-es";
import { build, defineConfig } from "tsup";
import pkg from "../package.json" with { type: "json" };
@@ -57,28 +56,13 @@ await Promise.all([
external: ["tailwindcss/plugin", "tailwindcss/colors", "tailwindcss/defaultTheme"],
})
),
- Bun.write(
- "dist/package.json",
- JSON.stringify(
- pick(pkg, [
- "name",
- "version",
- "type",
- "license",
- "dependencies",
- "author",
- "exports",
- ]),
- null,
- 2
- ).replaceAll("./dist/", "./")
- ),
]);
await Promise.all([
fs.copyFile("README.md", "dist/README.md"),
fs.copyFile("LICENSE.md", "dist/LICENSE.md"),
fs.copyFile("src/macro.d.ts", "dist/macro.d.ts"),
+ fs.copyFile("src/react-env.d.ts", "dist/react-env.d.ts"),
Bun.write(`dist/base.d.ts`, `/**\n * \`@tailwind base\` component.\n */\nexport {};`),
]);
diff --git a/src/__tests__/base.test.ts b/src/__tests__/base.test.ts
index 294bb05..3e85908 100644
--- a/src/__tests__/base.test.ts
+++ b/src/__tests__/base.test.ts
@@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest";
-import { createPostCSS } from "../index";
+import { createPostCSS, getClassName } from "../index";
import { getBuild, minCSS, name } from "./utils";
@@ -10,7 +10,6 @@ describe("babel-tailwind", () => {
it("supports importing tailwind/base", async () => {
const postcss = createPostCSS({
tailwindConfig: {},
- postCSSPlugins: [],
});
const base = await postcss("@tailwind base;");
const { files } = await compileESBuild({
@@ -24,4 +23,23 @@ describe("babel-tailwind", () => {
expect(files.js.text).toBe("");
expect(minCSS(files.css.text)).toContain(minCSS(base));
});
+
+ it("supports composeRenderProps", async () => {
+ const { files } = await compileESBuild({
+ clsx: "clsx",
+ expectFiles: 2,
+ javascript: /* tsx */ `
+ export function Hello() {
+ return (
+
+ Hello, world!
+
+ );
+ }
+ `,
+ });
+
+ const clsName = getClassName("text-center");
+ expect(files.js.text).toContain(`{ className: "${clsName}",`);
+ });
});
diff --git a/src/__tests__/merge.test.ts b/src/__tests__/merge.test.ts
index e34753b..f56f0ff 100644
--- a/src/__tests__/merge.test.ts
+++ b/src/__tests__/merge.test.ts
@@ -50,6 +50,31 @@ describe("merges with existing className attribute", () => {
expect(files.css.text).toMatch(`.${clsName} {\n text-align: center;\n}`);
});
+ it("supports composeRenderProps", async () => {
+ const { files } = await compileESBuild({
+ clsx: "clsx",
+ expectFiles: 2,
+ composeRenderProps: true,
+ javascript: /* tsx */ `
+ export function Hello(props) {
+ return (
+
+ Hello, world!
+
+ );
+ }
+ `,
+ });
+
+ const clsName = getClassName("text-center");
+ expect(files.js.text).toContain(
+ `import { composeRenderProps as _composeRenderProps } from "react-aria-component";`
+ );
+ expect(files.js.text).toContain(
+ `...props, className: _composeRenderProps(_className, (n) => _cx("${clsName}", n)),`
+ );
+ });
+
it("reuses clsx in scope", async () => {
const { files } = await compileESBuild({
clsx: "clsx",
diff --git a/src/__tests__/utils.ts b/src/__tests__/utils.ts
index d4cc708..6365f48 100644
--- a/src/__tests__/utils.ts
+++ b/src/__tests__/utils.ts
@@ -52,6 +52,7 @@ export function getBuild(name: string) {
external: [
"react",
"react/jsx-runtime",
+ "react-aria-component",
"@emotion/css",
"clsx",
"tslib",
diff --git a/src/babel/index.ts b/src/babel/index.ts
index f613c57..6519093 100644
--- a/src/babel/index.ts
+++ b/src/babel/index.ts
@@ -53,6 +53,7 @@ function getUtils({
let styleImport: t.Identifier;
let classedImport: t.Identifier;
let cssModuleImport: t.Identifier;
+ let composeRenderPropsImport: t.Identifier;
const cssMap = new Map();
const jsMap = new Map();
@@ -99,11 +100,14 @@ function getUtils({
return t.cloneNode(cssModuleImport);
};
- const reuseImport = (scope: Scope, id?: string) => {
- if (id && scope.getBinding(id) === path.scope.getBinding(id)) {
- return t.identifier(id);
+ function reuseImport(scope: Scope) {
+ if (
+ existingCx &&
+ scope.getBinding(existingCx) === path.scope.getBinding(existingCx)
+ ) {
+ return t.identifier(existingCx);
}
- };
+ }
return {
program: path,
@@ -151,7 +155,7 @@ function getUtils({
getCx: (localScope: Scope) => {
if (cx == null) {
- const reuse = reuseImport(localScope, existingCx);
+ const reuse = reuseImport(localScope);
if (reuse) return reuse;
cx = path.scope.generateUidIdentifier("cx");
@@ -173,6 +177,24 @@ function getUtils({
return t.cloneNode(tslibImport);
},
+ getComposeRenderPropsImport: () => {
+ if (composeRenderPropsImport == null) {
+ composeRenderPropsImport = path.scope.generateUidIdentifier("composeRenderProps");
+ path.node.body.unshift(
+ t.importDeclaration(
+ [
+ t.importSpecifier(
+ composeRenderPropsImport,
+ t.identifier("composeRenderProps")
+ ),
+ ],
+ t.stringLiteral("react-aria-component")
+ )
+ );
+ }
+ return t.cloneNode(composeRenderPropsImport);
+ },
+
getClassedImport: () => {
if (classedImport == null) {
classedImport = path.scope.generateUidIdentifier("classed");
@@ -256,6 +278,7 @@ export function babelTailwind(
getClassName: getClass = getClassName,
jsxAttributeAction = "delete",
jsxAttributeName = "css",
+ composeRenderProps,
} = options;
return definePlugin(({ types: t }) => ({
@@ -345,6 +368,7 @@ export function babelTailwind(
);
}
+ // There is an existing className attribute
if (classNameAttribute) {
const attrValue = classNameAttribute.value!;
const wrap = (...originalValue: (b.types.Expression | b.types.SpreadElement)[]) =>
@@ -355,60 +379,80 @@ export function babelTailwind(
attrValue.value +=
(attrValue.value.at(-1) === " " ? "" : " ") + valuePathNode.value;
} else {
- const internalAttrValue = extractJSXContainer(attrValue);
+ const internal = extractJSXContainer(attrValue);
if (
- t.isArrowFunctionExpression(internalAttrValue) &&
- !t.isBlockStatement(internalAttrValue.body)
+ t.isArrowFunctionExpression(internal) &&
+ !t.isBlockStatement(internal.body)
) {
- internalAttrValue.body = wrap(internalAttrValue.body);
+ // className={({ isEntering }) => isEntering ? "enter" : "exit"}
+ // className: ({ isEntering }) => _cx("${clsName}", isEntering ? "enter" : "exit")
+ internal.body = wrap(internal.body);
} else if (
// if the existing className is already wrapped with cx, we unwrap it
// to avoid double calling: cx(cx())
- t.isCallExpression(internalAttrValue) &&
- t.isIdentifier(internalAttrValue.callee) &&
+ t.isCallExpression(internal) &&
+ t.isIdentifier(internal.callee) &&
_.existingCx &&
_.program.scope
.getBinding(_.existingCx)
?.referencePaths.map(p => p.node)
- .includes(internalAttrValue.callee)
+ .includes(internal.callee)
) {
classNameAttribute.value = t.jsxExpressionContainer(
wrap(
- ...(internalAttrValue.arguments as (
- | b.types.Expression
- | b.types.SpreadElement
- )[])
+ ...(internal.arguments as (b.types.Expression | b.types.SpreadElement)[])
)
);
} else {
- classNameAttribute.value = t.jsxExpressionContainer(wrap(internalAttrValue));
+ classNameAttribute.value = t.jsxExpressionContainer(wrap(internal));
}
}
} else {
const wrap = (originalValue: b.types.Expression) =>
- t.callExpression(_.getCx(path.scope), [valuePathNode, originalValue]);
+ composeRenderProps
+ ? // composeRenderProps(className, n => cn("...", n))
+ t.callExpression(_.getComposeRenderPropsImport(), [
+ originalValue,
+ t.arrowFunctionExpression(
+ [t.identifier("n")],
+ t.callExpression(_.getCx(path.scope), [
+ valuePathNode,
+ t.identifier("n"),
+ ])
+ ),
+ ])
+ : t.callExpression(_.getCx(path.scope), [valuePathNode, originalValue]);
const rest = parent.attributes.filter(attr => t.isJSXSpreadAttribute(attr));
let arg;
+ // if there is only one JSX spread attribute and it's an identifier
+ // ... {...props} />
if (rest.length === 1 && (arg = rest[0].argument) && t.isIdentifier(arg)) {
- // props from argument and not modified anywhere
+ // props from argument and not modified anywhere, get the declaration of this argument
const scope = path.scope.getBinding(arg.name);
let index: number;
+ // node is an identifier or object pattern in `params`
+ // (props) => ... or ({ ...props }) => ...
const node = scope?.path.node;
if (
scope &&
!scope.constantViolations.length &&
- t.isFunctionDeclaration(scope.path.parent) &&
+ (t.isFunctionDeclaration(scope.path.parent) ||
+ t.isArrowFunctionExpression(scope.path.parent)) &&
(index = (scope.path.parent.params as t.Node[]).indexOf(node!)) !== -1 &&
(t.isIdentifier(node) || t.isObjectPattern(node))
) {
const clsVar = path.scope.generateUidIdentifier("className");
if (t.isIdentifier(node)) {
+ // (props) => ...
+ // ↪ ({ className, ...props }) => ...
scope.path.parent.params[index] = t.objectPattern([
t.objectProperty(t.identifier("className"), clsVar),
t.restElement(node),
]);
} else {
+ // ({ ...props }) => ...
+ // ↪ ({ className, ...props }) => ...
node.properties.unshift(
t.objectProperty(t.identifier("className"), clsVar)
);
@@ -437,6 +481,7 @@ export function babelTailwind(
);
}
} else {
+ // Fallback
const containerValue = t.isStringLiteral(valuePathNode)
? valuePathNode
: t.callExpression(_.getCx(path.scope), [valuePathNode]);
diff --git a/src/index.ts b/src/index.ts
index 1e897e5..079ad79 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,7 +1,9 @@
+import { createRequire } from "node:module";
+
import hash from "@emotion/hash";
+import type { BabelOptions, Options as ReactOptions } from "@vitejs/plugin-react";
import { transformSync } from "esbuild";
import { memoize, without } from "lodash-es";
-import type postcss from "postcss";
import type { Config } from "tailwindcss";
import type { SetRequired } from "type-fest";
@@ -21,6 +23,8 @@ export type BuildStyleFile = (
path: string
) => Promise;
+const require = createRequire(import.meta.url);
+
export interface TailwindPluginOptions {
/**
* Tailwind CSS configuration
@@ -37,11 +41,6 @@ export interface TailwindPluginOptions {
*/
prefix?: string;
- /**
- * Additional PostCSS plugins (optional)
- */
- postCSSPlugins?: postcss.AcceptedPlugin[];
-
/**
* Attribute to use for tailwind classes in JSX
* @default "css"
@@ -65,6 +64,11 @@ export interface TailwindPluginOptions {
*/
clsx: "clsx" | "classnames" | "emotion";
+ /**
+ * Use react-aria-component’s `composeRenderProps` function.
+ */
+ composeRenderProps?: boolean;
+
/**
* @internal
*/
@@ -101,12 +105,7 @@ export interface TailwindPluginOptions {
export type ResolveTailwindOptions = SetRequired<
TailwindPluginOptions,
- | "clsx"
- | "jsxAttributeAction"
- | "jsxAttributeName"
- | "postCSSPlugins"
- | "styleMap"
- | "tailwindConfig"
+ "clsx" | "jsxAttributeAction" | "jsxAttributeName" | "styleMap" | "tailwindConfig"
>;
/**
@@ -137,7 +136,6 @@ export function getTailwindPlugins(options: TailwindPluginOptions) {
getClassName,
jsxAttributeAction: "delete",
jsxAttributeName: "css",
- postCSSPlugins: [],
styleMap: new Map(),
tailwindConfig: {},
...options,
@@ -178,15 +176,40 @@ export function getTailwindPlugins(options: TailwindPluginOptions) {
}
};
+ const babel = (onCollect?: ClassNameCollector) =>
+ babelTailwind(resolvedOptions, onCollect);
+
+ const patchBabelOptions = (options: BabelOptions) => {
+ (options.plugins ??= []).push(babel());
+ };
+
return {
compile,
babel: (onCollect?: ClassNameCollector) => babelTailwind(resolvedOptions, onCollect),
esbuild: () => esbuildPlugin({ styleMap, compile, buildStyleFile }),
- /** Requires `options.vite` to be `true`. */
vite: () => {
resolvedOptions.vite = true;
return vitePlugin({ styleMap, compile, buildStyleFile });
},
+ react(options: ReactOptions = {}) {
+ const reactModule = require("@vitejs/plugin-react");
+ const reactPlugin: typeof import("@vitejs/plugin-react").default =
+ "default" in reactModule ? reactModule.default : reactModule;
+
+ options.babel ??= {};
+ if (typeof options.babel === "function") {
+ const fn = options.babel;
+ options.babel = (id, options) => {
+ const result = fn(id, options);
+ patchBabelOptions(result);
+ return result;
+ };
+ } else {
+ patchBabelOptions(options.babel);
+ }
+
+ return reactPlugin(options);
+ },
styleMap,
options,
getCompiler,
diff --git a/src/react-env.d.ts b/src/react-env.d.ts
new file mode 100644
index 0000000..a78678a
--- /dev/null
+++ b/src/react-env.d.ts
@@ -0,0 +1,5 @@
+declare namespace React {
+ interface Attributes {
+ css?: string;
+ }
+}
diff --git a/src/shared-v4.ts b/src/shared-v4.ts
new file mode 100644
index 0000000..6e78600
--- /dev/null
+++ b/src/shared-v4.ts
@@ -0,0 +1,55 @@
+import * as tailwind from "tailwindcss";
+
+import type { ResolveTailwindOptions } from "./index";
+
+declare const __PKG_NAME__: string;
+export const pkgName = __PKG_NAME__;
+
+export const macroNames = [`${pkgName}/macro`, `${pkgName}/µ`];
+export const classedName = `${pkgName}/classed`;
+
+interface LineColumn {
+ line: number;
+ column: number;
+}
+
+export interface SourceLocation {
+ filename: string;
+ start: LineColumn;
+ end: LineColumn;
+ text: string;
+}
+
+export interface StyleMapEntry {
+ key: string;
+ classNames: string[];
+ location: SourceLocation;
+}
+
+export const tailwindDirectives = ["components", "utilities", "variants"] as const;
+
+export type StyleMap = Map* filename */ string, StyleMapEntry[]>;
+
+export function createPostCSS({
+ tailwindConfig,
+ prefix,
+}: Pick) {
+ return async (css: string) => {
+ const compiler = await tailwind.compile(
+ [prefix, '@config "tailwind.config.js";', css].filter(Boolean).join("\n"),
+ {
+ // eslint-disable-next-line @typescript-eslint/require-await
+ async loadModule(_id, base, resourceHint) {
+ if (resourceHint === "config") {
+ return { base, module: tailwindConfig };
+ }
+ throw new Error(`The browser build does not support plugins or config files.`);
+ },
+ }
+ );
+
+ return compiler.build([]).replace(/^\/\*![^*]*\*\/\n/, "");
+ };
+}
+
+export type Compile = ReturnType;
diff --git a/src/shared.ts b/src/shared.ts
index 23d8d0c..5c4c60f 100644
--- a/src/shared.ts
+++ b/src/shared.ts
@@ -33,15 +33,13 @@ export type StyleMap = Map* filename */ string, StyleMapEntry[]>;
export function createPostCSS({
tailwindConfig,
- postCSSPlugins,
prefix,
-}: Pick) {
+}: Pick) {
const post = postcss([
tailwind({
...tailwindConfig,
content: [{ raw: "
", extension: "html" }],
}),
- ...postCSSPlugins,
]);
return async (css: string) => {
diff --git a/src/vite-plugin.ts b/src/vite-plugin.ts
index 91ed68a..45748cf 100644
--- a/src/vite-plugin.ts
+++ b/src/vite-plugin.ts
@@ -1,6 +1,9 @@
import { dirname, join } from "node:path";
+
import type * as vite from "vite";
+
import { type Compile, type StyleMap, macroNames, pkgName } from "./shared";
+
import type { BuildStyleFile } from "./index";
const ROLLUP_PREFIX = "\0tailwind:";