{"version":3,"sources":["../src/UberDirectTypeProtect.ts"],"sourcesContent":["import { ZodError } from 'zod'\n\nexport class UberDirectTypeProtectErrorHandling {\n    callback: ((error: ZodError) => void) | null = null\n\n    constructor(private enableThrow = false) {\n    }\n\n    /**\n     * set callback to send error to broker of monitoring system or message queue\n     * @param callback\n     */\n    setThrowCallback(callback: (error: ZodError) => void) {\n        this.callback = callback\n    }\n\n    /**\n     * set to true to throw error if type is wrong\n     * set to false to only send a warning to the callback\n     * @param enableThrow\n     */\n    setEnableThrow(enableThrow: boolean) {\n        this.enableThrow = enableThrow\n    }\n\n    /**\n     * throw error if enableThrow is true\n     * always send error to callback\n     * @param error\n     * @protected\n     */\n    protected throw(error: ZodError) {\n        if (this.callback) {\n            this.callback(error)\n        }\n        if (this.enableThrow) {\n            throw error\n        }\n    }\n}\n"],"mappings":";AAEO,MAAM,mCAAmC;AAAA,EAG5C,YAAoB,cAAc,OAAO;AAArB;AAFpB,oBAA+C;AAAA,EAG/C;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,iBAAiB,UAAqC;AAClD,SAAK,WAAW;AAAA,EACpB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,eAAe,aAAsB;AACjC,SAAK,cAAc;AAAA,EACvB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQU,MAAM,OAAiB;AAC7B,QAAI,KAAK,UAAU;AACf,WAAK,SAAS,KAAK;AAAA,IACvB;AACA,QAAI,KAAK,aAAa;AAClB,YAAM;AAAA,IACV;AAAA,EACJ;AACJ;","names":[]}