feat: update to 0.0.12

This commit is contained in:
xion 2025-04-18 01:16:06 +08:00
parent 17e515ad32
commit afad59e0ab
7 changed files with 73 additions and 27 deletions

13
mod.ts Normal file
View File

@ -0,0 +1,13 @@
import { Route, QueryRouter, QueryRouterServer } from './src/route.ts';
export { App } from './src/app.ts';
export { Route, QueryRouter, QueryRouterServer };
export { Rule, Schema, createSchema } from './src/validator/index.ts';
export type { RouteContext, RouteOpts } from './src/route.ts';
export type { Run } from './src/route.ts';
export { CustomError } from './src/result/error.ts';

View File

@ -1,9 +1,11 @@
{ {
"$schema": "https://json.schemastore.org/package", "$schema": "https://json.schemastore.org/package",
"name": "@kevisual/router", "name": "@kevisual/router",
"version": "0.0.11", "version": "0.0.12",
"description": "", "description": "",
"type": "module", "type": "module",
"main": "./dist/router.js",
"types": "./dist/router.d.ts",
"scripts": { "scripts": {
"build": "npm run clean && rollup -c", "build": "npm run clean && rollup -c",
"build:app": "npm run build && rsync dist/*browser* ../deploy/dist", "build:app": "npm run build && rsync dist/*browser* ../deploy/dist",
@ -12,12 +14,14 @@
}, },
"files": [ "files": [
"dist", "dist",
"src" "src",
"mod.ts"
], ],
"keywords": [], "keywords": [],
"author": "abearxiong", "author": "abearxiong",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {
"@rollup/plugin-alias": "^5.1.1",
"@rollup/plugin-commonjs": "^28.0.3", "@rollup/plugin-commonjs": "^28.0.3",
"@rollup/plugin-node-resolve": "^16.0.1", "@rollup/plugin-node-resolve": "^16.0.1",
"@rollup/plugin-typescript": "^12.1.2", "@rollup/plugin-typescript": "^12.1.2",
@ -34,6 +38,7 @@
"ts-node": "^10.9.2", "ts-node": "^10.9.2",
"tslib": "^2.8.1", "tslib": "^2.8.1",
"typescript": "^5.8.3", "typescript": "^5.8.3",
"ws": "npm:@kevisual/ws",
"xml2js": "^0.6.2", "xml2js": "^0.6.2",
"zod": "^3.24.3" "zod": "^3.24.3"
}, },
@ -43,8 +48,7 @@
}, },
"dependencies": { "dependencies": {
"path-to-regexp": "^8.2.0", "path-to-regexp": "^8.2.0",
"selfsigned": "^2.4.1", "selfsigned": "^2.4.1"
"ws": "^8.18.1"
}, },
"publishConfig": { "publishConfig": {
"access": "public" "access": "public"
@ -52,27 +56,33 @@
"exports": { "exports": {
".": { ".": {
"import": "./dist/router.js", "import": "./dist/router.js",
"require": "./dist/router.js" "require": "./dist/router.js",
"types": "./dist/router.d.ts"
}, },
"./browser": { "./browser": {
"import": "./dist/router-browser.js", "import": "./dist/router-browser.js",
"require": "./dist/router-browser.js" "require": "./dist/router-browser.js",
"types": "./dist/router-browser.d.ts"
}, },
"./sign": { "./sign": {
"import": "./dist/router-sign.js", "import": "./dist/router-sign.js",
"require": "./dist/router-sign.js" "require": "./dist/router-sign.js",
"types": "./dist/router-sign.d.ts"
}, },
"./simple": { "./simple": {
"import": "./dist/router-simple.js", "import": "./dist/router-simple.js",
"require": "./dist/router-simple.js" "require": "./dist/router-simple.js",
"types": "./dist/router-simple.d.ts"
}, },
"./simple-lib": { "./simple-lib": {
"import": "./dist/router-simple-lib.js", "import": "./dist/router-simple-lib.js",
"require": "./dist/router-simple-lib.js" "require": "./dist/router-simple-lib.js",
"types": "./dist/router-simple-lib.d.ts"
}, },
"./mod.ts": { "./mod.ts": {
"import": "./src/mod.ts", "import": "./mod.ts",
"require": "./src/mod.ts" "require": "./mod.ts",
"types": "./mod.d.ts"
} }
} }
} }

