/** * Extend this class when the new class needs to generate an xml file * @private */Ext.define('Ext.exporter.file.ooxml.Xml', { extend: 'Ext.exporter.file.ooxml.Base', requires: [ 'Ext.exporter.file.ooxml.Relationship', 'Ext.exporter.file.ooxml.ContentType' ], config: { /** * @cfg {String} * * Full path of the file inside the zip package */ path: null, relationship: null, contentType: null }, tplNonAttributes: [ 'path', 'relationship', 'contentType' ], destroy: function(){ this.setRelationship(null); this.setContentType(null); this.callParent(); }, applyRelationship: function(data){ if(!data || data.isRelationship){ return data; } return new Ext.exporter.file.ooxml.Relationship(data); }, updateRelationship: function(data, oldData){ Ext.destroy(oldData); }, applyContentType: function(data){ if(!data || data.isContentType){ return data; } return new Ext.exporter.file.ooxml.ContentType(data); }, updateContentType: function(data, oldData){ Ext.destroy(oldData); }, /** * Collect all files that are part of the final zip file * @param {Object} files Object key is the path to the file and object value is the content * @param {Ext.exporter.file.ooxml.ContentType[]} types */ collectFiles: Ext.emptyFn });