parse-js
Version:
Utility library for object structure conversion.
29 lines (23 loc) • 768 B
JavaScript
;
var _transform = require('../lib/transform');
function StripPrefixTransformer(prefix) {
if (!(this instanceof StripPrefixTransformer)) {
return this.transform(new StripPrefixTransformer(prefix));
}
this._prefix = prefix;
}
StripPrefixTransformer.prototype.parse = function (source) {
var prefix = this._prefix;
var length = prefix.length;
return _transform(source, function (result, value, key) {
if (key.indexOf(prefix) !== 0) return;
result[key.substr(length)] = value;
}, {});
};
StripPrefixTransformer.prototype.reverse = function (source) {
var prefix = this._prefix;
return _transform(source, function (result, value, key) {
result[prefix + key] = value;
}, {});
};
module.exports = StripPrefixTransformer;