UNPKG

koatty_exception

Version:
1 lines 77.7 kB
{"version":3,"sources":["../src/code.ts","../src/output.ts","../src/exception.ts","../src/utils.ts","../src/catch.ts"],"names":["HttpStatusCode","HttpStatusCodeMap","Map","GrpcStatusCode","GrpcStatusCodeMap","StatusCodeConvert","code","CommonErrorCode","isJsonResult","obj","message","isCodeError","safeStringify","value","undefined","JSON","stringify","String","Output","ok","msg","data","fail","err","Helper","isError","trim","paginate","items","total","page","pageSize","safeTotal","Math","max","floor","safePage","safePageSize","totalPages","ceil","Array","isArray","pagination","hasNext","hasPrev","withMeta","meta","Object","keys","length","globalConfig","enableStackTrace","process","env","NODE_ENV","logFormat","maxStackLength","setExceptionConfig","config","getExceptionConfig","ExceptionHandler","target","identifier","IOCContainer","getIdentifier","prototype","Exception","Error","saveClass","type","status","span","timestamp","context","stack","Date","now","setCode","setStatus","setStack","name","isNumber","setMessage","substring","setSpan","setContext","handler","ctx","requestId","path","originalPath","method","userAgent","get","startTime","endTime","duration","log","encoding","output","error","Logger","fallbackOutput","_error","isGrpc","protocol","isWebSocket","fallbackResponse","rpc","callback","details","body","Buffer","byteLength","websocket","send","res","end","logData","toISOString","level","logMessage","formatTextLog","updateSpan","SpanStatusCode","ERROR","setAttribute","ATTR_HTTP_RESPONSE_STATUS_CODE","ATTR_HTTP_REQUEST_METHOD","ATTR_URL_FULL","url","responseBody","customErrorFormat","writableEnded","finished","Warn","toJSON","PREVENT_NEXT_PROCESS","prevent","Promise","reject","isException","toSafeError","isNetworkError","networkErrorCodes","includes","isExceptionConstructor","shouldCatch","catchTypes","some","ErrorType","parseOptions","args","first","exception","errorTypes","options","Catch","propertyKey","descriptor","originalMethod","methodArgs","result","apply","safeError","ExceptionClass","errorMessage","useCustomDefaults","errorCode","GENERAL_ERROR","errorStatus","preserveStack","finalException","transform","suppress","defineProperty","configurable"],"mappings":"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AAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAAA,GAAA;AAAK,IAAA;;AACN,EAAA;AAAC,IAA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","file":"index.mjs","sourcesContent":["/*\n * @Description: \n * @Usage: \n * @Author: richen\n * @Date: 2021-11-19 00:53:19\n * @LastEditTime: 2023-01-13 10:02:11\n */\n\n/**\n * HttpStatusCode\n *\n * @export\n * @enum {number}\n */\nexport enum HttpStatusCode {\n\n /**\n * The server has received the request headers and the client should proceed to send the request body\n * (in the case of a request for which a body needs to be sent; for example, a POST request).\n * Sending a large request body to a server after a request has been rejected for inappropriate headers would be inefficient.\n * To have a server check the request's headers, a client must send Expect: 100-continue as a header in its initial request\n * and receive a 100 Continue status code in response before sending the body. The response 417 Expectation Failed indicates the request should not be continued.\n */\n CONTINUE = 100,\n\n /**\n * The requester has asked the server to switch protocols and the server has agreed to do so.\n */\n SWITCHING_PROTOCOLS = 101,\n\n /**\n * A WebDAV request may contain many sub-requests involving file operations, requiring a long time to complete the request.\n * This code indicates that the server has received and is processing the request, but no response is available yet.\n * This prevents the client from timing out and assuming the request was lost.\n */\n PROCESSING = 102,\n\n /**\n * Standard response for successful HTTP requests.\n * The actual response will depend on the request method used.\n * In a GET request, the response will contain an entity corresponding to the requested resource.\n * In a POST request, the response will contain an entity describing or containing the result of the action.\n */\n OK = 200,\n\n /**\n * The request has been fulfilled, resulting in the creation of a new resource.\n */\n CREATED = 201,\n\n /**\n * The request has been accepted for processing, but the processing has not been completed.\n * The request might or might not be eventually acted upon, and may be disallowed when processing occurs.\n */\n ACCEPTED = 202,\n\n /**\n * SINCE HTTP/1.1\n * The server is a transforming proxy that received a 200 OK from its origin,\n * but is returning a modified version of the origin's response.\n */\n NON_AUTHORITATIVE_INFORMATION = 203,\n\n /**\n * The server successfully processed the request and is not returning any content.\n */\n NO_CONTENT = 204,\n\n /**\n * The server successfully processed the request, but is not returning any content.\n * Unlike a 204 response, this response requires that the requester reset the document view.\n */\n RESET_CONTENT = 205,\n\n /**\n * The server is delivering only part of the resource (byte serving) due to a range header sent by the client.\n * The range header is used by HTTP clients to enable resuming of interrupted downloads,\n * or split a download into multiple simultaneous streams.\n */\n PARTIAL_CONTENT = 206,\n\n /**\n * The message body that follows is an XML message and can contain a number of separate response codes,\n * depending on how many sub-requests were made.\n */\n MULTI_STATUS = 207,\n\n /**\n * The members of a DAV binding have already been enumerated in a preceding part of the (multistatus) response,\n * and are not being included again.\n */\n ALREADY_REPORTED = 208,\n\n /**\n * The server has fulfilled a request for the resource,\n * and the response is a representation of the result of one or more instance-manipulations applied to the current instance.\n */\n IM_USED = 226,\n\n /**\n * Indicates multiple options for the resource from which the client may choose (via agent-driven content negotiation).\n * For example, this code could be used to present multiple video format options,\n * to list files with different filename extensions, or to suggest word-sense disambiguation.\n */\n MULTIPLE_CHOICES = 300,\n\n /**\n * This and all future requests should be directed to the given URI.\n */\n MOVED_PERMANENTLY = 301,\n\n /**\n * This is an example of industry practice contradicting the standard.\n * The HTTP/1.0 specification (RFC 1945) required the client to perform a temporary redirect\n * (the original describing phrase was \"Moved Temporarily\"), but popular browsers implemented 302\n * with the functionality of a 303 See Other. Therefore, HTTP/1.1 added status codes 303 and 307\n * to distinguish between the two behaviours. However, some Web applications and frameworks\n * use the 302 status code as if it were the 303.\n */\n FOUND = 302,\n\n /**\n * SINCE HTTP/1.1\n * The response to the request can be found under another URI using a GET method.\n * When received in response to a POST (or PUT/DELETE), the client should presume that\n * the server has received the data and should issue a redirect with a separate GET message.\n */\n SEE_OTHER = 303,\n\n /**\n * Indicates that the resource has not been modified since the version specified by the request headers If-Modified-Since or If-None-Match.\n * In such case, there is no need to retransmit the resource since the client still has a previously-downloaded copy.\n */\n NOT_MODIFIED = 304,\n\n /**\n * SINCE HTTP/1.1\n * The requested resource is available only through a proxy, the address for which is provided in the response.\n * Many HTTP clients (such as Mozilla and Internet Explorer) do not correctly handle responses with this status code, primarily for security reasons.\n */\n USE_PROXY = 305,\n\n /**\n * No longer used. Originally meant \"Subsequent requests should use the specified proxy.\"\n */\n SWITCH_PROXY = 306,\n\n /**\n * SINCE HTTP/1.1\n * In this case, the request should be repeated with another URI; however, future requests should still use the original URI.\n * In contrast to how 302 was historically implemented, the request method is not allowed to be changed when reissuing the original request.\n * For example, a POST request should be repeated using another POST request.\n */\n TEMPORARY_REDIRECT = 307,\n\n /**\n * The request and all future requests should be repeated using another URI.\n * 307 and 308 parallel the behaviors of 302 and 301, but do not allow the HTTP method to change.\n * So, for example, submitting a form to a permanently redirected resource may continue smoothly.\n */\n PERMANENT_REDIRECT = 308,\n\n /**\n * The server cannot or will not process the request due to an apparent client error\n * (e.g., malformed request syntax, too large size, invalid request message framing, or deceptive request routing).\n */\n BAD_REQUEST = 400,\n\n /**\n * Similar to 403 Forbidden, but specifically for use when authentication is required and has failed or has not yet\n * been provided. The response must include a WWW-Authenticate header field containing a challenge applicable to the\n * requested resource. See Basic access authentication and Digest access authentication. 401 semantically means\n * \"unauthenticated\",i.e. the user does not have the necessary credentials.\n */\n UNAUTHORIZED = 401,\n\n /**\n * Reserved for future use. The original intention was that this code might be used as part of some form of digital\n * cash or micro payment scheme, but that has not happened, and this code is not usually used.\n * Google Developers API uses this status if a particular developer has exceeded the daily limit on requests.\n */\n PAYMENT_REQUIRED = 402,\n\n /**\n * The request was valid, but the server is refusing action.\n * The user might not have the necessary permissions for a resource.\n */\n FORBIDDEN = 403,\n\n /**\n * The requested resource could not be found but may be available in the future.\n * Subsequent requests by the client are permissible.\n */\n NOT_FOUND = 404,\n\n /**\n * A request method is not supported for the requested resource;\n * for example, a GET request on a form that requires data to be presented via POST, or a PUT request on a read-only resource.\n */\n METHOD_NOT_ALLOWED = 405,\n\n /**\n * The requested resource is capable of generating only content not acceptable according to the Accept headers sent in the request.\n */\n NOT_ACCEPTABLE = 406,\n\n /**\n * The client must first authenticate itself with the proxy.\n */\n PROXY_AUTHENTICATION_REQUIRED = 407,\n\n /**\n * The server timed out waiting for the request.\n * According to HTTP specifications:\n * \"The client did not produce a request within the time that the server was prepared to wait. The client MAY repeat the request without modifications at any later time.\"\n */\n REQUEST_TIMEOUT = 408,\n\n /**\n * Indicates that the request could not be processed because of conflict in the request,\n * such as an edit conflict between multiple simultaneous updates.\n */\n CONFLICT = 409,\n\n /**\n * Indicates that the resource requested is no longer available and will not be available again.\n * This should be used when a resource has been intentionally removed and the resource should be purged.\n * Upon receiving a 410 status code, the client should not request the resource in the future.\n * Clients such as search engines should remove the resource from their indices.\n * Most use cases do not require clients and search engines to purge the resource, and a \"404 Not Found\" may be used instead.\n */\n GONE = 410,\n\n /**\n * The request did not specify the length of its content, which is required by the requested resource.\n */\n LENGTH_REQUIRED = 411,\n\n /**\n * The server does not meet one of the preconditions that the requester put on the request.\n */\n PRECONDITION_FAILED = 412,\n\n /**\n * The request is larger than the server is willing or able to process. Previously called \"Request Entity Too Large\".\n */\n PAYLOAD_TOO_LARGE = 413,\n\n /**\n * The URI provided was too long for the server to process. Often the result of too much data being encoded as a query-string of a GET request,\n * in which case it should be converted to a POST request.\n * Called \"Request-URI Too Long\" previously.\n */\n URI_TOO_LONG = 414,\n\n /**\n * The request entity has a media type which the server or resource does not support.\n * For example, the client uploads an image as image/svg+xml, but the server requires that images use a different format.\n */\n UNSUPPORTED_MEDIA_TYPE = 415,\n\n /**\n * The client has asked for a portion of the file (byte serving), but the server cannot supply that portion.\n * For example, if the client asked for a part of the file that lies beyond the end of the file.\n * Called \"Requested Range Not Satisfiable\" previously.\n */\n RANGE_NOT_SATISFIABLE = 416,\n\n /**\n * The server cannot meet the requirements of the Expect request-header field.\n */\n EXPECTATION_FAILED = 417,\n\n /**\n * This code was defined in 1998 as one of the traditional IETF April Fools' jokes, in RFC 2324, Hyper Text Coffee Pot Control Protocol,\n * and is not expected to be implemented by actual HTTP servers. The RFC specifies this code should be returned by\n * teapots requested to brew coffee. This HTTP status is used as an Easter egg in some websites, including Google.com.\n */\n I_AM_A_TEAPOT = 418,\n\n /**\n * The request was directed at a server that is not able to produce a response (for example because a connection reuse).\n */\n MISDIRECTED_REQUEST = 421,\n\n /**\n * The request was well-formed but was unable to be followed due to semantic errors.\n */\n UNPROCESSABLE_ENTITY = 422,\n\n /**\n * The resource that is being accessed is locked.\n */\n LOCKED = 423,\n\n /**\n * The request failed due to failure of a previous request (e.g., a PROPPATCH).\n */\n FAILED_DEPENDENCY = 424,\n\n /**\n * The client should switch to a different protocol such as TLS/1.0, given in the Upgrade header field.\n */\n UPGRADE_REQUIRED = 426,\n\n /**\n * The origin server requires the request to be conditional.\n * Intended to prevent \"the 'lost update' problem, where a client\n * GETs a resource's state, modifies it, and PUTs it back to the server,\n * when meanwhile a third party has modified the state on the server, leading to a conflict.\"\n */\n PRECONDITION_REQUIRED = 428,\n\n /**\n * The user has sent too many requests in a given amount of time. Intended for use with rate-limiting schemes.\n */\n TOO_MANY_REQUESTS = 429,\n\n /**\n * The server is unwilling to process the request because either an individual header field,\n * or all the header fields collectively, are too large.\n */\n REQUEST_HEADER_FIELDS_TOO_LARGE = 431,\n\n /**\n * A server operator has received a legal demand to deny access to a resource or to a set of resources\n * that includes the requested resource. The code 451 was chosen as a reference to the novel Fahrenheit 451.\n */\n UNAVAILABLE_FOR_LEGAL_REASONS = 451,\n\n /**\n * A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.\n */\n INTERNAL_SERVER_ERROR = 500,\n\n /**\n * The server either does not recognize the request method, or it lacks the ability to fulfill the request.\n * Usually this implies future availability (e.g., a new feature of a web-service API).\n */\n NOT_IMPLEMENTED = 501,\n\n /**\n * The server was acting as a gateway or proxy and received an invalid response from the upstream server.\n */\n BAD_GATEWAY = 502,\n\n /**\n * The server is currently unavailable (because it is overloaded or down for maintenance).\n * Generally, this is a temporary state.\n */\n SERVICE_UNAVAILABLE = 503,\n\n /**\n * The server was acting as a gateway or proxy and did not receive a timely response from the upstream server.\n */\n GATEWAY_TIMEOUT = 504,\n\n /**\n * The server does not support the HTTP protocol version used in the request\n */\n HTTP_VERSION_NOT_SUPPORTED = 505,\n\n /**\n * Transparent content negotiation for the request results in a circular reference.\n */\n VARIANT_ALSO_NEGOTIATES = 506,\n\n /**\n * The server is unable to store the representation needed to complete the request.\n */\n INSUFFICIENT_STORAGE = 507,\n\n /**\n * The server detected an infinite loop while processing the request.\n */\n LOOP_DETECTED = 508,\n\n /**\n * Further extensions to the request are required for the server to fulfill it.\n */\n NOT_EXTENDED = 510,\n\n /**\n * The client needs to authenticate to gain network access.\n * Intended for use by intercepting proxies used to control access to the network (e.g., \"captive portals\" used\n * to require agreement to Terms of Service before granting full Internet access via a Wi-Fi hotspot).\n */\n NETWORK_AUTHENTICATION_REQUIRED = 511\n}\n\n/**\n * HttpStatusCodeMap\n */\nexport const HttpStatusCodeMap = new Map([\n [100, \"CONTINUE\"],\n [101, \"SWITCHING_PROTOCOLS\"],\n [102, \"PROCESSING\"],\n [200, \"OK\"],\n [201, \"CREATED\"],\n [202, \"ACCEPTED\"],\n [203, \"NON_AUTHORITATIVE_INFORMATION\"],\n [204, \"NO_CONTENT\"],\n [205, \"RESET_CONTENT\"],\n [206, \"PARTIAL_CONTENT\"],\n [207, \"MULTI_STATUS\"],\n [208, \"ALREADY_REPORTED\"],\n [226, \"IM_USED\"],\n [300, \"MULTIPLE_CHOICES\"],\n [301, \"MOVED_PERMANENTLY\"],\n [302, \"FOUND\"],\n [303, \"SEE_OTHER\"],\n [304, \"NOT_MODIFIED\"],\n [305, \"USE_PROXY\"],\n [306, \"SWITCH_PROXY\"],\n [307, \"TEMPORARY_REDIRECT\"],\n [308, \"PERMANENT_REDIRECT\"],\n [400, \"BAD_REQUEST\"],\n [401, \"UNAUTHORIZED\"],\n [402, \"PAYMENT_REQUIRED\"],\n [403, \"FORBIDDEN\"],\n [404, \"NOT_FOUND\"],\n [405, \"METHOD_NOT_ALLOWED\"],\n [406, \"NOT_ACCEPTABLE\"],\n [407, \"PROXY_AUTHENTICATION_REQUIRED\"],\n [408, \"REQUEST_TIMEOUT\"],\n [409, \"CONFLICT\"],\n [410, \"GONE\"],\n [411, \"LENGTH_REQUIRED\"],\n [412, \"PRECONDITION_FAILED\"],\n [413, \"PAYLOAD_TOO_LARGE\"],\n [414, \"URI_TOO_LONG\"],\n [415, \"UNSUPPORTED_MEDIA_TYPE\"],\n [416, \"RANGE_NOT_SATISFIABLE\"],\n [417, \"EXPECTATION_FAILED\"],\n [418, \"I_AM_A_TEAPOT\"],\n [421, \"MISDIRECTED_REQUEST\"],\n [422, \"UNPROCESSABLE_ENTITY\"],\n [423, \"LOCKED\"],\n [424, \"FAILED_DEPENDENCY\"],\n [426, \"UPGRADE_REQUIRED\"],\n [428, \"PRECONDITION_REQUIRED\"],\n [429, \"TOO_MANY_REQUESTS\"],\n [431, \"REQUEST_HEADER_FIELDS_TOO_LARGE\"],\n [451, \"UNAVAILABLE_FOR_LEGAL_REASONS\"],\n [500, \"INTERNAL_SERVER_ERROR\"],\n [501, \"NOT_IMPLEMENTED\"],\n [502, \"BAD_GATEWAY\"],\n [503, \"SERVICE_UNAVAILABLE\"],\n [504, \"GATEWAY_TIMEOUT\"],\n [505, \"HTTP_VERSION_NOT_SUPPORTED\"],\n [506, \"VARIANT_ALSO_NEGOTIATES\"],\n [507, \"INSUFFICIENT_STORAGE\"],\n [508, \"LOOP_DETECTED\"],\n [510, \"NOT_EXTENDED\"],\n [511, \"NETWORK_AUTHENTICATION_REQUIRED\"],\n]);\n\n/**\n * GrpcStatusCode\n *\n * @export\n * @enum {number}\n */\nexport enum GrpcStatusCode {\n OK = 0,\n CANCELLED = 1,\n UNKNOWN = 2,\n INVALID_ARGUMENT = 3,\n DEADLINE_EXCEEDED = 4,\n NOT_FOUND = 5,\n ALREADY_EXISTS = 6,\n PERMISSION_DENIED = 7,\n RESOURCE_EXHAUSTED = 8,\n FAILED_PRECONDITION = 9,\n ABORTED = 10,\n OUT_OF_RANGE = 11,\n UNIMPLEMENTED = 12,\n INTERNAL = 13,\n UNAVAILABLE = 14,\n DATA_LOSS = 15,\n UNAUTHENTICATED = 16\n}\n/**\n * GrpcStatusCodeMap\n */\nexport const GrpcStatusCodeMap = new Map([\n [0, \"OK\"],\n [1, \"CANCELLED\"],\n [2, \"UNKNOWN\"],\n [3, \"INVALID_ARGUMENT\"],\n [4, \"DEADLINE_EXCEEDED\"],\n [5, \"NOT_FOUND\"],\n [6, \"ALREADY_EXISTS\"],\n [7, \"PERMISSION_DENIED\"],\n [8, \"RESOURCE_EXHAUSTED\"],\n [9, \"FAILED_PRECONDITION\"],\n [10, \"ABORTED\"],\n [11, \"OUT_OF_RANGE\"],\n [12, \"UNIMPLEMENTED\"],\n [13, \"INTERNAL\"],\n [14, \"UNAVAILABLE\"],\n [15, \"DATA_LOSS\"],\n [16, \"UNAUTHENTICATED\"],\n]);\n\n/**\n * Convert HttpStatusCode to GrpcStatusCode\n * https://chromium.googlesource.com/external/github.com/grpc/grpc/+/refs/heads/chromium-deps/2016-10-25/doc/http-grpc-status-mapping.md\n * @export\n * @param {HttpStatusCode} code\n * @returns {*} {GrpcStatusCode}\n */\nexport function StatusCodeConvert(code: HttpStatusCode): GrpcStatusCode {\n switch (code) {\n case 200: //HttpStatusCode.OK:\n return 0;//GrpcStatusCode.OK;\n case 304: //HttpStatusCode.NOT_MODIFIED:\n return 1; //GrpcStatusCode.CANCELLED;\n case 400: //HttpStatusCode.BAD_REQUEST:\n return 3; //GrpcStatusCode.INVALID_ARGUMENT;\n case 408: //HttpStatusCode.REQUEST_TIMEOUT:\n return 4; //GrpcStatusCode.DEADLINE_EXCEEDED;\n case 404: //HttpStatusCode.NOT_FOUND:\n return 5; //GrpcStatusCode.NOT_FOUND;\n case 409: //HttpStatusCode.CONFLICT:\n return 6; //GrpcStatusCode.ALREADY_EXISTS;\n case 403: //HttpStatusCode.FORBIDDEN:\n return 7; //GrpcStatusCode.PERMISSION_DENIED;\n case 429: //HttpStatusCode.TOO_MANY_REQUESTS:\n return 8; //GrpcStatusCode.RESOURCE_EXHAUSTED;\n case 412: //HttpStatusCode.PRECONDITION_FAILED:\n return 9; //GrpcStatusCode.FAILED_PRECONDITION;\n case 421: //HttpStatusCode.MISDIRECTED_REQUEST:\n return 10; //GrpcStatusCode.ABORTED;\n case 416: //HttpStatusCode.RANGE_NOT_SATISFIABLE:\n return 11; //GrpcStatusCode.OUT_OF_RANGE;\n case 501: //HttpStatusCode.NOT_IMPLEMENTED:\n return 12; //GrpcStatusCode.UNIMPLEMENTED;\n case 500: //HttpStatusCode.INTERNAL_SERVER_ERROR:\n return 13; //GrpcStatusCode.INTERNAL;\n case 503: //HttpStatusCode.SERVICE_UNAVAILABLE:\n return 14; //GrpcStatusCode.UNAVAILABLE;\n case 410: //HttpStatusCode.GONE:\n return 15; //GrpcStatusCode.DATA_LOSS;\n case 401: //HttpStatusCode.UNAUTHORIZED:\n return 16; //GrpcStatusCode.UNAUTHENTICATED;\n\n default:\n return 2; //GrpcStatusCode.UNKNOWN;\n }\n} \n\n/**\n * Common error codes enum\n */\nexport enum CommonErrorCode {\n SUCCESS = 0,\n GENERAL_ERROR = 1,\n VALIDATION_ERROR = 1001,\n AUTHENTICATION_ERROR = 1002,\n AUTHORIZATION_ERROR = 1003,\n RESOURCE_NOT_FOUND = 1004,\n RESOURCE_CONFLICT = 1005,\n RATE_LIMIT_EXCEEDED = 1006,\n INTERNAL_SERVER_ERROR = 1007,\n SERVICE_UNAVAILABLE = 1008,\n TIMEOUT_ERROR = 1009,\n NETWORK_ERROR = 1010\n}","/*\n * @Description: output data\n * @Usage: \n * @Author: richen\n * @Date: 2024-01-03 22:03:34\n * @LastEditTime: 2024-03-15 06:16:52\n * @License: BSD (3-Clause)\n * @Copyright (c): <richenlin(at)gmail.com>\n */\n\nimport { Helper } from \"koatty_lib\";\n\n/**\n * Interface for Api output\n */\nexport interface JsonResult<T = any> {\n code: number; // 错误码\n message: string; // 消息内容\n data: T; // 数据\n}\n\n/**\n * Interface for Api CodeError\n */\nexport interface CodeError {\n code?: number;\n message?: string;\n data?: unknown;\n}\n\n/**\n * Type guard for JsonResult\n * \n * @param {unknown} obj - Object to check\n * @returns {obj is JsonResult} Type guard result\n */\nfunction isJsonResult(obj: unknown): obj is JsonResult {\n return !!(\n obj &&\n typeof obj === 'object' &&\n 'code' in obj &&\n 'message' in obj &&\n 'data' in obj &&\n typeof (obj as JsonResult).code === 'number' &&\n typeof (obj as JsonResult).message === 'string'\n );\n}\n\n/**\n * Type guard for CodeError\n * \n * @param {unknown} obj - Object to check\n * @returns {obj is CodeError} Type guard result\n */\nfunction isCodeError(obj: unknown): obj is CodeError {\n return !!(\n obj &&\n typeof obj === 'object' &&\n ('code' in obj || 'message' in obj || 'data' in obj)\n );\n}\n\n/**\n * Safe string conversion\n * \n * @param {unknown} value - Value to convert\n * @returns {string} String representation\n */\nfunction safeStringify(value: unknown): string {\n if (typeof value === 'string') {\n return value;\n }\n \n if (value === null || value === undefined) {\n return '';\n }\n \n if (typeof value === 'object') {\n try {\n return JSON.stri