UNPKG

redink

Version:
34 lines (23 loc) 3.23 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; var _rethinkdb = require('rethinkdb'); var _rethinkdb2 = _interopRequireDefault(_rethinkdb); var _utils = require('./utils'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } exports.default = function (type, id, field, conn) { if (typeof id !== 'string') { throw new Error('Expected \'' + type + '\' relationship to be a \'string\' but got type \'' + (typeof ids === 'undefined' ? 'undefined' : _typeof(ids)) + '\''); } var checkValidRecord = function checkValidRecord(record) { var validRecord = (0, _utils.isHasOneValid)(record, field); if (!validRecord) { throw new Error('Expected a valid record of type \'' + type + '\' ' + ('but got invalid record with id of \'' + id + '\'.')); } return true; }; return _rethinkdb2.default.table(type).get(id).run(conn).then(checkValidRecord); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25zdHJhaW50cy9jaGVja3MvY2hlY2tJbnZlcnNlSGFzT25lLmpzIl0sIm5hbWVzIjpbInR5cGUiLCJpZCIsImZpZWxkIiwiY29ubiIsIkVycm9yIiwiaWRzIiwiY2hlY2tWYWxpZFJlY29yZCIsInJlY29yZCIsInZhbGlkUmVjb3JkIiwidGFibGUiLCJnZXQiLCJydW4iLCJ0aGVuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7a0JBRWUsVUFBQ0EsSUFBRCxFQUFPQyxFQUFQLEVBQVdDLEtBQVgsRUFBa0JDLElBQWxCLEVBQTJCO0FBQ3hDLE1BQUksT0FBT0YsRUFBUCxLQUFjLFFBQWxCLEVBQTRCO0FBQzFCLFVBQU0sSUFBSUcsS0FBSixpQkFDU0osSUFEVCxrRUFDcUVLLEdBRHJFLHlDQUNxRUEsR0FEckUsVUFBTjtBQUdEOztBQUVELE1BQU1DLG1CQUFtQixTQUFuQkEsZ0JBQW1CLENBQUNDLE1BQUQsRUFBWTtBQUNuQyxRQUFNQyxjQUFjLDBCQUFjRCxNQUFkLEVBQXNCTCxLQUF0QixDQUFwQjs7QUFFQSxRQUFJLENBQUNNLFdBQUwsRUFBa0I7QUFDaEIsWUFBTSxJQUFJSixLQUFKLENBQ0osdUNBQW9DSixJQUFwQyxxREFDc0NDLEVBRHRDLFNBREksQ0FBTjtBQUlEOztBQUVELFdBQU8sSUFBUDtBQUNELEdBWEQ7O0FBYUEsU0FBTyxvQkFBRVEsS0FBRixDQUFRVCxJQUFSLEVBQ0pVLEdBREksQ0FDQVQsRUFEQSxFQUVKVSxHQUZJLENBRUFSLElBRkEsRUFHSlMsSUFISSxDQUdDTixnQkFIRCxDQUFQO0FBSUQsQyIsImZpbGUiOiJjaGVja0ludmVyc2VIYXNPbmUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgciBmcm9tICdyZXRoaW5rZGInO1xuaW1wb3J0IHsgaXNIYXNPbmVWYWxpZCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgZGVmYXVsdCAodHlwZSwgaWQsIGZpZWxkLCBjb25uKSA9PiB7XG4gIGlmICh0eXBlb2YgaWQgIT09ICdzdHJpbmcnKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYEV4cGVjdGVkICcke3R5cGV9JyByZWxhdGlvbnNoaXAgdG8gYmUgYSAnc3RyaW5nJyBidXQgZ290IHR5cGUgJyR7dHlwZW9mIGlkc30nYFxuICAgICk7XG4gIH1cblxuICBjb25zdCBjaGVja1ZhbGlkUmVjb3JkID0gKHJlY29yZCkgPT4ge1xuICAgIGNvbnN0IHZhbGlkUmVjb3JkID0gaXNIYXNPbmVWYWxpZChyZWNvcmQsIGZpZWxkKTtcblxuICAgIGlmICghdmFsaWRSZWNvcmQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYEV4cGVjdGVkIGEgdmFsaWQgcmVjb3JkIG9mIHR5cGUgJyR7dHlwZX0nIGAgK1xuICAgICAgICBgYnV0IGdvdCBpbnZhbGlkIHJlY29yZCB3aXRoIGlkIG9mICcke2lkfScuYFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfTtcblxuICByZXR1cm4gci50YWJsZSh0eXBlKVxuICAgIC5nZXQoaWQpXG4gICAgLnJ1bihjb25uKVxuICAgIC50aGVuKGNoZWNrVmFsaWRSZWNvcmQpO1xufTtcbiJdfQ==