abapmerge
Version:
Merge ABAP INCLUDEs into single file
74 lines • 2.26 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.onClick = onClick;
var file_1 = __importDefault(require("./file"));
var file_list_1 = __importDefault(require("./file_list"));
var merge_1 = __importDefault(require("./merge"));
var files;
function fname(s) {
return s.split(".")[0];
}
function onClick(e) {
var merged;
try {
merged = merge_1.default.merge(files, e.srcElement.text);
}
catch (err) {
alert(err);
return;
}
document.getElementById("filelist").innerHTML =
"<pre>" +
merged +
"</pre>";
}
function redraw() {
var html = "Select main file:<br>";
for (var i = 0; i < files.length(); i++) {
html = html +
"<a id='myLink" + i + "' title='Set as main' href='#' value=''>" +
files.get(i).getName() +
"</a><br>";
}
document.getElementById("filelist").innerHTML = html;
for (var i = 0; i < files.length(); i++) {
document.getElementById("myLink" + i).onclick = onClick;
}
}
function reset() {
files = new file_list_1.default();
document.getElementById("filelist").innerHTML = "";
}
function setupReader(file) {
var name = file.name;
var reader = new FileReader();
reader.onload = function () {
files.push(new file_1.default(fname(name), reader.result));
redraw();
};
reader.readAsText(file);
}
function handleFileSelect(event) {
event.stopPropagation();
event.preventDefault();
var input = event.dataTransfer.files;
reset();
for (var i = 0; i < input.length; i++) {
setupReader(input[i]);
}
}
function handleDragOver(evt) {
evt.stopPropagation();
evt.preventDefault();
evt.dataTransfer.dropEffect = "copy"; // explicitly show this is a copy.
}
function setupListeners() {
var dropZone = document.getElementById("drop_zone");
dropZone.addEventListener("dragover", handleDragOver, false);
dropZone.addEventListener("drop", handleFileSelect, false);
}
document.body.onload = setupListeners;
//# sourceMappingURL=web.js.map