| // Generated by CoffeeScript 1.12.7 |
| (function() { |
| var XMLWriterBase, |
| hasProp = {}.hasOwnProperty; |
| |
| module.exports = XMLWriterBase = (function() { |
| function XMLWriterBase(options) { |
| var key, ref, ref1, ref2, ref3, ref4, ref5, ref6, value; |
| options || (options = {}); |
| this.pretty = options.pretty || false; |
| this.allowEmpty = (ref = options.allowEmpty) != null ? ref : false; |
| if (this.pretty) { |
| this.indent = (ref1 = options.indent) != null ? ref1 : ' '; |
| this.newline = (ref2 = options.newline) != null ? ref2 : '\n'; |
| this.offset = (ref3 = options.offset) != null ? ref3 : 0; |
| this.dontprettytextnodes = (ref4 = options.dontprettytextnodes) != null ? ref4 : 0; |
| } else { |
| this.indent = ''; |
| this.newline = ''; |
| this.offset = 0; |
| this.dontprettytextnodes = 0; |
| } |
| this.spacebeforeslash = (ref5 = options.spacebeforeslash) != null ? ref5 : ''; |
| if (this.spacebeforeslash === true) { |
| this.spacebeforeslash = ' '; |
| } |
| this.newlinedefault = this.newline; |
| this.prettydefault = this.pretty; |
| ref6 = options.writer || {}; |
| for (key in ref6) { |
| if (!hasProp.call(ref6, key)) continue; |
| value = ref6[key]; |
| this[key] = value; |
| } |
| } |
| |
| XMLWriterBase.prototype.set = function(options) { |
| var key, ref, value; |
| options || (options = {}); |
| if ("pretty" in options) { |
| this.pretty = options.pretty; |
| } |
| if ("allowEmpty" in options) { |
| this.allowEmpty = options.allowEmpty; |
| } |
| if (this.pretty) { |
| this.indent = "indent" in options ? options.indent : ' '; |
| this.newline = "newline" in options ? options.newline : '\n'; |
| this.offset = "offset" in options ? options.offset : 0; |
| this.dontprettytextnodes = "dontprettytextnodes" in options ? options.dontprettytextnodes : 0; |
| } else { |
| this.indent = ''; |
| this.newline = ''; |
| this.offset = 0; |
| this.dontprettytextnodes = 0; |
| } |
| this.spacebeforeslash = "spacebeforeslash" in options ? options.spacebeforeslash : ''; |
| if (this.spacebeforeslash === true) { |
| this.spacebeforeslash = ' '; |
| } |
| this.newlinedefault = this.newline; |
| this.prettydefault = this.pretty; |
| ref = options.writer || {}; |
| for (key in ref) { |
| if (!hasProp.call(ref, key)) continue; |
| value = ref[key]; |
| this[key] = value; |
| } |
| return this; |
| }; |
| |
| XMLWriterBase.prototype.space = function(level) { |
| var indent; |
| if (this.pretty) { |
| indent = (level || 0) + this.offset + 1; |
| if (indent > 0) { |
| return new Array(indent).join(this.indent); |
| } else { |
| return ''; |
| } |
| } else { |
| return ''; |
| } |
| }; |
| |
| return XMLWriterBase; |
| |
| })(); |
| |
| }).call(this); |