From a3da3dac910e24075466932ac39bb4e529dfb483 Mon Sep 17 00:00:00 2001 From: Yusuke Wada Date: Sun, 5 Nov 2023 16:45:07 +0900 Subject: [PATCH] chore(hello): tweak (#235) * chore(hello): tweak * changeset --- .changeset/gentle-hairs-arrive.md | 5 ++ README.md | 2 +- packages/hello/jest.config.js | 1 - packages/hello/package.json | 20 +++++--- packages/hello/src/index.ts | 6 +-- packages/hello/vitest.config.ts | 8 ++++ yarn.lock | 77 ++++++++++++++++++++----------- 7 files changed, 82 insertions(+), 37 deletions(-) create mode 100644 .changeset/gentle-hairs-arrive.md delete mode 100644 packages/hello/jest.config.js create mode 100644 packages/hello/vitest.config.ts diff --git a/.changeset/gentle-hairs-arrive.md b/.changeset/gentle-hairs-arrive.md new file mode 100644 index 00000000..ae9ca150 --- /dev/null +++ b/.changeset/gentle-hairs-arrive.md @@ -0,0 +1,5 @@ +--- +'@hono/hello': patch +--- + +chore: tweak diff --git a/README.md b/README.md index ac6edcfe..12e780ae 100644 --- a/README.md +++ b/README.md @@ -49,5 +49,5 @@ The Hono maintainers will merge it to release the package at the appropriate tim ## Author & License -The Author of this repository is Yusuke Wada <>. However, the code under the `packges/*` is in each Middleware author. +The Author of this repository is Yusuke Wada <>. However, the code under the `packages/*` is in each Middleware author. Basically, distributed under the MIT license. diff --git a/packages/hello/jest.config.js b/packages/hello/jest.config.js deleted file mode 100644 index f697d831..00000000 --- a/packages/hello/jest.config.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('../../jest.config.js') diff --git a/packages/hello/package.json b/packages/hello/package.json index f90a422b..76f43168 100644 --- a/packages/hello/package.json +++ b/packages/hello/package.json @@ -3,15 +3,23 @@ "version": "0.1.0", "description": "An example of third-party middleware for Hono", "main": "dist/index.js", + "module": "dist/index.mjs", "types": "dist/index.d.ts", "files": [ "dist" ], "scripts": { - "test": "jest", - "build": "rimraf dist && tsc", - "prerelease": "yarn build && yarn test", - "release": "yarn publish" + "test": "vitest --run", + "build": "tsup ./src/index.ts --format esm,cjs --dts", + "publint": "publint", + "release": "yarn build && yarn test && yarn publint && yarn publish" + }, + "exports": { + ".": { + "types": "./dist/index.d.mts", + "import": "./dist/index.mjs", + "require": "./dist/index.js" + } }, "license": "MIT", "private": false, @@ -28,6 +36,6 @@ "hono": "*" }, "devDependencies": { - "hono": "^3.9.1" + "hono": "^3.9.2" } -} +} \ No newline at end of file diff --git a/packages/hello/src/index.ts b/packages/hello/src/index.ts index 7eb92207..ca5863bb 100644 --- a/packages/hello/src/index.ts +++ b/packages/hello/src/index.ts @@ -1,8 +1,8 @@ -import type { MiddlewareHandler } from 'hono' +import { createMiddleware } from 'hono/factory' export const hello = (message: string = 'Hello!') => { - return (async (c, next) => { + return createMiddleware(async (c, next) => { await next() c.res.headers.append('X-Message', message) - }) satisfies MiddlewareHandler + }) } diff --git a/packages/hello/vitest.config.ts b/packages/hello/vitest.config.ts new file mode 100644 index 00000000..17b54e48 --- /dev/null +++ b/packages/hello/vitest.config.ts @@ -0,0 +1,8 @@ +/// +import { defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + globals: true, + }, +}) diff --git a/yarn.lock b/yarn.lock index 5e184c9b..773bfda6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2441,14 +2441,14 @@ "@vitest/utils" "0.34.2" chai "^4.3.7" -"@vitest/expect@0.34.5": - version "0.34.5" - resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.34.5.tgz#1f58829e746311162220d6580f72d6329efb9081" - integrity sha512-/3RBIV9XEH+nRpRMqDJBufKIOQaYUH2X6bt0rKSCW0MfKhXFLYsR5ivHifeajRSTsln0FwJbitxLKHSQz/Xwkw== +"@vitest/expect@0.34.6": + version "0.34.6" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-0.34.6.tgz#608a7b7a9aa3de0919db99b4cc087340a03ea77e" + integrity sha512-QUzKpUQRc1qC7qdGo7rMK3AkETI7w18gTCUrsNnyjjJKYiuUB9+TQK3QnR1unhCnWRC0AbKv2omLGQDF/mIjOw== dependencies: - "@vitest/spy" "0.34.5" - "@vitest/utils" "0.34.5" - chai "^4.3.7" + "@vitest/spy" "0.34.6" + "@vitest/utils" "0.34.6" + chai "^4.3.10" "@vitest/runner@0.34.2": version "0.34.2" @@ -2459,12 +2459,12 @@ p-limit "^4.0.0" pathe "^1.1.1" -"@vitest/runner@0.34.5": - version "0.34.5" - resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.34.5.tgz#2bc69a21cd1a09c9403a2a9b0cbd7c42df79f1ae" - integrity sha512-RDEE3ViVvl7jFSCbnBRyYuu23XxmvRTSZWW6W4M7eC5dOsK75d5LIf6uhE5Fqf809DQ1+9ICZZNxhIolWHU4og== +"@vitest/runner@0.34.6": + version "0.34.6" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-0.34.6.tgz#6f43ca241fc96b2edf230db58bcde5b974b8dcaf" + integrity sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ== dependencies: - "@vitest/utils" "0.34.5" + "@vitest/utils" "0.34.6" p-limit "^4.0.0" pathe "^1.1.1" @@ -2477,10 +2477,10 @@ pathe "^1.1.1" pretty-format "^29.5.0" -"@vitest/snapshot@0.34.5": - version "0.34.5" - resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.34.5.tgz#1d81fce3cdc9cf6ad57e86eb5e5eecefc71d1e02" - integrity sha512-+ikwSbhu6z2yOdtKmk/aeoDZ9QPm2g/ZO5rXT58RR9Vmu/kB2MamyDSx77dctqdZfP3Diqv4mbc/yw2kPT8rmA== +"@vitest/snapshot@0.34.6": + version "0.34.6" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-0.34.6.tgz#b4528cf683b60a3e8071cacbcb97d18b9d5e1d8b" + integrity sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w== dependencies: magic-string "^0.30.1" pathe "^1.1.1" @@ -2493,10 +2493,10 @@ dependencies: tinyspy "^2.1.1" -"@vitest/spy@0.34.5": - version "0.34.5" - resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.34.5.tgz#2d32993b18eeb50f682e5dde089e390cbb387cb8" - integrity sha512-epsicsfhvBjRjCMOC/3k00mP/TBGQy8/P0DxOFiWyLt55gnZ99dqCfCiAsKO17BWVjn4eZRIjKvcqNmSz8gvmg== +"@vitest/spy@0.34.6": + version "0.34.6" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-0.34.6.tgz#b5e8642a84aad12896c915bce9b3cc8cdaf821df" + integrity sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ== dependencies: tinyspy "^2.1.1" @@ -2509,10 +2509,10 @@ loupe "^2.3.6" pretty-format "^29.5.0" -"@vitest/utils@0.34.5": - version "0.34.5" - resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.34.5.tgz#2178fdbc36524d25b8d846b3d408962e1771e83a" - integrity sha512-ur6CmmYQoeHMwmGb0v+qwkwN3yopZuZyf4xt1DBBSGBed8Hf9Gmbm/5dEWqgpLPdRx6Av6jcWXrjcKfkTzg/pw== +"@vitest/utils@0.34.6": + version "0.34.6" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-0.34.6.tgz#38a0a7eedddb8e7291af09a2409cb8a189516968" + integrity sha512-IG5aDD8S6zlvloDsnzHw0Ut5xczlF+kv2BOTo+iXfPr54Yhi5qbVOgGB1hZaVq4iJ4C/MZ2J0y15IlsV/ZcI0A== dependencies: diff-sequences "^29.4.3" loupe "^2.3.6" @@ -3406,6 +3406,19 @@ ccount@^2.0.0: resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== +chai@^4.3.10: + version "4.3.10" + resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.10.tgz#d784cec635e3b7e2ffb66446a63b4e33bd390384" + integrity sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g== + dependencies: + assertion-error "^1.1.0" + check-error "^1.0.3" + deep-eql "^4.1.3" + get-func-name "^2.0.2" + loupe "^2.3.6" + pathval "^1.1.1" + type-detect "^4.0.8" + chai@^4.3.7: version "4.3.7" resolved "https://registry.yarnpkg.com/chai/-/chai-4.3.7.tgz#ec63f6df01829088e8bf55fca839bcd464a8ec51" @@ -3487,6 +3500,13 @@ check-error@^1.0.2: resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.2.tgz#574d312edd88bb5dd8912e9286dd6c0aed4aac82" integrity sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA== +check-error@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/check-error/-/check-error-1.0.3.tgz#a6502e4312a7ee969f646e83bb3ddd56281bd694" + integrity sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg== + dependencies: + get-func-name "^2.0.2" + chokidar@^3.0.2, chokidar@^3.5.1: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -4121,7 +4141,7 @@ dedent@^0.7.0: resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" integrity sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA== -deep-eql@^4.1.2: +deep-eql@^4.1.2, deep-eql@^4.1.3: version "4.1.3" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-4.1.3.tgz#7c7775513092f7df98d8df9996dd085eb668cc6d" integrity sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw== @@ -5629,6 +5649,11 @@ get-func-name@^2.0.0: resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.0.tgz#ead774abee72e20409433a066366023dd6887a41" integrity sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig== +get-func-name@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/get-func-name/-/get-func-name-2.0.2.tgz#0d7cf20cd13fda808669ffa88f4ffc7a3943fc41" + integrity sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ== + get-github-default-branch-name@^0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/get-github-default-branch-name/-/get-github-default-branch-name-0.0.4.tgz#9c0c6606ba606edb136d2fd26e4d515b69f2de90" @@ -11974,7 +11999,7 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" -type-detect@4.0.8, type-detect@^4.0.0, type-detect@^4.0.5: +type-detect@4.0.8, type-detect@^4.0.0, type-detect@^4.0.5, type-detect@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==