@forinda/kickjs 9.0.3 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{application-DPLzamTb.mjs → application-nDj-76EX.mjs} +3 -3
- package/dist/{application-DPLzamTb.mjs.map → application-nDj-76EX.mjs.map} +1 -1
- package/dist/{bootstrap-DUNvDJ1a.mjs → bootstrap-BqcT1h9H.mjs} +3 -3
- package/dist/{bootstrap-DUNvDJ1a.mjs.map → bootstrap-BqcT1h9H.mjs.map} +1 -1
- package/dist/{client-ip-CTr33Gtu.mjs → client-ip-DMKc-Trg.mjs} +2 -2
- package/dist/{client-ip-CTr33Gtu.mjs.map → client-ip-DMKc-Trg.mjs.map} +1 -1
- package/dist/config/index.mjs +2 -2
- package/dist/{config-C-sAHakM.mjs → config-DrgIbebd.mjs} +3 -3
- package/dist/{config-C-sAHakM.mjs.map → config-DrgIbebd.mjs.map} +1 -1
- package/dist/{container-ByH0uCpG.mjs → container-ZnfelY_a.mjs} +3 -3
- package/dist/{container-ByH0uCpG.mjs.map → container-ZnfelY_a.mjs.map} +1 -1
- package/dist/{context-fth87C3G.mjs → context-BGPof8bs.mjs} +3 -3
- package/dist/{context-fth87C3G.mjs.map → context-BGPof8bs.mjs.map} +1 -1
- package/dist/{context-errors-VjQBtxEc.mjs → context-errors-Cgtrrqfs.mjs} +2 -2
- package/dist/{context-errors-VjQBtxEc.mjs.map → context-errors-Cgtrrqfs.mjs.map} +1 -1
- package/dist/{contributor-runner-BEjgGaoG.mjs → contributor-runner-BSpshfPN.mjs} +3 -3
- package/dist/{contributor-runner-BEjgGaoG.mjs.map → contributor-runner-BSpshfPN.mjs.map} +1 -1
- package/dist/core/adapter.mjs +1 -1
- package/dist/core/app-module.mjs +1 -1
- package/dist/core/cache.mjs +1 -1
- package/dist/core/container.mjs +2 -2
- package/dist/core/cron.mjs +2 -2
- package/dist/core/decorators.mjs +2 -2
- package/dist/core/errors.mjs +1 -1
- package/dist/core/interfaces.mjs +1 -1
- package/dist/core/logger.d.mts +2 -2
- package/dist/core/logger.mjs +2 -2
- package/dist/core/logger.mjs.map +1 -1
- package/dist/core/path.mjs +1 -1
- package/dist/core/plugin.mjs +1 -1
- package/dist/core/reactivity.mjs +1 -1
- package/dist/{core-DrjVUTxG.mjs → core-_WNyghl_.mjs} +3 -3
- package/dist/{core-DrjVUTxG.mjs.map → core-_WNyghl_.mjs.map} +1 -1
- package/dist/{csrf-CbFJiyKW.mjs → csrf-BcxqzCZW.mjs} +3 -3
- package/dist/{csrf-CbFJiyKW.mjs.map → csrf-BcxqzCZW.mjs.map} +1 -1
- package/dist/{decorate-hW_esogS.mjs → decorate-BBwu7--P.mjs} +1 -1
- package/dist/{define-adapter-B4Iu_TcU.mjs → define-adapter-CajLeMzM.mjs} +2 -2
- package/dist/{define-adapter-B4Iu_TcU.mjs.map → define-adapter-CajLeMzM.mjs.map} +1 -1
- package/dist/{disposables-CgCLyCoP.mjs → disposables-DIXt8ze-.mjs} +2 -2
- package/dist/{disposables-CgCLyCoP.mjs.map → disposables-DIXt8ze-.mjs.map} +1 -1
- package/dist/{env-w27RDkCQ.mjs → env-DtJ-6gyL.mjs} +3 -3
- package/dist/{env-w27RDkCQ.mjs.map → env-DtJ-6gyL.mjs.map} +1 -1
- package/dist/{handler-eguNTfCv.mjs → handler-2OebsoPr.mjs} +3 -3
- package/dist/{handler-eguNTfCv.mjs.map → handler-2OebsoPr.mjs.map} +1 -1
- package/dist/http/application.mjs +2 -2
- package/dist/http/bootstrap.mjs +2 -2
- package/dist/http/context.mjs +2 -2
- package/dist/http/middleware/cors.mjs +1 -1
- package/dist/http/middleware/csrf.mjs +2 -2
- package/dist/http/middleware/error-handler.mjs +2 -2
- package/dist/http/middleware/helmet.mjs +1 -1
- package/dist/http/middleware/rate-limit.mjs +2 -2
- package/dist/http/middleware/request-id.mjs +1 -1
- package/dist/http/middleware/request-logger.mjs +2 -2
- package/dist/http/middleware/request-logger.mjs.map +1 -1
- package/dist/http/middleware/session.mjs +2 -2
- package/dist/http/middleware/spa.mjs +2 -2
- package/dist/http/middleware/upload.mjs +2 -2
- package/dist/http/middleware/validate.mjs +1 -1
- package/dist/http/middleware/views.mjs +2 -2
- package/dist/http/query/index.mjs +2 -2
- package/dist/http/router-builder.mjs +2 -2
- package/dist/http/runtimes/fastify.mjs +2 -2
- package/dist/http/runtimes/h3-web.mjs +2 -2
- package/dist/http/runtimes/h3.mjs +2 -2
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +2 -2
- package/dist/{jobs-CeP4aLYR.mjs → jobs-dx-MTUUb.mjs} +3 -3
- package/dist/{jobs-CeP4aLYR.mjs.map → jobs-dx-MTUUb.mjs.map} +1 -1
- package/dist/{kv-stores-5ocdxfdh.mjs → kv-stores-Ba5_rcz-.mjs} +3 -3
- package/dist/{kv-stores-5ocdxfdh.mjs.map → kv-stores-Ba5_rcz-.mjs.map} +1 -1
- package/dist/{logger-DA43DvNY.d.mts → logger-xE9qI_FS.d.mts} +45 -5
- package/dist/logger-xE9qI_FS.d.mts.map +1 -0
- package/dist/{metadata-CIXErBTj.mjs → metadata-CW4I35nN.mjs} +2 -2
- package/dist/{metadata-CIXErBTj.mjs.map → metadata-CW4I35nN.mjs.map} +1 -1
- package/dist/{module-registry-IO8RfVjX.mjs → module-registry-kqozOSo0.mjs} +2 -2
- package/dist/{module-registry-IO8RfVjX.mjs.map → module-registry-kqozOSo0.mjs.map} +1 -1
- package/dist/{observers-BtXkP5km.mjs → observers-CC3sO1BM.mjs} +2 -2
- package/dist/{observers-BtXkP5km.mjs.map → observers-CC3sO1BM.mjs.map} +1 -1
- package/dist/{query-CNa0mxSK.mjs → query-DPlkWOw6.mjs} +2 -2
- package/dist/{query-CNa0mxSK.mjs.map → query-DPlkWOw6.mjs.map} +1 -1
- package/dist/{respond-C4Vt5r46.mjs → respond-DjxNwGnN.mjs} +2 -2
- package/dist/{respond-C4Vt5r46.mjs.map → respond-DjxNwGnN.mjs.map} +1 -1
- package/dist/{route-flag-CpTa8y1n.mjs → route-flag-sIYXay3q.mjs} +3 -3
- package/dist/{route-flag-CpTa8y1n.mjs.map → route-flag-sIYXay3q.mjs.map} +1 -1
- package/dist/{route-policy-DPTLfer-.mjs → route-policy-B6_toGJW.mjs} +2 -2
- package/dist/{route-policy-DPTLfer-.mjs.map → route-policy-B6_toGJW.mjs.map} +1 -1
- package/dist/{router-builder-BxXKP8Wy.mjs → router-builder-CzVjPs5y.mjs} +3 -3
- package/dist/{router-builder-BxXKP8Wy.mjs.map → router-builder-CzVjPs5y.mjs.map} +1 -1
- package/dist/{runtime-B4NQGN66.mjs → runtime-CDz5ayBt.mjs} +3 -3
- package/dist/{runtime-B4NQGN66.mjs.map → runtime-CDz5ayBt.mjs.map} +1 -1
- package/dist/{upload-config-BmpmZZVK.mjs → upload-config-d0pisVsK.mjs} +2 -2
- package/dist/{upload-config-BmpmZZVK.mjs.map → upload-config-d0pisVsK.mjs.map} +1 -1
- package/dist/web.mjs +2 -2
- package/package.json +2 -2
- package/dist/logger-DA43DvNY.d.mts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upload-config-
|
|
1
|
+
{"version":3,"file":"upload-config-d0pisVsK.mjs","names":[],"sources":["../src/http/middleware/upload-config.ts"],"sourcesContent":["// Pure (edge-safe) upload core — the engine-neutral half of the upload\n// middleware. Extracted from `upload.ts` so the `@forinda/kickjs/web` entry\n// graph can validate/shape buffered multipart parts WITHOUT dragging in\n// upload.ts's node-only surface (multer peer loading via `node:module`,\n// disk cleanup via `node:fs/promises`). `upload.ts` re-exports everything\n// here, so existing import sites are unchanged.\n\nimport { HttpException, HttpStatus } from '../../core/errors'\nimport type { BaseUploadOptions, FileUploadConfig } from '../../core/decorators'\n\nexport const MIME_MAP: Record<string, string> = {\n // Images\n jpg: 'image/jpeg',\n jpeg: 'image/jpeg',\n png: 'image/png',\n gif: 'image/gif',\n webp: 'image/webp',\n svg: 'image/svg+xml',\n bmp: 'image/bmp',\n ico: 'image/x-icon',\n tiff: 'image/tiff',\n tif: 'image/tiff',\n avif: 'image/avif',\n // Documents\n pdf: 'application/pdf',\n doc: 'application/msword',\n docx: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',\n xls: 'application/vnd.ms-excel',\n xlsx: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\n ppt: 'application/vnd.ms-powerpoint',\n pptx: 'application/vnd.openxmlformats-officedocument.presentationml.presentation',\n odt: 'application/vnd.oasis.opendocument.text',\n ods: 'application/vnd.oasis.opendocument.spreadsheet',\n odp: 'application/vnd.oasis.opendocument.presentation',\n rtf: 'application/rtf',\n txt: 'text/plain',\n csv: 'text/csv',\n // Archives\n zip: 'application/zip',\n gz: 'application/gzip',\n tar: 'application/x-tar',\n rar: 'application/vnd.rar',\n '7z': 'application/x-7z-compressed',\n // Audio\n mp3: 'audio/mpeg',\n wav: 'audio/wav',\n ogg: 'audio/ogg',\n flac: 'audio/flac',\n aac: 'audio/aac',\n // Video\n mp4: 'video/mp4',\n webm: 'video/webm',\n avi: 'video/x-msvideo',\n mov: 'video/quicktime',\n mkv: 'video/x-matroska',\n // Other\n json: 'application/json',\n xml: 'application/xml',\n html: 'text/html',\n}\n\n/**\n * Resolves a list of file type identifiers to MIME type strings.\n * Accepts short extensions (`'jpg'`, `'pdf'`) or full MIME types (`'image/jpeg'`).\n *\n * @example\n * ```ts\n * resolveMimeTypes(['jpg', 'png', 'application/pdf'])\n * // → ['image/jpeg', 'image/png', 'application/pdf']\n * ```\n */\nexport function resolveMimeTypes(types: string[]): string[] {\n return types.map((t) => {\n const lower = t.toLowerCase().replace(/^\\./, '')\n return MIME_MAP[lower] ?? t\n })\n}\n\n/**\n * Build a runtime-agnostic `(mimetype, filename) => boolean` file-type filter\n * from `allowedTypes` (a predicate, or a list of extensions / MIME types /\n * wildcards). Returned by both the multer middleware (Express) and the\n * Fastify / h3 / web multipart paths so the accept/reject rule stays\n * identical across engines. No `allowedTypes` → accept everything.\n */\nexport function buildFileTypeFilter(\n allowedTypes: BaseUploadOptions['allowedTypes'],\n customMimeMap?: Record<string, string>,\n): (mimetype: string, filename: string) => boolean {\n if (!allowedTypes) return () => true\n if (typeof allowedTypes === 'function') return allowedTypes\n const mimeMap = customMimeMap ? { ...MIME_MAP, ...customMimeMap } : MIME_MAP\n const resolved = allowedTypes.map((t) => mimeMap[t.toLowerCase().replace(/^\\./, '')] ?? t)\n return (mimetype: string) =>\n resolved.some((type) =>\n type.endsWith('/*') ? mimetype.startsWith(type.replace('/*', '/')) : mimetype === type,\n )\n}\n\n/** A multer-shaped uploaded file — what `ctx.file` / `ctx.files` expose. */\nexport interface UploadedFileLike {\n fieldname: string\n originalname: string\n encoding: string\n mimetype: string\n size: number\n buffer: Buffer\n}\n\n/** A buffered multipart file part, as the runtime hands it to {@link applyUploadConfig}. */\nexport interface RawUploadPart {\n fieldname: string\n filename: string\n mimetype: string\n buffer: Buffer\n}\n\nconst DEFAULT_MAX_SIZE = 5 * 1024 * 1024\n\n/**\n * Apply a `@FileUpload` config to already-buffered multipart parts and return\n * the multer-shaped `file` / `files` for `ctx`. Enforces the field name, type\n * filter, per-file size limit, and (array mode) max count — throwing\n * `HttpException` on a violation, mirroring the Express/multer error path.\n * Used by the Fastify, h3 and web runtimes; Express keeps using multer directly.\n */\nexport function applyUploadConfig(\n parts: RawUploadPart[],\n config: FileUploadConfig,\n): { file?: UploadedFileLike; files?: UploadedFileLike[] } {\n if (config.mode === 'none') return {}\n\n const field = config.fieldName ?? 'file'\n const maxSize = config.maxSize ?? DEFAULT_MAX_SIZE\n const typeAllowed = buildFileTypeFilter(config.allowedTypes, config.customMimeMap)\n\n const matched = parts.filter((p) => p.fieldname === field)\n const files: UploadedFileLike[] = matched.map((p) => {\n if (!typeAllowed(p.mimetype, p.filename)) {\n throw new HttpException(\n HttpStatus.UNSUPPORTED_MEDIA_TYPE,\n `File type ${p.mimetype} is not allowed`,\n )\n }\n if (p.buffer.length > maxSize) {\n throw new HttpException(\n HttpStatus.PAYLOAD_TOO_LARGE,\n `File ${p.filename} exceeds the ${maxSize}-byte limit`,\n )\n }\n return {\n fieldname: p.fieldname,\n originalname: p.filename,\n encoding: '7bit',\n mimetype: p.mimetype,\n size: p.buffer.length,\n buffer: p.buffer,\n }\n })\n\n if (config.mode === 'single') return { file: files[0] }\n const maxCount = config.maxCount ?? 10\n return { files: files.slice(0, maxCount) }\n}\n"],"mappings":";;;;;;;;;;wDAUA,MAAa,SAAmC,CAE9C,IAAK,aACL,KAAM,aACN,IAAK,YACL,IAAK,YACL,KAAM,aACN,IAAK,gBACL,IAAK,YACL,IAAK,eACL,KAAM,aACN,IAAK,aACL,KAAM,aAEN,IAAK,kBACL,IAAK,qBACL,KAAM,0EACN,IAAK,2BACL,KAAM,oEACN,IAAK,gCACL,KAAM,4EACN,IAAK,0CACL,IAAK,iDACL,IAAK,kDACL,IAAK,kBACL,IAAK,aACL,IAAK,WAEL,IAAK,kBACL,GAAI,mBACJ,IAAK,oBACL,IAAK,sBACL,KAAM,8BAEN,IAAK,aACL,IAAK,YACL,IAAK,YACL,KAAM,aACN,IAAK,YAEL,IAAK,YACL,KAAM,aACN,IAAK,kBACL,IAAK,kBACL,IAAK,mBAEL,KAAM,mBACN,IAAK,kBACL,KAAM,WACR,EAYA,SAAgB,iBAAiB,MAA2B,CAC1D,OAAO,MAAM,IAAK,GAAM,CACtB,IAAM,MAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,MAAO,EAAE,EAC/C,OAAO,SAAS,QAAU,CAC5B,CAAC,CACH,CASA,SAAgB,oBACd,aACA,cACiD,CACjD,GAAI,CAAC,aAAc,UAAa,GAChC,GAAI,OAAO,cAAiB,WAAY,OAAO,aAC/C,IAAM,QAAU,cAAgB,CAAE,GAAG,SAAU,GAAG,aAAc,EAAI,SAC9D,SAAW,aAAa,IAAK,GAAM,QAAQ,EAAE,YAAY,CAAC,CAAC,QAAQ,MAAO,EAAE,IAAM,CAAC,EACzF,MAAQ,WACN,SAAS,KAAM,MACb,KAAK,SAAS,IAAI,EAAI,SAAS,WAAW,KAAK,QAAQ,KAAM,GAAG,CAAC,EAAI,WAAa,IACpF,CACJ,CA6BA,SAAgB,kBACd,MACA,OACyD,CACzD,GAAI,OAAO,OAAS,OAAQ,MAAO,CAAC,EAEpC,IAAM,MAAQ,OAAO,WAAa,OAC5B,QAAU,OAAO,SAAW,QAC5B,YAAc,oBAAoB,OAAO,aAAc,OAAO,aAAa,EAG3E,MADU,MAAM,OAAQ,GAAM,EAAE,YAAc,KACZ,CAAC,CAAC,IAAK,GAAM,CACnD,GAAI,CAAC,YAAY,EAAE,SAAU,EAAE,QAAQ,EACrC,MAAM,IAAI,cACR,WAAW,uBACX,aAAa,EAAE,SAAS,gBAC1B,EAEF,GAAI,EAAE,OAAO,OAAS,QACpB,MAAM,IAAI,cACR,WAAW,kBACX,QAAQ,EAAE,SAAS,eAAe,QAAQ,YAC5C,EAEF,MAAO,CACL,UAAW,EAAE,UACb,aAAc,EAAE,SAChB,SAAU,OACV,SAAU,EAAE,SACZ,KAAM,EAAE,OAAO,OACf,OAAQ,EAAE,MACZ,CACF,CAAC,EAED,GAAI,OAAO,OAAS,SAAU,MAAO,CAAE,KAAM,MAAM,EAAG,EACtD,IAAM,SAAW,OAAO,UAAY,GACpC,MAAO,CAAE,MAAO,MAAM,MAAM,EAAG,QAAQ,CAAE,CAC3C"}
|
package/dist/web.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @forinda/kickjs v9.0
|
|
2
|
+
* @forinda/kickjs v9.1.0
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) Felix Orinda
|
|
5
5
|
*
|
|
@@ -8,5 +8,5 @@
|
|
|
8
8
|
*
|
|
9
9
|
* @license MIT
|
|
10
10
|
*/
|
|
11
|
-
import{t as Container}from"./container-
|
|
11
|
+
import{t as Container}from"./container-ZnfelY_a.mjs";import{t as MutableModuleRegistry}from"./module-registry-kqozOSo0.mjs";import{runCronJobs}from"./core/cron.mjs";import{d as stampJobContext,l as registerJobContext,t as JOB_CONTEXT_FIELD,u as runJob}from"./jobs-dx-MTUUb.mjs";import{buildMountPath}from"./core/path.mjs";import{n as assertRouteUnique,r as buildRouteTable,t as _setExternalContributorSources}from"./router-builder-CzVjPs5y.mjs";import{i as reply,r as isReply}from"./runtime-CDz5ayBt.mjs";import{l as requestStore,o as waitUntil,r as forwardBackgroundWork}from"./context-BGPof8bs.mjs";import{n as KvSessionStore,r as rateLimitGuard,t as KvRateLimitStore}from"./kv-stores-Ba5_rcz-.mjs";import{n as WebRequestShim,r as WebResponseDriver,t as compileWebRoute}from"./handler-2OebsoPr.mjs";function createWebApp(options){let h3mod=options.h3;if(typeof h3mod?.H3!=`function`)throw Error(`@forinda/kickjs/web: pass the h3 v2 module — \`createWebApp({ h3: await import("h3"), ... })\`. The installed h3 must be v2 (npm dist-tag 'latest'); v1 has no H3 class.`);let container=Container.getInstance();if(options.env){let env=options.env;Container._envResolver=key=>env[key]}Container._requestStoreProvider=()=>requestStore.getStore()??null;let registry=new MutableModuleRegistry;for(let m of options.modules)registry.mount(m);let modules=registry.entries.map(entry=>{let mod=typeof entry==`function`?new entry:entry;return mod.register?.(container),mod});container.bootstrap();let app=new h3mod.H3,apiPrefix=options.apiPrefix??`/api`,defaultVersion=options.defaultVersion??1,globalMiddleware=options.middlewares??[],globalSources=(options.contributors??[]).map(registration=>({source:`global`,registration,label:`createWebApp`})),seenRoutes=new Map;for(let mod of modules){let declaredName=mod.name,moduleLabel=typeof declaredName==`string`&&declaredName.length>0?declaredName:mod.constructor?.name??`module`,moduleSources=(mod.contributors?.()??[]).map(registration=>({source:`module`,registration,label:moduleLabel}));_setExternalContributorSources([...moduleSources,...globalSources]);try{let result=mod.routes();if(!result)continue;let routeSets=Array.isArray(result)?result:[result];for(let route of routeSets){if(!route.controller)throw Error(`@forinda/kickjs/web: module route at '${route.path}' has no controller. Express-style \`router\` mounts are not supported on the web entry.`);let version=route.version??defaultVersion,mountPath=buildMountPath(apiPrefix,version,route.path);for(let entry of buildRouteTable(route.controller,{mountFlags:route.flags})){let url=joinPath(mountPath,entry.path),owner=`${route.controller.name??`controller`}.${String(entry.meta.handlerName??`?`)}`;assertRouteUnique(seenRoutes,entry.method,url,owner),globalMiddleware.length>0&&(entry.middlewares=[...globalMiddleware,...entry.middlewares]);let run=compileWebRoute(entry);app.on(entry.method,url,event=>run({request:event.req,url:event.url,params:event.context.params??{}}))}}}finally{_setExternalContributorSources([])}}return{fetch:async(request,platform)=>{let response=await app.fetch(request);return forwardBackgroundWork(platform),response},h3:app}}function createFetchHandler(build){let app;return{fetch:(request,env={},ctx)=>(app??=createWebApp(build(env)),app.fetch(request,ctx)),scheduled:async(event,env={},ctx)=>{app??=createWebApp(build(env));let run=runCronJobs(Container.getInstance(),{expression:event.cron},`workers`).then(()=>{});ctx?.waitUntil?.(run),await run},queue:async(batch,env={})=>{app??=createWebApp(build(env));let container=Container.getInstance();await Promise.all(batch.messages.map(async message=>{let body=message.body,named=typeof body==`object`&&!!body&&typeof body.name==`string`;try{await runJob(container,batch.queue,{name:named?body.name:``,data:named?body.data:message.body,id:message.id}),message.ack()}catch{message.retry()}}))}}}function joinPath(mountPath,path){let a=mountPath.endsWith(`/`)?mountPath.slice(0,-1):mountPath;return path===`/`||path===``?a===``?`/`:a:`${a}${path.startsWith(`/`)?path:`/${path}`}`}export{JOB_CONTEXT_FIELD,KvRateLimitStore,KvSessionStore,WebRequestShim,WebResponseDriver,compileWebRoute,createFetchHandler,createWebApp,isReply,rateLimitGuard,registerJobContext,reply,runCronJobs,runJob,stampJobContext,waitUntil};
|
|
12
12
|
//# sourceMappingURL=web.mjs.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forinda/kickjs",
|
|
3
|
-
"version": "9.0
|
|
3
|
+
"version": "9.1.0",
|
|
4
4
|
"description": "Modern type-safe backend framework, powered by Vite. Built for developer experience, pluggable as you need — runs on Express, Fastify or h3.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"kickjs",
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
],
|
|
117
117
|
"dependencies": {
|
|
118
118
|
"reflect-metadata": "^0.2.2",
|
|
119
|
-
"@forinda/kickjs-schema": "^0.2.
|
|
119
|
+
"@forinda/kickjs-schema": "^0.2.3"
|
|
120
120
|
},
|
|
121
121
|
"peerDependencies": {
|
|
122
122
|
"@fastify/middie": "^9.0.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger-DA43DvNY.d.mts","names":[],"sources":["../src/core/logger.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA+BiB;EACf,KAAK,gBAAgB;EACrB,KAAK,gBAAgB;EACrB,MAAM,gBAAgB;EACtB,MAAM,gBAAgB;EACtB,OAAO,gBAAgB;EACvB,OAAO,gBAAgB;;EAEvB,MAAM;IAAY;MAAsB;;;;;;;;;;;;;;;cAgD7B,iCAAiC;UACpC;UACA;EAER,YAAY;UAMJ;;UASA;EAIR,KAAK,gBAAgB;EAGrB,KAAK,gBAAgB;EAGrB,MAAM,gBAAgB;EAGtB,MAAM,gBAAgB;EAGtB,MAAM,gBAAgB;EAGtB,MAAM,gBAAgB;EAItB,MAAM;IAAY;MAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;cAoC7B;UACH;UACA;UACA;;iBAGO;EAEf,YAAY;;cAOA;;;;;;;;;;;SAkBL,YAAY,UAAU;;SAOtB,eAAe;;;;;SAQf;;SAOA,IAAI,eAAe;;EAU1B,MAAM,eAAe;EAIrB,KAAK,gBAAgB;EAIrB,KAAK,gBAAgB;;EAKrB,MAAM,cAAc,gBAAgB;;EAEpC,MAAM,gBAAgB;;EAEtB,MAAM;EA8BN,MAAM,gBAAgB;EAItB,MAAM,gBAAgB;EAKtB,MAAM,gBAAgB;;;;;;;;;;;iBAeR,cAAc,cAAc;;iBA+B5B,aAAa,eAAe"}
|