http-response-kit 1.0.0 → 2.0.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.
Files changed (47) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +357 -272
  3. package/dist/chunk-373JVXMN.mjs +1199 -0
  4. package/dist/chunk-373JVXMN.mjs.map +1 -0
  5. package/dist/chunk-FFRB2EUE.mjs +36 -0
  6. package/dist/chunk-FFRB2EUE.mjs.map +1 -0
  7. package/dist/express.d.mts +50 -0
  8. package/dist/express.d.ts +50 -0
  9. package/dist/express.js +1155 -0
  10. package/dist/express.js.map +1 -0
  11. package/dist/express.mjs +28 -0
  12. package/dist/express.mjs.map +1 -0
  13. package/dist/fastify.d.mts +45 -0
  14. package/dist/fastify.d.ts +45 -0
  15. package/dist/fastify.js +1170 -0
  16. package/dist/fastify.js.map +1 -0
  17. package/dist/fastify.mjs +43 -0
  18. package/dist/fastify.mjs.map +1 -0
  19. package/dist/hono.d.mts +33 -0
  20. package/dist/hono.d.ts +33 -0
  21. package/dist/hono.js +1139 -0
  22. package/dist/hono.js.map +1 -0
  23. package/dist/hono.mjs +18 -0
  24. package/dist/hono.mjs.map +1 -0
  25. package/dist/index.d.mts +75 -493
  26. package/dist/index.d.ts +75 -493
  27. package/dist/index.js +480 -180
  28. package/dist/index.js.map +1 -0
  29. package/dist/index.mjs +18 -891
  30. package/dist/index.mjs.map +1 -0
  31. package/dist/kit-nHfihlKE.d.mts +753 -0
  32. package/dist/kit-nHfihlKE.d.ts +753 -0
  33. package/dist/koa.d.mts +38 -0
  34. package/dist/koa.d.ts +38 -0
  35. package/dist/koa.js +1150 -0
  36. package/dist/koa.js.map +1 -0
  37. package/dist/koa.mjs +24 -0
  38. package/dist/koa.mjs.map +1 -0
  39. package/dist/schemas.d.mts +452 -0
  40. package/dist/schemas.d.ts +452 -0
  41. package/dist/schemas.js +124 -0
  42. package/dist/schemas.js.map +1 -0
  43. package/dist/schemas.mjs +119 -0
  44. package/dist/schemas.mjs.map +1 -0
  45. package/dist/shared-Czwmz6Xa.d.ts +22 -0
  46. package/dist/shared-DYq1Fic4.d.mts +22 -0
  47. package/package.json +104 -49
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/errors/catalog.ts"],"names":[],"mappings":";;;;AAkCO,SAAS,mBACZ,OAAA,EACkC;AAClC,EAAA,MAAM,YAAY,EAAC;AAEnB,EAAA,KAAA,MAAW,GAAA,IAAO,MAAA,CAAO,IAAA,CAAK,OAAO,CAAA,EAAqB;AACtD,IAAA,MAAM,KAAA,GAAQ,QAAQ,GAAG,CAAA;AACzB,IAAA,SAAA,CAAU,GAAG,CAAA,GAAI,CAAC,OAAA,EAAkB,OAAA,GAA+C,EAAC,KAChF,IAAI,SAAA,CAAU,KAAA,CAAM,MAAA,EAAQ;AAAA,MACxB,GAAG,OAAA;AAAA,MACH,OAAA,EAAS,OAAA,IAAW,KAAA,CAAM,OAAA,IAAW,OAAA,CAAQ,OAAA;AAAA,MAC7C,SAAA,EAAW,OAAO,GAAG,CAAA;AAAA,MACrB,MAAA,EAAQ,OAAA,CAAQ,MAAA,IAAU,KAAA,CAAM,MAAA;AAAA,MAChC,QAAA,EAAU,OAAA,CAAQ,QAAA,IAAY,KAAA,CAAM;AAAA,KACvC,CAAA;AAAA,EACT;AAEA,EAAA,OAAO,SAAA;AACX","file":"index.mjs","sourcesContent":["/**\n * HTTP Response Kit - Domain Error Catalog\n *\n * Enterprises need stable, machine-readable application error codes\n * (e.g. \"USER_NOT_FOUND\", \"PLAN_LIMIT_REACHED\") that are independent from\n * HTTP status codes. A catalog turns a declarative map into typed factories.\n *\n * @module errors/catalog\n */\n\nimport type { CatalogEntry, HttpErrorOptions } from '../types';\nimport { HttpError } from './HttpError';\n\n/** A factory produced by {@link createErrorCatalog} */\nexport type CatalogFactory = (message?: string, options?: Omit<HttpErrorOptions, 'errorCode'>) => HttpError;\n\n/**\n * Create a typed catalog of domain errors.\n *\n * Each key becomes the stable `errorCode` (serialized as `error.code` in\n * responses and as the `code` extension in Problem Details).\n *\n * @example\n * ```ts\n * export const Errors = createErrorCatalog({\n * USER_NOT_FOUND: { status: 404, message: 'User does not exist' },\n * PLAN_LIMIT_REACHED: { status: 402, message: 'Upgrade your plan' },\n * PAYMENT_GATEWAY_DOWN: { status: 502, expose: false },\n * });\n *\n * throw Errors.USER_NOT_FOUND(); // default message\n * throw Errors.USER_NOT_FOUND('No user with id 42'); // override message\n * ```\n */\nexport function createErrorCatalog<T extends Record<string, CatalogEntry>>(\n catalog: T\n): { [K in keyof T]: CatalogFactory } {\n const factories = {} as { [K in keyof T]: CatalogFactory };\n\n for (const key of Object.keys(catalog) as Array<keyof T>) {\n const entry = catalog[key];\n factories[key] = (message?: string, options: Omit<HttpErrorOptions, 'errorCode'> = {}) =>\n new HttpError(entry.status, {\n ...options,\n message: message ?? entry.message ?? options.message,\n errorCode: String(key),\n expose: options.expose ?? entry.expose,\n metadata: options.metadata ?? entry.metadata,\n });\n }\n\n return factories;\n}\n"]}