summaryrefslogtreecommitdiffstats
path: root/openecomp-ui/src/sdc-app/features/featureToggle.js
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-ui/src/sdc-app/features/featureToggle.js')
-rw-r--r--openecomp-ui/src/sdc-app/features/featureToggle.js47
1 files changed, 24 insertions, 23 deletions
diff --git a/openecomp-ui/src/sdc-app/features/featureToggle.js b/openecomp-ui/src/sdc-app/features/featureToggle.js
index 5e0df1448f..d33c76e523 100644
--- a/openecomp-ui/src/sdc-app/features/featureToggle.js
+++ b/openecomp-ui/src/sdc-app/features/featureToggle.js
@@ -14,47 +14,48 @@
* permissions and limitations under the License.
*/
-
- /**
+/**
* Feature toggling decorator
- * usage:
- *
+ * usage:
+ *
* @featureToggle('FeatureName')
* class Example extends React.Component {
* render() {
* return (<div>test feature</div>);
* }
* }
- *
- * OR
- *
+ *
+ * OR
+ *
* const TestFeature = () => (<div>test feature</div>)
* export default featureToggle('FeatureName')(TestFeature)
- *
+ *
*/
import React from 'react';
import PropTypes from 'prop-types';
-import {connect} from 'react-redux';
+import { connect } from 'react-redux';
+
+export const FeatureComponent = props => {
+ const { features = [], featureName, InnerComponent, ...otherProps } = props;
+ const AComp = InnerComponent.AComp ? InnerComponent.AComp : InnerComponent;
-export const FeatureComponent = (props) => {
- const {features = [], featureName, InnerComponent, ...otherProps} = props;
- const AComp = InnerComponent.AComp ? InnerComponent.AComp : InnerComponent;
-
- return !!features.find(el => el.name === featureName && el.active) ?
- <AComp {...otherProps}/>
- : InnerComponent.BComp ? <InnerComponent.BComp {...otherProps}/> : null;
+ return !!features.find(el => el.name === featureName && el.active) ? (
+ <AComp {...otherProps} />
+ ) : InnerComponent.BComp ? (
+ <InnerComponent.BComp {...otherProps} />
+ ) : null;
};
FeatureComponent.propTypes = {
- features: PropTypes.array,
- featureName: PropTypes.string.isRequired
+ features: PropTypes.array,
+ featureName: PropTypes.string.isRequired
};
-
export default function featureToggle(featureName) {
- return (InnerComponent) => {
- return connect(({features}) => {return {features, featureName, InnerComponent};})(FeatureComponent);
- };
+ return InnerComponent => {
+ return connect(({ features }) => {
+ return { features, featureName, InnerComponent };
+ })(FeatureComponent);
+ };
}
-