(obj, level, comma, isChild, settings)
| 109 | } |
| 110 | |
| 111 | function processObject(obj, level, comma, isChild, settings) { |
| 112 | var keys = Object.keys(obj); |
| 113 | if (keys.length === 0) { |
| 114 | return indent(level, "<span class='jsonFormatter-objectBrace'>{ }</span>" + comma, settings); |
| 115 | } |
| 116 | |
| 117 | var expander = settings.collapsible |
| 118 | ? "<span class='jsonFormatter-expander jsonFormatter-expanded'></span><span class='jsonFormatter-collapsible'>" |
| 119 | : ''; |
| 120 | var closer = settings.collapsible ? '</span>' : ''; |
| 121 | var html = indent(level, "<span class='jsonFormatter-objectBrace'>{</span>" + expander, settings); |
| 122 | |
| 123 | for (var i = 0; i < keys.length; i++) { |
| 124 | var key = keys[i]; |
| 125 | var q = settings.quoteKeys ? '"' : ''; |
| 126 | html += indent(level + 1, |
| 127 | "<span class='jsonFormatter-propertyName'>" + q + escapeHtml(key) + q + "</span>: " + |
| 128 | processValue(obj[key], level + 1, i < keys.length - 1, false, settings), |
| 129 | settings); |
| 130 | } |
| 131 | |
| 132 | html += indent(level, closer + "<span class='jsonFormatter-objectBrace'>}</span>" + comma, settings); |
| 133 | return html; |
| 134 | } |
| 135 | |
| 136 | $.fn.jsonFormatter = function (options) { |
| 137 | var settings = $.extend({}, defaults, options); |
no test coverage detected