redink
Version:
RethinkDB model layer
31 lines (23 loc) • 2.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _checks = require('../../checks');
exports.default = function (relationshipObject, id, conn) {
var type = relationshipObject.type;
var relation = relationshipObject.relation;
var _relationshipObject$i = relationshipObject.inverse;
var inverseRelation = _relationshipObject$i.relation;
var inverseField = _relationshipObject$i.field;
if (relation === 'belongsTo') return Promise.resolve(false);
switch (inverseRelation) {
case 'hasMany':
return (0, _checks.checkValidId)(type, id, conn);
case 'hasOne':
return (0, _checks.checkInverseHasOne)(type, id, inverseField, conn);
case 'belongsTo':
default:
return Promise.resolve(false);
}
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb25zdHJhaW50cy91cGRhdGUvcHV0L2luZGV4LmpzIl0sIm5hbWVzIjpbInJlbGF0aW9uc2hpcE9iamVjdCIsImlkIiwiY29ubiIsInR5cGUiLCJyZWxhdGlvbiIsImludmVyc2UiLCJpbnZlcnNlUmVsYXRpb24iLCJpbnZlcnNlRmllbGQiLCJmaWVsZCIsIlByb21pc2UiLCJyZXNvbHZlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7a0JBS2UsVUFBQ0Esa0JBQUQsRUFBcUJDLEVBQXJCLEVBQXlCQyxJQUF6QixFQUFrQztBQUFBLE1BRTdDQyxJQUY2QyxHQVEzQ0gsa0JBUjJDLENBRTdDRyxJQUY2QztBQUFBLE1BRzdDQyxRQUg2QyxHQVEzQ0osa0JBUjJDLENBRzdDSSxRQUg2QztBQUFBLDhCQVEzQ0osa0JBUjJDLENBSTdDSyxPQUo2QztBQUFBLE1BS2pDQyxlQUxpQyx5QkFLM0NGLFFBTDJDO0FBQUEsTUFNcENHLFlBTm9DLHlCQU0zQ0MsS0FOMkM7OztBQVUvQyxNQUFJSixhQUFhLFdBQWpCLEVBQThCLE9BQU9LLFFBQVFDLE9BQVIsQ0FBZ0IsS0FBaEIsQ0FBUDs7QUFFOUIsVUFBUUosZUFBUjtBQUNFLFNBQUssU0FBTDtBQUNFLGFBQU8sMEJBQWFILElBQWIsRUFBbUJGLEVBQW5CLEVBQXVCQyxJQUF2QixDQUFQOztBQUVGLFNBQUssUUFBTDtBQUNFLGFBQU8sZ0NBQW1CQyxJQUFuQixFQUF5QkYsRUFBekIsRUFBNkJNLFlBQTdCLEVBQTJDTCxJQUEzQyxDQUFQOztBQUVGLFNBQUssV0FBTDtBQUNBO0FBQ0UsYUFBT08sUUFBUUMsT0FBUixDQUFnQixLQUFoQixDQUFQO0FBVEo7QUFXRCxDIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY2hlY2tWYWxpZElkLFxuICBjaGVja0ludmVyc2VIYXNPbmUsXG59IGZyb20gJy4uLy4uL2NoZWNrcyc7XG5cbmV4cG9ydCBkZWZhdWx0IChyZWxhdGlvbnNoaXBPYmplY3QsIGlkLCBjb25uKSA9PiB7XG4gIGNvbnN0IHtcbiAgICB0eXBlLFxuICAgIHJlbGF0aW9uLFxuICAgIGludmVyc2U6IHtcbiAgICAgIHJlbGF0aW9uOiBpbnZlcnNlUmVsYXRpb24sXG4gICAgICBmaWVsZDogaW52ZXJzZUZpZWxkLFxuICAgIH0sXG4gIH0gPSByZWxhdGlvbnNoaXBPYmplY3Q7XG5cbiAgaWYgKHJlbGF0aW9uID09PSAnYmVsb25nc1RvJykgcmV0dXJuIFByb21pc2UucmVzb2x2ZShmYWxzZSk7XG5cbiAgc3dpdGNoIChpbnZlcnNlUmVsYXRpb24pIHtcbiAgICBjYXNlICdoYXNNYW55JzpcbiAgICAgIHJldHVybiBjaGVja1ZhbGlkSWQodHlwZSwgaWQsIGNvbm4pO1xuXG4gICAgY2FzZSAnaGFzT25lJzpcbiAgICAgIHJldHVybiBjaGVja0ludmVyc2VIYXNPbmUodHlwZSwgaWQsIGludmVyc2VGaWVsZCwgY29ubik7XG5cbiAgICBjYXNlICdiZWxvbmdzVG8nOlxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZhbHNlKTtcbiAgfVxufTtcbiJdfQ==