{"version":3,"file":"errors.cjs","names":["z"],"sources":["../src/errors.ts"],"sourcesContent":["import { z } from \"./zod\";\n\n/**\n * Error pattern constants for categorizing infrastructure errors\n */\nexport const ERROR_PATTERNS = {\n  CONNECTION_REFUSED: [\"ECONNREFUSED\"],\n  HOST_NOT_FOUND: [\"ENOTFOUND\", \"EHOSTUNREACH\"],\n  TIMEOUT: [\"ETIMEDOUT\", \"ESOCKETTIMEDOUT\", \"timeout\"],\n  CONNECTION_RESET: [\"ECONNRESET\", \"EPIPE\"],\n  PERMISSION: [\"EACCES\", \"EPERM\", \"permission denied\"],\n  AUTH: [\"401\", \"unauthorized\", \"authentication failed\"],\n  RATE_LIMITED: [\"429\", \"too many requests\", \"rate limit\"],\n  SERVICE_UNAVAILABLE: [\"503\", \"service unavailable\"],\n} as const;\n\n/**\n * Common error schemas for plugin contracts.\n * Import individually or use the grouped PluginErrors export.\n *\n * @example\n * ```typescript\n * import { NOT_FOUND, FORBIDDEN, UNAUTHORIZED } from \"every-plugin/errors\";\n *\n * export const contract = oc.router({\n *   getData: oc.route(...)\n *     .errors({ NOT_FOUND, FORBIDDEN, UNAUTHORIZED })\n * });\n * ```\n */\n\nexport const UNAUTHORIZED = {\n  status: 401,\n  data: z.object({\n    apiKeyProvided: z.boolean(),\n    provider: z.string().optional(),\n    authType: z.enum([\"apiKey\", \"oauth\", \"token\"]).optional(),\n  }),\n} as const;\n\nexport const RATE_LIMITED = {\n  status: 429,\n  data: z.object({\n    retryAfter: z.number().int().min(1),\n    remainingRequests: z.number().int().min(0).optional(),\n    resetTime: z.string().datetime().optional(),\n    limitType: z.enum([\"requests\", \"tokens\", \"bandwidth\"]).optional(),\n  }),\n} as const;\n\nexport const SERVICE_UNAVAILABLE = {\n  status: 503,\n  data: z.object({\n    retryAfter: z.number().int().optional(),\n    maintenanceWindow: z.boolean().default(false),\n    estimatedUptime: z.string().datetime().optional(),\n  }),\n} as const;\n\nexport const BAD_REQUEST = {\n  status: 400,\n  data: z.object({\n    invalidFields: z.array(z.string()).optional(),\n    validationErrors: z\n      .array(\n        z.object({\n          field: z.string(),\n          message: z.string(),\n          code: z.string().optional(),\n        }),\n      )\n      .optional(),\n  }),\n} as const;\n\nexport const NOT_FOUND = {\n  status: 404,\n  data: z.object({\n    resource: z.string().optional(),\n    resourceId: z.string().optional(),\n  }),\n} as const;\n\nexport const FORBIDDEN = {\n  status: 403,\n  data: z.object({\n    requiredPermissions: z.array(z.string()).optional(),\n    action: z.string().optional(),\n  }),\n} as const;\n\nexport const TIMEOUT = {\n  status: 504,\n  data: z.object({\n    timeoutMs: z.number().int().min(0).optional(),\n    operation: z.string().optional(),\n    retryable: z.boolean().default(true),\n  }),\n} as const;\n\nexport const CONNECTION_ERROR = {\n  status: 502,\n  data: z.object({\n    errorCode: z.string().optional(),\n    host: z.string().optional(),\n    port: z.number().int().optional(),\n    suggestion: z.string().optional(),\n  }),\n} as const;\n\n/**\n * Grouped export for all plugin errors.\n * Use individual imports for cleaner code.\n */\nexport const PluginErrors = {\n  UNAUTHORIZED,\n  RATE_LIMITED,\n  SERVICE_UNAVAILABLE,\n  BAD_REQUEST,\n  NOT_FOUND,\n  FORBIDDEN,\n  TIMEOUT,\n  CONNECTION_ERROR,\n} as const;\n\n/**\n * @deprecated Use individual imports or PluginErrors instead\n */\nexport const CommonPluginErrors = PluginErrors;\n\nexport {\n  extractFromFiberFailure,\n  formatORPCError,\n  isRetryableORPCCode,\n  ModuleFederationError,\n  PluginRuntimeError,\n  toPluginRuntimeError,\n  ValidationError,\n  wrapORPCError,\n} from \"./runtime/errors\";\n"],"mappings":";;;;;;;;;;AAKA,MAAa,iBAAiB;CAC5B,oBAAoB,CAAC,eAAe;CACpC,gBAAgB,CAAC,aAAa,eAAe;CAC7C,SAAS;EAAC;EAAa;EAAmB;EAAU;CACpD,kBAAkB,CAAC,cAAc,QAAQ;CACzC,YAAY;EAAC;EAAU;EAAS;EAAoB;CACpD,MAAM;EAAC;EAAO;EAAgB;EAAwB;CACtD,cAAc;EAAC;EAAO;EAAqB;EAAa;CACxD,qBAAqB,CAAC,OAAO,sBAAsB;CACpD;;;;;;;;;;;;;;;AAiBD,MAAa,eAAe;CAC1B,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,gBAAgBA,IAAE,SAAS;EAC3B,UAAUA,IAAE,QAAQ,CAAC,UAAU;EAC/B,UAAUA,IAAE,KAAK;GAAC;GAAU;GAAS;GAAQ,CAAC,CAAC,UAAU;EAC1D,CAAC;CACH;AAED,MAAa,eAAe;CAC1B,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,YAAYA,IAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE;EACnC,mBAAmBA,IAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU;EACrD,WAAWA,IAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;EAC3C,WAAWA,IAAE,KAAK;GAAC;GAAY;GAAU;GAAY,CAAC,CAAC,UAAU;EAClE,CAAC;CACH;AAED,MAAa,sBAAsB;CACjC,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,YAAYA,IAAE,QAAQ,CAAC,KAAK,CAAC,UAAU;EACvC,mBAAmBA,IAAE,SAAS,CAAC,QAAQ,MAAM;EAC7C,iBAAiBA,IAAE,QAAQ,CAAC,UAAU,CAAC,UAAU;EAClD,CAAC;CACH;AAED,MAAa,cAAc;CACzB,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,eAAeA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC,UAAU;EAC7C,kBAAkBA,IACf,MACCA,IAAE,OAAO;GACP,OAAOA,IAAE,QAAQ;GACjB,SAASA,IAAE,QAAQ;GACnB,MAAMA,IAAE,QAAQ,CAAC,UAAU;GAC5B,CAAC,CACH,CACA,UAAU;EACd,CAAC;CACH;AAED,MAAa,YAAY;CACvB,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,UAAUA,IAAE,QAAQ,CAAC,UAAU;EAC/B,YAAYA,IAAE,QAAQ,CAAC,UAAU;EAClC,CAAC;CACH;AAED,MAAa,YAAY;CACvB,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,qBAAqBA,IAAE,MAAMA,IAAE,QAAQ,CAAC,CAAC,UAAU;EACnD,QAAQA,IAAE,QAAQ,CAAC,UAAU;EAC9B,CAAC;CACH;AAED,MAAa,UAAU;CACrB,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,WAAWA,IAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,UAAU;EAC7C,WAAWA,IAAE,QAAQ,CAAC,UAAU;EAChC,WAAWA,IAAE,SAAS,CAAC,QAAQ,KAAK;EACrC,CAAC;CACH;AAED,MAAa,mBAAmB;CAC9B,QAAQ;CACR,MAAMA,IAAE,OAAO;EACb,WAAWA,IAAE,QAAQ,CAAC,UAAU;EAChC,MAAMA,IAAE,QAAQ,CAAC,UAAU;EAC3B,MAAMA,IAAE,QAAQ,CAAC,KAAK,CAAC,UAAU;EACjC,YAAYA,IAAE,QAAQ,CAAC,UAAU;EAClC,CAAC;CACH;;;;;AAMD,MAAa,eAAe;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACD;;;;AAKD,MAAa,qBAAqB"}