UNPKG

@paralleldrive/feature-toggles

Version:

Low-level feature toggle tools for Node and browsers.

37 lines (25 loc) 1.5 kB
'use strict'; 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); };