From 252f6108cf6adc592c0b76634ef54af025f2ad18 Mon Sep 17 00:00:00 2001 From: wobsoriano Date: Sun, 20 Aug 2023 21:41:57 -0700 Subject: [PATCH] refactor: use built-in getRequestURL from h3 instead of ufo --- package.json | 5 ++--- pnpm-lock.yaml | 47 ++++++++++++++++++++--------------------------- src/index.ts | 5 ++--- 3 files changed, 24 insertions(+), 33 deletions(-) diff --git a/package.json b/package.json index 046af47..d0f4fef 100644 --- a/package.json +++ b/package.json @@ -41,8 +41,7 @@ "dependencies": { "h3": "^1.8.0", "ofetch": "^1.1.1", - "ohash": "^1.1.2", - "ufo": "^1.1.2" + "ohash": "^1.1.2" }, "devDependencies": { "@nuxt/eslint-config": "^0.1.1", @@ -78,4 +77,4 @@ "nuxt": "3.6.5" } } -} \ No newline at end of file +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 675ab9b..9043138 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,9 +20,6 @@ importers: ohash: specifier: ^1.1.2 version: 1.1.2 - ufo: - specifier: ^1.1.2 - version: 1.1.2 devDependencies: '@nuxt/eslint-config': specifier: ^0.1.1 @@ -1298,7 +1295,7 @@ packages: nuxt-config-schema: 0.4.6(rollup@3.26.2) nuxt-icon: 0.3.3(rollup@3.26.2)(vue@3.3.4) pinceau: 0.18.8(postcss@8.4.25) - ufo: 1.1.2 + ufo: 1.2.0 transitivePeerDependencies: - postcss - rollup @@ -1338,7 +1335,7 @@ packages: shiki-es: 0.2.0 slugify: 1.6.6 socket.io-client: 4.7.1 - ufo: 1.1.2 + ufo: 1.2.0 unified: 10.1.2 unist-builder: 3.0.1 unist-util-position: 4.0.4 @@ -1418,7 +1415,7 @@ packages: fast-glob: 3.3.1 get-port-please: 3.0.1 global-dirs: 3.0.1 - h3: 1.7.1 + h3: 1.8.0 hookable: 5.5.3 image-meta: 0.1.1 is-installed-globally: 0.4.0 @@ -1559,7 +1556,7 @@ packages: postcss-import-resolver: 2.0.0 scule: 1.0.0 std-env: 3.3.2 - ufo: 1.1.2 + ufo: 1.2.0 unimport: 3.0.4(rollup@3.26.2) untyped: 1.3.2 transitivePeerDependencies: @@ -1577,7 +1574,7 @@ packages: pkg-types: 1.0.3 postcss-import-resolver: 2.0.0 std-env: 3.3.3 - ufo: 1.1.2 + ufo: 1.2.0 unimport: 3.0.14(rollup@3.26.2) untyped: 1.3.2 transitivePeerDependencies: @@ -1595,7 +1592,7 @@ packages: pkg-types: 1.0.3 postcss-import-resolver: 2.0.0 std-env: 3.3.3 - ufo: 1.1.2 + ufo: 1.2.0 unimport: 3.0.14(rollup@3.26.2) untyped: 1.3.2 transitivePeerDependencies: @@ -1670,7 +1667,7 @@ packages: rollup-plugin-visualizer: 5.9.2(rollup@3.26.2) std-env: 3.3.3 strip-literal: 1.0.1 - ufo: 1.1.2 + ufo: 1.2.0 unplugin: 1.3.2 vite: 4.3.9(@types/node@20.4.2) vite-node: 0.33.0(@types/node@20.4.2) @@ -1704,7 +1701,7 @@ packages: nuxt-component-meta: 0.5.1(rollup@3.26.2) nuxt-config-schema: 0.4.6(rollup@3.26.2) socket.io-client: 4.7.1 - ufo: 1.1.2 + ufo: 1.2.0 transitivePeerDependencies: - bufferutil - rollup @@ -3967,7 +3964,6 @@ packages: /destr@2.0.1: resolution: {integrity: sha512-M1Ob1zPSIvlARiJUkKqvAZ3VAqQY6Jcuth/pBKQ2b1dX/Qx0OnJ8Vux6J2H5PTMQeRzWrrbTu70VxBfv/OPDJA==} - dev: false /destroy@1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} @@ -4483,7 +4479,7 @@ packages: enhanced-resolve: 5.15.0 mlly: 1.4.0 pathe: 1.1.1 - ufo: 1.1.2 + ufo: 1.2.0 dev: true /fast-deep-equal@3.1.3: @@ -4981,7 +4977,7 @@ packages: destr: 2.0.0 iron-webcrypto: 0.7.0 radix3: 1.0.1 - ufo: 1.1.2 + ufo: 1.2.0 uncrypto: 0.1.3 dev: true @@ -4996,7 +4992,6 @@ packages: ufo: 1.2.0 uncrypto: 0.1.3 unenv: 1.7.1 - dev: false /has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} @@ -5364,7 +5359,6 @@ packages: /iron-webcrypto@0.8.0: resolution: {integrity: sha512-gScdcWHjTGclCU15CIv2r069NoQrys1UeUFFfaO1hL++ytLHkVw7N5nXJmFf3J2LEDMz1PkrvC0m62JEeu1axQ==} - dev: false /is-absolute-url@4.0.1: resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} @@ -5738,7 +5732,7 @@ packages: http-shutdown: 1.2.2 ip-regex: 5.0.0 node-forge: 1.3.1 - ufo: 1.1.2 + ufo: 1.2.0 dev: true /load-tsconfig@0.2.3: @@ -6595,7 +6589,7 @@ packages: acorn: 8.8.2 pathe: 1.1.0 pkg-types: 1.0.2 - ufo: 1.1.2 + ufo: 1.2.0 dev: true /mlly@1.4.0: @@ -6604,7 +6598,7 @@ packages: acorn: 8.10.0 pathe: 1.1.1 pkg-types: 1.0.3 - ufo: 1.1.2 + ufo: 1.2.0 dev: true /mri@1.2.0: @@ -6730,7 +6724,7 @@ packages: serve-static: 1.15.0 source-map-support: 0.5.21 std-env: 3.3.3 - ufo: 1.1.2 + ufo: 1.2.0 uncrypto: 0.1.3 unenv: 1.5.2 unimport: 3.0.14(rollup@3.26.2) @@ -7142,7 +7136,7 @@ packages: dependencies: destr: 2.0.0 node-fetch-native: 1.2.0 - ufo: 1.1.2 + ufo: 1.2.0 /ohash@1.1.2: resolution: {integrity: sha512-9CIOSq5945rI045GFtcO3uudyOkYVY1nyfFxVQp+9BRgslr8jPNiSSrsFGg/BNTUFOLqx0P5tng6G32brIPw0w==} @@ -7951,7 +7945,7 @@ packages: resolution: {integrity: sha512-lNeOl38Ws0eNxpO3+wD1I9rkHGQyj1NU1jlzv4go2CtEnEQEUfqnIvZG7W+bC/aXdJ27n5x/yUjb6RoT9tko+Q==} dependencies: defu: 6.1.2 - destr: 2.0.0 + destr: 2.0.1 flat: 5.0.2 dev: true @@ -9098,10 +9092,10 @@ packages: /ufo@1.1.2: resolution: {integrity: sha512-TrY6DsjTQQgyS3E3dBaOXf0TpPD8u9FVrVYmKVegJuFw51n/YB9XPt+U6ydzFG5ZIN7+DIjPbNmXoBj9esYhgQ==} + dev: true /ufo@1.2.0: resolution: {integrity: sha512-RsPyTbqORDNDxqAdQPQBpgqhWle1VcTSou/FraClYlHf6TZnQcGslpLcAphNR+sQW4q5lLWLbOsRlh9j24baQg==} - dev: false /ultrahtml@1.2.0: resolution: {integrity: sha512-vxZM2yNvajRmCj/SknRYGNXk2tqiy6kRNvZjJLaleG3zJbSh/aNkOqD1/CVzypw8tyHyhpzYuwQgMMhUB4ZVNQ==} @@ -9202,7 +9196,6 @@ packages: mime: 3.0.0 node-fetch-native: 1.2.0 pathe: 1.1.1 - dev: false /unhead@1.1.30: resolution: {integrity: sha512-25N/P1GnnC8EYCDerzE0hl2nOdRqS1NOFh1STEyKWRo/Bi5dXn8Z2NTaqzkbr5ExJTZEAiDfZ+eALvMTmvlXlA==} @@ -9467,7 +9460,7 @@ packages: mri: 1.2.0 node-fetch-native: 1.2.0 ofetch: 1.1.1 - ufo: 1.1.2 + ufo: 1.2.0 transitivePeerDependencies: - supports-color dev: true @@ -9694,7 +9687,7 @@ packages: '@vue/compiler-dom': 3.3.4 esno: 0.16.3 kolorist: 1.8.0 - magic-string: 0.30.1 + magic-string: 0.30.2 shell-quote: 1.8.1 vite: 4.3.9(@types/node@20.4.2) transitivePeerDependencies: @@ -9777,7 +9770,7 @@ packages: /vue-bundle-renderer@1.0.3: resolution: {integrity: sha512-EfjX+5TTUl70bki9hPuVp+54JiZOvFIfoWBcfXsSwLzKEiDYyHNi5iX8srnqLIv3YRnvxgbntdcG1WPq0MvffQ==} dependencies: - ufo: 1.1.2 + ufo: 1.2.0 dev: true /vue-component-meta@1.2.0(typescript@5.1.6): diff --git a/src/index.ts b/src/index.ts index ef0f8aa..4d5cafc 100644 --- a/src/index.ts +++ b/src/index.ts @@ -9,9 +9,8 @@ import type { import { TRPCError } from '@trpc/server' -import { createURL } from 'ufo' import type { H3Event } from 'h3' -import { createError, defineEventHandler, isMethod, readBody } from 'h3' +import { createError, defineEventHandler, getRequestURL, isMethod, readBody } from 'h3' import type { TRPCResponse } from '@trpc/server/rpc' type MaybePromise = T | Promise @@ -74,7 +73,7 @@ export function createNuxtApiHandler ({ res } = event.node - const $url = createURL(req.url!) + const $url = getRequestURL(event) const path = getPath(event)