refactor: 重构演示应用目录结构与配置文件路径
- 重命名构建配置文件至指定应用目录 - 重命名 drizzle.config.ts 文件至 apps/demo-app/ 目录下 - 添加演示应用的完整包配置,包含构建、开发、数据库管理及依赖项,支持 Tauri 桌面应用开发。 - 重命名 robots.txt 文件至 demo-app 应用目录下 - 重命名 src-tauri/.gitignore 文件为 apps/demo-app/src-tauri/.gitignore - 重命名 AGENTS.md 文件至指定目录路径 - 重命名构建脚本文件以匹配新项目路径结构 - 重命名默认能力配置文件以匹配新项目路径 - 重命名 Cargo.lock 文件以匹配新的项目路径结构 - 重命名 Cargo.toml 文件以正确反映其在项目中的路径位置 - 重命名图标文件以正确匹配新项目路径 - 重命名128x128.png图标文件至demo-app应用目录下 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以匹配新项目路径 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以匹配新项目路径 - 重命名图标文件以正确反映其在项目中的路径位置 - 重命名图标文件以匹配新项目路径结构 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以匹配新项目路径结构 - 重命名图标文件以正确放置在演示应用的资源目录中 - 重命名图标文件以正确匹配新项目路径 - 重命名图标文件以正确匹配新项目路径 - 重命名命令模块文件路径以匹配项目结构 - 重命名文件以正确反映其在项目中的位置 - 重命名主程序文件路径以匹配项目结构 - 重命名 sidecar.rs 文件至 demo-app 项目路径下 - 重命名 tauri.conf.json 文件至指定目录路径 - 重命名错误组件文件以正确反映其在项目中的位置 - 重命名文件 NotFount.tsx 到指定目录路径 - 重命名数据库入口文件路径以适应项目结构调整 - 重命名数据 schema 文件路径以匹配项目结构 - 重命名文件以正确反映其在项目中的位置路径 - 重命名环境配置文件以正确反映其在项目中的位置。 - 重命名文件以正确反映其在项目中的路径位置 - 重命名文件以正确反映其在项目中的位置 - 重命名文件以正确反映其在项目中的路径位置 - 重命名文件以正确反映其在项目中的路径位置 - 重命名工具函数文件以正确反映其在项目中的位置 - 重命名客户端文件以正确反映其在项目中的位置 - 重命名文件以正确反映其在项目中的位置 - 重命名文件路径以正确组织项目结构中的契约文件 - 重命名文件路径以正确反映其在项目中的位置 - 重命名文件以正确反映其在项目中的位置 - 重命名数据库中间件文件以正确反映其在项目中的位置 - 重命名中间件文件路径以匹配项目结构 - 重命名路由文件以正确反映其在项目中的位置 - 重命名文件以正确反映其在项目中的位置。 - 重命名类型文件以正确反映其在项目中的路径位置 - 重命名路由配置文件以匹配项目目录结构 - 重命名根路由文件以正确反映其在项目中的位置 - 重命名RPC路由文件至demo-app应用目录下 - 重命名路由文件路径以匹配项目结构调整 - 重命名路由树生成文件至 demo-app 应用目录下 - 重命名样式文件以正确反映其在项目中的位置 - 添加 TypeScript 配置以扩展 React 项目模板并设置路径别名。 - 重命名 vite.config.ts 文件至 apps/demo-app/ 目录下 - 移除 biome.json 中对 routeTree.gen.ts 文件的排除规则 - 更新依赖版本以统一使用 catalog 依赖管理,提升项目依赖一致性并升级关键包至最新稳定版本。 - 配置安装时的公共提升模式,包含类型包和特定命名空间的包。 - 删除空的 drizzle 目录占位文件 - 将 node 版本更新为最新版本,同时将 bun 和 rust 版本设置为最新。 - 将项目名称更新为 monorepo 并重构脚本与依赖配置以支持工作区结构和统一的 turbo 管理。 - 添加基础 TypeScript 配置文件,启用严格模式并配置模块解析与编译选项以支持现代 JavaScript 特性。 - 添加 Bun 专用的 TypeScript 配置,继承基础配置并引入 Bun 类型定义。 - 添加 tsconfig 包的配置文件并定义基础、Bun 和 React 的配置导出,同时引入 Bun 类型定义作为开发依赖。 - 添加React项目专用的TypeScript配置,指定JSX处理方式并扩展基础配置。 - 删除旧的 TypeScript 配置文件以移除过时的编译选项和路径别名设置。
This commit is contained in:
@@ -1,59 +0,0 @@
|
||||
import { ORPCError, onError, ValidationError } from '@orpc/server'
|
||||
import { RPCHandler } from '@orpc/server/fetch'
|
||||
import { createFileRoute } from '@tanstack/react-router'
|
||||
import { z } from 'zod'
|
||||
import { router } from '@/orpc/router'
|
||||
|
||||
const handler = new RPCHandler(router, {
|
||||
interceptors: [
|
||||
onError((error) => {
|
||||
console.error(error)
|
||||
}),
|
||||
],
|
||||
clientInterceptors: [
|
||||
onError((error) => {
|
||||
if (
|
||||
error instanceof ORPCError &&
|
||||
error.code === 'BAD_REQUEST' &&
|
||||
error.cause instanceof ValidationError
|
||||
) {
|
||||
// If you only use Zod you can safely cast to ZodIssue[]
|
||||
const zodError = new z.ZodError(
|
||||
error.cause.issues as z.core.$ZodIssue[],
|
||||
)
|
||||
|
||||
throw new ORPCError('INPUT_VALIDATION_FAILED', {
|
||||
status: 422,
|
||||
message: z.prettifyError(zodError),
|
||||
data: z.flattenError(zodError),
|
||||
cause: error.cause,
|
||||
})
|
||||
}
|
||||
|
||||
if (
|
||||
error instanceof ORPCError &&
|
||||
error.code === 'INTERNAL_SERVER_ERROR' &&
|
||||
error.cause instanceof ValidationError
|
||||
) {
|
||||
throw new ORPCError('OUTPUT_VALIDATION_FAILED', {
|
||||
cause: error.cause,
|
||||
})
|
||||
}
|
||||
}),
|
||||
],
|
||||
})
|
||||
|
||||
export const Route = createFileRoute('/api/rpc/$')({
|
||||
server: {
|
||||
handlers: {
|
||||
ANY: async ({ request }) => {
|
||||
const { response } = await handler.handle(request, {
|
||||
prefix: '/api/rpc',
|
||||
context: {},
|
||||
})
|
||||
|
||||
return response ?? new Response('Not Found', { status: 404 })
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
Reference in New Issue
Block a user