UNPKG

objection

Version:
295 lines (176 loc) 20.8 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _getOwnPropertyDescriptor = require('babel-runtime/core-js/object/get-own-property-descriptor'); var _getOwnPropertyDescriptor2 = _interopRequireDefault(_getOwnPropertyDescriptor); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _dec14, _dec15, _dec16, _dec17, _dec18, _dec19, _dec20, _dec21, _dec22, _dec23, _dec24, _dec25, _dec26, _dec27, _dec28, _dec29, _dec30, _desc, _value, _class; var _lodash = require('lodash'); var _lodash2 = _interopRequireDefault(_lodash); var _QueryBuilderOperationSupport = require('./QueryBuilderOperationSupport'); var _QueryBuilderOperationSupport2 = _interopRequireDefault(_QueryBuilderOperationSupport); var _queryBuilderOperation = require('./decorators/queryBuilderOperation'); var _queryBuilderOperation2 = _interopRequireDefault(_queryBuilderOperation); var _classUtils = require('../utils/classUtils'); var _QueryBuilderContextBase = require('./QueryBuilderContextBase'); var _QueryBuilderContextBase2 = _interopRequireDefault(_QueryBuilderContextBase); var _KnexOperation = require('./operations/KnexOperation'); var _KnexOperation2 = _interopRequireDefault(_KnexOperation); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object['ke' + 'ys'](descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object['define' + 'Property'](target, property, desc); desc = null; } return desc; } var JoinBuilder = (_dec = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec2 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec3 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec4 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec5 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec6 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec7 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec8 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec9 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec10 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec11 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec12 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec13 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec14 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec15 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec16 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec17 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec18 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec19 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec20 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec21 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec22 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec23 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec24 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec25 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec26 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec27 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec28 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec29 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), _dec30 = (0, _queryBuilderOperation2.default)(_KnexOperation2.default), (_class = function (_QueryBuilderOperatio) { (0, _inherits3.default)(JoinBuilder, _QueryBuilderOperatio); function JoinBuilder() { (0, _classCallCheck3.default)(this, JoinBuilder); return (0, _possibleConstructorReturn3.default)(this, _QueryBuilderOperatio.apply(this, arguments)); } JoinBuilder.prototype.using = function using() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.on = function on() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOn = function orOn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onBetween = function onBetween() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onNotBetween = function onNotBetween() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnBetween = function orOnBetween() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnNotBetween = function orOnNotBetween() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onIn = function onIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onNotIn = function onNotIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnIn = function orOnIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnNotIn = function orOnNotIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onNull = function onNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnNull = function orOnNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onNotNull = function onNotNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnNotNull = function orOnNotNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onExists = function onExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnExists = function orOnExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.onNotExists = function onNotExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.orOnNotExists = function orOnNotExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.type = function type() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.or = function or() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOn = function andOn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnIn = function andOnIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnNotIn = function andOnNotIn() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnNull = function andOnNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnNotNull = function andOnNotNull() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnExists = function andOnExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnNotExists = function andOnNotExists() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnBetween = function andOnBetween() {}; /** * @returns {JoinBuilderBase} */ JoinBuilder.prototype.andOnNotBetween = function andOnNotBetween() {}; return JoinBuilder; }(_QueryBuilderOperationSupport2.default), (_applyDecoratedDescriptor(_class.prototype, 'using', [_dec], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'using'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'on', [_dec2], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'on'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOn', [_dec3], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onBetween', [_dec4], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onBetween'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onNotBetween', [_dec5], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onNotBetween'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnBetween', [_dec6], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnBetween'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnNotBetween', [_dec7], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnNotBetween'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onIn', [_dec8], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onNotIn', [_dec9], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onNotIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnIn', [_dec10], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnNotIn', [_dec11], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnNotIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onNull', [_dec12], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnNull', [_dec13], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onNotNull', [_dec14], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onNotNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnNotNull', [_dec15], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnNotNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onExists', [_dec16], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnExists', [_dec17], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'onNotExists', [_dec18], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'onNotExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'orOnNotExists', [_dec19], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'orOnNotExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'type', [_dec20], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'type'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'or', [_dec21], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'or'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOn', [_dec22], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnIn', [_dec23], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnNotIn', [_dec24], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnNotIn'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnNull', [_dec25], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnNotNull', [_dec26], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnNotNull'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnExists', [_dec27], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnNotExists', [_dec28], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnNotExists'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnBetween', [_dec29], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnBetween'), _class.prototype), _applyDecoratedDescriptor(_class.prototype, 'andOnNotBetween', [_dec30], (0, _getOwnPropertyDescriptor2.default)(_class.prototype, 'andOnNotBetween'), _class.prototype)), _class)); exports.default = JoinBuilder; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkpvaW5CdWlsZGVyLmpzIl0sIm5hbWVzIjpbIkpvaW5CdWlsZGVyIiwidXNpbmciLCJvbiIsIm9yT24iLCJvbkJldHdlZW4iLCJvbk5vdEJldHdlZW4iLCJvck9uQmV0d2VlbiIsIm9yT25Ob3RCZXR3ZWVuIiwib25JbiIsIm9uTm90SW4iLCJvck9uSW4iLCJvck9uTm90SW4iLCJvbk51bGwiLCJvck9uTnVsbCIsIm9uTm90TnVsbCIsIm9yT25Ob3ROdWxsIiwib25FeGlzdHMiLCJvck9uRXhpc3RzIiwib25Ob3RFeGlzdHMiLCJvck9uTm90RXhpc3RzIiwidHlwZSIsIm9yIiwiYW5kT24iLCJhbmRPbkluIiwiYW5kT25Ob3RJbiIsImFuZE9uTnVsbCIsImFuZE9uTm90TnVsbCIsImFuZE9uRXhpc3RzIiwiYW5kT25Ob3RFeGlzdHMiLCJhbmRPbkJldHdlZW4iLCJhbmRPbk5vdEJldHdlZW4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7QUFFQTs7OztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQUVxQkEsVyxXQUtsQiw2RCxVQU1BLDZELFVBTUEsNkQsVUFNQSw2RCxVQU1BLDZELFVBTUEsNkQsVUFNQSw2RCxVQU1BLDZELFVBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQsV0FNQSw2RCxXQU1BLDZELFdBTUEsNkQ7Ozs7Ozs7O3dCQTdLREMsSyxvQkFBZSxDQUFFLEM7O0FBRWpCOzs7Ozt3QkFJQUMsRSxpQkFBWSxDQUFFLEM7O0FBRWQ7Ozs7O3dCQUlBQyxJLG1CQUFjLENBQUUsQzs7QUFFaEI7Ozs7O3dCQUlBQyxTLHdCQUFtQixDQUFFLEM7O0FBRXJCOzs7Ozt3QkFJQUMsWSwyQkFBc0IsQ0FBRSxDOztBQUV4Qjs7Ozs7d0JBSUFDLFcsMEJBQXFCLENBQUUsQzs7QUFFdkI7Ozs7O3dCQUlBQyxjLDZCQUF3QixDQUFFLEM7O0FBRTFCOzs7Ozt3QkFJQUMsSSxtQkFBYyxDQUFFLEM7O0FBRWhCOzs7Ozt3QkFJQUMsTyxzQkFBaUIsQ0FBRSxDOztBQUVuQjs7Ozs7d0JBSUFDLE0scUJBQWdCLENBQUUsQzs7QUFFbEI7Ozs7O3dCQUlBQyxTLHdCQUFtQixDQUFFLEM7O0FBRXJCOzs7Ozt3QkFJQUMsTSxxQkFBZ0IsQ0FBRSxDOztBQUVsQjs7Ozs7d0JBSUFDLFEsdUJBQWtCLENBQUUsQzs7QUFFcEI7Ozs7O3dCQUlBQyxTLHdCQUFtQixDQUFFLEM7O0FBRXJCOzs7Ozt3QkFJQUMsVywwQkFBcUIsQ0FBRSxDOztBQUV2Qjs7Ozs7d0JBSUFDLFEsdUJBQWtCLENBQUUsQzs7QUFFcEI7Ozs7O3dCQUlBQyxVLHlCQUFvQixDQUFFLEM7O0FBRXRCOzs7Ozt3QkFJQUMsVywwQkFBcUIsQ0FBRSxDOztBQUV2Qjs7Ozs7d0JBSUFDLGEsNEJBQXVCLENBQUUsQzs7QUFFekI7Ozs7O3dCQUlBQyxJLG1CQUFjLENBQUUsQzs7QUFFaEI7Ozs7O3dCQUlBQyxFLGlCQUFZLENBQUUsQzs7QUFFZDs7Ozs7d0JBSUFDLEssb0JBQWUsQ0FBRSxDOztBQUVqQjs7Ozs7d0JBSUFDLE8sc0JBQWlCLENBQUUsQzs7QUFFbkI7Ozs7O3dCQUlBQyxVLHlCQUFvQixDQUFFLEM7O0FBRXRCOzs7Ozt3QkFJQUMsUyx3QkFBbUIsQ0FBRSxDOztBQUVyQjs7Ozs7d0JBSUFDLFksMkJBQXNCLENBQUUsQzs7QUFFeEI7Ozs7O3dCQUlBQyxXLDBCQUFxQixDQUFFLEM7O0FBRXZCOzs7Ozt3QkFJQUMsYyw2QkFBd0IsQ0FBRSxDOztBQUUxQjs7Ozs7d0JBSUFDLFksMkJBQXNCLENBQUUsQzs7QUFFeEI7Ozs7O3dCQUlBQyxlLDhCQUF5QixDQUFFLEM7Ozs7a0JBcExSOUIsVyIsImZpbGUiOiJKb2luQnVpbGRlci5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgUXVlcnlCdWlsZGVyT3BlcmF0aW9uU3VwcG9ydCBmcm9tICcuL1F1ZXJ5QnVpbGRlck9wZXJhdGlvblN1cHBvcnQnO1xuaW1wb3J0IHF1ZXJ5QnVpbGRlck9wZXJhdGlvbiBmcm9tICcuL2RlY29yYXRvcnMvcXVlcnlCdWlsZGVyT3BlcmF0aW9uJztcbmltcG9ydCB7aW5oZXJpdHN9IGZyb20gJy4uL3V0aWxzL2NsYXNzVXRpbHMnO1xuXG5pbXBvcnQgUXVlcnlCdWlsZGVyQ29udGV4dEJhc2UgZnJvbSAnLi9RdWVyeUJ1aWxkZXJDb250ZXh0QmFzZSc7XG5pbXBvcnQgS25leE9wZXJhdGlvbiBmcm9tICcuL29wZXJhdGlvbnMvS25leE9wZXJhdGlvbic7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEpvaW5CdWlsZGVyIGV4dGVuZHMgUXVlcnlCdWlsZGVyT3BlcmF0aW9uU3VwcG9ydCB7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIHVzaW5nKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9uKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9yT24oLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb25CZXR3ZWVuKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9uTm90QmV0d2VlbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBvck9uQmV0d2VlbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBvck9uTm90QmV0d2VlbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBvbkluKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9uTm90SW4oLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb3JPbkluKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9yT25Ob3RJbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBvbk51bGwoLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb3JPbk51bGwoLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb25Ob3ROdWxsKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9yT25Ob3ROdWxsKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9uRXhpc3RzKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9yT25FeGlzdHMoLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb25Ob3RFeGlzdHMoLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgb3JPbk5vdEV4aXN0cyguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICB0eXBlKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIG9yKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIGFuZE9uKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIGFuZE9uSW4oLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgYW5kT25Ob3RJbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBhbmRPbk51bGwoLi4uYXJncykge31cblxuICAvKipcbiAgICogQHJldHVybnMge0pvaW5CdWlsZGVyQmFzZX1cbiAgICovXG4gIEBxdWVyeUJ1aWxkZXJPcGVyYXRpb24oS25leE9wZXJhdGlvbilcbiAgYW5kT25Ob3ROdWxsKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIGFuZE9uRXhpc3RzKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIGFuZE9uTm90RXhpc3RzKC4uLmFyZ3MpIHt9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtKb2luQnVpbGRlckJhc2V9XG4gICAqL1xuICBAcXVlcnlCdWlsZGVyT3BlcmF0aW9uKEtuZXhPcGVyYXRpb24pXG4gIGFuZE9uQmV0d2VlbiguLi5hcmdzKSB7fVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Sm9pbkJ1aWxkZXJCYXNlfVxuICAgKi9cbiAgQHF1ZXJ5QnVpbGRlck9wZXJhdGlvbihLbmV4T3BlcmF0aW9uKVxuICBhbmRPbk5vdEJldHdlZW4oLi4uYXJncykge31cblxufVxuIl19