@paralleldrive/feature-toggles
Version:
Low-level feature toggle tools for Node and browsers.
37 lines (25 loc) • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getCurrentActiveFeatureNames = undefined;
var _pipe = require('ramda/src/pipe');
var _pipe2 = _interopRequireDefault(_pipe);
var _getActiveFeatureNames = require('./get-active-feature-names');
var _getReqQueryFeatureNames = require('./get-req-query-feature-names');
var _getBrowserQueryFeatureNames = require('./get-browser-query-feature-names');
var _activateFeatures = require('./activate-features');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var activateReqFeatureNames = (0, _pipe2.default)(_getReqQueryFeatureNames.getReqQueryFeatureNames, _activateFeatures.activateFeatures);
var activateSearchFeatureNames = (0, _pipe2.default)(_getBrowserQueryFeatureNames.getBrowserQueryFeatureNames, _activateFeatures.activateFeatures);
var flow = function flow(req, search) {
return (0, _pipe2.default)(activateReqFeatureNames(req), activateSearchFeatureNames(search), _getActiveFeatureNames.getActiveFeatureNames);
};
var getCurrentActiveFeatureNames = exports.getCurrentActiveFeatureNames = function getCurrentActiveFeatureNames() {
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
_ref$initialFeatures = _ref.initialFeatures,
initialFeatures = _ref$initialFeatures === undefined ? [] : _ref$initialFeatures,
req = _ref.req,
search = _ref.search;
return flow(req, search)(initialFeatures);
};