yamlify-object
Version:
Stringify object/array with yaml syntax
2 lines • 2.88 kB
JavaScript
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.yamlifyObject=e():t.yamlifyObject=e()}(this,(()=>(()=>{"use strict";var t={d:(e,r)=>{for(var n in r)t.o(r,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:r[n]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},e={};function r(t){return Array.isArray(t)?"array":t instanceof Date?"date":t instanceof Error?"error":t instanceof RegExp?"regexp":null===t?"null":"object"==typeof t&&"[object Object]"===Object.prototype.toString.call(t)?"object":typeof t}t.d(e,{default:()=>s});var n={base:o,date:o,error:o,symbol:o,string:o,number:o,boolean:o,regexp:o,null:o,undefined:o};function o(t){return t}var c={indent:" ",prefix:"\n",postfix:"",errorToString:function(t,e){return Error.prototype.toString.call(t)},dateToString:function(t){return"new Date(".concat(Date.prototype.toISOString.call(t),")")},colors:n};function a(t){return void 0===t&&(t={}),Object.assign({},c,t,{colors:Object.assign({},n,t.colors)})}function i(t,e){void 0===t&&(t=1),void 0===e&&(e=" ");for(var r="",n=0;n<t;n+=1)r+=e;return r}var u=["object","array"];function s(t,e){var n=a(e),o=n.colors,c=n.prefix,s=n.postfix,l=n.dateToString,f=n.errorToString,b=n.indent,d=new Map;function g(t,e,n){if(void 0===e&&(e=1),void 0===n&&(n=0),0===Object.keys(t).length)return" ".concat(o.base("{}"));var c="\n",a=i(e,b);return Object.keys(t).forEach((function(s){var l=t[s],f=r(l),b=i(n," "),d=u.includes(f)?"":" ",g=j(l)?" ".concat(o.base("[Circular]")):y(f,l,e+1,n);c+="".concat(b).concat(a).concat(o.base("".concat(s,":"))).concat(d).concat(g,"\n")})),c.substring(0,c.length-1)}function p(t,e,n){if(void 0===e&&(e=1),void 0===n&&(n=0),0===t.length)return" ".concat(o.base("[]"));var c="\n",a=i(e,b);return t.forEach((function(t){var u=r(t),s=i(n," "),l=j(t)?o.base("[Circular]"):y(u,t,e,n+1).toString().trimLeft();c+="".concat(s).concat(a).concat("".concat(o.base("-")," ")).concat(l,"\n")})),c.substring(0,c.length-1)}function y(t,e,r,n){switch(t){case"array":return p(e,r,n);case"object":return g(e,r,n);case"string":return o.string(e);case"symbol":return o.symbol(e.toString());case"number":return o.number(e);case"boolean":return o.boolean(e);case"null":return o.null("null");case"undefined":return o.undefined("undefined");case"date":return o.date(l(e));case"error":return o.error(f(e,i(r,b)));case"regexp":return o.regexp(e.toString());default:return e&&e.toString?e.toString():Object.prototype.toString.call(e)}}function j(t){return!(!["object","array"].includes(r(t))||!d.has(t)&&(d.set(t,!0),1))}var v="";return d.set(t,!0),"object"===r(t)&&Object.keys(t).length>0?v=g(t):"array"===r(t)&&t.length>0&&(v=p(t)),0===v.length?"":"".concat(c).concat(v.slice(1)).concat(s)}return e.default})()));
//# sourceMappingURL=yamlify-object.js.map