tupleson
Version:
A hackable JSON serializer/deserializer
1 lines • 2.22 kB
Source Map (JSON)
{"version":3,"sources":["../../src/async/asyncErrors.ts"],"sourcesContent":["import { TsonError } from \"../errors.js\";\nimport { isPlainObject } from \"../internals/isPlainObject.js\";\n\nfunction getErrorMessageFromUnknown(unknown: unknown): null | string {\n\tif (typeof unknown === \"string\") {\n\t\treturn unknown;\n\t}\n\n\tif (unknown instanceof Error) {\n\t\treturn unknown.message;\n\t}\n\n\tif (isPlainObject(unknown) && typeof unknown[\"message\"] === \"string\") {\n\t\treturn unknown[\"message\"];\n\t}\n\n\treturn null;\n}\n\nexport class TsonPromiseRejectionError extends TsonError {\n\tconstructor(cause: unknown) {\n\t\t// get error message from cause if possible\n\t\tconst message = getErrorMessageFromUnknown(cause) ?? \"Promise rejected\";\n\t\tsuper(message, { cause });\n\t\tthis.name = \"TsonPromiseRejectionError\";\n\t}\n\n\tstatic from(cause: unknown) {\n\t\treturn cause instanceof Error\n\t\t\t? cause\n\t\t\t: new TsonPromiseRejectionError(cause);\n\t}\n}\n\nexport class TsonStreamInterruptedError extends TsonError {\n\tconstructor(cause: unknown) {\n\t\tsuper(\n\t\t\t\"Stream interrupted: \" +\n\t\t\t\t(getErrorMessageFromUnknown(cause) ?? \"unknown reason\"),\n\t\t\t{ cause },\n\t\t);\n\t\tthis.name = \"TsonStreamInterruptedError\";\n\t}\n}\n\nexport class TsonAbortError extends TsonError {\n\tconstructor(cause: unknown) {\n\t\tsuper(\"The user aborted a request.\", { cause });\n\t\tthis.name = \"TsonAbortError\";\n\t}\n}\n"],"mappings":"AAAA,SAAS,iBAAiB;AAC1B,SAAS,qBAAqB;AAE9B,SAAS,2BAA2B,SAAiC;AACpE,MAAI,OAAO,YAAY,UAAU;AAChC,WAAO;AAAA,EACR;AAEA,MAAI,mBAAmB,OAAO;AAC7B,WAAO,QAAQ;AAAA,EAChB;AAEA,MAAI,cAAc,OAAO,KAAK,OAAO,QAAQ,SAAS,MAAM,UAAU;AACrE,WAAO,QAAQ,SAAS;AAAA,EACzB;AAEA,SAAO;AACR;AAEO,MAAM,kCAAkC,UAAU;AAAA,EACxD,YAAY,OAAgB;AAE3B,UAAM,UAAU,2BAA2B,KAAK,KAAK;AACrD,UAAM,SAAS,EAAE,MAAM,CAAC;AACxB,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,OAAO,KAAK,OAAgB;AAC3B,WAAO,iBAAiB,QACrB,QACA,IAAI,0BAA0B,KAAK;AAAA,EACvC;AACD;AAEO,MAAM,mCAAmC,UAAU;AAAA,EACzD,YAAY,OAAgB;AAC3B;AAAA,MACC,0BACE,2BAA2B,KAAK,KAAK;AAAA,MACvC,EAAE,MAAM;AAAA,IACT;AACA,SAAK,OAAO;AAAA,EACb;AACD;AAEO,MAAM,uBAAuB,UAAU;AAAA,EAC7C,YAAY,OAAgB;AAC3B,UAAM,+BAA+B,EAAE,MAAM,CAAC;AAC9C,SAAK,OAAO;AAAA,EACb;AACD;","names":[]}