Support latest syntax

This commit is contained in:
Alex 2024-04-11 01:24:42 -04:00
parent 24e7f65ca2
commit 5cdb5e705a
7 changed files with 198 additions and 64 deletions

View File

@ -3,4 +3,7 @@ const { extendConfig } = require("@aet/eslint-rules");
module.exports = extendConfig({
plugins: ["react", "unicorn"],
rules: {
"class-methods-use-this": "error",
},
});

View File

@ -1,4 +1,4 @@
# babel-tailwind
# tailwind-utils
Compile-run Tailwind compiler.

View File

@ -1,6 +1,6 @@
{
"name": "@aet/babel-tailwind",
"version": "0.0.1-beta.7",
"version": "0.0.1-beta.8",
"main": "dist/index.js",
"license": "MIT",
"private": true,
@ -17,15 +17,21 @@
"@types/bun": "^1.0.12",
"@types/dedent": "^0.7.2",
"@types/lodash": "^4.17.0",
"@types/node": "^20.12.5",
"dedent": "^1.5.1",
"@types/node": "^20.12.7",
"@types/postcss-safe-parser": "^5.0.4",
"cli-highlight": "^2.1.11",
"colord": "^2.9.3",
"css-what": "^6.1.0",
"dedent": "^1.5.3",
"esbuild": "^0.20.2",
"esbuild-register": "^3.5.0",
"eslint": "^8.57.0",
"postcss-nested": "^6.0.1",
"postcss-safe-parser": "^7.0.0",
"prettier": "^3.2.5",
"tailwindcss": "^3.4.3",
"tsup": "^8.0.2",
"typescript": "^5.4.4",
"typescript": "^5.4.5",
"vite": "^5.2.8",
"vitest": "^1.4.0"
},
@ -46,4 +52,4 @@
"singleQuote": false,
"trailingComma": "es5"
}
}
}

224
pnpm-lock.yaml generated
View File