View File

@ -4,6 +4,34 @@ import typescript from '@rollup/plugin-typescript';
import resolve from '@rollup/plugin-node-resolve'; import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs'; import commonjs from '@rollup/plugin-commonjs';
import { dts } from 'rollup-plugin-dts'; import { dts } from 'rollup-plugin-dts';
import alias from '@rollup/plugin-alias';
const createAlias = () => {
return alias({
entries: [
{ find: 'http', replacement: 'node:http' },
{ find: 'https', replacement: 'node:https' },
{ find: 'fs', replacement: 'node:fs' },
{ find: 'path', replacement: 'node:path' },
{ find: 'crypto', replacement: 'node:crypto' },
{ find: 'zlib', replacement: 'node:zlib' },
{ find: 'stream', replacement: 'node:stream' },
{ find: 'net', replacement: 'node:net' },
{ find: 'tty', replacement: 'node:tty' },
{ find: 'tls', replacement: 'node:tls' },
{ find: 'buffer', replacement: 'node:buffer' },
{ find: 'timers', replacement: 'node:timers' },
// { find: 'string_decoder', replacement: 'node:string_decoder' },
{ find: 'dns', replacement: 'node:dns' },
{ find: 'domain', replacement: 'node:domain' },
{ find: 'os', replacement: 'node:os' },
{ find: 'events', replacement: 'node:events' },
{ find: 'url', replacement: 'node:url' },
{ find: 'assert', replacement: 'node:assert' },
{ find: 'util', replacement: 'node:util' },
],
});
};
/** /**
* @type {import('rollup').RollupOptions} * @type {import('rollup').RollupOptions}
*/ */
@ -15,11 +43,13 @@ export default [
format: 'es', // 输出格式设置为 ES 模块 format: 'es', // 输出格式设置为 ES 模块
}, },
plugins: [ plugins: [
resolve(), // 使用 @rollup/plugin-node-resolve 解析 node_modules 中的模块 createAlias(),
resolve({
browser: true,
}), // 使用 @rollup/plugin-node-resolve 解析 node_modules 中的模块
commonjs(), commonjs(),
typescript(), // 使用 @rollup/plugin-typescript 处理 TypeScript 文件 typescript(), // 使用 @rollup/plugin-typescript 处理 TypeScript 文件
], ],
external: ['ws'],
}, },
{ {
input: 'src/index.ts', input: 'src/index.ts',
@ -58,6 +88,7 @@ export default [
format: 'es', format: 'es',
}, },
plugins: [ plugins: [
createAlias(),
resolve({ resolve({
browser: false, browser: false,
}), }),

View File

@ -101,3 +101,5 @@ export class App<T = {}, U = AppReqRes> {
throw new CustomError(...args); throw new CustomError(...args);
} }
} }
export * from './browser.ts';

View File

@ -1,13 +0,0 @@
import { Route, QueryRouter, QueryRouterServer } from './route.ts';
export { App } from './app.ts';
export { Route, QueryRouter, QueryRouterServer };
export { Rule, Schema, createSchema } from './validator/index.ts';
export type { RouteContext, RouteOpts } from './route.ts';
export type { Run } from './route.ts';
export { CustomError } from './result/error.ts';

View File

@ -1,8 +1,10 @@
// @ts-type=ws
import { WebSocketServer } from 'ws'; import { WebSocketServer } from 'ws';
import type { WebSocket } from 'ws'; import type { WebSocket } from 'ws';
import { Server } from './server.ts'; import { Server } from './server.ts';
import { parseIfJson } from '../utils/parse.ts'; import { parseIfJson } from '../utils/parse.ts';
export const createWsServer = (server: Server) => { export const createWsServer = (server: Server) => {
// 将 WebSocket 服务器附加到 HTTP 服务器 // 将 WebSocket 服务器附加到 HTTP 服务器
const wss = new WebSocketServer({ server: server.server as any }); const wss = new WebSocketServer({ server: server.server as any });

View File

@ -25,7 +25,8 @@
} }
}, },
"include": [ "include": [
"src/**/*.ts" "src/**/*.ts",
"mod.ts"
], ],
"exclude": [ "exclude": [
"node_modules", "node_modules",