UNPKG

test-openapi

Version:
66 lines (40 loc) 1.24 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.serializeOutput=void 0;var _crawl=require("../utils/crawl.js"); var _convert=require("../errors/convert.js"); var _fail=require("./fail.js"); var _common=require("./common.js"); const serializeOutput=function({task,plugins}){ const state={}; const taskA=(0,_crawl.crawl)( task, (value,path)=>serializeOutputValue({value,path,state}), { topDown:true}); const{error}=state; const taskB=(0,_fail.addSerializeFail)({task:taskA,error,plugins}); return taskB; };exports.serializeOutput=serializeOutput; const serializeOutputValue=function({value,path,state}){ if(value===undefined){ return _common.UNDEFINED; } if(value===_common.UNDEFINED){ return _common.ESCAPED_UNDEFINED; } if((0,_common.isJsonType)(value)){ return value; } if(typeof value==="function"){ return serializeFunction(value); } if(value instanceof Error){ return(0,_convert.convertPlainObject)(value); } const message=(0,_common.getMessage)({value,path}); state.error={message,value,path}; }; const serializeFunction=function({name}){ const nameA=name||DEFAULT_FUNC_NAME; return`function ${nameA}()`; }; const DEFAULT_FUNC_NAME="anonymous"; //# sourceMappingURL=output.js.map