@@ -1,2 +0,0 @@ | |||
src/main/js/libs | |||
src/main/js/app/components/GlobalFooterBranding.js |
@@ -1,38 +0,0 @@ | |||
/* | |||
* SonarQube | |||
* Copyright (C) 2009-2018 SonarSource SA | |||
* mailto:info AT sonarsource DOT com | |||
* | |||
* This program is free software; you can redistribute it and/or | |||
* modify it under the terms of the GNU Lesser General Public | |||
* License as published by the Free Software Foundation; either | |||
* version 3 of the License, or (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
* Lesser General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU Lesser General Public License | |||
* along with this program; if not, write to the Free Software Foundation, | |||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |||
*/ | |||
import { shape, arrayOf, string, number, func } from 'prop-types'; | |||
export const PermissionType = shape({ | |||
key: string.isRequired, | |||
name: string.isRequired, | |||
description: string.isRequired, | |||
usersCount: number.isRequired, | |||
groupsCount: number.isRequired | |||
}); | |||
export const PermissionTemplateType = shape({ | |||
id: string.isRequired, | |||
name: string.isRequired, | |||
description: string, | |||
permissions: arrayOf(PermissionType).isRequired, | |||
defaultFor: arrayOf(string).isRequired | |||
}); | |||
export const CallbackType = func.isRequired; |
@@ -1,46 +0,0 @@ | |||
/* | |||
* SonarQube | |||
* Copyright (C) 2009-2018 SonarSource SA | |||
* mailto:info AT sonarsource DOT com | |||
* | |||
* This program is free software; you can redistribute it and/or | |||
* modify it under the terms of the GNU Lesser General Public | |||
* License as published by the Free Software Foundation; either | |||
* version 3 of the License, or (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
* Lesser General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU Lesser General Public License | |||
* along with this program; if not, write to the Free Software Foundation, | |||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |||
*/ | |||
import ReactDOM from 'react-dom'; | |||
export const ResizeMixin = { | |||
componentDidMount() { | |||
if (this.isResizable()) { | |||
this.handleResize(); | |||
window.addEventListener('resize', this.handleResize); | |||
} | |||
}, | |||
componentWillUnmount() { | |||
if (this.isResizable()) { | |||
window.removeEventListener('resize', this.handleResize); | |||
} | |||
}, | |||
handleResize() { | |||
const boundingClientRect = ReactDOM.findDOMNode(this).parentNode.getBoundingClientRect(); | |||
const newWidth = this.props.width || boundingClientRect.width; | |||
const newHeight = this.props.height || boundingClientRect.height; | |||
this.setState({ width: newWidth, height: newHeight }); | |||
}, | |||
isResizable() { | |||
return !this.props.width || !this.props.height; | |||
} | |||
}; |