@ -21,7 +21,7 @@ dependencies:
devDependencies:
'@aet/eslint-rules':
specifier: ^0.0.22
version: 0.0.22(eslint@8.57.0)(typescript@5.4.4)
version: 0.0.22(eslint@8.57.0)(typescript@5.4.5)
'@types/babel__core':
specifier: ^7.20.5
version: 7.20.5
@ -35,11 +35,23 @@ devDependencies:
specifier: ^4.17.0
version: 4.17.0
'@types/node':
specifier: ^20.12.5
version: 20.12.5
specifier: ^20.12.7
version: 20.12.7
'@types/postcss-safe-parser':
specifier: ^5.0.4
version: 5.0.4
cli-highlight:
specifier: ^2.1.11
version: 2.1.11
colord:
specifier: ^2.9.3
version: 2.9.3
css-what:
specifier: ^6.1.0
version: 6.1.0
dedent:
specifier: ^1.5.1
version: 1.5.1
specifier: ^1.5.3
version: 1.5.3
esbuild:
specifier: ^0.20.2
version: 0.20.2
@ -49,6 +61,12 @@ devDependencies:
eslint:
specifier: ^8.57.0
version: 8.57.0
postcss-nested:
specifier: ^6.0.1
version: 6.0.1(postcss@8.4.38)
postcss-safe-parser:
specifier: ^7.0.0
version: 7.0.0(postcss@8.4.38)
prettier:
specifier: ^3.2.5
version: 3.2.5
@ -57,16 +75,16 @@ devDependencies:
version: 3.4.3
tsup:
specifier: ^8.0.2
version: 8.0.2(postcss@8.4.38)(typescript@5.4.4)
version: 8.0.2(postcss@8.4.38)(typescript@5.4.5)
typescript:
specifier: ^5.4.4
version: 5.4.4
specifier: ^5.4.5
version: 5.4.5
vite:
specifier: ^5.2.8
version: 5.2.8(@types/node@20.12.5)
version: 5.2.8(@types/node@20.12.7)
vitest:
specifier: ^1.4.0
version: 1.4.0(@types/node@20.12.5)
version: 1.4.0(@types/node@20.12.7)
packages:
@ -75,7 +93,7 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
/@aet/eslint-rules@0.0.22(eslint@8.57.0)(typescript@5.4.4):
/@aet/eslint-rules@0.0.22(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-PLAnaYlb6GdG6gKjQP5B8XckOa7driZL1rbw51wGTYTl/0Etqu5R/u4TkQSYePZab7xCIrJuPSC3PsBEhI5pvQ==}
peerDependencies:
eslint: ^8.57.0
@ -83,10 +101,10 @@ packages:
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
'@types/eslint': 8.56.7
'@typescript-eslint/eslint-plugin': 7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/eslint-plugin': 7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
aria-query: 5.3.0
axe-core: 4.9.0
axobject-query: 4.0.0
@ -115,7 +133,7 @@ packages:
resolve: 2.0.0-next.5
semver: 7.6.0
tsconfig-paths: 4.2.0
typescript: 5.4.4
typescript: 5.4.5
transitivePeerDependencies:
- eslint-import-resolver-typescript
- eslint-import-resolver-webpack
@ -1074,8 +1092,8 @@ packages:
undici-types: 5.26.5
dev: true
/@types/node@20.12.5:
resolution: {integrity: sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==}
/@types/node@20.12.7:
resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
dependencies:
undici-types: 5.26.5
dev: true
@ -1084,6 +1102,12 @@ packages:
resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
dev: true
/@types/postcss-safe-parser@5.0.4:
resolution: {integrity: sha512-5zGTm1jsW3j4+omgND1SIDbrZOcigTuxa4ihppvKbLkg2INUGBHV/fWNRSRFibK084tU3fxqZ/kVoSIGqRHnrQ==}
dependencies:
postcss: 8.4.38
dev: true
/@types/semver@7.5.8:
resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
dev: true
@ -1091,10 +1115,10 @@ packages:
/@types/ws@8.5.10:
resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==}
dependencies:
'@types/node': 20.12.5
'@types/node': 20.12.7
dev: true
/@typescript-eslint/eslint-plugin@7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.4):
/@typescript-eslint/eslint-plugin@7.5.0(@typescript-eslint/parser@7.5.0)(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
@ -1106,10 +1130,10 @@ packages:
optional: true
dependencies:
'@eslint-community/regexpp': 4.10.0
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/scope-manager': 7.5.0
'@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/type-utils': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.5.0
debug: 4.3.4
eslint: 8.57.0
@ -1117,13 +1141,13 @@ packages:
ignore: 5.3.1
natural-compare: 1.4.0
semver: 7.6.0
ts-api-utils: 1.3.0(typescript@5.4.4)
typescript: 5.4.4
ts-api-utils: 1.3.0(typescript@5.4.5)
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
/@typescript-eslint/parser@7.5.0(eslint@8.57.0)(typescript@5.4.4):
/@typescript-eslint/parser@7.5.0(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
@ -1135,11 +1159,11 @@ packages:
dependencies:
'@typescript-eslint/scope-manager': 7.5.0
'@typescript-eslint/types': 7.5.0
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4)
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.5)
'@typescript-eslint/visitor-keys': 7.5.0
debug: 4.3.4
eslint: 8.57.0
typescript: 5.4.4
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
@ -1152,7 +1176,7 @@ packages:
'@typescript-eslint/visitor-keys': 7.5.0
dev: true
/@typescript-eslint/type-utils@7.5.0(eslint@8.57.0)(typescript@5.4.4):
/@typescript-eslint/type-utils@7.5.0(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
@ -1162,12 +1186,12 @@ packages:
typescript:
optional: true
dependencies:
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.5)
'@typescript-eslint/utils': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
debug: 4.3.4
eslint: 8.57.0
ts-api-utils: 1.3.0(typescript@5.4.4)
typescript: 5.4.4
ts-api-utils: 1.3.0(typescript@5.4.5)
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
@ -1177,7 +1201,7 @@ packages:
engines: {node: ^18.18.0 || >=20.0.0}
dev: true
/@typescript-eslint/typescript-estree@7.5.0(typescript@5.4.4):
/@typescript-eslint/typescript-estree@7.5.0(typescript@5.4.5):
resolution: {integrity: sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
@ -1193,13 +1217,13 @@ packages:
is-glob: 4.0.3
minimatch: 9.0.3
semver: 7.6.0
ts-api-utils: 1.3.0(typescript@5.4.4)
typescript: 5.4.4
ts-api-utils: 1.3.0(typescript@5.4.5)
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
dev: true
/@typescript-eslint/utils@7.5.0(eslint@8.57.0)(typescript@5.4.4):
/@typescript-eslint/utils@7.5.0(eslint@8.57.0)(typescript@5.4.5):
resolution: {integrity: sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==}
engines: {node: ^18.18.0 || >=20.0.0}
peerDependencies:
@ -1210,7 +1234,7 @@ packages:
'@types/semver': 7.5.8
'@typescript-eslint/scope-manager': 7.5.0
'@typescript-eslint/types': 7.5.0
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.4)
'@typescript-eslint/typescript-estree': 7.5.0(typescript@5.4.5)
eslint: 8.57.0
semver: 7.6.0
transitivePeerDependencies:
@ -1522,6 +1546,27 @@ packages:
escape-string-regexp: 1.0.5
dev: true
/cli-highlight@2.1.11:
resolution: {integrity: sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==}
engines: {node: '>=8.0.0', npm: '>=5.0.0'}
hasBin: true
dependencies:
chalk: 4.1.2
highlight.js: 10.7.3
mz: 2.7.0
parse5: 5.1.1
parse5-htmlparser2-tree-adapter: 6.0.1
yargs: 16.2.0
dev: true
/cliui@7.0.4:
resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==}
dependencies:
string-width: 4.2.3
strip-ansi: 6.0.1
wrap-ansi: 7.0.0
dev: true
/color-convert@1.9.3:
resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
dependencies:
@ -1541,6 +1586,10 @@ packages:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
dev: true
/colord@2.9.3:
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
dev: true
/commander@4.1.1:
resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
engines: {node: '>= 6'}
@ -1574,6 +1623,11 @@ packages:
which: 2.0.2
dev: true
/css-what@6.1.0:
resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==}
engines: {node: '>= 6'}
dev: true
/cssesc@3.0.0:
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
engines: {node: '>=4'}
@ -1606,8 +1660,8 @@ packages:
dependencies:
ms: 2.1.2
/dedent@1.5.1:
resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==}
/dedent@1.5.3:
resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==}
peerDependencies:
babel-plugin-macros: ^3.1.0
peerDependenciesMeta:
@ -1832,7 +1886,7 @@ packages:
eslint-import-resolver-webpack:
optional: true
dependencies:
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.4)
'@typescript-eslint/parser': 7.5.0(eslint@8.57.0)(typescript@5.4.5)
debug: 3.2.7
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
@ -2129,6 +2183,11 @@ packages:
engines: {node: '>=6.9.0'}
dev: false
/get-caller-file@2.0.5:
resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
engines: {node: 6.* || 8.* || >= 10.*}
dev: true
/get-func-name@2.0.2:
resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==}
dev: true
@ -2234,6 +2293,10 @@ packages:
function-bind: 1.1.2
dev: true
/highlight.js@10.7.3:
resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==}
dev: true
/hosted-git-info@2.8.9:
resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
dev: true
@ -2755,6 +2818,20 @@ packages:
lines-and-columns: 1.2.4
dev: true
/parse5-htmlparser2-tree-adapter@6.0.1:
resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==}
dependencies:
parse5: 6.0.1
dev: true
/parse5@5.1.1:
resolution: {integrity: sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==}
dev: true
/parse5@6.0.1:
resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
dev: true
/path-exists@4.0.0:
resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
engines: {node: '>=8'}
@ -2880,6 +2957,15 @@ packages:
postcss-selector-parser: 6.0.16
dev: true
/postcss-safe-parser@7.0.0(postcss@8.4.38):
resolution: {integrity: sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==}
engines: {node: '>=18.0'}
peerDependencies:
postcss: ^8.4.31
dependencies:
postcss: 8.4.38
dev: true
/postcss-selector-parser@6.0.16:
resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==}
engines: {node: '>=4'}
@ -2977,6 +3063,11 @@ packages:
jsesc: 0.5.0
dev: true
/require-directory@2.1.1:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
dev: true
/resolve-from@4.0.0:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
@ -3334,13 +3425,13 @@ packages:
hasBin: true
dev: true
/ts-api-utils@1.3.0(typescript@5.4.4):
/ts-api-utils@1.3.0(typescript@5.4.5):
resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==}
engines: {node: '>=16'}
peerDependencies:
typescript: '>=4.2.0'
dependencies:
typescript: 5.4.4
typescript: 5.4.5
dev: true
/ts-interface-checker@0.1.13:
@ -3356,7 +3447,7 @@ packages:
strip-bom: 3.0.0
dev: true
/tsup@8.0.2(postcss@8.4.38)(typescript@5.4.4):
/tsup@8.0.2(postcss@8.4.38)(typescript@5.4.5):
resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==}
engines: {node: '>=18'}
hasBin: true
@ -3390,7 +3481,7 @@ packages:
source-map: 0.8.0-beta.0
sucrase: 3.35.0
tree-kill: 1.2.2
typescript: 5.4.4
typescript: 5.4.5
transitivePeerDependencies:
- supports-color
- ts-node
@ -3423,8 +3514,8 @@ packages:
engines: {node: '>=8'}
dev: true
/typescript@5.4.4:
resolution: {integrity: sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==}
/typescript@5.4.5:
resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==}
engines: {node: '>=14.17'}
hasBin: true
dev: true
@ -3464,7 +3555,7 @@ packages:
spdx-expression-parse: 3.0.1
dev: true
/vite-node@1.4.0(@types/node@20.12.5):
/vite-node@1.4.0(@types/node@20.12.7):
resolution: {integrity: sha512-VZDAseqjrHgNd4Kh8icYHWzTKSCZMhia7GyHfhtzLW33fZlG9SwsB6CEhgyVOWkJfJ2pFLrp/Gj1FSfAiqH9Lw==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
@ -3473,7 +3564,7 @@ packages:
debug: 4.3.4
pathe: 1.1.2
picocolors: 1.0.0
vite: 5.2.8(@types/node@20.12.5)
vite: 5.2.8(@types/node@20.12.7)
transitivePeerDependencies:
- '@types/node'
- less
@ -3485,7 +3576,7 @@ packages:
- terser
dev: true
/vite@5.2.8(@types/node@20.12.5):
/vite@5.2.8(@types/node@20.12.7):
resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
@ -3513,7 +3604,7 @@ packages:
terser:
optional: true
dependencies:
'@types/node': 20.12.5
'@types/node': 20.12.7
esbuild: 0.20.2
postcss: 8.4.38
rollup: 4.13.2
@ -3521,7 +3612,7 @@ packages:
fsevents: 2.3.3
dev: true
/vitest@1.4.0(@types/node@20.12.5):
/vitest@1.4.0(@types/node@20.12.7):
resolution: {integrity: sha512-gujzn0g7fmwf83/WzrDTnncZt2UiXP41mHuFYFrdwaLRVQ6JYQEiME2IfEjU3vcFL3VKa75XhI3lFgn+hfVsQw==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
@ -3546,7 +3637,7 @@ packages:
jsdom:
optional: true
dependencies:
'@types/node': 20.12.5
'@types/node': 20.12.7
'@vitest/expect': 1.4.0
'@vitest/runner': 1.4.0
'@vitest/snapshot': 1.4.0
@ -3564,8 +3655,8 @@ packages:
strip-literal: 2.1.0
tinybench: 2.6.0
tinypool: 0.8.3
vite: 5.2.8(@types/node@20.12.5)
vite-node: 1.4.0(@types/node@20.12.5)
vite: 5.2.8(@types/node@20.12.7)
vite-node: 1.4.0(@types/node@20.12.7)
why-is-node-running: 2.2.2
transitivePeerDependencies:
- less
@ -3628,6 +3719,11 @@ packages:
resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
dev: true
/y18n@5.0.8:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
dev: true
/yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
dev: false
@ -3642,6 +3738,24 @@ packages:
hasBin: true
dev: true
/yargs-parser@20.2.9:
resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==}
engines: {node: '>=10'}
dev: true
/yargs@16.2.0:
resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
engines: {node: '>=10'}
dependencies:
cliui: 7.0.4
escalade: 3.1.2
get-caller-file: 2.0.5
require-directory: 2.1.1
string-width: 4.2.3
y18n: 5.0.8
yargs-parser: 20.2.9
dev: true
/yocto-queue@0.1.0:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}

View File

@ -1,8 +1,8 @@
#!/usr/bin/env bun
import { type Options, build } from "tsup";
import { promises as fs } from "node:fs";
import tsupConfig from "../tsup.config";
import { type Options, build } from "tsup";
import { pick } from "lodash";
import tsupConfig from "../tsup.config";
import pkg from "../package.json" with { type: "json" };
await build(tsupConfig as Options);

View File

@ -36,10 +36,18 @@ export const babelPlugin = ({
const { code } = transformSync(load(), {
parserOpts: {
plugins: ["jsx", "decorators", "typescript", "importAttributes"],
plugins: [
"jsx",
"decorators",
"typescript",
"importAttributes",
"explicitResourceManagement",
"v8intrinsic",
],
},
filename: path,
plugins,
sourceType: "module",
})!;
return {

3
src/types.d.ts vendored Normal file
View File

@ -0,0 +1,3 @@
interface Array<T> {
filter(predicate: BooleanConstructor): Exclude<T, null | undefined | false | "" | 0>[];
}