@midlandsbank/node-nacha
Version:
NACHA ACH EFT File Parser/Formatter for CCD+ / PPD+ / CTX+
50 lines (44 loc) • 1.48 kB
JavaScript
// Generated by CoffeeScript 1.11.1
var Transform, ach, edit, path, to;
Transform = require('stream').Transform;
path = require('path');
to = require('./to');
ach = require('../../lib');
module.exports = edit = function(editorsArray) {
var editorTransform, error, errorProvider, i, len, transform;
for (i = 0, len = editorsArray.length; i < len; i++) {
editorTransform = editorsArray[i];
try {
if ('string' === typeof editorTransform) {
if (editorTransform.length > 7 && editorTransform.slice(-7) === '.coffee') {
require('coffee-script');
}
if (editorTransform[0] !== '/' && editorTransform[0] !== '\\') {
editorTransform = path.resolve(editorTransform);
}
transform = new (require(editorTransform))({
ach: ach
});
} else if (editorTransform(instaceof(Transform))) {
transform = new editorTransform({
ach: ach
});
} else if ((editorTransform.transform != null) && 'function' === typeof editorTransform.transform) {
transform = new Transform(editorTransform);
}
this.streams.unshift(transform != null ? transform : editorTransform);
} catch (error1) {
error = error1;
return errorProvider = {
error: 'Unable to load edit transform:' + editorTransform,
Error: error,
to: function() {
return errorProvider;
}
};
}
}
return {
to: to.bind(this)
};
};