redink
Version:
RethinkDB model layer
26 lines (20 loc) • 2.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _rethinkdb = require('rethinkdb');
var _rethinkdb2 = _interopRequireDefault(_rethinkdb);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
exports.default = function (inverseType, inverseField, idsToUpdate, idToSplice) {
return _rethinkdb2.default.table(inverseType).getAll(_rethinkdb2.default.args(idsToUpdate)).update(function (row) {
return _defineProperty({}, inverseField, row(inverseField).map(function (data) {
return _rethinkdb2.default.branch(data('id').eq(idToSplice), {
id: data('id'),
_archived: data('_archived'),
_related: false
}, data);
}));
});
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9xdWVyaWVzL3NwbGljZUlkRnJvbUludmVyc2VGaWVsZC5qcyJdLCJuYW1lcyI6WyJpbnZlcnNlVHlwZSIsImludmVyc2VGaWVsZCIsImlkc1RvVXBkYXRlIiwiaWRUb1NwbGljZSIsInRhYmxlIiwiZ2V0QWxsIiwiYXJncyIsInVwZGF0ZSIsInJvdyIsIm1hcCIsImJyYW5jaCIsImRhdGEiLCJlcSIsImlkIiwiX2FyY2hpdmVkIiwiX3JlbGF0ZWQiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOzs7Ozs7OztrQkFFZSxVQUFDQSxXQUFELEVBQWNDLFlBQWQsRUFBNEJDLFdBQTVCLEVBQXlDQyxVQUF6QztBQUFBLFNBQ2Isb0JBQUVDLEtBQUYsQ0FBUUosV0FBUixFQUFxQkssTUFBckIsQ0FBNEIsb0JBQUVDLElBQUYsQ0FBT0osV0FBUCxDQUE1QixFQUFpREssTUFBakQsQ0FBd0Q7QUFBQSwrQkFDckROLFlBRHFELEVBQ3RDTyxJQUFJUCxZQUFKLEVBQWtCUSxHQUFsQixDQUFzQjtBQUFBLGFBQ3BDLG9CQUFFQyxNQUFGLENBQVNDLEtBQUssSUFBTCxFQUFXQyxFQUFYLENBQWNULFVBQWQsQ0FBVCxFQUNFO0FBQ0VVLFlBQUlGLEtBQUssSUFBTCxDQUROO0FBRUVHLG1CQUFXSCxLQUFLLFdBQUwsQ0FGYjtBQUdFSSxrQkFBVTtBQUhaLE9BREYsRUFLS0osSUFMTCxDQURvQztBQUFBLEtBQXRCLENBRHNDO0FBQUEsR0FBeEQsQ0FEYTtBQUFBLEMiLCJmaWxlIjoic3BsaWNlSWRGcm9tSW52ZXJzZUZpZWxkLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHIgZnJvbSAncmV0aGlua2RiJztcblxuZXhwb3J0IGRlZmF1bHQgKGludmVyc2VUeXBlLCBpbnZlcnNlRmllbGQsIGlkc1RvVXBkYXRlLCBpZFRvU3BsaWNlKSA9PiAoXG4gIHIudGFibGUoaW52ZXJzZVR5cGUpLmdldEFsbChyLmFyZ3MoaWRzVG9VcGRhdGUpKS51cGRhdGUocm93ID0+ICh7XG4gICAgW2ludmVyc2VGaWVsZF06IHJvdyhpbnZlcnNlRmllbGQpLm1hcChkYXRhID0+IChcbiAgICAgIHIuYnJhbmNoKGRhdGEoJ2lkJykuZXEoaWRUb1NwbGljZSksXG4gICAgICAgIHtcbiAgICAgICAgICBpZDogZGF0YSgnaWQnKSxcbiAgICAgICAgICBfYXJjaGl2ZWQ6IGRhdGEoJ19hcmNoaXZlZCcpLFxuICAgICAgICAgIF9yZWxhdGVkOiBmYWxzZSxcbiAgICAgICAgfSwgZGF0YVxuICAgICAgKVxuICAgICkpLFxuICB9KSlcbik7XG4iXX0=