diff options
Diffstat (limited to 'openecomp-ui')
4 files changed, 56 insertions, 26 deletions
diff --git a/openecomp-ui/src/nfvo-components/clickOutsideWrapper/ClickOutsideWrapper.jsx b/openecomp-ui/src/nfvo-components/clickOutsideWrapper/ClickOutsideWrapper.jsx new file mode 100644 index 0000000000..386ec92f14 --- /dev/null +++ b/openecomp-ui/src/nfvo-components/clickOutsideWrapper/ClickOutsideWrapper.jsx @@ -0,0 +1,34 @@ +/*! + * Copyright © 2016-2018 European Support Limited + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express + * or implied. See the License for the specific language governing + * permissions and limitations under the License. + */ + +import React from 'react'; +import PropTypes from 'prop-types'; +import enhanceWithClickOutside from 'react-click-outside'; + +class ClickOutsideWrapper extends React.Component { + static propTypes = { + onClose: PropTypes.func + }; + + handleClickOutside() { + this.props.onClose(); + } + render() { + return <div>{this.props.children}</div>; + } +} + +export default enhanceWithClickOutside(ClickOutsideWrapper); diff --git a/openecomp-ui/src/nfvo-components/panel/versionController/components/ActionButtons.jsx b/openecomp-ui/src/nfvo-components/panel/versionController/components/ActionButtons.jsx index 4dfa117803..8905aa3f44 100644 --- a/openecomp-ui/src/nfvo-components/panel/versionController/components/ActionButtons.jsx +++ b/openecomp-ui/src/nfvo-components/panel/versionController/components/ActionButtons.jsx @@ -13,27 +13,14 @@ * or implied. See the License for the specific language governing * permissions and limitations under the License. */ -import React, { Component } from 'react'; +import React from 'react'; import PropTypes from 'prop-types'; -import enhanceWithClickOutside from 'react-click-outside'; import i18n from 'nfvo-utils/i18n/i18n.js'; +import ClickOutsideWrapper from 'nfvo-components/clickOutsideWrapper/ClickOutsideWrapper.jsx'; import SVGIcon from 'sdc-ui/lib/react/SVGIcon.js'; import Overlay from 'nfvo-components/overlay/Overlay.jsx'; import Permissions from './Permissions.jsx'; -class ClickOutsideWrapper extends Component { - handleClickOutside() { - this.props.onClose(); - } - render() { - return <div>{this.props.children}</div>; - } -} - -const EnhancedClickOutsideWrapper = enhanceWithClickOutside( - ClickOutsideWrapper -); - const VCButton = ({ name, tooltipText, disabled, onClick, dataTestId }) => { let onClickAction = disabled ? () => {} : onClick; return ( @@ -95,7 +82,7 @@ const ActionButtons = ({ } }) => ( <div className="action-buttons"> - <EnhancedClickOutsideWrapper onClose={onClosePermissions}> + <ClickOutsideWrapper onClose={onClosePermissions}> <VCButton disabled={isManual} dataTestId="vc-permission-btn" @@ -113,7 +100,7 @@ const ActionButtons = ({ /> </Overlay> )} - </EnhancedClickOutsideWrapper> + </ClickOutsideWrapper> {isCollaborator && !isArchived && ( <div className="collaborator-action-buttons"> diff --git a/openecomp-ui/src/sdc-app/onboarding/onboard/onboardingCatalog/VendorItem.jsx b/openecomp-ui/src/sdc-app/onboarding/onboard/onboardingCatalog/VendorItem.jsx index 12beff7a30..aec8e9bdb1 100644 --- a/openecomp-ui/src/sdc-app/onboarding/onboard/onboardingCatalog/VendorItem.jsx +++ b/openecomp-ui/src/sdc-app/onboarding/onboard/onboardingCatalog/VendorItem.jsx @@ -1,5 +1,5 @@ /*! - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright © 2016-2018 European Support Limited * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,9 +13,12 @@ * or implied. See the License for the specific language governing * permissions and limitations under the License. */ + import React from 'react'; import PropTypes from 'prop-types'; import i18n from 'nfvo-utils/i18n/i18n.js'; +import ClickOutsideWrapper from 'nfvo-components/clickOutsideWrapper/ClickOutsideWrapper.jsx'; + import { Tile, TileInfo, @@ -71,12 +74,15 @@ class VendorItem extends React.Component { </Button> {shouldShowOverlay && softwareProductList.length > 0 && ( - <VSPOverlay - onMigrate={onMigrate} - VSPList={softwareProductList} - onSelectVSP={onSelectVSP} - onSeeMore={() => onVendorSelect(vendor)} - /> + <ClickOutsideWrapper + onClose={this.handleClickOutside}> + <VSPOverlay + onMigrate={onMigrate} + VSPList={softwareProductList} + onSelectVSP={onSelectVSP} + onSeeMore={() => onVendorSelect(vendor)} + /> + </ClickOutsideWrapper> )} </TileInfoLine> </TileInfo> @@ -101,6 +107,9 @@ class VendorItem extends React.Component { const { onAddVSP, vendor: { id } } = this.props; onAddVSP(id); } + handleClickOutside = () => { + this.props.onVSPButtonClick(false); + }; handleVspCountClick(e) { e.stopPropagation(); diff --git a/openecomp-ui/src/sdc-app/onboarding/onboard/workspace/WorkspaceViewWithFilter.jsx b/openecomp-ui/src/sdc-app/onboarding/onboard/workspace/WorkspaceViewWithFilter.jsx index afc68e1a64..bef88df14d 100644 --- a/openecomp-ui/src/sdc-app/onboarding/onboard/workspace/WorkspaceViewWithFilter.jsx +++ b/openecomp-ui/src/sdc-app/onboarding/onboard/workspace/WorkspaceViewWithFilter.jsx @@ -44,12 +44,12 @@ const WorkspaceView = props => { onAddVLM={ catalogActiveTab === catalogTabsMappping.ACTIVE ? onAddLicenseModelClick - : false + : undefined } onAddVSP={ catalogActiveTab === catalogTabsMappping.ACTIVE ? onAddSoftwareProductClick - : false + : undefined } onSelectVLM={(item, users) => onSelectLicenseModel(item, users, tabsMapping.WORKSPACE) |