From f713f5f38139a3460e07d35a3290e205302f75b9 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Mon, 4 Sep 2023 23:50:29 +0100 Subject: [PATCH] add astro check --- .eslintrc.json | 4 + package-lock.json | 499 ++++++++++++++++++++++- package.json | 9 +- scripts/create-icons/Props.ts | 2 +- scripts/create-icons/svg.ts | 8 +- src/components/layouts/Post/Action.astro | 2 +- 6 files changed, 504 insertions(+), 20 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 45037494..9c7d84a3 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,5 +1,9 @@ { "root": true, + "env": { + "browser": true, + "node": true + }, "parser": "@typescript-eslint/parser", "parserOptions": { "ecmaVersion": "latest", diff --git a/package-lock.json b/package-lock.json index f4555dad..fa3548bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "5.0.0", "license": "MIT", "dependencies": { + "@astrojs/check": "^0.2.0", "@astrojs/react": "^3.0.0", "@astrojs/rss": "^3.0.0", "@astrojs/sitemap": "^3.0.0", @@ -103,15 +104,137 @@ "node": ">=6.0.0" } }, + "node_modules/@astrojs/check": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@astrojs/check/-/check-0.2.0.tgz", + "integrity": "sha512-QS8TBRNrxBNEKm9hsP4xI+ao2XJ5JZfMZ1GpHqM7HCGPwWe5oWSPtDXGM8zutZ6kH3ilK0k1euqkzxrhcTP1Cg==", + "dependencies": { + "@astrojs/language-server": "^2.3.2", + "chokidar": "^3.5.3", + "fast-glob": "^3.3.1", + "kleur": "^4.1.5", + "yargs": "^17.7.2" + }, + "bin": { + "astro-check": "dist/bin.js" + }, + "peerDependencies": { + "typescript": "^5.0.0" + } + }, + "node_modules/@astrojs/check/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@astrojs/check/node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@astrojs/check/node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/@astrojs/check/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@astrojs/check/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + }, "node_modules/@astrojs/compiler": { "version": "1.8.2", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/@astrojs/internal-helpers": { "version": "0.2.0", "license": "MIT" }, + "node_modules/@astrojs/language-server": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@astrojs/language-server/-/language-server-2.3.2.tgz", + "integrity": "sha512-j8/AT88Gz5EHhIKjtz2i5hTwj/Q3xo/Omwjh1BWsf5LZANHh9BJvWX2B76o8Badsvt3UM6S3KK9nFlZ0qomceQ==", + "dependencies": { + "@astrojs/compiler": "1.5.7", + "@jridgewell/sourcemap-codec": "^1.4.15", + "@volar/kit": "~1.10.0", + "@volar/language-core": "~1.10.0", + "@volar/language-server": "~1.10.0", + "@volar/language-service": "~1.10.0", + "@volar/source-map": "~1.10.0", + "@volar/typescript": "~1.10.0", + "fast-glob": "^3.2.12", + "muggle-string": "^0.3.1", + "volar-service-css": "0.0.11", + "volar-service-emmet": "0.0.11", + "volar-service-html": "0.0.11", + "volar-service-prettier": "0.0.11", + "volar-service-typescript": "0.0.11", + "volar-service-typescript-twoslash-queries": "0.0.11", + "vscode-html-languageservice": "^5.0.6", + "vscode-uri": "^3.0.7" + }, + "bin": { + "astro-ls": "bin/nodeServer.js" + }, + "peerDependencies": { + "prettier": "^3.0.0", + "prettier-plugin-astro": ">=0.11.0" + }, + "peerDependenciesMeta": { + "prettier": { + "optional": true + }, + "prettier-plugin-astro": { + "optional": true + } + } + }, + "node_modules/@astrojs/language-server/node_modules/@astrojs/compiler": { + "version": "1.5.7", + "resolved": "https://registry.npmjs.org/@astrojs/compiler/-/compiler-1.5.7.tgz", + "integrity": "sha512-dFU7GAMbpTUGPkRoCoMQrGFlTe3qIiQMSOxIXp/nB1Do4My9uogjEmBHdR5Cwr4i6rc5/1R3Od9v8kU/pkHXGQ==" + }, + "node_modules/@astrojs/language-server/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, "node_modules/@astrojs/markdown-remark": { "version": "3.0.0", "license": "MIT", @@ -905,6 +1028,27 @@ "postcss-selector-parser": "^6.0.13" } }, + "node_modules/@emmetio/abbreviation": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/@emmetio/abbreviation/-/abbreviation-2.3.3.tgz", + "integrity": "sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==", + "dependencies": { + "@emmetio/scanner": "^1.0.4" + } + }, + "node_modules/@emmetio/css-abbreviation": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@emmetio/css-abbreviation/-/css-abbreviation-2.1.8.tgz", + "integrity": "sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==", + "dependencies": { + "@emmetio/scanner": "^1.0.4" + } + }, + "node_modules/@emmetio/scanner": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@emmetio/scanner/-/scanner-1.0.4.tgz", + "integrity": "sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==" + }, "node_modules/@emotion/hash": { "version": "0.8.0", "license": "MIT" @@ -3433,6 +3577,100 @@ "vite": "^4.2.0" } }, + "node_modules/@volar/kit": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/kit/-/kit-1.10.1.tgz", + "integrity": "sha512-+aR3rvgER14VfjFflhD6k161uLdshpuK1tQUrnl8phpKtSGJDXHkTl/WkNk2xCEuE4goShS9nTvruTyrI9gGBw==", + "dependencies": { + "@volar/language-service": "1.10.1", + "typesafe-path": "^0.2.2", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-uri": "^3.0.7" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/@volar/language-core": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.10.1.tgz", + "integrity": "sha512-JnsM1mIPdfGPxmoOcK1c7HYAsL6YOv0TCJ4aW3AXPZN/Jb4R77epDyMZIVudSGjWMbvv/JfUa+rQ+dGKTmgwBA==", + "dependencies": { + "@volar/source-map": "1.10.1" + } + }, + "node_modules/@volar/language-server": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/language-server/-/language-server-1.10.1.tgz", + "integrity": "sha512-UXgRMAPKoy4EZBcBT1SFp8YIb5AJqe7Is1/TnqRUq0LBBV2M7HpEeHHI8E4fy05Eg4TlSVRcrlZtiTrY9fRjJg==", + "dependencies": { + "@volar/language-core": "1.10.1", + "@volar/language-service": "1.10.1", + "@volar/typescript": "1.10.1", + "@vscode/l10n": "^0.0.11", + "request-light": "^0.7.0", + "typesafe-path": "^0.2.2", + "vscode-languageserver": "^8.1.0", + "vscode-languageserver-protocol": "^3.17.3", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-uri": "^3.0.7" + } + }, + "node_modules/@volar/language-service": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/language-service/-/language-service-1.10.1.tgz", + "integrity": "sha512-9AfMd8DeBuiw5twyXCL4Dw/9dg7djs2GAMQ5YY6LlN4v6u5IwU+foM/un5F7yzE94v2cuI+NN9LtHeR87AXpRA==", + "dependencies": { + "@volar/language-core": "1.10.1", + "@volar/source-map": "1.10.1", + "vscode-languageserver-protocol": "^3.17.3", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-uri": "^3.0.7" + } + }, + "node_modules/@volar/source-map": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.10.1.tgz", + "integrity": "sha512-3/S6KQbqa7pGC8CxPrg69qHLpOvkiPHGJtWPkI/1AXCsktkJ6gIk/5z4hyuMp8Anvs6eS/Kvp/GZa3ut3votKA==", + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.10.1.tgz", + "integrity": "sha512-+iiO9yUSRHIYjlteT+QcdRq8b44qH19/eiUZtjNtuh6D9ailYM7DVR0zO2sEgJlvCaunw/CF9Ov2KooQBpR4VQ==", + "dependencies": { + "@volar/language-core": "1.10.1" + } + }, + "node_modules/@vscode/emmet-helper": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/@vscode/emmet-helper/-/emmet-helper-2.9.2.tgz", + "integrity": "sha512-MaGuyW+fa13q3aYsluKqclmh62Hgp0BpKIqS66fCxfOaBcVQ1OnMQxRRgQUYnCkxFISAQlkJ0qWWPyXjro1Qrg==", + "dependencies": { + "emmet": "^2.4.3", + "jsonc-parser": "^2.3.0", + "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-types": "^3.15.1", + "vscode-uri": "^2.1.2" + } + }, + "node_modules/@vscode/emmet-helper/node_modules/jsonc-parser": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.3.1.tgz", + "integrity": "sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==" + }, + "node_modules/@vscode/emmet-helper/node_modules/vscode-uri": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.1.2.tgz", + "integrity": "sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==" + }, + "node_modules/@vscode/l10n": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/@vscode/l10n/-/l10n-0.0.11.tgz", + "integrity": "sha512-ukOMWnCg1tCvT7WnDfsUKQOFDQGsyR5tNgRpwmqi+5/vzU3ghdDXzvIM4IOPdSb3OeSsBNvmSL8nxIVOqi2WXA==" + }, "node_modules/@wagmi/chains": { "version": "1.8.0", "funding": [ @@ -6498,6 +6736,15 @@ "url": "https://github.com/sindresorhus/emittery?sponsor=1" } }, + "node_modules/emmet": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/emmet/-/emmet-2.4.6.tgz", + "integrity": "sha512-dJfbdY/hfeTyf/Ef7Y7ubLYzkBvPQ912wPaeVYpAxvFxkEBf/+hJu4H6vhAvFN6HlxqedlfVn2x1S44FfQ97pg==", + "dependencies": { + "@emmetio/abbreviation": "^2.3.3", + "@emmetio/css-abbreviation": "^2.1.8" + } + }, "node_modules/emoji-regex": { "version": "9.2.2", "license": "MIT" @@ -13287,6 +13534,11 @@ "version": "2.1.2", "license": "MIT" }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==" + }, "node_modules/multiformats": { "version": "9.9.0", "license": "(Apache-2.0 AND MIT)" @@ -14347,7 +14599,7 @@ }, "node_modules/prettier": { "version": "3.0.2", - "dev": true, + "devOptional": true, "license": "MIT", "bin": { "prettier": "bin/prettier.cjs" @@ -14372,7 +14624,7 @@ }, "node_modules/prettier-plugin-astro": { "version": "0.12.0", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "@astrojs/compiler": "^1.5.5", @@ -15372,6 +15624,11 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/request-light": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/request-light/-/request-light-0.7.0.tgz", + "integrity": "sha512-lMbBMrDoxgsyO+yB3sDcrDuX85yYt7sS8BfQd11jtbW/z5ZWgLZRcEGLsLoYw7I0WSUGQBs8CC8ScIxkTX1+6Q==" + }, "node_modules/require-directory": { "version": "2.1.1", "license": "MIT", @@ -15807,7 +16064,7 @@ }, "node_modules/s.color": { "version": "0.0.15", - "dev": true, + "devOptional": true, "license": "MIT" }, "node_modules/sade": { @@ -15893,7 +16150,7 @@ }, "node_modules/sass-formatter": { "version": "0.7.7", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "suf-log": "^2.5.3" @@ -16784,7 +17041,7 @@ }, "node_modules/suf-log": { "version": "2.5.3", - "dev": true, + "devOptional": true, "license": "MIT", "dependencies": { "s.color": "0.0.15" @@ -17333,9 +17590,15 @@ "is-typedarray": "^1.0.0" } }, + "node_modules/typesafe-path": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/typesafe-path/-/typesafe-path-0.2.2.tgz", + "integrity": "sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==" + }, "node_modules/typescript": { "version": "5.2.2", - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -17344,6 +17607,28 @@ "node": ">=14.17" } }, + "node_modules/typescript-auto-import-cache": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/typescript-auto-import-cache/-/typescript-auto-import-cache-0.3.0.tgz", + "integrity": "sha512-Rq6/q4O9iyqUdjvOoyas7x/Qf9nWUMeqpP3YeTaLA+uECgfy5wOhfOS+SW/+fZ/uI/ZcKaf+2/ZhFzXh8xfofQ==", + "dependencies": { + "semver": "^7.3.8" + } + }, + "node_modules/typescript-auto-import-cache/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/typescript-plugin-css-modules": { "version": "5.0.1", "dev": true, @@ -18007,6 +18292,197 @@ } } }, + "node_modules/volar-service-css": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-css/-/volar-service-css-0.0.11.tgz", + "integrity": "sha512-8wkycHM+wSbsRSEvW4GCj3rKJRj+KxnGfRhQC1GfQVx4eMHJHHeSrB4ANPm5mBYbmnJPIxxIgZHp7VoMqDZH4g==", + "dependencies": { + "vscode-css-languageservice": "^6.2.3", + "vscode-uri": "^3.0.7" + }, + "peerDependencies": { + "@volar/language-service": "~1.10.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-emmet": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-emmet/-/volar-service-emmet-0.0.11.tgz", + "integrity": "sha512-9q6F1FaL3q/kxvt8EhbAmW8FtIf8Zi9FMHbuPSOQMn7/JlfXBtkB7y97uXvtQWpoxCumkuhY7kb1iBwtu7U+Eg==", + "dependencies": { + "@vscode/emmet-helper": "^2.8.6", + "volar-service-html": "0.0.11" + }, + "peerDependencies": { + "@volar/language-service": "~1.10.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-html": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-html/-/volar-service-html-0.0.11.tgz", + "integrity": "sha512-Lm8ynBTDI8wMsPwZCoo5s195HBOGCONSZq4sUvrVXPjD1i5eKf+rYIVm7+h/cgbdqZApe8dWFbbqXgLGLodwIA==", + "dependencies": { + "vscode-html-languageservice": "^5.0.4", + "vscode-uri": "^3.0.7" + }, + "peerDependencies": { + "@volar/language-service": "~1.10.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-prettier": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-prettier/-/volar-service-prettier-0.0.11.tgz", + "integrity": "sha512-A4vEU5BUitNNAySb+t/fCjEoL01uYUkoe/Fe5UxR3JJbdgr2nTeXb5IlW90/1vzmnTKZznadJV4i1SoAf2CRbg==", + "peerDependencies": { + "@volar/language-service": "~1.10.0", + "prettier": "^2.2 || ^3.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + }, + "prettier": { + "optional": true + } + } + }, + "node_modules/volar-service-typescript": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-typescript/-/volar-service-typescript-0.0.11.tgz", + "integrity": "sha512-l0zY4RuqmLFIdqcKk8IfG2F1M0cn9Km1AdtTld1/kj8KyGhQfe2PsuVjz9wCG6SsR6kQt97YrpscZDvhb5aqQA==", + "dependencies": { + "semver": "^7.3.8", + "typescript-auto-import-cache": "^0.3.0", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-nls": "^5.2.0", + "vscode-uri": "^3.0.7" + }, + "peerDependencies": { + "@volar/language-service": "~1.10.0", + "@volar/typescript": "~1.10.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-typescript-twoslash-queries": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/volar-service-typescript-twoslash-queries/-/volar-service-typescript-twoslash-queries-0.0.11.tgz", + "integrity": "sha512-onNK1g3vZVlPiD9HHFrGVNkdFWndosDSkMUWOWN5PxcocvVuZRZ8TN2iB2Ct0VDIZaXN3PK+fQpPCpq+yy1fXA==", + "peerDependencies": { + "@volar/language-service": "~1.10.0" + }, + "peerDependenciesMeta": { + "@volar/language-service": { + "optional": true + } + } + }, + "node_modules/volar-service-typescript/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/vscode-css-languageservice": { + "version": "6.2.7", + "resolved": "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-6.2.7.tgz", + "integrity": "sha512-Jd8wpIg5kJ15CfrieoEPvu3gGFc36sbM3qXCtjVq5zrnLEX5NhHxikMDtf8AgQsYklXiDqiZLKoBnzkJtRbTHQ==", + "dependencies": { + "@vscode/l10n": "^0.0.16", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-languageserver-types": "^3.17.3", + "vscode-uri": "^3.0.7" + } + }, + "node_modules/vscode-css-languageservice/node_modules/@vscode/l10n": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@vscode/l10n/-/l10n-0.0.16.tgz", + "integrity": "sha512-JT5CvrIYYCrmB+dCana8sUqJEcGB1ZDXNLMQ2+42bW995WmNoenijWMUdZfwmuQUTQcEVVIa2OecZzTYWUW9Cg==" + }, + "node_modules/vscode-html-languageservice": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-5.0.7.tgz", + "integrity": "sha512-jX+7/kUXrdOaRT8vqYR/jLxrGDib+Far8I7n/A6apuEl88k+mhIHZPwc6ezuLeiCKUCaLG4b0dqFwjVa7QL3/w==", + "dependencies": { + "@vscode/l10n": "^0.0.16", + "vscode-languageserver-textdocument": "^1.0.8", + "vscode-languageserver-types": "^3.17.3", + "vscode-uri": "^3.0.7" + } + }, + "node_modules/vscode-html-languageservice/node_modules/@vscode/l10n": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@vscode/l10n/-/l10n-0.0.16.tgz", + "integrity": "sha512-JT5CvrIYYCrmB+dCana8sUqJEcGB1ZDXNLMQ2+42bW995WmNoenijWMUdZfwmuQUTQcEVVIa2OecZzTYWUW9Cg==" + }, + "node_modules/vscode-jsonrpc": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.1.0.tgz", + "integrity": "sha512-6TDy/abTQk+zDGYazgbIPc+4JoXdwC8NHU9Pbn4UJP1fehUyZmM4RHp5IthX7A6L5KS30PRui+j+tbbMMMafdw==", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-8.1.0.tgz", + "integrity": "sha512-eUt8f1z2N2IEUDBsKaNapkz7jl5QpskN2Y0G01T/ItMxBxw1fJwvtySGB9QMecatne8jFIWJGWI61dWjyTLQsw==", + "dependencies": { + "vscode-languageserver-protocol": "3.17.3" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.17.3", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.3.tgz", + "integrity": "sha512-924/h0AqsMtA5yK22GgMtCYiMdCOtWTSGgUOkgEDX+wk2b0x4sAfLiO4NxBxqbiVtz7K7/1/RgVrVI0NClZwqA==", + "dependencies": { + "vscode-jsonrpc": "8.1.0", + "vscode-languageserver-types": "3.17.3" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.8.tgz", + "integrity": "sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q==" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.17.3", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.3.tgz", + "integrity": "sha512-SYU4z1dL0PyIMd4Vj8YOqFvHu7Hz/enbWtpfnVbJHU4Nd1YNYx8u0ennumc6h48GQNeOLxmwySmnADouT/AuZA==" + }, + "node_modules/vscode-nls": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-nls/-/vscode-nls-5.2.0.tgz", + "integrity": "sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==" + }, "node_modules/vscode-oniguruma": { "version": "1.7.0", "license": "MIT" @@ -18015,6 +18491,11 @@ "version": "8.0.0", "license": "MIT" }, + "node_modules/vscode-uri": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.7.tgz", + "integrity": "sha512-eOpPHogvorZRobNqJGhapa0JdwaxpjVvyBp0QIUMRMSf8ZAlqOdEquKuRmw9Qwu0qXtJIWqFtMkmvJjUZmMjVA==" + }, "node_modules/w3c-hr-time": { "version": "1.0.2", "dev": true, @@ -18317,7 +18798,6 @@ }, "node_modules/wrap-ansi": { "version": "7.0.0", - "dev": true, "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -18380,7 +18860,6 @@ }, "node_modules/wrap-ansi/node_modules/ansi-styles": { "version": "4.3.0", - "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -18394,7 +18873,6 @@ }, "node_modules/wrap-ansi/node_modules/color-convert": { "version": "2.0.1", - "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -18405,7 +18883,6 @@ }, "node_modules/wrap-ansi/node_modules/color-name": { "version": "1.1.4", - "dev": true, "license": "MIT" }, "node_modules/wrappy": { diff --git a/package.json b/package.json index 2c5a80f2..9b9dec88 100644 --- a/package.json +++ b/package.json @@ -12,10 +12,10 @@ "build": "npm run prebuild && astro build --config .config/astro.config.mjs", "preview": "astro preview", "astro": "astro", - "test": "astro check && tsc --noEmit && npm run lint && npm run type-check && npm run jest", + "test": "astro check && npm run lint && npm run type-check && npm run jest", "jest": "jest -c .config/jest/jest.config.js --coverage --silent", "lint": "run-p --continue-on-error lint:js lint:css lint:md", - "lint:js": "eslint --ignore-path .gitignore --ext .ts,.tsx .", + "lint:js": "eslint --ignore-path .gitignore --ext .ts,.tsx,.astro,.mjs,.js,.cjs .", "lint:css": "stylelint --config '.config/.stylelintrc.json' 'src/**/*.css'", "lint:md": "markdownlint --config '.config/.markdownlintrc.json' './**/*.{md,markdown}' --ignore './{node_modules,public,.cache,dist,.git,coverage}/**/*'", "format": "prettier --ignore-path .gitignore --write '**/*.{js,jsx,ts,tsx,md,json,css}'", @@ -23,10 +23,11 @@ "deploy:s3": "./scripts/deploy-s3.sh", "new": "ts-node --esm scripts/new.ts", "create:icons": "ts-node --esm scripts/create-icons/index.ts", - "move:downloads": "ts-node --esm scripts/move-downloads.ts", - "create:redirects": "ts-node --esm scripts/redirect-from.ts" + "create:redirects": "ts-node --esm scripts/redirect-from.ts", + "move:downloads": "ts-node --esm scripts/move-downloads.ts" }, "dependencies": { + "@astrojs/check": "^0.2.0", "@astrojs/react": "^3.0.0", "@astrojs/rss": "^3.0.0", "@astrojs/sitemap": "^3.0.0", diff --git a/scripts/create-icons/Props.ts b/scripts/create-icons/Props.ts index b81e6a53..c71dafab 100644 --- a/scripts/create-icons/Props.ts +++ b/scripts/create-icons/Props.ts @@ -312,7 +312,7 @@ export interface Props extends HTMLAttributes { 'stroke-dashoffset'?: string | number 'stroke-linecap'?: 'butt' | 'round' | 'square' | 'inherit' 'stroke-linejoin'?: 'miter' | 'round' | 'bevel' | 'inherit' - 'stroke-miterlimit'?: number | string + // 'stroke-miterlimit'?: number | string 'stroke-opacity'?: number | string 'stroke-width'?: number | string viewBox?: string diff --git a/scripts/create-icons/svg.ts b/scripts/create-icons/svg.ts index 625b3c1c..993939f7 100644 --- a/scripts/create-icons/svg.ts +++ b/scripts/create-icons/svg.ts @@ -1,7 +1,8 @@ import { optimize as optimizeSVGNative } from 'svgo' export const toAstroComponent = (innerSVG: string, title: string) => `--- -export { Props } from './Props.ts'; +import type { Props } from './Props.ts'; +export type { Props }; let { size = '24px', @@ -9,14 +10,15 @@ let { width = size, height = size, ...props -} = { +}: Props = { 'fill': 'none', 'title': '${title}', 'viewBox': '0 0 24 24', ...Astro.props } -const toAttributeSize = (size: number) => String(size).replace(/(?<=[0-9])x$/, 'em') +const toAttributeSize = (size: number | string) => + String(size).replace(/(?<=[0-9])x$/, 'em') size = toAttributeSize(size) width = toAttributeSize(width) diff --git a/src/components/layouts/Post/Action.astro b/src/components/layouts/Post/Action.astro index 122fd14f..6f7da4d1 100644 --- a/src/components/layouts/Post/Action.astro +++ b/src/components/layouts/Post/Action.astro @@ -2,7 +2,7 @@ type Props = { title: string text: string - icon: string + icon: any url?: string }