{"_id":"@drzl-enhanced/template-orpc-service","_rev":"4-4a61939a50a12cf97594157d67f2c1f3","name":"@drzl-enhanced/template-orpc-service","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1":{"name":"@drzl-enhanced/template-orpc-service","version":"0.0.1","author":{"name":"JohnsonHuang4396"},"license":"Apache-2.0","_id":"@drzl-enhanced/template-orpc-service@0.0.1","maintainers":[{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"}],"dist":{"shasum":"9f4b24c7b555513b1b63811a6a25657a98781d2a","tarball":"https://registry.npmjs.org/@drzl-enhanced/template-orpc-service/-/template-orpc-service-0.0.1.tgz","fileCount":7,"integrity":"sha512-dgGr2bnGxc1/f5OKdaQ6W+ZDRI0nB5fLatreYXR/SfgoZmyGopDlU+wmQMXM6kFaCGglqa4Zcnh0C+9GVd54UA==","signatures":[{"sig":"MEUCIQDIGNJeTqLoFKpGnwgS2K7Z/xb96jklHe9nRP103kCZzgIgKsTPpwY0ITjvp8d3T1UHk8au/cl4qmwfEUaxTMUoEtA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28569},"main":"dist/index.js","type":"module","_from":"file:drzl-enhanced-template-orpc-service-0.0.1.tgz","types":"dist/index.d.ts","engines":{"node":">=18.17.0"},"private":false,"scripts":{"lint":"eslint . --ext .ts","test":"vitest run","build":"tsup src/index.ts --dts --format esm,cjs"},"_npmUser":{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"},"_resolved":"D:\\Users\\EX_HUA~1\\AppData\\Local\\Temp\\79a51694add6d383e326f4c314d24656\\drzl-enhanced-template-orpc-service-0.0.1.tgz","_integrity":"sha512-dgGr2bnGxc1/f5OKdaQ6W+ZDRI0nB5fLatreYXR/SfgoZmyGopDlU+wmQMXM6kFaCGglqa4Zcnh0C+9GVd54UA==","_npmVersion":"10.9.2","description":"<div align=\"center\">","directories":{},"sideEffects":false,"_nodeVersion":"22.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/template-orpc-service_0.0.1_1758519485461_0.9152710086758626","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@drzl-enhanced/template-orpc-service","version":"0.0.2","author":{"name":"JohnsonHuang4396"},"license":"Apache-2.0","_id":"@drzl-enhanced/template-orpc-service@0.0.2","maintainers":[{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"}],"dist":{"shasum":"309e94dbcb3012067e9789c304e0e03c34fb197a","tarball":"https://registry.npmjs.org/@drzl-enhanced/template-orpc-service/-/template-orpc-service-0.0.2.tgz","fileCount":7,"integrity":"sha512-VPTAiyE8YRdIa2ORA0avQt7v1eBzuNlogFq0eWhe5DzpVXt3iUb+O8iJ3HfOuwQgqIBFZiADm3xesPVs/BPH2g==","signatures":[{"sig":"MEUCIHxlKYzjg+4LYfO0gwyDMQFb8cbpp+uwh9Ou5HqS1IG5AiEAgPNCAuqyzJpst7GZgFFftvHr9DhSS0zhfivC4Y+FuV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28569},"main":"dist/index.js","type":"module","_from":"file:drzl-enhanced-template-orpc-service-0.0.2.tgz","types":"dist/index.d.ts","engines":{"node":">=18.17.0"},"private":false,"scripts":{"lint":"eslint . --ext .ts","test":"vitest run","build":"tsup src/index.ts --dts --format esm,cjs"},"_npmUser":{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"},"_resolved":"D:\\Users\\EX_HUA~1\\AppData\\Local\\Temp\\da33858afb46b74fd479ff8cefcc513b\\drzl-enhanced-template-orpc-service-0.0.2.tgz","_integrity":"sha512-VPTAiyE8YRdIa2ORA0avQt7v1eBzuNlogFq0eWhe5DzpVXt3iUb+O8iJ3HfOuwQgqIBFZiADm3xesPVs/BPH2g==","_npmVersion":"10.9.2","description":"<div align=\"center\">","directories":{},"sideEffects":false,"_nodeVersion":"22.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/template-orpc-service_0.0.2_1758524145631_0.49872961470479327","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@drzl-enhanced/template-orpc-service","version":"0.0.3","author":{"name":"JohnsonHuang4396"},"license":"Apache-2.0","_id":"@drzl-enhanced/template-orpc-service@0.0.3","maintainers":[{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"}],"dist":{"shasum":"ec6284735576d45c687c9f0e91973f3dfe164a62","tarball":"https://registry.npmjs.org/@drzl-enhanced/template-orpc-service/-/template-orpc-service-0.0.3.tgz","fileCount":7,"integrity":"sha512-X+hkfO26O5Tyj2O0NhTMy0hf4g1pIen7IKu5pUTka0tFEGfnmBj/GpKedTwTLam0PUbTAPibKIr/+651NXQ8dw==","signatures":[{"sig":"MEQCIHPmZ0aiLpVI6qRblI4O+uoFpfUdKsIZAnu7ih3ggygdAiBsLWdcEF5tkJkmwis6AY2PKmq1f7gHnbcuqO2MUeTDjw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28565},"main":"dist/index.js","type":"module","_from":"file:drzl-enhanced-template-orpc-service-0.0.3.tgz","types":"dist/index.d.ts","engines":{"node":">=18.17.0"},"private":false,"scripts":{"lint":"eslint . --ext .ts","test":"vitest run","build":"tsup src/index.ts --dts --format esm"},"_npmUser":{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"},"_resolved":"D:\\Users\\EX_HUA~1\\AppData\\Local\\Temp\\6f9af464218d14b068980c31901148d7\\drzl-enhanced-template-orpc-service-0.0.3.tgz","_integrity":"sha512-X+hkfO26O5Tyj2O0NhTMy0hf4g1pIen7IKu5pUTka0tFEGfnmBj/GpKedTwTLam0PUbTAPibKIr/+651NXQ8dw==","_npmVersion":"10.9.2","description":"<div align=\"center\">","directories":{},"sideEffects":false,"_nodeVersion":"22.17.1","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/template-orpc-service_0.0.3_1758530751708_0.4454829821225017","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@drzl-enhanced/template-orpc-service","type":"module","version":"0.0.4","private":false,"author":{"name":"JohnsonHuang4396"},"license":"Apache-2.0","sideEffects":false,"main":"dist/index.js","types":"dist/index.d.ts","engines":{"node":">=18.17.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"scripts":{"build":"tsup src/index.ts --dts --format esm","lint":"eslint . --ext .ts","test":"vitest run"},"_id":"@drzl-enhanced/template-orpc-service@0.0.4","description":"<div align=\"center\">","_integrity":"sha512-EGT/Xp0MtLLC/mhz+MjzOcxRQXhsOB1WBHtgkJRE2Gegr149ZwhD8ljfUrDzFh8cXCVKsf84o4diE4FFN7Vp8w==","_resolved":"D:\\Users\\EX_HUA~1\\AppData\\Local\\Temp\\1bc72f44c3a051ab069fe1f7b6119ee0\\drzl-enhanced-template-orpc-service-0.0.4.tgz","_from":"file:drzl-enhanced-template-orpc-service-0.0.4.tgz","_nodeVersion":"22.17.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-EGT/Xp0MtLLC/mhz+MjzOcxRQXhsOB1WBHtgkJRE2Gegr149ZwhD8ljfUrDzFh8cXCVKsf84o4diE4FFN7Vp8w==","shasum":"d03edb6c5f358150a887c8673dfadcc5cf30f793","tarball":"https://registry.npmjs.org/@drzl-enhanced/template-orpc-service/-/template-orpc-service-0.0.4.tgz","fileCount":7,"unpackedSize":28565,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDS3zwTdQtJSTlybbpiketmMVHhCNhp+iEmQRywWboVdgIhAIYya8/RJNOkEEKy0gAj2n6CWsZqaB1FNvgVpXmj/l88"}]},"_npmUser":{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"},"directories":{},"maintainers":[{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/template-orpc-service_0.0.4_1758592506410_0.3211421556487024"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-22T05:38:05.360Z","modified":"2025-09-23T01:55:06.820Z","0.0.1":"2025-09-22T05:38:05.648Z","0.0.2":"2025-09-22T06:55:45.800Z","0.0.3":"2025-09-22T08:45:51.878Z","0.0.4":"2025-09-23T01:55:06.630Z"},"author":{"name":"JohnsonHuang4396"},"license":"Apache-2.0","description":"<div align=\"center\">","maintainers":[{"name":"johnsonhuang4396","email":"hqhEmail0802@163.com"}],"readme":"<div align=\"center\">\n\n# @drzl/template-orpc-service\n\n<div align=\"center\">\n\n[![CI](https://github.com/use-drzl/drzl/actions/workflows/ci.yml/badge.svg)](https://github.com/use-drzl/drzl/actions/workflows/ci.yml)\n[![npm](https://img.shields.io/npm/v/%40drzl%2Ftemplate-orpc-service)](https://www.npmjs.com/package/@drzl/template-orpc-service)\n\n</div>\n\noRPC router template wired to the generated Service layer.\n\n</div>\n\n## Use\n\nReference from the oRPC generator:\n\n```ts\ngenerators: [\n  {\n    kind: 'orpc',\n    template: '@drzl/template-orpc-service',\n    validation: { library: 'valibot' },\n    databaseInjection: {\n      enabled: true,\n      databaseType: 'Database',\n      databaseTypeImport: { name: 'Database', from: 'src/db/db' },\n    },\n    servicesDir: 'src/services',\n  },\n]\n```\n\n## Hooks (template API)\n\n- filePath(table, ctx)\n- routerName(table, ctx)\n- procedures(table)\n- imports?(tables, ctx)\n- header?(table)\n\nWhen `databaseInjection.enabled` is true, the template emits a `dbMiddleware` and expects `context.db` to be provided by your runtime (e.g., Cloudflare Workers via D1).\n","readmeFilename":"README.md"}