プレイグラウンド、サンドボックス、使い捨てスクリプト置き場
0

Configure Feed

Select the types of activity you want to include in your feed.

create serialize-error

Kohei Watanabe (Jan 23, 2025, 11:14 AM +0900) b395df09 8f13edab

+57
+5
serialize-error/deno.json
··· 1 + { 2 + "imports": { 3 + "serialize-error": "npm:serialize-error@^12.0.0" 4 + } 5 + }
+32
serialize-error/deno.lock
··· 1 + { 2 + "version": "4", 3 + "specifiers": { 4 + "npm:@types/node@*": "22.5.4", 5 + "npm:serialize-error@*": "12.0.0" 6 + }, 7 + "npm": { 8 + "@types/node@22.5.4": { 9 + "integrity": "sha512-FDuKUJQm/ju9fT/SeX/6+gBzoPzlVCzfzmGkwKvRHQVxi4BntVbyIwf6a4Xn62mrvndLiml6z/UBXIdEVjQLXg==", 10 + "dependencies": [ 11 + "undici-types" 12 + ] 13 + }, 14 + "serialize-error@12.0.0": { 15 + "integrity": "sha512-ZYkZLAvKTKQXWuh5XpBw7CdbSzagarX39WyZ2H07CDLC5/KfsRGlIXV8d4+tfqX1M7916mRqR1QfNHSij+c9Pw==", 16 + "dependencies": [ 17 + "type-fest" 18 + ] 19 + }, 20 + "type-fest@4.33.0": { 21 + "integrity": "sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==" 22 + }, 23 + "undici-types@6.19.8": { 24 + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" 25 + } 26 + }, 27 + "workspace": { 28 + "dependencies": [ 29 + "npm:serialize-error@12" 30 + ] 31 + } 32 + }
+7
serialize-error/main.ts
··· 1 + import { addKnownErrorConstructor } from "npm:serialize-error"; 2 + 3 + export class E extends Error { 4 + code = "ERR"; 5 + } 6 + 7 + addKnownErrorConstructor(E);
+13
serialize-error/test.ts
··· 1 + import assert from "node:assert"; 2 + import { deserializeError, serializeError } from "npm:serialize-error"; 3 + import { E } from "./main.ts"; 4 + 5 + Deno.test("serializeError", () => { 6 + const e = serializeError(new E()); 7 + assert(e.code === "ERR"); 8 + assert(e.stack?.match(/^Error\n/)); 9 + }); 10 + 11 + Deno.test("deserializeError", () => { 12 + assert(deserializeError({ name: "E", message: "🦄" }) instanceof E); 13 + });