table-resolver
Version:
Table resolution utilities
40 lines (28 loc) • 866 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _get2 = require('lodash/get');
var _get3 = _interopRequireDefault(_get2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function byFunction(path) {
/* eslint no-param-reassign: "off" */
return function (_ref) {
var _ref$column = _ref.column,
column = _ref$column === undefined ? {} : _ref$column;
return function (rowData) {
var property = column.property;
var resolver = (0, _get3.default)(column, path);
if (!property || !resolver) {
return rowData;
}
var value = rowData[property];
rowData['_' + property] = resolver(value, {
property: property,
rowData: rowData
});
return rowData;
};
};
}
exports.default = byFunction;