You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					109 lines
				
				2.6 KiB
			
		
		
			
		
	
	
					109 lines
				
				2.6 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								// Generated by CoffeeScript 1.12.7
							 | 
						||
| 
								 | 
							
								(function() {
							 | 
						||
| 
								 | 
							
								  var NodeType, XMLAttribute, XMLNode;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  NodeType = require('./NodeType');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  XMLNode = require('./XMLNode');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  module.exports = XMLAttribute = (function() {
							 | 
						||
| 
								 | 
							
								    function XMLAttribute(parent, name, value) {
							 | 
						||
| 
								 | 
							
								      this.parent = parent;
							 | 
						||
| 
								 | 
							
								      if (this.parent) {
							 | 
						||
| 
								 | 
							
								        this.options = this.parent.options;
							 | 
						||
| 
								 | 
							
								        this.stringify = this.parent.stringify;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      if (name == null) {
							 | 
						||
| 
								 | 
							
								        throw new Error("Missing attribute name. " + this.debugInfo(name));
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      this.name = this.stringify.name(name);
							 | 
						||
| 
								 | 
							
								      this.value = this.stringify.attValue(value);
							 | 
						||
| 
								 | 
							
								      this.type = NodeType.Attribute;
							 | 
						||
| 
								 | 
							
								      this.isId = false;
							 | 
						||
| 
								 | 
							
								      this.schemaTypeInfo = null;
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'nodeType', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return this.type;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'ownerElement', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return this.parent;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'textContent', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return this.value;
							 | 
						||
| 
								 | 
							
								      },
							 | 
						||
| 
								 | 
							
								      set: function(value) {
							 | 
						||
| 
								 | 
							
								        return this.value = value || '';
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'namespaceURI', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return '';
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'prefix', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return '';
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'localName', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return this.name;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    Object.defineProperty(XMLAttribute.prototype, 'specified', {
							 | 
						||
| 
								 | 
							
								      get: function() {
							 | 
						||
| 
								 | 
							
								        return true;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    XMLAttribute.prototype.clone = function() {
							 | 
						||
| 
								 | 
							
								      return Object.create(this);
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    XMLAttribute.prototype.toString = function(options) {
							 | 
						||
| 
								 | 
							
								      return this.options.writer.attribute(this, this.options.writer.filterOptions(options));
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    XMLAttribute.prototype.debugInfo = function(name) {
							 | 
						||
| 
								 | 
							
								      name = name || this.name;
							 | 
						||
| 
								 | 
							
								      if (name == null) {
							 | 
						||
| 
								 | 
							
								        return "parent: <" + this.parent.name + ">";
							 | 
						||
| 
								 | 
							
								      } else {
							 | 
						||
| 
								 | 
							
								        return "attribute: {" + name + "}, parent: <" + this.parent.name + ">";
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    XMLAttribute.prototype.isEqualNode = function(node) {
							 | 
						||
| 
								 | 
							
								      if (node.namespaceURI !== this.namespaceURI) {
							 | 
						||
| 
								 | 
							
								        return false;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      if (node.prefix !== this.prefix) {
							 | 
						||
| 
								 | 
							
								        return false;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      if (node.localName !== this.localName) {
							 | 
						||
| 
								 | 
							
								        return false;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      if (node.value !== this.value) {
							 | 
						||
| 
								 | 
							
								        return false;
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								      return true;
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return XMLAttribute;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  })();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								}).call(this);
							 |