From 21abf7ee192826e30357c5d73b6be5436377445b Mon Sep 17 00:00:00 2001 From: "Michael J. Roberts" Date: Fri, 14 Apr 2023 15:56:24 +0100 Subject: [PATCH] feat: Added Handler type to tests shared config. feat: Added Handler type to tests shared config. Includes installing h3 => "^1.6.4" dependency. --- package.json | 1 + pnpm-lock.yaml | 35 ++++++++++++++++++++++++++++++++++- tests/shared/handler.ts | 40 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 75 insertions(+), 1 deletion(-) create mode 100644 tests/shared/handler.ts diff --git a/package.json b/package.json index f61e54a..d97f6a7 100644 --- a/package.json +++ b/package.json @@ -40,6 +40,7 @@ "eslint-plugin-prettier": "^4.2.1", "husky": "^8.0.3", "lint-staged": "^13.2.1", + "h3": "^1.6.4", "path": "^0.12.7", "prettier": "2.8.4", "rollup": "^3.20.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8e81195..71378f7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,7 @@ specifiers: eslint: ^8.38.0 eslint-config-prettier: ^8.8.0 eslint-plugin-prettier: ^4.2.1 + h3: ^1.6.4 husky: ^8.0.3 lint-staged: ^13.2.1 ofetch: ^1.0.1 @@ -30,6 +31,7 @@ devDependencies: eslint: 8.38.0 eslint-config-prettier: 8.8.0_eslint@8.38.0 eslint-plugin-prettier: 4.2.1_o7tbn6wupyy2zly57ndz2um6by + h3: 1.6.4 husky: 8.0.3 lint-staged: 13.2.1 path: 0.12.7 @@ -1080,6 +1082,10 @@ packages: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: true + /cookie-es/0.5.0: + resolution: {integrity: sha512-RyZrFi6PNpBFbIaQjXDlFIhFVqV42QeKSZX1yQIl6ihImq6vcHNGMtqQ/QzY3RMPuYSkvsRwtnt5M9NeYxKt0g==} + dev: true + /cross-spawn/5.1.0: resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} dependencies: @@ -1176,9 +1182,12 @@ packages: object-keys: 1.1.1 dev: true + /defu/6.1.2: + resolution: {integrity: sha512-+uO4+qr7msjNNWKYPHqN/3+Dx3NFkmIzayk2L1MyZQlvgZb/J1A0fo410dpKrN2SnqFjt8n4JL8fDJE0wIgjFQ==} + dev: true + /destr/1.2.2: resolution: {integrity: sha512-lrbCJwD9saUQrqUfXvl6qoM+QN3W7tLV5pAOs+OqOmopCCz/JkE05MHedJR1xfk4IAnZuJXPVuN5+7jNA2ZCiA==} - dev: false /detect-indent/6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} @@ -1731,6 +1740,18 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true + /h3/1.6.4: + resolution: {integrity: sha512-uoDNeaoeDRwWBtwwi4siZ6l5sBmDJpnpcBssuAbvsaPBonl8vP7Ym4tFPe+tAvGM0GbUoC24wYcloCG+J9hqmA==} + dependencies: + cookie-es: 0.5.0 + defu: 6.1.2 + destr: 1.2.2 + iron-webcrypto: 0.6.0 + radix3: 1.0.1 + ufo: 1.1.1 + uncrypto: 0.1.2 + dev: true + /hard-rejection/2.1.0: resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} engines: {node: '>=6'} @@ -1857,6 +1878,10 @@ packages: side-channel: 1.0.4 dev: true + /iron-webcrypto/0.6.0: + resolution: {integrity: sha512-WYgEQttulX/+JTv1BTJFYY3OsAb+ZnCuA53IjppZMyiRsVdGeEuZ/k4fJrg77Rzn0pp9/PgWtXUF+5HndDA5SQ==} + dev: true + /is-array-buffer/3.0.2: resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} dependencies: @@ -2675,6 +2700,10 @@ packages: engines: {node: '>=8'} dev: true + /radix3/1.0.1: + resolution: {integrity: sha512-y+AcwZ3HcUIGc9zGsNVf5+BY/LxL+z+4h4J3/pp8jxSmy1STaCocPS3qrj4tA5ehUSzqtqK+0Aygvz/r/8vy4g==} + dev: true + /react-is/17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} dev: true @@ -3226,6 +3255,10 @@ packages: which-boxed-primitive: 1.0.2 dev: true + /uncrypto/0.1.2: + resolution: {integrity: sha512-kuZwRKV615lEw/Xx3Iz56FKk3nOeOVGaVmw0eg+x4Mne28lCotNFbBhDW7dEBCBKyKbRQiCadEZeNAFPVC5cgw==} + dev: true + /universalify/0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} diff --git a/tests/shared/handler.ts b/tests/shared/handler.ts new file mode 100644 index 0000000..f695072 --- /dev/null +++ b/tests/shared/handler.ts @@ -0,0 +1,40 @@ +/*****************************************************************************************************************/ + +// @author Michael Roberts +// @package @observerly/hyper +// @license Copyright © 2021-2023 observerly + +/*****************************************************************************************************************/ + +import { type EventHandler } from 'h3' + +/*****************************************************************************************************************/ + +export interface Handler extends Record { + /** + * + * + * @description The HTTP method to match against. + * + * + */ + method: string + /** + * + * + * @description The URL path to match against. + * + * + */ + url: string + /** + * + * + * @description The event handler to use for the request. + * + * + */ + handler: EventHandler +} + +/*****************************************************************************************************************/