From f7850e1b9096c676ecd3c3cfeae5dde039e36d0c Mon Sep 17 00:00:00 2001 From: Roman Date: Mon, 30 Mar 2026 13:52:01 +0100 Subject: [PATCH 1/4] chore: update dependencies --- biome.jsonc | 25 +------- bun.lock | 159 ++++++++++++++++++++++++----------------------- package.json | 53 ++++++++-------- tsconfig.json | 25 +------- tsdown.config.ts | 1 - 5 files changed, 113 insertions(+), 150 deletions(-) diff --git a/biome.jsonc b/biome.jsonc index 0664316..d5dc698 100644 --- a/biome.jsonc +++ b/biome.jsonc @@ -1,28 +1,9 @@ { - "$schema": "https://biomejs.dev/schemas/2.4.7/schema.json", - "vcs": { - "enabled": true, - "clientKind": "git", - "useIgnoreFile": true - }, - "formatter": { - "enabled": true, - "indentStyle": "space", - "lineEnding": "lf" - }, - "assist": { - "actions": { - "source": { - "organizeImports": "on" - } - } - }, + "$schema": "https://biomejs.dev/schemas/2.4.9/schema.json", + "extends": ["@gameroman/config/biome"], "linter": { "rules": { - "a11y": "off", - "style": { - "useNodejsImportProtocol": "error" - } + "suspicious": "warn" } } } diff --git a/bun.lock b/bun.lock index 15e8c27..9f2b796 100644 --- a/bun.lock +++ b/bun.lock @@ -5,94 +5,95 @@ "": { "name": "rolldown-plugin-solid", "dependencies": { - "@babel/core": "^8.0.0-rc.2", - "@babel/helper-module-imports": "^8.0.0-rc.2", - "@babel/helper-plugin-utils": "^8.0.0-rc.2", - "@babel/helper-validator-option": "^8.0.0-rc.2", - "@babel/template": "^8.0.0-rc.2", - "@babel/traverse": "^8.0.0-rc.2", - "@babel/types": "^8.0.0-rc.2", + "@babel/core": "^8.0.0-rc.3", + "@babel/helper-module-imports": "^8.0.0-rc.3", + "@babel/helper-plugin-utils": "^8.0.0-rc.3", + "@babel/helper-validator-option": "^8.0.0-rc.3", + "@babel/template": "^8.0.0-rc.3", + "@babel/traverse": "^8.0.0-rc.3", + "@babel/types": "^8.0.0-rc.3", "html-entities": "2.6.0", "parse5": "^8.0.0", }, "devDependencies": { - "@biomejs/biome": "2.4.7", - "@types/bun": "^1.3.10", + "@biomejs/biome": "2.4.9", + "@gameroman/config": "^0.0.5", + "@types/bun": "^1.3.11", "@types/node": "^25.5.0", - "solid-js": "1.9.11", - "tsdown": "^0.21.3", - "typescript": "^5.9.3", + "solid-js": "1.9.12", + "tsdown": "^0.21.7", + "typescript": "^6.0.2", }, "peerDependencies": { "csstype": "^3.1.0", - "rolldown": "^1.0.0-rc.9 || ^1.0.0", - "seroval": "~1.3.0 || ~1.5.0", - "solid-js": ">=1.9.0", + "rolldown": "^1.0.0-rc.12", + "seroval": "~1.5.0", + "solid-js": ">=1.9.12", }, }, }, "overrides": { - "@babel/code-frame": "8.0.0-rc.2", - "@babel/core": "8.0.0-rc.2", - "@babel/helper-module-imports": "8.0.0-rc.2", - "@babel/helper-plugin-utils": "8.0.0-rc.2", - "@babel/helper-validator-identifier": "8.0.0-rc.2", - "@babel/helper-validator-option": "8.0.0-rc.2", - "@babel/parser": "8.0.0-rc.2", - "@babel/template": "8.0.0-rc.2", - "@babel/traverse": "8.0.0-rc.2", - "@babel/types": "8.0.0-rc.2", + "@babel/code-frame": "8.0.0-rc.3", + "@babel/core": "8.0.0-rc.3", + "@babel/helper-module-imports": "8.0.0-rc.3", + "@babel/helper-plugin-utils": "8.0.0-rc.3", + "@babel/helper-validator-identifier": "8.0.0-rc.3", + "@babel/helper-validator-option": "8.0.0-rc.3", + "@babel/parser": "8.0.0-rc.3", + "@babel/template": "8.0.0-rc.3", + "@babel/traverse": "8.0.0-rc.3", + "@babel/types": "8.0.0-rc.3", }, "packages": { - "@babel/code-frame": ["@babel/code-frame@8.0.0-rc.2", "", { "dependencies": { "@babel/helper-validator-identifier": "^8.0.0-rc.2", "js-tokens": "^10.0.0" } }, "sha512-zbPFBDbQdChkGN02WRc/BcOvZLDTctFJZVeWkciVr82T5V0GVBXztq4/Wi4Ca+ZKx7U+Kdt5b862cpFJ4Cjf1A=="], + "@babel/code-frame": ["@babel/code-frame@8.0.0-rc.3", "", { "dependencies": { "@babel/helper-validator-identifier": "^8.0.0-rc.3", "js-tokens": "^10.0.0" } }, "sha512-585nwYQGQKKc+jMIAPeZJ+aGMn4FHmIUUjLZa9zI7mslvYmShnx0u7rFA4gliRip6S2vkwTYrMxPeXadkKW93Q=="], - "@babel/compat-data": ["@babel/compat-data@8.0.0-rc.2", "", {}, "sha512-zDrQeMrDVCkisxxjZmP+xeAyGfZCVOwP+7VECgOvMXttb+1pTUMpeEYI0LaozIzeES/Uvu7OqhHLb3oN1qo6Wg=="], + "@babel/compat-data": ["@babel/compat-data@8.0.0-rc.3", "", {}, "sha512-TlS7d9xYz/93xC8ovkRBwTKPodbwPfzTn7TxUgZo4c3LwpPINnScqIlN0QRDE/x1S4C1bmyqxGmAZUIC0buW0A=="], - "@babel/core": ["@babel/core@8.0.0-rc.2", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.2", "@babel/generator": "^8.0.0-rc.2", "@babel/helper-compilation-targets": "^8.0.0-rc.2", "@babel/helpers": "^8.0.0-rc.2", "@babel/parser": "^8.0.0-rc.2", "@babel/template": "^8.0.0-rc.2", "@babel/traverse": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2", "@jridgewell/remapping": "^2.3.5", "@types/gensync": "^1.0.0", "convert-source-map": "^2.0.0", "gensync": "^1.0.0-beta.2", "import-meta-resolve": "^4.2.0", "json5": "^2.2.3", "obug": "^2.1.1", "semver": "^7.7.3" }, "peerDependencies": { "@babel/preset-typescript": "^8.0.0-0" }, "optionalPeers": ["@babel/preset-typescript"] }, "sha512-mlBJdKJJEZNGDE+w+P6B5w+FTMkht1liPkxtB4wk39EpGH01Am5tg1htaNlOU5rO9Ge3psMjAFycpc3ru5uaQw=="], + "@babel/core": ["@babel/core@8.0.0-rc.3", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.3", "@babel/generator": "^8.0.0-rc.3", "@babel/helper-compilation-targets": "^8.0.0-rc.3", "@babel/helpers": "^8.0.0-rc.3", "@babel/parser": "^8.0.0-rc.3", "@babel/template": "^8.0.0-rc.3", "@babel/traverse": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3", "@jridgewell/remapping": "^2.3.5", "@types/gensync": "^1.0.0", "convert-source-map": "^2.0.0", "gensync": "^1.0.0-beta.2", "import-meta-resolve": "^4.2.0", "json5": "^2.2.3", "obug": "^2.1.1", "semver": "^7.7.3" }, "peerDependencies": { "@babel/preset-typescript": "^8.0.0-0" }, "optionalPeers": ["@babel/preset-typescript"] }, "sha512-ov5mBbHiosqX1eqt8nN0JM7VuhirO6V8lln5rUXNZpNB+a9NnPTVYeDqSTBkf9C6GmFq3fnFlGT8eg3QBI7jJQ=="], - "@babel/generator": ["@babel/generator@8.0.0-rc.2", "", { "dependencies": { "@babel/parser": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "@types/jsesc": "^2.5.0", "jsesc": "^3.0.2" } }, "sha512-oCQ1IKPwkzCeJzAPb7Fv8rQ9k5+1sG8mf2uoHiMInPYvkRfrDJxbTIbH51U+jstlkghus0vAi3EBvkfvEsYNLQ=="], + "@babel/generator": ["@babel/generator@8.0.0-rc.3", "", { "dependencies": { "@babel/parser": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "@types/jsesc": "^2.5.0", "jsesc": "^3.0.2" } }, "sha512-em37/13/nR320G4jab/nIIHZgc2Wz2y/D39lxnTyxB4/D/omPQncl/lSdlnJY1OhQcRGugTSIF2l/69o31C9dA=="], - "@babel/helper-compilation-targets": ["@babel/helper-compilation-targets@8.0.0-rc.2", "", { "dependencies": { "@babel/compat-data": "^8.0.0-rc.2", "@babel/helper-validator-option": "^8.0.0-rc.2", "browserslist": "^4.24.0", "lru-cache": "^7.14.1", "semver": "^7.7.3" } }, "sha512-oMIhKru9gl3mj0eKDyKW6wBDAvyWoZd28d6V/m4JTeeiFsJLfOYnqu+s+cnK4jSo87cg/oj4hsATgkmZ3AzsDQ=="], + "@babel/helper-compilation-targets": ["@babel/helper-compilation-targets@8.0.0-rc.3", "", { "dependencies": { "@babel/compat-data": "^8.0.0-rc.3", "@babel/helper-validator-option": "^8.0.0-rc.3", "browserslist": "^4.24.0", "lru-cache": "^7.14.1", "semver": "^7.7.3" } }, "sha512-UXlT7t103KBJjiphN7Ij9DtELX2Q5uk1xMle7oN/eckxR8dmJyvbFsIm5u+cY0KZyF7qNkAiLsJljEPix1yfKg=="], - "@babel/helper-globals": ["@babel/helper-globals@8.0.0-rc.2", "", {}, "sha512-Q1AIOaW4EOxkI/8wYJKyLI59gfqTK3imFUfIqxuve0Q3GlOSrOTVmvHU6Gb3Y5GxtoS1hIzhO47k5GkfyGTQEQ=="], + "@babel/helper-globals": ["@babel/helper-globals@8.0.0-rc.3", "", {}, "sha512-rwtdZPunoa/IAlcZhgDoLxROXPW5evSN7SXMdObS8vNt7Wu6fCf8nLPFcuuhLCzeRoIrGNKx08v/XEQ4riQDGg=="], - "@babel/helper-module-imports": ["@babel/helper-module-imports@8.0.0-rc.2", "", { "dependencies": { "@babel/traverse": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2" } }, "sha512-9xSWdt/w6bA9sEcdxIDoNvnKZSGcUqeLQSWu0bh69xRV2Skj5vXSYXbFdYE4M8g/stEeNQ/9zSAs2OlSF3ZOOw=="], + "@babel/helper-module-imports": ["@babel/helper-module-imports@8.0.0-rc.3", "", { "dependencies": { "@babel/traverse": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3" } }, "sha512-D0kMl961jaPXb1Cb9ZehcoY4OOgPo1klsrry8BDuJWF6xO6a+72ZF6EH4Z5i94jcLYwJvApsKLytQvS4LtPAyg=="], - "@babel/helper-plugin-utils": ["@babel/helper-plugin-utils@8.0.0-rc.2", "", { "peerDependencies": { "@babel/core": "^8.0.0-rc.2" } }, "sha512-APa2p8RHBNGUmNPDYshswXQkS2sMNthL8VZSc9soe5lQfT2RXRXM6TwOLaktQwnNSwdoEy+Xu9q3qMdFrV92sg=="], + "@babel/helper-plugin-utils": ["@babel/helper-plugin-utils@8.0.0-rc.3", "", { "peerDependencies": { "@babel/core": "^8.0.0-rc.3" } }, "sha512-1+lvhojDf75++IwFRWrch4BBaznB2Z99GCfggHFWEKJ8B40iovZ8KqP0kDeb60ThuAa7WxCbtuYHfP5BtJL1kA=="], - "@babel/helper-string-parser": ["@babel/helper-string-parser@8.0.0-rc.2", "", {}, "sha512-noLx87RwlBEMrTzncWd/FvTxoJ9+ycHNg0n8yyYydIoDsLZuxknKgWRJUqcrVkNrJ74uGyhWQzQaS3q8xfGAhQ=="], + "@babel/helper-string-parser": ["@babel/helper-string-parser@8.0.0-rc.3", "", {}, "sha512-AmwWFx1m8G/a5cXkxLxTiWl+YEoWuoFLUCwqMlNuWO1tqAYITQAbCRPUkyBHv1VOFgfjVOqEj6L3u15J5ZCzTA=="], - "@babel/helper-validator-identifier": ["@babel/helper-validator-identifier@8.0.0-rc.2", "", {}, "sha512-xExUBkuXWJjVuIbO7z6q7/BA9bgfJDEhVL0ggrggLMbg0IzCUWGT1hZGE8qUH7Il7/RD/a6cZ3AAFrrlp1LF/A=="], + "@babel/helper-validator-identifier": ["@babel/helper-validator-identifier@8.0.0-rc.3", "", {}, "sha512-8AWCJ2VJJyDFlGBep5GpaaQ9AAaE/FjAcrqI7jyssYhtL7WGV0DOKpJsQqM037xDbpRLHXsY8TwU7zDma7coOw=="], - "@babel/helper-validator-option": ["@babel/helper-validator-option@8.0.0-rc.2", "", {}, "sha512-EtxQopsocKue0ZdjnX5INoDiRN+RCBb1TDh3d0N8bM6aX0lyUhQfRNRQaKB+vCx+YvGjXWRf3JD6/YvTsf2qgQ=="], + "@babel/helper-validator-option": ["@babel/helper-validator-option@8.0.0-rc.3", "", {}, "sha512-wpzZ9KycQDqmJct4ee/ihua2KKdW/MXTDidD4Ya7HdUHL+Jp5zBZTj8oNrxc8wp5Qr4sofKgZF1GIyymfdq7+g=="], - "@babel/helpers": ["@babel/helpers@8.0.0-rc.2", "", { "dependencies": { "@babel/template": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2" } }, "sha512-Cc2IpMRiu8PDBUxtQ6oSkML0etJ27kZGnf3XE+qqAJJFGtVl549kyfvDWLywCAFhq16kHUe2WMZMdFUtPz6kWw=="], + "@babel/helpers": ["@babel/helpers@8.0.0-rc.3", "", { "dependencies": { "@babel/template": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3" } }, "sha512-dbPuulmsPOwIAXP4pGsKiAv1E50pKYmAJfWXYytCwLpgj6IDNUFAzGuVVemaphYP/WniKsCf42+Cfo4xpc4jjQ=="], - "@babel/parser": ["@babel/parser@8.0.0-rc.2", "", { "dependencies": { "@babel/types": "^8.0.0-rc.2" }, "bin": "./bin/babel-parser.js" }, "sha512-29AhEtcq4x8Dp3T72qvUMZHx0OMXCj4Jy/TEReQa+KWLln524Cj1fWb3QFi0l/xSpptQBR6y9RNEXuxpFvwiUQ=="], + "@babel/parser": ["@babel/parser@8.0.0-rc.3", "", { "dependencies": { "@babel/types": "^8.0.0-rc.3" }, "bin": "./bin/babel-parser.js" }, "sha512-B20dvP3MfNc/XS5KKCHy/oyWl5IA6Cn9YjXRdDlCjNmUFrjvLXMNUfQq/QUy9fnG2gYkKKcrto2YaF9B32ToOQ=="], - "@babel/template": ["@babel/template@8.0.0-rc.2", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.2", "@babel/parser": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2" } }, "sha512-INp+KufeQpvU+V+gxR7xoiVzU6sRRQo8oOsCU/sTe0wtJ/Adrfgyet0i19qvXXSeuyiZ9+PV8IF/eEPzyJ527g=="], + "@babel/template": ["@babel/template@8.0.0-rc.3", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.3", "@babel/parser": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3" } }, "sha512-9iet2svxZhCGgmt/b6M3Fbmy2i+OgjhXMDWNqDTBrNvb9Cc60NgETNIaJq6b0wICiCqpsFdIt8NYXMXyCQU6jA=="], - "@babel/traverse": ["@babel/traverse@8.0.0-rc.2", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.2", "@babel/generator": "^8.0.0-rc.2", "@babel/helper-globals": "^8.0.0-rc.2", "@babel/parser": "^8.0.0-rc.2", "@babel/template": "^8.0.0-rc.2", "@babel/types": "^8.0.0-rc.2", "obug": "^2.1.1" } }, "sha512-H9ZChE8gRy4fSloEQaT17ijcFNoayS9JIyE0IUWkjYgldU+Czkg2h5XtuJmfIk6cbuHfDK/FFJox+g/TlmXB7g=="], + "@babel/traverse": ["@babel/traverse@8.0.0-rc.3", "", { "dependencies": { "@babel/code-frame": "^8.0.0-rc.3", "@babel/generator": "^8.0.0-rc.3", "@babel/helper-globals": "^8.0.0-rc.3", "@babel/parser": "^8.0.0-rc.3", "@babel/template": "^8.0.0-rc.3", "@babel/types": "^8.0.0-rc.3", "obug": "^2.1.1" } }, "sha512-3gvZCynaX+zxYZ2v5odaBBcc9eT4Yr7Gf16l3QSEvvBPVyMSZbYhsGAZfO79kjOCNJY2j6rWvNkWl1ZwYa64lQ=="], - "@babel/types": ["@babel/types@8.0.0-rc.2", "", { "dependencies": { "@babel/helper-string-parser": "^8.0.0-rc.2", "@babel/helper-validator-identifier": "^8.0.0-rc.2" } }, "sha512-91gAaWRznDwSX4E2tZ1YjBuIfnQVOFDCQ2r0Toby0gu4XEbyF623kXLMA8d4ZbCu+fINcrudkmEcwSUHgDDkNw=="], + "@babel/types": ["@babel/types@8.0.0-rc.3", "", { "dependencies": { "@babel/helper-string-parser": "^8.0.0-rc.3", "@babel/helper-validator-identifier": "^8.0.0-rc.3" } }, "sha512-mOm5ZrYmphGfqVWoH5YYMTITb3cDXsFgmvFlvkvWDMsR9X8RFnt7a0Wb6yNIdoFsiMO9WjYLq+U/FMtqIYAF8Q=="], - "@biomejs/biome": ["@biomejs/biome@2.4.7", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.4.7", "@biomejs/cli-darwin-x64": "2.4.7", "@biomejs/cli-linux-arm64": "2.4.7", "@biomejs/cli-linux-arm64-musl": "2.4.7", "@biomejs/cli-linux-x64": "2.4.7", "@biomejs/cli-linux-x64-musl": "2.4.7", "@biomejs/cli-win32-arm64": "2.4.7", "@biomejs/cli-win32-x64": "2.4.7" }, "bin": { "biome": "bin/biome" } }, "sha512-vXrgcmNGZ4lpdwZSpMf1hWw1aWS6B+SyeSYKTLrNsiUsAdSRN0J4d/7mF3ogJFbIwFFSOL3wT92Zzxia/d5/ng=="], + "@biomejs/biome": ["@biomejs/biome@2.4.9", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.4.9", "@biomejs/cli-darwin-x64": "2.4.9", "@biomejs/cli-linux-arm64": "2.4.9", "@biomejs/cli-linux-arm64-musl": "2.4.9", "@biomejs/cli-linux-x64": "2.4.9", "@biomejs/cli-linux-x64-musl": "2.4.9", "@biomejs/cli-win32-arm64": "2.4.9", "@biomejs/cli-win32-x64": "2.4.9" }, "bin": { "biome": "bin/biome" } }, "sha512-wvZW92FrwitTcacvCBT8xdAbfbxWfDLwjYMmU3djjqQTh7Ni4ZdiWIT/x5VcZ+RQuxiKzIOzi5D+dcyJDFZMsA=="], - "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.4.7", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Oo0cF5mHzmvDmTXw8XSjhCia8K6YrZnk7aCS54+/HxyMdZMruMO3nfpDsrlar/EQWe41r1qrwKiCa2QDYHDzWA=="], + "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.4.9", "", { "os": "darwin", "cpu": "arm64" }, "sha512-d5G8Gf2RpH5pYwiHLPA+UpG3G9TLQu4WM+VK6sfL7K68AmhcEQ9r+nkj/DvR/GYhYox6twsHUtmWWWIKfcfQQA=="], - "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.4.7", "", { "os": "darwin", "cpu": "x64" }, "sha512-I+cOG3sd/7HdFtvDSnF9QQPrWguUH7zrkIMMykM3PtfWU9soTcS2yRb9Myq6MHmzbeCT08D1UmY+BaiMl5CcoQ=="], + "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.4.9", "", { "os": "darwin", "cpu": "x64" }, "sha512-LNCLNgqDMG7BLdc3a8aY/dwKPK7+R8/JXJoXjCvZh2gx8KseqBdFDKbhrr7HCWF8SzNhbTaALhTBoh/I6rf9lA=="], - "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.4.7", "", { "os": "linux", "cpu": "arm64" }, "sha512-om6FugwmibzfP/6ALj5WRDVSND4H2G9X0nkI1HZpp2ySf9lW2j0X68oQSaHEnls6666oy4KDsc5RFjT4m0kV0w=="], + "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.4.9", "", { "os": "linux", "cpu": "arm64" }, "sha512-4adnkAUi6K4C/emPRgYznMOcLlUqZdXWM6aIui4VP4LraE764g6Q4YguygnAUoxKjKIXIWPteKMgRbN0wsgwcg=="], - "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.4.7", "", { "os": "linux", "cpu": "arm64" }, "sha512-I2NvM9KPb09jWml93O2/5WMfNR7Lee5Latag1JThDRMURVhPX74p9UDnyTw3Ae6cE1DgXfw7sqQgX7rkvpc0vw=="], + "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.4.9", "", { "os": "linux", "cpu": "arm64" }, "sha512-8RCww5xnPn2wpK4L/QDGDOW0dq80uVWfppPxHIUg6mOs9B6gRmqPp32h1Ls3T8GnW8Wo5A8u7vpTwz4fExN+sw=="], - "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.4.7", "", { "os": "linux", "cpu": "x64" }, "sha512-bV8/uo2Tj+gumnk4sUdkerWyCPRabaZdv88IpbmDWARQQoA/Q0YaqPz1a+LSEDIL7OfrnPi9Hq1Llz4ZIGyIQQ=="], + "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.4.9", "", { "os": "linux", "cpu": "x64" }, "sha512-L10na7POF0Ks/cgLFNF1ZvIe+X4onLkTi5oP9hY+Rh60Q+7fWzKDDCeGyiHUFf1nGIa9dQOOUPGe2MyYg8nMSQ=="], - "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.4.7", "", { "os": "linux", "cpu": "x64" }, "sha512-00kx4YrBMU8374zd2wHuRV5wseh0rom5HqRND+vDldJPrWwQw+mzd/d8byI9hPx926CG+vWzq6AeiT7Yi5y59g=="], + "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.4.9", "", { "os": "linux", "cpu": "x64" }, "sha512-5TD+WS9v5vzXKzjetF0hgoaNFHMcpQeBUwKKVi3JbG1e9UCrFuUK3Gt185fyTzvRdwYkJJEMqglRPjmesmVv4A=="], - "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.4.7", "", { "os": "win32", "cpu": "arm64" }, "sha512-hOUHBMlFCvDhu3WCq6vaBoG0dp0LkWxSEnEEsxxXvOa9TfT6ZBnbh72A/xBM7CBYB7WgwqboetzFEVDnMxelyw=="], + "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.4.9", "", { "os": "win32", "cpu": "arm64" }, "sha512-aDZr0RBC3sMGJOU10BvG7eZIlWLK/i51HRIfScE2lVhfts2dQTreowLiJJd+UYg/tHKxS470IbzpuKmd0MiD6g=="], - "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.4.7", "", { "os": "win32", "cpu": "x64" }, "sha512-qEpGjSkPC3qX4ycbMUthXvi9CkRq7kZpkqMY1OyhmYlYLnANnooDQ7hDerM8+0NJ+DZKVnsIc07h30XOpt7LtQ=="], + "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.4.9", "", { "os": "win32", "cpu": "x64" }, "sha512-NS4g/2G9SoQ4ktKtz31pvyc/rmgzlcIDCGU/zWbmHJAqx6gcRj2gj5Q/guXhoWTzCUaQZDIqiCQXHS7BcGYc0w=="], "@emnapi/core": ["@emnapi/core@1.8.1", "", { "dependencies": { "@emnapi/wasi-threads": "1.1.0", "tslib": "^2.4.0" } }, "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg=="], @@ -100,6 +101,8 @@ "@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.1.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ=="], + "@gameroman/config": ["@gameroman/config@0.0.5", "", { "peerDependencies": { "@biomejs/biome": "^2.4.8", "oxfmt": ">=0.42.0", "oxlint": "^1.57.0", "oxlint-tsgolint": ">=0.17.3", "typescript": "^6.0.2" }, "optionalPeers": ["@biomejs/biome", "oxfmt", "oxlint", "oxlint-tsgolint", "typescript"] }, "sha512-3taKIh9g36v5q/RWUJmZW5kKciOyRVxFzZGAH9w6rkIVirp+oB+bIxHdG3yjk2NTMqSiuI1qvebbteXDvoeLhQ=="], + "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.12", "", { "dependencies": { "@jridgewell/sourcemap-codec": "1.5.4", "@jridgewell/trace-mapping": "0.3.29" } }, "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg=="], "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], @@ -112,45 +115,45 @@ "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.1.1", "", { "dependencies": { "@emnapi/core": "^1.7.1", "@emnapi/runtime": "^1.7.1", "@tybys/wasm-util": "^0.10.1" } }, "sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A=="], - "@oxc-project/types": ["@oxc-project/types@0.115.0", "", {}, "sha512-4n91DKnebUS4yjUHl2g3/b2T+IUdCfmoZGhmwsovZCDaJSs+QkVAM+0AqqTxHSsHfeiMuueT75cZaZcT/m0pSw=="], + "@oxc-project/types": ["@oxc-project/types@0.122.0", "", {}, "sha512-oLAl5kBpV4w69UtFZ9xqcmTi+GENWOcPF7FCrczTiBbmC0ibXxCwyvZGbO39rCVEuLGAZM84DH0pUIyyv/YJzA=="], "@quansync/fs": ["@quansync/fs@1.0.0", "", { "dependencies": { "quansync": "^1.0.0" } }, "sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ=="], - "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0-rc.9", "", { "os": "android", "cpu": "arm64" }, "sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg=="], + "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0-rc.12", "", { "os": "android", "cpu": "arm64" }, "sha512-pv1y2Fv0JybcykuiiD3qBOBdz6RteYojRFY1d+b95WVuzx211CRh+ytI/+9iVyWQ6koTh5dawe4S/yRfOFjgaA=="], - "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0-rc.9", "", { "os": "darwin", "cpu": "arm64" }, "sha512-J7Zk3kLYFsLtuH6U+F4pS2sYVzac0qkjcO5QxHS7OS7yZu2LRs+IXo+uvJ/mvpyUljDJ3LROZPoQfgBIpCMhdQ=="], + "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0-rc.12", "", { "os": "darwin", "cpu": "arm64" }, "sha512-cFYr6zTG/3PXXF3pUO+umXxt1wkRK/0AYT8lDwuqvRC+LuKYWSAQAQZjCWDQpAH172ZV6ieYrNnFzVVcnSflAg=="], - "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0-rc.9", "", { "os": "darwin", "cpu": "x64" }, "sha512-iwtmmghy8nhfRGeNAIltcNXzD0QMNaaA5U/NyZc1Ia4bxrzFByNMDoppoC+hl7cDiUq5/1CnFthpT9n+UtfFyg=="], + "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0-rc.12", "", { "os": "darwin", "cpu": "x64" }, "sha512-ZCsYknnHzeXYps0lGBz8JrF37GpE9bFVefrlmDrAQhOEi4IOIlcoU1+FwHEtyXGx2VkYAvhu7dyBf75EJQffBw=="], - "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0-rc.9", "", { "os": "freebsd", "cpu": "x64" }, "sha512-DLFYI78SCiZr5VvdEplsVC2Vx53lnA4/Ga5C65iyldMVaErr86aiqCoNBLl92PXPfDtUYjUh+xFFor40ueNs4Q=="], + "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0-rc.12", "", { "os": "freebsd", "cpu": "x64" }, "sha512-dMLeprcVsyJsKolRXyoTH3NL6qtsT0Y2xeuEA8WQJquWFXkEC4bcu1rLZZSnZRMtAqwtrF/Ib9Ddtpa/Gkge9Q=="], - "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.9", "", { "os": "linux", "cpu": "arm" }, "sha512-CsjTmTwd0Hri6iTw/DRMK7kOZ7FwAkrO4h8YWKoX/kcj833e4coqo2wzIFywtch/8Eb5enQ/lwLM7w6JX1W5RQ=="], + "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm" }, "sha512-YqWjAgGC/9M1lz3GR1r1rP79nMgo3mQiiA+Hfo+pvKFK1fAJ1bCi0ZQVh8noOqNacuY1qIcfyVfP6HoyBRZ85Q=="], - "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9", "", { "os": "linux", "cpu": "arm64" }, "sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg=="], + "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-/I5AS4cIroLpslsmzXfwbe5OmWvSsrFuEw3mwvbQ1kDxJ822hFHIx+vsN/TAzNVyepI/j/GSzrtCIwQPeKCLIg=="], - "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0-rc.9", "", { "os": "linux", "cpu": "arm64" }, "sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg=="], + "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0-rc.12", "", { "os": "linux", "cpu": "arm64" }, "sha512-V6/wZztnBqlx5hJQqNWwFdxIKN0m38p8Jas+VoSfgH54HSj9tKTt1dZvG6JRHcjh6D7TvrJPWFGaY9UBVOaWPw=="], - "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9", "", { "os": "linux", "cpu": "ppc64" }, "sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w=="], + "@rolldown/binding-linux-ppc64-gnu": ["@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "ppc64" }, "sha512-AP3E9BpcUYliZCxa3w5Kwj9OtEVDYK6sVoUzy4vTOJsjPOgdaJZKFmN4oOlX0Wp0RPV2ETfmIra9x1xuayFB7g=="], - "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9", "", { "os": "linux", "cpu": "s390x" }, "sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA=="], + "@rolldown/binding-linux-s390x-gnu": ["@rolldown/binding-linux-s390x-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "s390x" }, "sha512-nWwpvUSPkoFmZo0kQazZYOrT7J5DGOJ/+QHHzjvNlooDZED8oH82Yg67HvehPPLAg5fUff7TfWFHQS8IV1n3og=="], - "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0-rc.9", "", { "os": "linux", "cpu": "x64" }, "sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg=="], + "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0-rc.12", "", { "os": "linux", "cpu": "x64" }, "sha512-RNrafz5bcwRy+O9e6P8Z/OCAJW/A+qtBczIqVYwTs14pf4iV1/+eKEjdOUta93q2TsT/FI0XYDP3TCky38LMAg=="], - "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0-rc.9", "", { "os": "linux", "cpu": "x64" }, "sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA=="], + "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0-rc.12", "", { "os": "linux", "cpu": "x64" }, "sha512-Jpw/0iwoKWx3LJ2rc1yjFrj+T7iHZn2JDg1Yny1ma0luviFS4mhAIcd1LFNxK3EYu3DHWCps0ydXQ5i/rrJ2ig=="], - "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0-rc.9", "", { "os": "none", "cpu": "arm64" }, "sha512-+6zoiF+RRyf5cdlFQP7nm58mq7+/2PFaY2DNQeD4B87N36JzfF/l9mdBkkmTvSYcYPE8tMh/o3cRlsx1ldLfog=="], + "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0-rc.12", "", { "os": "none", "cpu": "arm64" }, "sha512-vRugONE4yMfVn0+7lUKdKvN4D5YusEiPilaoO2sgUWpCvrncvWgPMzK00ZFFJuiPgLwgFNP5eSiUlv2tfc+lpA=="], - "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0-rc.9", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.1.1" }, "cpu": "none" }, "sha512-rgFN6sA/dyebil3YTlL2evvi/M+ivhfnyxec7AccTpRPccno/rPoNlqybEZQBkcbZu8Hy+eqNJCqfBR8P7Pg8g=="], + "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0-rc.12", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.1.1" }, "cpu": "none" }, "sha512-ykGiLr/6kkiHc0XnBfmFJuCjr5ZYKKofkx+chJWDjitX+KsJuAmrzWhwyOMSHzPhzOHOy7u9HlFoa5MoAOJ/Zg=="], - "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0-rc.9", "", { "os": "win32", "cpu": "arm64" }, "sha512-lHVNUG/8nlF1IQk1C0Ci574qKYyty2goMiPlRqkC5R+3LkXDkL5Dhx8ytbxq35m+pkHVIvIxviD+TWLdfeuadA=="], + "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0-rc.12", "", { "os": "win32", "cpu": "arm64" }, "sha512-5eOND4duWkwx1AzCxadcOrNeighiLwMInEADT0YM7xeEOOFcovWZCq8dadXgcRHSf3Ulh1kFo/qvzoFiCLOL1Q=="], - "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0-rc.9", "", { "os": "win32", "cpu": "x64" }, "sha512-G0oA4+w1iY5AGi5HcDTxWsoxF509hrFIPB2rduV5aDqS9FtDg1CAfa7V34qImbjfhIcA8C+RekocJZA96EarwQ=="], + "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0-rc.12", "", { "os": "win32", "cpu": "x64" }, "sha512-PyqoipaswDLAZtot351MLhrlrh6lcZPo2LSYE+VDxbVk24LVKAGOuE4hb8xZQmrPAuEtTZW8E6D2zc5EUZX4Lw=="], - "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.9", "", {}, "sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw=="], + "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-rc.12", "", {}, "sha512-HHMwmarRKvoFsJorqYlFeFRzXZqCt2ETQlEDOb9aqssrnVBB1/+xgTGtuTrIk5vzLNX1MjMtTf7W9z3tsSbrxw=="], "@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="], - "@types/bun": ["@types/bun@1.3.10", "", { "dependencies": { "bun-types": "1.3.10" } }, "sha512-0+rlrUrOrTSskibryHbvQkDOWRJwJZqZlxrUs1u4oOoTln8+WIXBPmAuCF35SWB2z4Zl3E84Nl/D0P7803nigQ=="], + "@types/bun": ["@types/bun@1.3.11", "", { "dependencies": { "bun-types": "1.3.11" } }, "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg=="], "@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], @@ -168,7 +171,7 @@ "browserslist": ["browserslist@4.25.1", "", { "dependencies": { "caniuse-lite": "1.0.30001733", "electron-to-chromium": "1.5.199", "node-releases": "2.0.19", "update-browserslist-db": "1.1.3" }, "bin": { "browserslist": "cli.js" } }, "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw=="], - "bun-types": ["bun-types@1.3.10", "", { "dependencies": { "@types/node": "*" } }, "sha512-tcpfCCl6XWo6nCVnpcVrxQ+9AYN1iqMIzgrSKYMB/fjLtV2eyAVEg7AxQJuCq/26R6HpKWykQXuSOq/21RYcbg=="], + "bun-types": ["bun-types@1.3.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg=="], "cac": ["cac@7.0.0", "", {}, "sha512-tixWYgm5ZoOD+3g6UTea91eow5z6AAHaho3g0V9CNSNb45gM8SmflpAc+GRd1InC4AqN/07Unrgp56Y94N9hJQ=="], @@ -196,9 +199,9 @@ "gensync": ["gensync@1.0.0-beta.2", "", {}, "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="], - "get-tsconfig": ["get-tsconfig@4.13.6", "", { "dependencies": { "resolve-pkg-maps": "^1.0.0" } }, "sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw=="], + "get-tsconfig": ["get-tsconfig@4.13.7", "", { "dependencies": { "resolve-pkg-maps": "^1.0.0" } }, "sha512-7tN6rFgBlMgpBML5j8typ92BKFi2sFQvIdpAqLA2beia5avZDrMs0FLZiM5etShWq5irVyGcGMEA1jcDaK7A/Q=="], - "hookable": ["hookable@6.0.1", "", {}, "sha512-uKGyY8BuzN/a5gvzvA+3FVWo0+wUjgtfSdnmjtrOVwQCZPHpHDH2WRO3VZSOeluYrHoDCiXFffZXs8Dj1ULWtw=="], + "hookable": ["hookable@6.1.0", "", {}, "sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw=="], "html-entities": ["html-entities@2.6.0", "", {}, "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ=="], @@ -224,15 +227,15 @@ "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], - "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], + "picomatch": ["picomatch@4.0.4", "", {}, "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A=="], "quansync": ["quansync@1.0.0", "", {}, "sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA=="], "resolve-pkg-maps": ["resolve-pkg-maps@1.0.0", "", {}, "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw=="], - "rolldown": ["rolldown@1.0.0-rc.9", "", { "dependencies": { "@oxc-project/types": "=0.115.0", "@rolldown/pluginutils": "1.0.0-rc.9" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0-rc.9", "@rolldown/binding-darwin-arm64": "1.0.0-rc.9", "@rolldown/binding-darwin-x64": "1.0.0-rc.9", "@rolldown/binding-freebsd-x64": "1.0.0-rc.9", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.9", "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.9", "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.9", "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.9", "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.9", "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.9", "@rolldown/binding-linux-x64-musl": "1.0.0-rc.9", "@rolldown/binding-openharmony-arm64": "1.0.0-rc.9", "@rolldown/binding-wasm32-wasi": "1.0.0-rc.9", "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.9", "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.9" }, "bin": { "rolldown": "bin/cli.mjs" } }, "sha512-9EbgWge7ZH+yqb4d2EnELAntgPTWbfL8ajiTW+SyhJEC4qhBbkCKbqFV4Ge4zmu5ziQuVbWxb/XwLZ+RIO7E8Q=="], + "rolldown": ["rolldown@1.0.0-rc.12", "", { "dependencies": { "@oxc-project/types": "=0.122.0", "@rolldown/pluginutils": "1.0.0-rc.12" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0-rc.12", "@rolldown/binding-darwin-arm64": "1.0.0-rc.12", "@rolldown/binding-darwin-x64": "1.0.0-rc.12", "@rolldown/binding-freebsd-x64": "1.0.0-rc.12", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-rc.12", "@rolldown/binding-linux-arm64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-arm64-musl": "1.0.0-rc.12", "@rolldown/binding-linux-ppc64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-s390x-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-x64-gnu": "1.0.0-rc.12", "@rolldown/binding-linux-x64-musl": "1.0.0-rc.12", "@rolldown/binding-openharmony-arm64": "1.0.0-rc.12", "@rolldown/binding-wasm32-wasi": "1.0.0-rc.12", "@rolldown/binding-win32-arm64-msvc": "1.0.0-rc.12", "@rolldown/binding-win32-x64-msvc": "1.0.0-rc.12" }, "bin": { "rolldown": "bin/cli.mjs" } }, "sha512-yP4USLIMYrwpPHEFB5JGH1uxhcslv6/hL0OyvTuY+3qlOSJvZ7ntYnoWpehBxufkgN0cvXxppuTu5hHa/zPh+A=="], - "rolldown-plugin-dts": ["rolldown-plugin-dts@0.22.5", "", { "dependencies": { "@babel/generator": "8.0.0-rc.2", "@babel/helper-validator-identifier": "8.0.0-rc.2", "@babel/parser": "8.0.0-rc.2", "@babel/types": "8.0.0-rc.2", "ast-kit": "^3.0.0-beta.1", "birpc": "^4.0.0", "dts-resolver": "^2.1.3", "get-tsconfig": "^4.13.6", "obug": "^2.1.1" }, "peerDependencies": { "@ts-macro/tsc": "^0.3.6", "@typescript/native-preview": ">=7.0.0-dev.20250601.1", "rolldown": "^1.0.0-rc.3", "typescript": "^5.0.0 || ^6.0.0-beta", "vue-tsc": "~3.2.0" }, "optionalPeers": ["@ts-macro/tsc", "@typescript/native-preview", "typescript", "vue-tsc"] }, "sha512-M/HXfM4cboo+jONx9Z0X+CUf3B5tCi7ni+kR5fUW50Fp9AlZk0oVLesibGWgCXDKFp5lpgQ9yhKoImUFjl3VZw=="], + "rolldown-plugin-dts": ["rolldown-plugin-dts@0.23.2", "", { "dependencies": { "@babel/generator": "8.0.0-rc.3", "@babel/helper-validator-identifier": "8.0.0-rc.3", "@babel/parser": "8.0.0-rc.3", "@babel/types": "8.0.0-rc.3", "ast-kit": "^3.0.0-beta.1", "birpc": "^4.0.0", "dts-resolver": "^2.1.3", "get-tsconfig": "^4.13.7", "obug": "^2.1.1", "picomatch": "^4.0.4" }, "peerDependencies": { "@ts-macro/tsc": "^0.3.6", "@typescript/native-preview": ">=7.0.0-dev.20260325.1", "rolldown": "^1.0.0-rc.12", "typescript": "^5.0.0 || ^6.0.0", "vue-tsc": "~3.2.0" }, "optionalPeers": ["@ts-macro/tsc", "@typescript/native-preview", "typescript", "vue-tsc"] }, "sha512-PbSqLawLgZBGcOGT3yqWBGn4cX+wh2nt5FuBGdcMHyOhoukmjbhYAl8NT9sE4U38Cm9tqLOIQeOrvzeayM0DLQ=="], "semver": ["semver@7.7.4", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA=="], @@ -240,7 +243,7 @@ "seroval-plugins": ["seroval-plugins@1.5.0", "", { "peerDependencies": { "seroval": "^1.0" } }, "sha512-EAHqADIQondwRZIdeW2I636zgsODzoBDwb3PT/+7TLDWyw1Dy/Xv7iGUIEXXav7usHDE9HVhOU61irI3EnyyHA=="], - "solid-js": ["solid-js@1.9.11", "", { "dependencies": { "csstype": "^3.1.0", "seroval": "~1.5.0", "seroval-plugins": "~1.5.0" } }, "sha512-WEJtcc5mkh/BnHA6Yrg4whlF8g6QwpmXXRg4P2ztPmcKeHHlH4+djYecBLhSpecZY2RRECXYUwIc/C2r3yzQ4Q=="], + "solid-js": ["solid-js@1.9.12", "", { "dependencies": { "csstype": "^3.1.0", "seroval": "~1.5.0", "seroval-plugins": "~1.5.0" } }, "sha512-QzKaSJq2/iDrWR1As6MHZQ8fQkdOBf8GReYb7L5iKwMGceg7HxDcaOHk0at66tNgn9U2U7dXo8ZZpLIAmGMzgw=="], "tinyexec": ["tinyexec@1.0.4", "", {}, "sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw=="], @@ -248,17 +251,17 @@ "tree-kill": ["tree-kill@1.2.2", "", { "bin": { "tree-kill": "cli.js" } }, "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A=="], - "tsdown": ["tsdown@0.21.3", "", { "dependencies": { "ansis": "^4.2.0", "cac": "^7.0.0", "defu": "^6.1.4", "empathic": "^2.0.0", "hookable": "^6.0.1", "import-without-cache": "^0.2.5", "obug": "^2.1.1", "picomatch": "^4.0.3", "rolldown": "1.0.0-rc.9", "rolldown-plugin-dts": "^0.22.5", "semver": "^7.7.4", "tinyexec": "^1.0.4", "tinyglobby": "^0.2.15", "tree-kill": "^1.2.2", "unconfig-core": "^7.5.0", "unrun": "^0.2.32" }, "peerDependencies": { "@arethetypeswrong/core": "^0.18.1", "@tsdown/css": "0.21.3", "@tsdown/exe": "0.21.3", "@vitejs/devtools": "*", "publint": "^0.3.0", "typescript": "^5.0.0", "unplugin-unused": "^0.5.0" }, "optionalPeers": ["@arethetypeswrong/core", "@tsdown/css", "@tsdown/exe", "@vitejs/devtools", "publint", "typescript", "unplugin-unused"], "bin": { "tsdown": "dist/run.mjs" } }, "sha512-oKKeMC8+IgNsB+81hvF5VBsqhqL/nr0g9vse+ujbK40vv0i3ReFI6gUts7hQH7J53ylQNjMgf2Vu6n0+P/uddA=="], + "tsdown": ["tsdown@0.21.7", "", { "dependencies": { "ansis": "^4.2.0", "cac": "^7.0.0", "defu": "^6.1.4", "empathic": "^2.0.0", "hookable": "^6.1.0", "import-without-cache": "^0.2.5", "obug": "^2.1.1", "picomatch": "^4.0.4", "rolldown": "1.0.0-rc.12", "rolldown-plugin-dts": "^0.23.2", "semver": "^7.7.4", "tinyexec": "^1.0.4", "tinyglobby": "^0.2.15", "tree-kill": "^1.2.2", "unconfig-core": "^7.5.0", "unrun": "^0.2.34" }, "peerDependencies": { "@arethetypeswrong/core": "^0.18.1", "@tsdown/css": "0.21.7", "@tsdown/exe": "0.21.7", "@vitejs/devtools": "*", "publint": "^0.3.0", "typescript": "^5.0.0 || ^6.0.0", "unplugin-unused": "^0.5.0" }, "optionalPeers": ["@arethetypeswrong/core", "@tsdown/css", "@tsdown/exe", "@vitejs/devtools", "publint", "typescript", "unplugin-unused"], "bin": { "tsdown": "dist/run.mjs" } }, "sha512-ukKIxKQzngkWvOYJAyptudclkm4VQqbjq+9HF5K5qDO8GJsYtMh8gIRwicbnZEnvFPr6mquFwYAVZ8JKt3rY2g=="], "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], - "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], + "typescript": ["typescript@6.0.2", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-bGdAIrZ0wiGDo5l8c++HWtbaNCWTS4UTv7RaTH/ThVIgjkveJt83m74bBHMJkuCbslY8ixgLBVZJIOiQlQTjfQ=="], "unconfig-core": ["unconfig-core@7.5.0", "", { "dependencies": { "@quansync/fs": "^1.0.0", "quansync": "^1.0.0" } }, "sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w=="], "undici-types": ["undici-types@7.18.2", "", {}, "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w=="], - "unrun": ["unrun@0.2.32", "", { "dependencies": { "rolldown": "1.0.0-rc.9" }, "peerDependencies": { "synckit": "^0.11.11" }, "optionalPeers": ["synckit"], "bin": { "unrun": "dist/cli.mjs" } }, "sha512-opd3z6791rf281JdByf0RdRQrpcc7WyzqittqIXodM/5meNWdTwrVxeyzbaCp4/Rgls/um14oUaif1gomO8YGg=="], + "unrun": ["unrun@0.2.34", "", { "dependencies": { "rolldown": "1.0.0-rc.12" }, "peerDependencies": { "synckit": "^0.11.11" }, "optionalPeers": ["synckit"], "bin": { "unrun": "dist/cli.mjs" } }, "sha512-LyaghRBR++r7svhDK6tnDz2XaYHWdneBOA0jbS8wnRsHerI9MFljX4fIiTgbbNbEVzZ0C9P1OjWLLe1OqoaaEw=="], "update-browserslist-db": ["update-browserslist-db@1.1.3", "", { "dependencies": { "escalade": "3.2.0", "picocolors": "1.1.1" }, "peerDependencies": { "browserslist": "4.25.1" }, "bin": { "update-browserslist-db": "cli.js" } }, "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw=="], } diff --git a/package.json b/package.json index 17ab76f..9a136f6 100644 --- a/package.json +++ b/package.json @@ -22,50 +22,51 @@ }, "scripts": { "build": "tsdown", - "lint": "biome lint", + "lint": "biome check", "format": "biome check --write --linter-enabled=false", "test": "bun run build && bun test --coverage", "typecheck": "tsc --noEmit", "prepublishOnly": "bun run build" }, "dependencies": { - "@babel/helper-plugin-utils": "^8.0.0-rc.2", - "@babel/helper-validator-option": "^8.0.0-rc.2", - "@babel/core": "^8.0.0-rc.2", - "@babel/helper-module-imports": "^8.0.0-rc.2", - "@babel/template": "^8.0.0-rc.2", - "@babel/traverse": "^8.0.0-rc.2", - "@babel/types": "^8.0.0-rc.2", + "@babel/helper-plugin-utils": "^8.0.0-rc.3", + "@babel/helper-validator-option": "^8.0.0-rc.3", + "@babel/core": "^8.0.0-rc.3", + "@babel/helper-module-imports": "^8.0.0-rc.3", + "@babel/template": "^8.0.0-rc.3", + "@babel/traverse": "^8.0.0-rc.3", + "@babel/types": "^8.0.0-rc.3", "html-entities": "2.6.0", "parse5": "^8.0.0" }, "devDependencies": { - "@biomejs/biome": "2.4.7", - "@types/bun": "^1.3.10", + "@biomejs/biome": "2.4.9", + "@gameroman/config": "^0.0.5", + "@types/bun": "^1.3.11", "@types/node": "^25.5.0", - "solid-js": "1.9.11", - "tsdown": "^0.21.3", - "typescript": "^5.9.3" + "solid-js": "1.9.12", + "tsdown": "^0.21.7", + "typescript": "^6.0.2" }, "peerDependencies": { "csstype": "^3.1.0", - "rolldown": "^1.0.0-rc.9 || ^1.0.0", - "seroval": "~1.3.0 || ~1.5.0", - "solid-js": ">=1.9.0" + "rolldown": "^1.0.0-rc.12", + "seroval": "~1.5.0", + "solid-js": ">=1.9.12" }, "engines": { "node": ">=22.12.0" }, "overrides": { - "@babel/helper-plugin-utils": "8.0.0-rc.2", - "@babel/helper-validator-identifier": "8.0.0-rc.2", - "@babel/helper-validator-option": "8.0.0-rc.2", - "@babel/code-frame": "8.0.0-rc.2", - "@babel/core": "8.0.0-rc.2", - "@babel/helper-module-imports": "8.0.0-rc.2", - "@babel/parser": "8.0.0-rc.2", - "@babel/template": "8.0.0-rc.2", - "@babel/traverse": "8.0.0-rc.2", - "@babel/types": "8.0.0-rc.2" + "@babel/helper-plugin-utils": "8.0.0-rc.3", + "@babel/helper-validator-identifier": "8.0.0-rc.3", + "@babel/helper-validator-option": "8.0.0-rc.3", + "@babel/code-frame": "8.0.0-rc.3", + "@babel/core": "8.0.0-rc.3", + "@babel/helper-module-imports": "8.0.0-rc.3", + "@babel/parser": "8.0.0-rc.3", + "@babel/template": "8.0.0-rc.3", + "@babel/traverse": "8.0.0-rc.3", + "@babel/types": "8.0.0-rc.3" } } diff --git a/tsconfig.json b/tsconfig.json index ad9f82a..14030f2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,29 +1,8 @@ { + "extends": "@gameroman/config/tsconfig", "compilerOptions": { "declaration": true, - "isolatedDeclarations": true, - - "target": "esnext", - "module": "esnext", - "moduleResolution": "bundler", - "moduleDetection": "force", - - "rootDir": "./", - - "skipLibCheck": true, - - // Max strictness - "strict": true, - "noFallthroughCasesInSwitch": true, - "noUncheckedIndexedAccess": true, - "noImplicitOverride": true, - "noUnusedLocals": true, - "noUnusedParameters": true, - "noPropertyAccessFromIndexSignature": true, - "noImplicitAny": true, - "strictNullChecks": true, - "forceConsistentCasingInFileNames": true, - "verbatimModuleSyntax": true + "isolatedDeclarations": true }, "include": ["src", "tests"] } diff --git a/tsdown.config.ts b/tsdown.config.ts index dedc65c..084bd28 100644 --- a/tsdown.config.ts +++ b/tsdown.config.ts @@ -1,7 +1,6 @@ import { defineConfig } from "tsdown"; export default defineConfig({ - entry: "src/index.ts", exports: true, dts: true, }); From 24087b049bb9647bf99c9fc10877b2ce513a8f6e Mon Sep 17 00:00:00 2001 From: Roman Date: Mon, 30 Mar 2026 14:03:44 +0100 Subject: [PATCH 2/4] fix lint errors --- biome.jsonc | 10 +++++++++- .../dom/element.ts | 10 +++++----- .../shared/component.ts | 2 +- .../shared/postprocess.ts | 4 ++-- .../shared/transform.ts | 4 ++-- .../ssr/element.ts | 2 +- .../universal/element.ts | 10 +++++----- .../dom-expressions/client.d.ts | 8 ++++---- .../dom-expressions/client.js | 4 ++-- .../dom-expressions/server.d.ts | 8 ++++---- .../dom-expressions/server.js | 6 +++--- src/plugin-transform-typescript/index.ts | 11 ++++------- src/plugin-transform-typescript/namespace.ts | 16 +++++++--------- 13 files changed, 49 insertions(+), 46 deletions(-) diff --git a/biome.jsonc b/biome.jsonc index d5dc698..ba98b70 100644 --- a/biome.jsonc +++ b/biome.jsonc @@ -1,9 +1,17 @@ { "$schema": "https://biomejs.dev/schemas/2.4.9/schema.json", "extends": ["@gameroman/config/biome"], + "files": { + "includes": ["**", "!!tests/fixtures"] + }, "linter": { "rules": { - "suspicious": "warn" + "suspicious": { + "noEmptyInterface": "off" + }, + "style": { + "useShorthandFunctionType": "off" + } } } } diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/dom/element.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/dom/element.ts index 21511be..d71cd4c 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/dom/element.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/dom/element.ts @@ -174,7 +174,7 @@ export function transformElement(path, info) { results.templateWithClosingTags += ``; } if (info.topLevel && config.hydratable && results.hasHydratableEvent) { - let runHydrationEvents = registerImportMethod( + const runHydrationEvents = registerImportMethod( path, "runHydrationEvents", getRendererConfig(path, "dom").moduleName, @@ -320,7 +320,7 @@ export function setAttr( ); } - let isNameSpaced = name.indexOf(":") > -1; + const isNameSpaced = name.indexOf(":") > -1; name = Aliases[name] || name; !isSVG && (name = name.toLowerCase()); const ns = isNameSpaced && SVGNamespace[name.split(":")[0]]; @@ -668,7 +668,7 @@ function transformAttributes(path, results) { } for (let i = 0, len = text.length; i < len; i++) { - let char = text[i]; + const char = text[i]; if ( char === "'" || @@ -1281,7 +1281,7 @@ function transformChildren(path, results, config) { nextPlaceholder = null; i++; } else if (child.exprs.length) { - let insert = registerImportMethod( + const insert = registerImportMethod( path, "insert", getRendererConfig(path, "dom").moduleName, @@ -1525,7 +1525,7 @@ function processSpreads( }); if (dynamic) { const id = convertJSXIdentifier(node.name); - let expr = + const expr = wrapConditionals && (t.isLogicalExpression(node.value.expression) || t.isConditionalExpression(node.value.expression)) diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/component.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/component.ts index f526a6c..c64bb7a 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/component.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/component.ts @@ -312,7 +312,7 @@ function transformComponentChildren(children, config) { const filteredChildren = filterChildren(children); if (!filteredChildren.length) return; let dynamic = false; - let pathNodes = []; + const pathNodes = []; let transformedChildren = filteredChildren.reduce((memo, path) => { if (t.isJSXText(path.node)) { diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/postprocess.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/postprocess.ts index 89e4f0e..8bc47ba 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/postprocess.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/postprocess.ts @@ -45,10 +45,10 @@ export default (path, state) => { } } } - let domTemplates = path.scope.data.templates.filter( + const domTemplates = path.scope.data.templates.filter( (temp) => temp.renderer === "dom", ); - let ssrTemplates = path.scope.data.templates.filter( + const ssrTemplates = path.scope.data.templates.filter( (temp) => temp.renderer === "ssr", ); domTemplates.length > 0 && appendTemplatesDOM(path, domTemplates); diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/transform.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/transform.ts index ede4668..5ddb326 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/transform.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/shared/transform.ts @@ -125,7 +125,7 @@ export function transformNode(path, info = {}) { if (t.isJSXElement(node)) { return transformElement(config, path, info); } else if (t.isJSXFragment(node)) { - let results = { template: "", declarations: [], exprs: [], dynamics: [] }; + const results = { template: "", declarations: [], exprs: [], dynamics: [] }; // <>
transformFragmentChildren(path.get("children"), results, config); return results; @@ -229,7 +229,7 @@ export function getCreateTemplate(config, path, result) { function transformElement(config, path, info = {}) { const node = path.node; - let tagName = getTagName(node); + const tagName = getTagName(node); // if (isComponent(tagName)) return transformComponent(path); diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/ssr/element.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/ssr/element.ts index 6474e25..3587273 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/ssr/element.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/ssr/element.ts @@ -678,7 +678,7 @@ function createElement(path, { topLevel, hydratable }) { checkTags: true, }) ) { - let expr = t.arrowFunctionExpression([], value.expression); + const expr = t.arrowFunctionExpression([], value.expression); runningObject.push( t.objectMethod( "get", diff --git a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/universal/element.ts b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/universal/element.ts index e845907..fc79a5f 100644 --- a/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/universal/element.ts +++ b/src/babel-plugin-jsx-dom-expressions/babel-plugin-jsx-dom-expressions/universal/element.ts @@ -15,7 +15,7 @@ import { } from "../shared/utils"; export function transformElement(path, info) { - let tagName = getTagName(path.node), + const tagName = getTagName(path.node), results = { id: path.scope.generateUidIdentifier("el$"), declarations: [], @@ -254,14 +254,14 @@ function transformChildren(path, results) { Wrap the usage with a component that would render this element, eg. Canvas`); } if (child.id) { - let insertNode = registerImportMethod( + const insertNode = registerImportMethod( path, "insertNode", getRendererConfig(path, "universal").moduleName, ); let insert = child.id; if (child.text) { - let createTextNode = registerImportMethod( + const createTextNode = registerImportMethod( path, "createTextNode", getRendererConfig(path, "universal").moduleName, @@ -303,7 +303,7 @@ function transformChildren(path, results) { results.exprs.push(...child.exprs); results.dynamics.push(...child.dynamics); } else if (child.exprs.length) { - let insert = registerImportMethod( + const insert = registerImportMethod( path, "insert", getRendererConfig(path, "universal").moduleName, @@ -389,7 +389,7 @@ function processSpreads( }); if (dynamic) { const id = convertJSXIdentifier(node.name); - let expr = + const expr = wrapConditionals && (t.isLogicalExpression(node.value.expression) || t.isConditionalExpression(node.value.expression)) diff --git a/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.d.ts b/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.d.ts index 3b62395..65d96ee 100644 --- a/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.d.ts +++ b/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.d.ts @@ -41,14 +41,14 @@ export function clearDelegatedEvents(d?: Document): void; export function spread( node: Element, accessor: T, - isSVG?: Boolean, - skipChildren?: Boolean, + isSVG?: boolean, + skipChildren?: boolean, ): void; export function assign( node: Element, props: any, - isSVG?: Boolean, - skipChildren?: Boolean, + isSVG?: boolean, + skipChildren?: boolean, ): void; export function setAttribute(node: Element, name: string, value: string): void; export function setAttributeNS( diff --git a/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.js b/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.js index eb3ccba..f66f133 100644 --- a/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.js +++ b/src/babel-plugin-jsx-dom-expressions/dom-expressions/client.js @@ -108,7 +108,7 @@ export function delegateEvents(eventNames, document = window.document) { export function clearDelegatedEvents(document = window.document) { if (document[$$EVENTS]) { - for (let name of document[$$EVENTS].keys()) + for (const name of document[$$EVENTS].keys()) document.removeEventListener(name, eventHandler); delete document[$$EVENTS]; } @@ -531,7 +531,7 @@ function insertExpression(parent, value, current, marker, unwrapArray) { const hydrating = isHydrating(parent); if (hydrating) { !current && (current = [...parent.childNodes]); - let cleaned = []; + const cleaned = []; for (let i = 0; i < current.length; i++) { const node = current[i]; if (node.nodeType === 8 && node.data.slice(0, 2) === "!$") node.remove(); diff --git a/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.d.ts b/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.d.ts index 0cf358a..e1f82fd 100644 --- a/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.d.ts +++ b/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.d.ts @@ -151,8 +151,8 @@ export function insert( export function spread( node: Element, accessor: T, - isSVG?: Boolean, - skipChildren?: Boolean, + isSVG?: boolean, + skipChildren?: boolean, ): void; /** @deprecated not supported on the server side */ @@ -196,8 +196,8 @@ export function className(node: Element, value: string): void; export function assign( node: Element, props: any, - isSVG?: Boolean, - skipChildren?: Boolean, + isSVG?: boolean, + skipChildren?: boolean, ): void; /** @deprecated not supported on the server side */ diff --git a/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.js b/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.js index f29d534..ea13401 100644 --- a/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.js +++ b/src/babel-plugin-jsx-dom-expressions/dom-expressions/server.js @@ -267,7 +267,7 @@ export function renderToStream(code, options = {}) { fn(tmp); } if (onCompleteAll) { - let ogComplete = onCompleteAll; + const ogComplete = onCompleteAll; onCompleteAll = (options) => { ogComplete(options); complete(); @@ -605,7 +605,7 @@ function queue(fn) { } function allSettled(promises) { - let length = promises.length; + const length = promises.length; return Promise.allSettled(promises).then(() => { if (promises.length !== length) return allSettled(promises); return; @@ -709,7 +709,7 @@ export function ssrSpread(props, isSVG, skipChildren) { const keys = Object.keys(props); let classResolved; for (let i = 0; i < keys.length; i++) { - let prop = keys[i]; + const prop = keys[i]; if (prop === "children") { !skipChildren && console.warn(`SSR currently does not support spread children.`); diff --git a/src/plugin-transform-typescript/index.ts b/src/plugin-transform-typescript/index.ts index cb04924..b86f9c6 100644 --- a/src/plugin-transform-typescript/index.ts +++ b/src/plugin-transform-typescript/index.ts @@ -615,13 +615,10 @@ const pluginTransformTypescript = declare((api, opts: Options) => { const newNode = t.variableDeclaration(varKind, [ t.variableDeclarator(id, init), ]); - - { - path.replaceWith( - // @ts-expect-error(Babel 7 vs Babel 8) Babel 7 AST - path.node.isExport ? t.exportNamedDeclaration(newNode) : newNode, - ); - } + path.replaceWith( + // @ts-expect-error(Babel 7 vs Babel 8) Babel 7 AST + path.node.isExport ? t.exportNamedDeclaration(newNode) : newNode, + ); path.scope.registerDeclaration(path); }, diff --git a/src/plugin-transform-typescript/namespace.ts b/src/plugin-transform-typescript/namespace.ts index 1fc2d68..c2c1e44 100644 --- a/src/plugin-transform-typescript/namespace.ts +++ b/src/plugin-transform-typescript/namespace.ts @@ -139,15 +139,13 @@ function handleNested( const body = node.body; let namespaceTopLevel: t.Statement[]; - { - namespaceTopLevel = t.isTSModuleBlock(body) - ? body.body - : // We handle `namespace X.Y {}` as if it was - // namespace X { - // export namespace Y {} - // } - [t.exportNamedDeclaration(body)]; - } + namespaceTopLevel = t.isTSModuleBlock(body) + ? body.body + : // We handle `namespace X.Y {}` as if it was + // namespace X { + // export namespace Y {} + // } + [t.exportNamedDeclaration(body)]; let isEmpty = true; From 3c783870eaeaf759d40c7716f3f71027b3597931 Mon Sep 17 00:00:00 2001 From: Roman Date: Mon, 30 Mar 2026 14:31:25 +0100 Subject: [PATCH 3/4] tests: update snapshots --- tests/__snapshots__/basic.test.ts.snap | 28 +-- tests/__snapshots__/batch.test.ts.snap | 14 +- tests/__snapshots__/children.test.ts.snap | 14 +- tests/__snapshots__/component.test.ts.snap | 14 +- tests/__snapshots__/conditional.test.ts.snap | 14 +- tests/__snapshots__/config.test.ts.snap | 92 ++------- tests/__snapshots__/context.test.ts.snap | 14 +- tests/__snapshots__/create-root.test.ts.snap | 14 +- tests/__snapshots__/create-store.test.ts.snap | 18 +- tests/__snapshots__/dynamic.test.ts.snap | 18 +- tests/__snapshots__/effects.test.ts.snap | 14 +- .../__snapshots__/error-boundary.test.ts.snap | 14 +- tests/__snapshots__/fragment.test.ts.snap | 64 ++---- .../hydratable-root.test.ts.snap | 12 +- tests/__snapshots__/list.test.ts.snap | 14 +- tests/__snapshots__/memo.test.ts.snap | 14 +- tests/__snapshots__/onmount.test.ts.snap | 14 +- tests/__snapshots__/portal.test.ts.snap | 14 +- tests/__snapshots__/props.test.ts.snap | 14 +- tests/__snapshots__/resource.test.ts.snap | 14 +- tests/__snapshots__/ssr.test.ts.snap | 88 ++------ tests/__snapshots__/suspense.test.ts.snap | 14 +- tests/__snapshots__/templates.test.ts.snap | 188 +++--------------- .../typescript-class-features.test.ts.snap | 14 +- .../typescript-declare.test.ts.snap | 14 +- .../typescript-enums.test.ts.snap | 14 +- .../typescript-generics.test.ts.snap | 14 +- .../typescript-imports.test.ts.snap | 40 +--- .../typescript-plugin.test.ts.snap | 42 ++-- .../typescript-pure-ts.test.ts.snap | 18 +- .../typescript-type-only.test.ts.snap | 14 +- .../__snapshots__/universal-mode.test.ts.snap | 14 +- tests/__snapshots__/validation.test.ts.snap | 84 +------- .../__snapshots__/web-components.test.ts.snap | 42 ++-- tests/helpers/index.ts | 2 + 35 files changed, 214 insertions(+), 816 deletions(-) diff --git a/tests/__snapshots__/basic.test.ts.snap b/tests/__snapshots__/basic.test.ts.snap index e108b45..5c6f413 100644 --- a/tests/__snapshots__/basic.test.ts.snap +++ b/tests/__snapshots__/basic.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform basic SolidJS component 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -180,6 +179,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -624,8 +624,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/basic.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Check console to see the difference in effect triggers!

Without batch: Each signal update triggers effects separately

With batch: All updates trigger effects together once\`); const BatchExample = () => { const [count, setCount] = createSignal(0); @@ -717,14 +715,12 @@ const BatchExample = () => { })(); }; delegateEvents(["click"]); -//#endregion export { BatchExample as default }; " `; exports[`rolldown-plugin-solid dist should transform component with batch 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -904,6 +900,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -1356,8 +1353,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/batch.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Batch Example

Count:

Double:

Name:

Greeting:

Check console to see the difference in effect triggers!

Without batch: Each signal update triggers effects separately

With batch: All updates trigger effects together once\`); const BatchExample = () => { const [count, setCount] = createSignal(0); @@ -1439,7 +1434,6 @@ const BatchExample = () => { })(); }; delegateEvents(["click"]); -//#endregion export { BatchExample as default }; " `; diff --git a/tests/__snapshots__/children.test.ts.snap b/tests/__snapshots__/children.test.ts.snap index e051241..e866d15 100644 --- a/tests/__snapshots__/children.test.ts.snap +++ b/tests/__snapshots__/children.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with children 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -173,6 +172,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -607,8 +607,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/children.tsx var _tmpl$ = /* @__PURE__ */ template(\`

\`), _tmpl$2 = /* @__PURE__ */ template(\`

\`), _tmpl$3 = /* @__PURE__ */ template(\`

This is card content\`), _tmpl$4 = /* @__PURE__ */ template(\`

Root mounted: \`); const Counter = () => { const [count, setCount] = createSignal(0); @@ -665,14 +663,12 @@ const App = () => { })(); }; delegateEvents(["click"]); -//#endregion export { App as default }; " `; exports[`rolldown-plugin-solid dist should transform component with createRoot 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -850,6 +846,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -1283,8 +1280,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/create-root.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Count:

Root mounted: \`); const Counter = () => { const [count, setCount] = createSignal(0); @@ -1335,7 +1330,6 @@ const App = () => { })(); }; delegateEvents(["click"]); -//#endregion export { App as default }; " `; diff --git a/tests/__snapshots__/create-store.test.ts.snap b/tests/__snapshots__/create-store.test.ts.snap index 2461bdd..ac0678f 100644 --- a/tests/__snapshots__/create-store.test.ts.snap +++ b/tests/__snapshots__/create-store.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with createStore 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -196,6 +195,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -675,8 +675,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region node_modules/solid-js/store/dist/store.js const $RAW = Symbol("store-raw"), $NODE = Symbol("store-node"), $HAS = Symbol("store-has"), $SELF = Symbol("store-self"); function wrap$1(value) { let p = value[$PROXY]; @@ -865,8 +863,6 @@ function createStore(...[store, options]) { } return [wrappedStore, setStore]; } -//#endregion -//#region tests/fixtures/create-store.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Store Management Example

Total Users:

Store Debug Info

Is Loading:

Error:

Selected User ID: \`), _tmpl$2 = /* @__PURE__ */ template(\`

Users List\`), _tmpl$3 = /* @__PURE__ */ template(\`

()

City:

Theme:

Notifications: Email=, Push=

Notification Preferences:

Email:

Push:

Marketing: \`); const StoreExample = () => { const [store, setStore] = createStore({ @@ -1028,14 +1024,12 @@ const StoreExample = () => { })(); }; delegateEvents(["click"]); -//#endregion export { StoreExample as default }; " `; exports[`rolldown-plugin-solid dist should transform component with createStore 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -1229,6 +1223,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -1708,8 +1703,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region node_modules/solid-js/store/dist/store.js const $RAW = Symbol("store-raw"), $NODE = Symbol("store-node"), $HAS = Symbol("store-has"), $SELF = Symbol("store-self"); function wrap$1(value) { let p = value[$PROXY]; @@ -1898,8 +1891,6 @@ function createStore(...[store, options]) { } return [wrappedStore, setStore]; } -//#endregion -//#region tests/fixtures/create-store.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Store Management Example

Total Users:

Store Debug Info

Is Loading:

Error:

Selected User ID: \`), _tmpl$2 = /* @__PURE__ */ template(\`

Users List\`), _tmpl$3 = /* @__PURE__ */ template(\`

()

City:

Theme:

Notifications: Email=, Push=

Notification Preferences:

Email:

Push:

Marketing: \`); const StoreExample = () => { const [store, setStore] = createStore({ @@ -2061,7 +2052,6 @@ const StoreExample = () => { })(); }; delegateEvents(["click"]); -//#endregion export { StoreExample as default }; " `; diff --git a/tests/__snapshots__/dynamic.test.ts.snap b/tests/__snapshots__/dynamic.test.ts.snap index 4d70da4..ab0f06c 100644 --- a/tests/__snapshots__/dynamic.test.ts.snap +++ b/tests/__snapshots__/dynamic.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with Dynamic 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -175,6 +174,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -505,8 +505,6 @@ function splitProps(props, ...keys) { } return objects; } -//#endregion -//#region node_modules/solid-js/web/dist/web.js const Properties = /* @__PURE__ */ new Set([ "className", "value", @@ -1195,8 +1193,6 @@ function Dynamic(props) { const [, others] = splitProps(props, ["component"]); return createDynamic(() => props.component, others); } -//#endregion -//#region tests/fixtures/dynamic.tsx var _tmpl$ = /* @__PURE__ */ template(\`", _tmpl$4 = "

Fragment Example

", _tmpl$5 = ["

Count: ", "

"], _tmpl$6 = ""; const ChildComponent = () => { const [message, setMessage] = createSignal("Hello from child!"); @@ -3004,14 +2990,12 @@ const App = () => { createComponent(ChildComponent, {}) ]; }; -//#endregion export { App as default }; " `; exports[`rolldown-plugin-solid dist should transform SolidJS component with fragments and SSR option 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -3164,6 +3148,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -3333,8 +3318,6 @@ function createComponent(Comp, props) { } function ssr(template, ...nodes) {} function escape(html) {} -//#endregion -//#region tests/fixtures/fragment.tsx var _tmpl$ = "

Child Component

", _tmpl$2 = ["

", "

"], _tmpl$3 = "", _tmpl$4 = "

Fragment Example

", _tmpl$5 = ["

Count: ", "

"], _tmpl$6 = ""; const ChildComponent = () => { const [message, setMessage] = createSignal("Hello from child!"); @@ -3353,14 +3336,12 @@ const App = () => { createComponent(ChildComponent, {}) ]; }; -//#endregion export { App as default }; " `; exports[`rolldown-plugin-solid src should transform SolidJS component with fragments and universal mode 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -3549,6 +3530,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -3836,8 +3818,6 @@ function mergeProps$1(...sources) { } return target; } -//#endregion -//#region node_modules/solid-js/universal/dist/universal.js const memo$1 = (fn) => createMemo(() => fn()); function createRenderer$1({ createElement, createTextNode, isTextNode, replaceText, insertNode, removeNode, setProperty, getParentNode, getFirstChild, getNextSibling }) { function insert(parent, accessor, marker, initial) { @@ -4035,8 +4015,6 @@ function createRenderer(options) { renderer.mergeProps = mergeProps$1; return renderer; } -//#endregion -//#region tests/helpers/universal-mode-renderer.ts const { createComponent, createElement, createTextNode, effect, insert, insertNode, memo, mergeProps, render, setProp, spread, use } = createRenderer({ createElement() {}, createTextNode() {}, @@ -4051,8 +4029,6 @@ const { createComponent, createElement, createTextNode, effect, insert, insertNo replaceText() {}, setProperty() {} }); -//#endregion -//#region tests/fixtures/fragment.tsx const ChildComponent = () => { const [message, setMessage] = createSignal("Hello from child!"); return [ @@ -4097,14 +4073,12 @@ const App = () => { createComponent(ChildComponent, {}) ]; }; -//#endregion export { App as default }; " `; exports[`rolldown-plugin-solid dist should transform SolidJS component with fragments and universal mode 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -4293,6 +4267,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -4580,8 +4555,6 @@ function mergeProps$1(...sources) { } return target; } -//#endregion -//#region node_modules/solid-js/universal/dist/universal.js const memo$1 = (fn) => createMemo(() => fn()); function createRenderer$1({ createElement, createTextNode, isTextNode, replaceText, insertNode, removeNode, setProperty, getParentNode, getFirstChild, getNextSibling }) { function insert(parent, accessor, marker, initial) { @@ -4779,8 +4752,6 @@ function createRenderer(options) { renderer.mergeProps = mergeProps$1; return renderer; } -//#endregion -//#region tests/helpers/universal-mode-renderer.ts const { createComponent, createElement, createTextNode, effect, insert, insertNode, memo, mergeProps, render, setProp, spread, use } = createRenderer({ createElement() {}, createTextNode() {}, @@ -4795,8 +4766,6 @@ const { createComponent, createElement, createTextNode, effect, insert, insertNo replaceText() {}, setProperty() {} }); -//#endregion -//#region tests/fixtures/fragment.tsx const ChildComponent = () => { const [message, setMessage] = createSignal("Hello from child!"); return [ @@ -4841,7 +4810,6 @@ const App = () => { createComponent(ChildComponent, {}) ]; }; -//#endregion export { App as default }; " `; diff --git a/tests/__snapshots__/hydratable-root.test.ts.snap b/tests/__snapshots__/hydratable-root.test.ts.snap index 157b50b..e4d842c 100644 --- a/tests/__snapshots__/hydratable-root.test.ts.snap +++ b/tests/__snapshots__/hydratable-root.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform hydratable html/head/body elements 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -48,8 +47,6 @@ function getHydrationKey() { function NoHydration(props) { return sharedConfig.context ? void 0 : props.children; } -//#endregion -//#region tests/fixtures/hydratable-root.tsx function TestHydratableHtml() { return getNextElement(); } @@ -59,14 +56,12 @@ function TestHydratableHead() { function TestHydratableBody() { return getNextElement(); } -//#endregion export { TestHydratableBody, TestHydratableHead, TestHydratableHtml }; " `; exports[`rolldown-plugin-solid dist should transform hydratable html/head/body elements 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -112,8 +107,6 @@ function getHydrationKey() { function NoHydration(props) { return sharedConfig.context ? void 0 : props.children; } -//#endregion -//#region tests/fixtures/hydratable-root.tsx function TestHydratableHtml() { return getNextElement(); } @@ -123,7 +116,6 @@ function TestHydratableHead() { function TestHydratableBody() { return getNextElement(); } -//#endregion export { TestHydratableBody, TestHydratableHead, TestHydratableHtml }; " `; diff --git a/tests/__snapshots__/list.test.ts.snap b/tests/__snapshots__/list.test.ts.snap index 50c9953..1a0a830 100644 --- a/tests/__snapshots__/list.test.ts.snap +++ b/tests/__snapshots__/list.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with list rendering 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -196,6 +195,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -774,8 +774,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/list.tsx var _tmpl$ = /* @__PURE__ */ template(\`

Product List

    Simple List

      Simple List

      Total items:

      Total price: $

        \`), _tmpl$3 = /* @__PURE__ */ template(\`
      • () - $\`), _tmpl$4 = /* @__PURE__ */ template(\`

        Computed Values

        Raw power:

        Formatted:

        Is large:

        Description: \`), _tmpl$5 = /* @__PURE__ */ template(\`

        This is a large number!\`), _tmpl$6 = /* @__PURE__ */ template(\`

        createMemo Demo



        \`); const MemoCounter = () => { const [count, setCount] = createSignal(0); @@ -820,14 +818,12 @@ const MemoDemo = () => { })(); }; delegateEvents(["click", "input"]); -//#endregion export { MemoDemo as default }; " `; exports[`rolldown-plugin-solid dist should transform component with Memo 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -1013,6 +1009,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -1469,8 +1466,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/memo.tsx var _tmpl$ = /* @__PURE__ */ template(\`

        Counter with Memos

        Count:

        Multiplier:

        Doubled:

        Quadrupled:

        Expensive:

        Total items:

        Total price: $

          \`), _tmpl$3 = /* @__PURE__ */ template(\`
        • () - $\`), _tmpl$4 = /* @__PURE__ */ template(\`

          Computed Values

          Raw power:

          Formatted:

          Is large:

          Description: \`), _tmpl$5 = /* @__PURE__ */ template(\`

          This is a large number!\`), _tmpl$6 = /* @__PURE__ */ template(\`

          createMemo Demo



          \`); const MemoCounter = () => { const [count, setCount] = createSignal(0); @@ -1645,7 +1640,6 @@ const MemoDemo = () => { })(); }; delegateEvents(["click", "input"]); -//#endregion export { MemoDemo as default }; " `; diff --git a/tests/__snapshots__/onmount.test.ts.snap b/tests/__snapshots__/onmount.test.ts.snap index 75f2b84..63eeadf 100644 --- a/tests/__snapshots__/onmount.test.ts.snap +++ b/tests/__snapshots__/onmount.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with onMount 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -197,6 +196,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -594,8 +594,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/onmount.tsx var _tmpl$ = /* @__PURE__ */ template(\`

          Data Loader Component\`), _tmpl$2 = /* @__PURE__ */ template(\`

          Loading posts...\`), _tmpl$3 = /* @__PURE__ */ template(\`

            \`), _tmpl$4 = /* @__PURE__ */ template(\`
          • \`), _tmpl$5 = /* @__PURE__ */ template(\`

            Timer: s\`), _tmpl$6 = /* @__PURE__ */ template(\`

            onMount Example

            Mounted at:

            Time elapsed: s

            Async Data Loading

            ✅ Component mounted - check console for logs

            🔄 Timer and resize listener are active

            📊 Data fetched from API on mount\`), _tmpl$7 = /* @__PURE__ */ template(\`

            Error: \`), _tmpl$8 = /* @__PURE__ */ template(\`

            \`), _tmpl$9 = /* @__PURE__ */ template(\`

            Loading data...\`); const OnMountExample = () => { const [mountedTime, setMountedTime] = createSignal(""); @@ -702,14 +700,12 @@ const OnMountExample = () => { return _el$1; })(); }; -//#endregion export { OnMountExample as default }; " `; exports[`rolldown-plugin-solid dist should transform component with onMount 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -904,6 +900,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -1301,8 +1298,6 @@ function cleanChildren(parent, current, marker, replacement) { } else parent.insertBefore(node, marker); return [node]; } -//#endregion -//#region tests/fixtures/onmount.tsx var _tmpl$ = /* @__PURE__ */ template(\`

            Data Loader Component\`), _tmpl$2 = /* @__PURE__ */ template(\`

            Loading posts...\`), _tmpl$3 = /* @__PURE__ */ template(\`

              \`), _tmpl$4 = /* @__PURE__ */ template(\`
            • \`), _tmpl$5 = /* @__PURE__ */ template(\`

              Timer: s\`), _tmpl$6 = /* @__PURE__ */ template(\`

              onMount Example

              Mounted at:

              Time elapsed: s

              Async Data Loading

              ✅ Component mounted - check console for logs

              🔄 Timer and resize listener are active

              📊 Data fetched from API on mount\`), _tmpl$7 = /* @__PURE__ */ template(\`

              Error: \`), _tmpl$8 = /* @__PURE__ */ template(\`

              \`), _tmpl$9 = /* @__PURE__ */ template(\`

              Loading data...\`); const OnMountExample = () => { const [mountedTime, setMountedTime] = createSignal(""); @@ -1409,7 +1404,6 @@ const OnMountExample = () => { return _el$1; })(); }; -//#endregion export { OnMountExample as default }; " `; diff --git a/tests/__snapshots__/portal.test.ts.snap b/tests/__snapshots__/portal.test.ts.snap index 68d67c9..e44bf34 100644 --- a/tests/__snapshots__/portal.test.ts.snap +++ b/tests/__snapshots__/portal.test.ts.snap @@ -1,8 +1,7 @@ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots exports[`rolldown-plugin-solid src should transform component with Portal 1`] = ` -"//#region node_modules/solid-js/dist/solid.js -const sharedConfig = { +"const sharedConfig = { context: void 0, registry: void 0, effects: void 0, @@ -227,6 +226,7 @@ function runComputation(node, value, time) { if (!node.updatedAt || node.updatedAt <= time) { if (node.updatedAt != null && "observers" in node) writeSignal(node, nextValue, true); else if (Transition && Transition.running && node.pure) { + if (!Transition.sources.has(node)) node.value = nextValue; Transition.sources.add(node); node.tValue = nextValue; } else node.value = nextValue; @@ -716,8 +716,6 @@ function Portal(props) { }, void 0, { render: !hydrating }); return marker; } -//#endregion -//#region tests/fixtures/portal.tsx var _tmpl$ = /* @__PURE__ */ template(\`

              This notification is always rendered in a different container\`), _tmpl$2 = /* @__PURE__ */ template(\`

              This tooltip is rendered directly to document.body\`), _tmpl$3 = /* @__PURE__ */ template(\`

              Portal Example

              Comments Selection

              Comments Selection