22 lines
775 B
JavaScript
22 lines
775 B
JavaScript
var CT_VBA = "application/vnd.ms-office.vbaProject";
|
|
function make_vba_xls(cfb) {
|
|
var newcfb = CFB.utils.cfb_new({ root: "R" });
|
|
cfb.FullPaths.forEach(function(p, i) {
|
|
if (p.slice(-1) === "/" || !p.match(/_VBA_PROJECT_CUR/))
|
|
return;
|
|
var newpath = p.replace(/^[^\/]*/, "R").replace(/\/_VBA_PROJECT_CUR\u0000*/, "");
|
|
CFB.utils.cfb_add(newcfb, newpath, cfb.FileIndex[i].content);
|
|
});
|
|
return CFB.write(newcfb);
|
|
}
|
|
function fill_vba_xls(cfb, vba) {
|
|
vba.FullPaths.forEach(function(p, i) {
|
|
if (i == 0)
|
|
return;
|
|
var newpath = p.replace(/^[\/]*[^\/]*[\/]/, "/_VBA_PROJECT_CUR/");
|
|
if (newpath.slice(-1) !== "/")
|
|
CFB.utils.cfb_add(cfb, newpath, vba.FileIndex[i].content);
|
|
});
|
|
}
|
|
var VBAFMTS = ["xlsb", "xlsm", "xlam", "biff8", "xla"];
|