@atlaskit/global-search
Version:
A cross-product search component (batteries included)
48 lines (44 loc) • 2.05 kB
JavaScript
import { DEFAULT_AB_TEST } from '../api/CrossProductSearchClient';
import memoizeOne from 'memoize-one';
import deepEqual from 'deep-equal';
var FASTER_SEARCH_EXPERIMENT = 'faster-search';
var SEARCH_EXTENSIONS_COMPLEX_EXPERIMENT = 'search-extensions-complex';
var SPACEBALLS_EXPERIMENT = 'spaceballs';
var isInFasterSearchExperiment = function isInFasterSearchExperiment(abTest) {
return abTest.experimentId === FASTER_SEARCH_EXPERIMENT;
};
var isInSearchExtensionsComplexExperiment = function isInSearchExtensionsComplexExperiment(abTest) {
return abTest.experimentId === SEARCH_EXTENSIONS_COMPLEX_EXPERIMENT;
};
var isInSpaceballsExperiment = function isInSpaceballsExperiment(abTest) {
return abTest.experimentId === SPACEBALLS_EXPERIMENT;
};
export var DEFAULT_FEATURES = {
useUrsForBootstrapping: false,
isAutocompleteEnabled: false,
isNavAutocompleteEnabled: false,
complexSearchExtensionsEnabled: false,
disableJiraPreQueryPeopleSearch: false,
isInFasterSearchExperiment: false,
spaceballsExperimentEnabled: false,
abTest: DEFAULT_AB_TEST
};
export var createFeatures = memoizeOne(function (_ref) {
var abTest = _ref.abTest,
useUrsForBootstrapping = _ref.useUrsForBootstrapping,
disableJiraPreQueryPeopleSearch = _ref.disableJiraPreQueryPeopleSearch,
enablePreQueryFromAggregator = _ref.enablePreQueryFromAggregator,
isAutocompleteEnabled = _ref.isAutocompleteEnabled,
isNavAutocompleteEnabled = _ref.isNavAutocompleteEnabled;
return {
abTest: abTest,
useUrsForBootstrapping: useUrsForBootstrapping,
disableJiraPreQueryPeopleSearch: disableJiraPreQueryPeopleSearch,
enablePreQueryFromAggregator: enablePreQueryFromAggregator,
isInFasterSearchExperiment: isInFasterSearchExperiment(abTest),
isAutocompleteEnabled: isAutocompleteEnabled,
isNavAutocompleteEnabled: isNavAutocompleteEnabled,
complexSearchExtensionsEnabled: isInSearchExtensionsComplexExperiment(abTest),
spaceballsExperimentEnabled: isInSpaceballsExperiment(abTest)
};
}, deepEqual);