forked from sheetjs/sheetjs
		
	- read and write support for Flat ODS files - read support for Uniform Office Spreadsheet (UOS) - IE6-8 cell regex split fix (fixes #350 #140 #268 h/t @Aymkdn @C0d3ine) - replace substr negative index with slices (fixes #351 h/t @Aymkdn) - ODS parsexmltag ignores ext overrides (fixes #548 h/t @lgodard) - csv can be written using write/writeFile with csv type - added `type` to README (fixes #432 h/t @tomkel)
		
			
				
	
	
		
			32 lines
		
	
	
		
			826 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			826 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| function write_ods(wb/*:any*/, opts/*:any*/) {
 | |
| 	if(opts.bookType == "fods") return write_content_xml(wb, opts);
 | |
| 
 | |
| 	/*:: if(!jszip) throw new Error("JSZip is not available"); */
 | |
| 	var zip = new jszip();
 | |
| 	var f = "";
 | |
| 
 | |
| 	var manifest/*:Array<Array<string> >*/ = [];
 | |
| 	var rdf = [];
 | |
| 
 | |
| 	/* 3:3.3 and 2:2.2.4 */
 | |
| 	f = "mimetype";
 | |
| 	zip.file(f, "application/vnd.oasis.opendocument.spreadsheet");
 | |
| 
 | |
| 	/* Part 1 Section 2.2 Documents */
 | |
| 	f = "content.xml";
 | |
| 	zip.file(f, write_content_xml(wb, opts));
 | |
| 	manifest.push([f, "text/xml"]);
 | |
| 	rdf.push([f, "ContentFile"]);
 | |
| 
 | |
| 	/* Part 3 Section 6 Metadata Manifest File */
 | |
| 	f = "manifest.rdf";
 | |
| 	zip.file(f, write_rdf(rdf, opts));
 | |
| 	manifest.push([f, "application/rdf+xml"]);
 | |
| 
 | |
| 	/* Part 3 Section 4 Manifest File */
 | |
| 	f = "META-INF/manifest.xml";
 | |
| 	zip.file(f, write_manifest(manifest, opts));
 | |
| 
 | |
| 	return zip;
 | |
| }
 |