aboutsummaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorGrégoire Aubert <gregoire.aubert@sonarsource.com>2018-07-11 17:39:00 +0200
committerSonarTech <sonartech@sonarsource.com>2018-07-18 20:21:20 +0200
commit9f51ad12a3c2ed26245697df151b3996e5b7e7f2 (patch)
tree9e79b2a6f1a49d84898e044c9169893dd6351f9a /server
parentb9d81f194b90eb01a9718b6b9849f9bee3dd79d6 (diff)
downloadsonarqube-9f51ad12a3c2ed26245697df151b3996e5b7e7f2.tar.gz
sonarqube-9f51ad12a3c2ed26245697df151b3996e5b7e7f2.zip
Simplify import paths of some components
Diffstat (limited to 'server')
-rw-r--r--server/sonar-web/src/main/js/app/components/extensions/OrganizationPageExtension.tsx2
-rw-r--r--server/sonar-web/src/main/js/app/components/extensions/exposeLibraries.ts2
-rw-r--r--server/sonar-web/src/main/js/app/components/nav/global/GlobalNavMenu.tsx2
-rw-r--r--server/sonar-web/src/main/js/app/components/nav/settings/SettingsNav.tsx2
-rw-r--r--server/sonar-web/src/main/js/app/components/search/Search.js2
-rw-r--r--server/sonar-web/src/main/js/apps/background-tasks/components/BackgroundTasksApp.js30
-rw-r--r--server/sonar-web/src/main/js/apps/background-tasks/components/Search.js2
-rw-r--r--server/sonar-web/src/main/js/apps/background-tasks/components/TaskActions.tsx2
-rw-r--r--server/sonar-web/src/main/js/apps/background-tasks/components/TaskStatus.tsx2
-rw-r--r--server/sonar-web/src/main/js/apps/projectsManagement/AppContainer.tsx2
-rw-r--r--server/sonar-web/src/main/js/apps/quality-gates/components/ListHeader.tsx2
-rw-r--r--server/sonar-web/src/main/js/apps/tutorials/projectOnboarding/ProjectWatcher.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/common/RestartForm.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/controls/SearchSelect.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/controls/SimpleModal.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/controls/ValidationModal.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/docs/DocLink.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/docs/DocTooltipLink.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueAssign.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueChangelog.js12
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueCommentAction.js4
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueCommentLine.js10
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueSeverity.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueTags.js6
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js2
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueTransition.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/IssueType.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/components/SimilarIssuesFilter.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/ChangelogPopup.js4
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/CommentDeletePopup.js2
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/CommentPopup.js4
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SetAssigneePopup.js8
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SetIssueTagsPopup.tsx2
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SetSeverityPopup.js6
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SetTransitionPopup.js4
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SetTypePopup.js6
-rw-r--r--server/sonar-web/src/main/js/components/issue/popups/SimilarIssuesPopup.js18
-rw-r--r--server/sonar-web/src/main/js/helpers/__tests__/dates-test.ts2
39 files changed, 98 insertions, 98 deletions
diff --git a/server/sonar-web/src/main/js/app/components/extensions/OrganizationPageExtension.tsx b/server/sonar-web/src/main/js/app/components/extensions/OrganizationPageExtension.tsx
index 30699762fc9..fd058d429bb 100644
--- a/server/sonar-web/src/main/js/app/components/extensions/OrganizationPageExtension.tsx
+++ b/server/sonar-web/src/main/js/app/components/extensions/OrganizationPageExtension.tsx
@@ -23,7 +23,7 @@ import ExtensionContainer from './ExtensionContainer';
import ExtensionNotFound from './ExtensionNotFound';
import { getOrganizationByKey } from '../../../store/rootReducer';
import { fetchOrganization } from '../../../apps/organizations/actions';
-import { Organization } from '../../../app/types';
+import { Organization } from '../../types';
interface StateToProps {
organization?: Organization;
diff --git a/server/sonar-web/src/main/js/app/components/extensions/exposeLibraries.ts b/server/sonar-web/src/main/js/app/components/extensions/exposeLibraries.ts
index 026979b1b58..e86d1d372d2 100644
--- a/server/sonar-web/src/main/js/app/components/extensions/exposeLibraries.ts
+++ b/server/sonar-web/src/main/js/app/components/extensions/exposeLibraries.ts
@@ -21,7 +21,7 @@ import * as ReactRedux from 'react-redux';
import * as ReactRouter from 'react-router';
import throwGlobalError from '../../utils/throwGlobalError';
import addGlobalSuccessMessage from '../../utils/addGlobalSuccessMessage';
-import Suggestions from '../../components/embed-docs-modal/Suggestions';
+import Suggestions from '../embed-docs-modal/Suggestions';
import * as measures from '../../../helpers/measures';
import * as request from '../../../helpers/request';
import DateFromNow from '../../../components/intl/DateFromNow';
diff --git a/server/sonar-web/src/main/js/app/components/nav/global/GlobalNavMenu.tsx b/server/sonar-web/src/main/js/app/components/nav/global/GlobalNavMenu.tsx
index 8a7b46ff02f..d734d6c1401 100644
--- a/server/sonar-web/src/main/js/app/components/nav/global/GlobalNavMenu.tsx
+++ b/server/sonar-web/src/main/js/app/components/nav/global/GlobalNavMenu.tsx
@@ -20,7 +20,7 @@
import * as React from 'react';
import { Link } from 'react-router';
import * as classNames from 'classnames';
-import { isLoggedIn, CurrentUser, AppState, Extension } from '../../../../app/types';
+import { isLoggedIn, CurrentUser, AppState, Extension } from '../../../types';
import { translate } from '../../../../helpers/l10n';
import { getQualityGatesUrl, getBaseUrl } from '../../../../helpers/urls';
import { isMySet } from '../../../../apps/issues/utils';
diff --git a/server/sonar-web/src/main/js/app/components/nav/settings/SettingsNav.tsx b/server/sonar-web/src/main/js/app/components/nav/settings/SettingsNav.tsx
index 08b49b3099f..d5571dd9248 100644
--- a/server/sonar-web/src/main/js/app/components/nav/settings/SettingsNav.tsx
+++ b/server/sonar-web/src/main/js/app/components/nav/settings/SettingsNav.tsx
@@ -21,7 +21,7 @@ import * as React from 'react';
import * as classNames from 'classnames';
import { IndexLink, Link } from 'react-router';
import PendingPluginsActionNotif from './PendingPluginsActionNotif';
-import * as theme from '../../../../app/theme';
+import * as theme from '../../../theme';
import ContextNavBar from '../../../../components/nav/ContextNavBar';
import Dropdown from '../../../../components/controls/Dropdown';
import NavBarTabs from '../../../../components/nav/NavBarTabs';
diff --git a/server/sonar-web/src/main/js/app/components/search/Search.js b/server/sonar-web/src/main/js/app/components/search/Search.js
index db4a2b79494..63075e9b824 100644
--- a/server/sonar-web/src/main/js/app/components/search/Search.js
+++ b/server/sonar-web/src/main/js/app/components/search/Search.js
@@ -25,7 +25,7 @@ import { debounce, keyBy, uniqBy } from 'lodash';
import { FormattedMessage } from 'react-intl';
import { sortQualifiers } from './utils';
/*:: import type { Component, More, Results } from './utils'; */
-import RecentHistory from '../../components/RecentHistory';
+import RecentHistory from '../RecentHistory';
import DeferredSpinner from '../../../components/common/DeferredSpinner';
import { DropdownOverlay } from '../../../components/controls/Dropdown';
import ClockIcon from '../../../components/icons-components/ClockIcon';
diff --git a/server/sonar-web/src/main/js/apps/background-tasks/components/BackgroundTasksApp.js b/server/sonar-web/src/main/js/apps/background-tasks/components/BackgroundTasksApp.js
index b8d27cf0e7f..94090edd286 100644
--- a/server/sonar-web/src/main/js/apps/background-tasks/components/BackgroundTasksApp.js
+++ b/server/sonar-web/src/main/js/apps/background-tasks/components/BackgroundTasksApp.js
@@ -23,12 +23,12 @@ import PropTypes from 'prop-types';
import Helmet from 'react-helmet';
import { debounce, uniq } from 'lodash';
import { connect } from 'react-redux';
-import { DEFAULT_FILTERS, DEBOUNCE_DELAY, STATUSES, CURRENTS } from './../constants';
import Header from './Header';
import Footer from './Footer';
-import StatsContainer from '../components/StatsContainer';
-import Search from '../components/Search';
-import Tasks from '../components/Tasks';
+import StatsContainer from './StatsContainer';
+import Search from './Search';
+import Tasks from './Tasks';
+import { DEFAULT_FILTERS, DEBOUNCE_DELAY, STATUSES, CURRENTS } from '../constants';
import Suggestions from '../../../app/components/embed-docs-modal/Suggestions';
import {
getTypes,
@@ -38,12 +38,12 @@ import {
cancelTask as cancelTaskAPI
} from '../../../api/ce';
import { updateTask, mapFiltersToParameters } from '../utils';
-/*:: import type { Task } from '../types'; */
-import '../background-tasks.css';
import { fetchOrganizations } from '../../../store/rootActions';
import { translate } from '../../../helpers/l10n';
import { parseAsDate } from '../../../helpers/query';
import { toShortNotSoISOString } from '../../../helpers/dates';
+/*:: import type { Task } from '../types'; */
+import '../background-tasks.css';
/*::
type Props = {
@@ -234,32 +234,32 @@ class BackgroundTasksApp extends React.PureComponent {
<StatsContainer
component={component}
- pendingCount={pendingCount}
failingCount={failingCount}
- onShowFailing={this.handleShowFailing.bind(this)}
onCancelAllPending={this.handleCancelAllPending.bind(this)}
+ onShowFailing={this.handleShowFailing.bind(this)}
+ pendingCount={pendingCount}
/>
<Search
- loading={loading}
component={component}
- status={status}
currents={currents}
- minSubmittedAt={minSubmittedAt}
+ loading={loading}
maxExecutedAt={maxExecutedAt}
+ minSubmittedAt={minSubmittedAt}
+ onFilterUpdate={this.handleFilterUpdate.bind(this)}
+ onReload={this.loadTasksDebounced}
query={query}
+ status={status}
taskType={taskType}
types={types}
- onFilterUpdate={this.handleFilterUpdate.bind(this)}
- onReload={this.loadTasksDebounced}
/>
<Tasks
- loading={loading}
component={component}
- tasks={tasks}
+ loading={loading}
onCancelTask={this.handleCancelTask.bind(this)}
onFilterTask={this.handleFilterTask.bind(this)}
+ tasks={tasks}
/>
<Footer tasks={tasks} />
diff --git a/server/sonar-web/src/main/js/apps/background-tasks/components/Search.js b/server/sonar-web/src/main/js/apps/background-tasks/components/Search.js
index e43c4adc54d..3e02fcc974d 100644
--- a/server/sonar-web/src/main/js/apps/background-tasks/components/Search.js
+++ b/server/sonar-web/src/main/js/apps/background-tasks/components/Search.js
@@ -24,7 +24,7 @@ import StatusFilter from './StatusFilter';
import TypesFilter from './TypesFilter';
import CurrentsFilter from './CurrentsFilter';
import DateFilter from './DateFilter';
-import { DEFAULT_FILTERS } from './../constants';
+import { DEFAULT_FILTERS } from '../constants';
import SearchBox from '../../../components/controls/SearchBox';
import { Button } from '../../../components/ui/buttons';
import { translate } from '../../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/apps/background-tasks/components/TaskActions.tsx b/server/sonar-web/src/main/js/apps/background-tasks/components/TaskActions.tsx
index 44f72bf29ed..02b367047bf 100644
--- a/server/sonar-web/src/main/js/apps/background-tasks/components/TaskActions.tsx
+++ b/server/sonar-web/src/main/js/apps/background-tasks/components/TaskActions.tsx
@@ -20,7 +20,7 @@
import * as React from 'react';
import ScannerContext from './ScannerContext';
import Stacktrace from './Stacktrace';
-import { STATUSES } from './../constants';
+import { STATUSES } from '../constants';
import { translate, translateWithParameters } from '../../../helpers/l10n';
import { Task } from '../types';
import ActionsDropdown, { ActionsDropdownItem } from '../../../components/controls/ActionsDropdown';
diff --git a/server/sonar-web/src/main/js/apps/background-tasks/components/TaskStatus.tsx b/server/sonar-web/src/main/js/apps/background-tasks/components/TaskStatus.tsx
index 4e3aa59dc73..3693ab0a6e4 100644
--- a/server/sonar-web/src/main/js/apps/background-tasks/components/TaskStatus.tsx
+++ b/server/sonar-web/src/main/js/apps/background-tasks/components/TaskStatus.tsx
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import * as React from 'react';
-import { STATUSES } from './../constants';
+import { STATUSES } from '../constants';
import PendingIcon from '../../../components/icons-components/PendingIcon';
import { translate } from '../../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/apps/projectsManagement/AppContainer.tsx b/server/sonar-web/src/main/js/apps/projectsManagement/AppContainer.tsx
index 42f537dbbe6..9004f091ac8 100644
--- a/server/sonar-web/src/main/js/apps/projectsManagement/AppContainer.tsx
+++ b/server/sonar-web/src/main/js/apps/projectsManagement/AppContainer.tsx
@@ -25,7 +25,7 @@ import { Organization, LoggedInUser, Visibility } from '../../app/types';
import { getAppState, getOrganizationByKey, getCurrentUser } from '../../store/rootReducer';
import { receiveOrganizations } from '../../store/organizations/duck';
import { changeProjectDefaultVisibility } from '../../api/permissions';
-import { fetchOrganization } from '../../apps/organizations/actions';
+import { fetchOrganization } from '../organizations/actions';
interface StateProps {
appState: { defaultOrganization: string; qualifiers: string[] };
diff --git a/server/sonar-web/src/main/js/apps/quality-gates/components/ListHeader.tsx b/server/sonar-web/src/main/js/apps/quality-gates/components/ListHeader.tsx
index e85af064e43..2f7d6c54079 100644
--- a/server/sonar-web/src/main/js/apps/quality-gates/components/ListHeader.tsx
+++ b/server/sonar-web/src/main/js/apps/quality-gates/components/ListHeader.tsx
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import * as React from 'react';
+import CreateQualityGateForm from './CreateQualityGateForm';
import { Button } from '../../../components/ui/buttons';
-import CreateQualityGateForm from '../components/CreateQualityGateForm';
import DocTooltip from '../../../components/docs/DocTooltip';
import ModalButton from '../../../components/controls/ModalButton';
import { translate } from '../../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/apps/tutorials/projectOnboarding/ProjectWatcher.tsx b/server/sonar-web/src/main/js/apps/tutorials/projectOnboarding/ProjectWatcher.tsx
index 31683d2f4cd..0b164f8bc6c 100644
--- a/server/sonar-web/src/main/js/apps/tutorials/projectOnboarding/ProjectWatcher.tsx
+++ b/server/sonar-web/src/main/js/apps/tutorials/projectOnboarding/ProjectWatcher.tsx
@@ -23,7 +23,7 @@ import * as classNames from 'classnames';
import AlertErrorIcon from '../../../components/icons-components/AlertErrorIcon';
import AlertSuccessIcon from '../../../components/icons-components/AlertSuccessIcon';
import { getTasksForComponent } from '../../../api/ce';
-import { STATUSES } from '../../../apps/background-tasks/constants';
+import { STATUSES } from '../../background-tasks/constants';
import { translate } from '../../../helpers/l10n';
const INTERVAL = 5000;
diff --git a/server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx b/server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx
index 4782d521c0f..dc71ec4d2aa 100644
--- a/server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx
+++ b/server/sonar-web/src/main/js/components/SourceViewer/components/MeasuresOverlay.tsx
@@ -22,7 +22,7 @@ import { Link } from 'react-router';
import { keyBy, sortBy, groupBy } from 'lodash';
import MeasuresOverlayMeasure from './MeasuresOverlayMeasure';
import MeasuresOverlayTestCases from './MeasuresOverlayTestCases';
-import { Button } from '../../../components/ui/buttons';
+import { Button } from '../../ui/buttons';
import { getFacets } from '../../../api/issues';
import { getMeasures } from '../../../api/measures';
import { getAllMetrics } from '../../../api/metrics';
diff --git a/server/sonar-web/src/main/js/components/common/RestartForm.tsx b/server/sonar-web/src/main/js/components/common/RestartForm.tsx
index eb4f31f7cfb..69dd7aef7e7 100644
--- a/server/sonar-web/src/main/js/components/common/RestartForm.tsx
+++ b/server/sonar-web/src/main/js/components/common/RestartForm.tsx
@@ -20,7 +20,7 @@
import * as React from 'react';
import * as classNames from 'classnames';
import { restartAndWait } from '../../api/system';
-import Modal from '../../components/controls/Modal';
+import Modal from '../controls/Modal';
import { SubmitButton, ResetButtonLink } from '../ui/buttons';
import { translate } from '../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/components/controls/SearchSelect.tsx b/server/sonar-web/src/main/js/components/controls/SearchSelect.tsx
index 9483a3d5167..3b01e2181e9 100644
--- a/server/sonar-web/src/main/js/components/controls/SearchSelect.tsx
+++ b/server/sonar-web/src/main/js/components/controls/SearchSelect.tsx
@@ -19,7 +19,7 @@
*/
import * as React from 'react';
import { debounce } from 'lodash';
-import Select, { Creatable } from '../../components/controls/Select';
+import Select, { Creatable } from './Select';
import { translate, translateWithParameters } from '../../helpers/l10n';
interface Props<T> {
diff --git a/server/sonar-web/src/main/js/components/controls/SimpleModal.tsx b/server/sonar-web/src/main/js/components/controls/SimpleModal.tsx
index 98a77bce7f9..26e7a1d67fa 100644
--- a/server/sonar-web/src/main/js/components/controls/SimpleModal.tsx
+++ b/server/sonar-web/src/main/js/components/controls/SimpleModal.tsx
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import * as React from 'react';
-import Modal from '../../components/controls/Modal';
+import Modal from './Modal';
export interface ChildrenProps {
onCloseClick: (event?: React.SyntheticEvent<HTMLElement>) => void;
diff --git a/server/sonar-web/src/main/js/components/controls/ValidationModal.tsx b/server/sonar-web/src/main/js/components/controls/ValidationModal.tsx
index 200c3bedd46..cae0a6787c5 100644
--- a/server/sonar-web/src/main/js/components/controls/ValidationModal.tsx
+++ b/server/sonar-web/src/main/js/components/controls/ValidationModal.tsx
@@ -20,7 +20,7 @@
import * as React from 'react';
import { withFormik, Form, FormikActions, FormikProps } from 'formik';
import Modal from './Modal';
-import { ResetButtonLink, SubmitButton } from '../../components/ui/buttons';
+import { ResetButtonLink, SubmitButton } from '../ui/buttons';
import DeferredSpinner from '../common/DeferredSpinner';
import { translate } from '../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/components/docs/DocLink.tsx b/server/sonar-web/src/main/js/components/docs/DocLink.tsx
index e4feddec312..33c6125f89e 100644
--- a/server/sonar-web/src/main/js/components/docs/DocLink.tsx
+++ b/server/sonar-web/src/main/js/components/docs/DocLink.tsx
@@ -19,7 +19,7 @@
*/
import * as React from 'react';
import { Link } from 'react-router';
-import DetachIcon from '../../components/icons-components/DetachIcon';
+import DetachIcon from '../icons-components/DetachIcon';
const SONARCLOUD_LINK = '/#sonarcloud#/';
diff --git a/server/sonar-web/src/main/js/components/docs/DocTooltipLink.tsx b/server/sonar-web/src/main/js/components/docs/DocTooltipLink.tsx
index 7160ab51370..212ef160e87 100644
--- a/server/sonar-web/src/main/js/components/docs/DocTooltipLink.tsx
+++ b/server/sonar-web/src/main/js/components/docs/DocTooltipLink.tsx
@@ -20,7 +20,7 @@
import * as React from 'react';
import { Link } from 'react-router';
import { forEach } from 'lodash';
-import DetachIcon from '../../components/icons-components/DetachIcon';
+import DetachIcon from '../icons-components/DetachIcon';
interface OwnProps {
customProps?: { [k: string]: string };
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueAssign.js b/server/sonar-web/src/main/js/components/issue/components/IssueAssign.js
index ffb8dd35c17..0eb7f114d70 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueAssign.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueAssign.js
@@ -20,10 +20,10 @@
// @flow
import React from 'react';
import SetAssigneePopup from '../popups/SetAssigneePopup';
-import Avatar from '../../../components/ui/Avatar';
-import Toggler from '../../../components/controls/Toggler';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import { Button } from '../../../components/ui/buttons';
+import Avatar from '../../ui/Avatar';
+import Toggler from '../../controls/Toggler';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import { Button } from '../../ui/buttons';
import { translate } from '../../../helpers/l10n';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueChangelog.js b/server/sonar-web/src/main/js/components/issue/components/IssueChangelog.js
index 3b6135a0d91..0117454c1e9 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueChangelog.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueChangelog.js
@@ -20,12 +20,12 @@
// @flow
import React from 'react';
import ChangelogPopup from '../popups/ChangelogPopup';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import DateFromNow from '../../../components/intl/DateFromNow';
-import DateTimeFormatter from '../../../components/intl/DateTimeFormatter';
-import Toggler from '../../../components/controls/Toggler';
-import Tooltip from '../../../components/controls/Tooltip';
-import { Button } from '../../../components/ui/buttons';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import DateFromNow from '../../intl/DateFromNow';
+import DateTimeFormatter from '../../intl/DateTimeFormatter';
+import Toggler from '../../controls/Toggler';
+import Tooltip from '../../controls/Tooltip';
+import { Button } from '../../ui/buttons';
/*:: import type { Issue } from '../types'; */
/*::
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueCommentAction.js b/server/sonar-web/src/main/js/components/issue/components/IssueCommentAction.js
index 814d4053cf4..5dfd3bfc69d 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueCommentAction.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueCommentAction.js
@@ -20,8 +20,8 @@
// @flow
import React from 'react';
import { updateIssue } from '../actions';
-import Toggler from '../../../components/controls/Toggler';
-import { Button } from '../../../components/ui/buttons';
+import Toggler from '../../controls/Toggler';
+import { Button } from '../../ui/buttons';
import CommentPopup from '../popups/CommentPopup';
import { addIssueComment } from '../../../api/issues';
import { translate } from '../../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueCommentLine.js b/server/sonar-web/src/main/js/components/issue/components/IssueCommentLine.js
index cce84863a06..417f4294609 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueCommentLine.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueCommentLine.js
@@ -19,13 +19,13 @@
*/
// @flow
import React from 'react';
-import Avatar from '../../../components/ui/Avatar';
-import Toggler from '../../../components/controls/Toggler';
-import EditIcon from '../../../components/icons-components/EditIcon';
-import { EditButton, DeleteButton } from '../../../components/ui/buttons';
+import Avatar from '../../ui/Avatar';
+import Toggler from '../../controls/Toggler';
+import EditIcon from '../../icons-components/EditIcon';
+import { EditButton, DeleteButton } from '../../ui/buttons';
import CommentDeletePopup from '../popups/CommentDeletePopup';
import CommentPopup from '../popups/CommentPopup';
-import DateFromNow from '../../../components/intl/DateFromNow';
+import DateFromNow from '../../intl/DateFromNow';
/*:: import type { IssueComment } from '../types'; */
/*::
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueSeverity.js b/server/sonar-web/src/main/js/components/issue/components/IssueSeverity.js
index f75e0e8f3c7..3541f276c9b 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueSeverity.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueSeverity.js
@@ -21,10 +21,10 @@
import React from 'react';
import SetSeverityPopup from '../popups/SetSeverityPopup';
import { setIssueSeverity } from '../../../api/issues';
-import Toggler from '../../../components/controls/Toggler';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import SeverityHelper from '../../../components/shared/SeverityHelper';
-import { Button } from '../../../components/ui/buttons';
+import Toggler from '../../controls/Toggler';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import SeverityHelper from '../../shared/SeverityHelper';
+import { Button } from '../../ui/buttons';
/*:: import type { Issue } from '../types'; */
/*::
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueTags.js b/server/sonar-web/src/main/js/components/issue/components/IssueTags.js
index b9f1fcba0be..00912b7ca81 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueTags.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueTags.js
@@ -22,9 +22,9 @@ import React from 'react';
import { updateIssue } from '../actions';
import SetIssueTagsPopup from '../popups/SetIssueTagsPopup';
import { setIssueTags } from '../../../api/issues';
-import Toggler from '../../../components/controls/Toggler';
-import TagsList from '../../../components/tags/TagsList';
-import { Button } from '../../../components/ui/buttons';
+import Toggler from '../../controls/Toggler';
+import TagsList from '../../tags/TagsList';
+import { Button } from '../../ui/buttons';
import { translate } from '../../../helpers/l10n';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js b/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
index 3e1bea15210..080113085e6 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueTitleBar.js
@@ -23,7 +23,7 @@ import { Link } from 'react-router';
import IssueChangelog from './IssueChangelog';
import IssueMessage from './IssueMessage';
import SimilarIssuesFilter from './SimilarIssuesFilter';
-import LinkIcon from '../../../components/icons-components/LinkIcon';
+import LinkIcon from '../../icons-components/LinkIcon';
import LocationIndex from '../../common/LocationIndex';
import Tooltip from '../../controls/Tooltip';
import { getBranchLikeQuery } from '../../../helpers/branches';
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueTransition.js b/server/sonar-web/src/main/js/components/issue/components/IssueTransition.js
index 3aced6f8685..52b17fba604 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueTransition.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueTransition.js
@@ -22,10 +22,10 @@ import React from 'react';
import { updateIssue } from '../actions';
import SetTransitionPopup from '../popups/SetTransitionPopup';
import { setIssueTransition } from '../../../api/issues';
-import Toggler from '../../../components/controls/Toggler';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import StatusHelper from '../../../components/shared/StatusHelper';
-import { Button } from '../../../components/ui/buttons';
+import Toggler from '../../controls/Toggler';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import StatusHelper from '../../shared/StatusHelper';
+import { Button } from '../../ui/buttons';
/*:: import type { Issue } from '../types'; */
/*::
diff --git a/server/sonar-web/src/main/js/components/issue/components/IssueType.js b/server/sonar-web/src/main/js/components/issue/components/IssueType.js
index 909a718cb97..dffc6245a69 100644
--- a/server/sonar-web/src/main/js/components/issue/components/IssueType.js
+++ b/server/sonar-web/src/main/js/components/issue/components/IssueType.js
@@ -21,10 +21,10 @@
import React from 'react';
import SetTypePopup from '../popups/SetTypePopup';
import { setIssueType } from '../../../api/issues';
-import Toggler from '../../../components/controls/Toggler';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import { Button } from '../../../components/ui/buttons';
-import IssueTypeIcon from '../../../components/ui/IssueTypeIcon';
+import Toggler from '../../controls/Toggler';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import { Button } from '../../ui/buttons';
+import IssueTypeIcon from '../../ui/IssueTypeIcon';
import { translate } from '../../../helpers/l10n';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/components/SimilarIssuesFilter.js b/server/sonar-web/src/main/js/components/issue/components/SimilarIssuesFilter.js
index 4cb86e6fc01..7126df24225 100644
--- a/server/sonar-web/src/main/js/components/issue/components/SimilarIssuesFilter.js
+++ b/server/sonar-web/src/main/js/components/issue/components/SimilarIssuesFilter.js
@@ -20,10 +20,10 @@
// @flow
import React from 'react';
import SimilarIssuesPopup from '../popups/SimilarIssuesPopup';
-import Toggler from '../../../components/controls/Toggler';
-import DropdownIcon from '../../../components/icons-components/DropdownIcon';
-import FilterIcon from '../../../components/icons-components/FilterIcon';
-import { Button } from '../../../components/ui/buttons';
+import Toggler from '../../controls/Toggler';
+import DropdownIcon from '../../icons-components/DropdownIcon';
+import FilterIcon from '../../icons-components/FilterIcon';
+import { Button } from '../../ui/buttons';
import { translate } from '../../../helpers/l10n';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/popups/ChangelogPopup.js b/server/sonar-web/src/main/js/components/issue/popups/ChangelogPopup.js
index fcfd515b587..3c60cad23a2 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/ChangelogPopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/ChangelogPopup.js
@@ -21,8 +21,8 @@
import React from 'react';
import { getIssueChangelog } from '../../../api/issues';
import { translate } from '../../../helpers/l10n';
-import Avatar from '../../../components/ui/Avatar';
-import DateTimeFormatter from '../../../components/intl/DateTimeFormatter';
+import Avatar from '../../ui/Avatar';
+import DateTimeFormatter from '../../intl/DateTimeFormatter';
import IssueChangelogDiff from '../components/IssueChangelogDiff';
import { DropdownOverlay } from '../../controls/Dropdown';
/*:: import type { ChangelogDiff } from '../components/IssueChangelogDiff'; */
diff --git a/server/sonar-web/src/main/js/components/issue/popups/CommentDeletePopup.js b/server/sonar-web/src/main/js/components/issue/popups/CommentDeletePopup.js
index c7fd5d89ae8..940718ffe8b 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/CommentDeletePopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/CommentDeletePopup.js
@@ -19,7 +19,7 @@
*/
// @flow
import React from 'react';
-import { Button } from '../../../components/ui/buttons';
+import { Button } from '../../ui/buttons';
import { translate } from '../../../helpers/l10n';
import { DropdownOverlay } from '../../controls/Dropdown';
diff --git a/server/sonar-web/src/main/js/components/issue/popups/CommentPopup.js b/server/sonar-web/src/main/js/components/issue/popups/CommentPopup.js
index bee719a083e..aa298b7f919 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/CommentPopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/CommentPopup.js
@@ -19,8 +19,8 @@
*/
// @flow
import React from 'react';
-import MarkdownTips from '../../../components/common/MarkdownTips';
-import { Button, ResetButtonLink } from '../../../components/ui/buttons';
+import MarkdownTips from '../../common/MarkdownTips';
+import { Button, ResetButtonLink } from '../../ui/buttons';
import { translate } from '../../../helpers/l10n';
import { DropdownOverlay } from '../../controls/Dropdown';
/*:: import type { IssueComment } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SetAssigneePopup.js b/server/sonar-web/src/main/js/components/issue/popups/SetAssigneePopup.js
index b5658c997d3..a1758698ec8 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SetAssigneePopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/SetAssigneePopup.js
@@ -22,10 +22,10 @@ import React from 'react';
import { map } from 'lodash';
import { connect } from 'react-redux';
import * as PropTypes from 'prop-types';
-import Avatar from '../../../components/ui/Avatar';
-import SelectList from '../../../components/common/SelectList';
-import SelectListItem from '../../../components/common/SelectListItem';
-import SearchBox from '../../../components/controls/SearchBox';
+import Avatar from '../../ui/Avatar';
+import SelectList from '../../common/SelectList';
+import SelectListItem from '../../common/SelectListItem';
+import SearchBox from '../../controls/SearchBox';
import { searchMembers } from '../../../api/organizations';
import { searchUsers } from '../../../api/users';
import { translate } from '../../../helpers/l10n';
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SetIssueTagsPopup.tsx b/server/sonar-web/src/main/js/components/issue/popups/SetIssueTagsPopup.tsx
index c41c216e8b6..c8c6b382ef8 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SetIssueTagsPopup.tsx
+++ b/server/sonar-web/src/main/js/components/issue/popups/SetIssueTagsPopup.tsx
@@ -19,7 +19,7 @@
*/
import * as React from 'react';
import { difference, without } from 'lodash';
-import TagsSelector from '../../../components/tags/TagsSelector';
+import TagsSelector from '../../tags/TagsSelector';
import { searchIssueTags } from '../../../api/issues';
import { DropdownOverlay } from '../../controls/Dropdown';
import { PopupPlacement } from '../../ui/popups';
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SetSeverityPopup.js b/server/sonar-web/src/main/js/components/issue/popups/SetSeverityPopup.js
index 3a0a211f1d6..12fb311222b 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SetSeverityPopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/SetSeverityPopup.js
@@ -20,9 +20,9 @@
// @flow
import React from 'react';
import { translate } from '../../../helpers/l10n';
-import SelectList from '../../../components/common/SelectList';
-import SelectListItem from '../../../components/common/SelectListItem';
-import SeverityIcon from '../../../components/icons-components/SeverityIcon';
+import SelectList from '../../common/SelectList';
+import SelectListItem from '../../common/SelectListItem';
+import SeverityIcon from '../../icons-components/SeverityIcon';
import { DropdownOverlay } from '../../controls/Dropdown';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SetTransitionPopup.js b/server/sonar-web/src/main/js/components/issue/popups/SetTransitionPopup.js
index 37d342f7eb2..20bf1f6c1f4 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SetTransitionPopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/SetTransitionPopup.js
@@ -19,8 +19,8 @@
*/
// @flow
import React from 'react';
-import SelectList from '../../../components/common/SelectList';
-import SelectListItem from '../../../components/common/SelectListItem';
+import SelectList from '../../common/SelectList';
+import SelectListItem from '../../common/SelectListItem';
import { translate } from '../../../helpers/l10n';
import { DropdownOverlay } from '../../controls/Dropdown';
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SetTypePopup.js b/server/sonar-web/src/main/js/components/issue/popups/SetTypePopup.js
index f69e07cf141..4c2fadc9f0c 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SetTypePopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/SetTypePopup.js
@@ -20,9 +20,9 @@
// @flow
import React from 'react';
import { translate } from '../../../helpers/l10n';
-import IssueTypeIcon from '../../../components/ui/IssueTypeIcon';
-import SelectList from '../../../components/common/SelectList';
-import SelectListItem from '../../../components/common/SelectListItem';
+import IssueTypeIcon from '../../ui/IssueTypeIcon';
+import SelectList from '../../common/SelectList';
+import SelectListItem from '../../common/SelectListItem';
import { DropdownOverlay } from '../../controls/Dropdown';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/components/issue/popups/SimilarIssuesPopup.js b/server/sonar-web/src/main/js/components/issue/popups/SimilarIssuesPopup.js
index e1b7315c266..9674ca0fc93 100644
--- a/server/sonar-web/src/main/js/components/issue/popups/SimilarIssuesPopup.js
+++ b/server/sonar-web/src/main/js/components/issue/popups/SimilarIssuesPopup.js
@@ -19,15 +19,15 @@
*/
// @flow
import React from 'react';
-import SelectList from '../../../components/common/SelectList';
-import SelectListItem from '../../../components/common/SelectListItem';
-import { DropdownOverlay } from '../../../components/controls/Dropdown';
-import SeverityHelper from '../../../components/shared/SeverityHelper';
-import StatusHelper from '../../../components/shared/StatusHelper';
-import QualifierIcon from '../../../components/icons-components/QualifierIcon';
-import TagsIcon from '../../../components/icons-components/TagsIcon';
-import IssueTypeIcon from '../../../components/ui/IssueTypeIcon';
-import Avatar from '../../../components/ui/Avatar';
+import SelectList from '../../common/SelectList';
+import SelectListItem from '../../common/SelectListItem';
+import { DropdownOverlay } from '../../controls/Dropdown';
+import SeverityHelper from '../../shared/SeverityHelper';
+import StatusHelper from '../../shared/StatusHelper';
+import QualifierIcon from '../../icons-components/QualifierIcon';
+import TagsIcon from '../../icons-components/TagsIcon';
+import IssueTypeIcon from '../../ui/IssueTypeIcon';
+import Avatar from '../../ui/Avatar';
import { translate } from '../../../helpers/l10n';
import { fileFromPath, limitComponentName } from '../../../helpers/path';
/*:: import type { Issue } from '../types'; */
diff --git a/server/sonar-web/src/main/js/helpers/__tests__/dates-test.ts b/server/sonar-web/src/main/js/helpers/__tests__/dates-test.ts
index 0069f9502ed..f3b4a2c0c01 100644
--- a/server/sonar-web/src/main/js/helpers/__tests__/dates-test.ts
+++ b/server/sonar-web/src/main/js/helpers/__tests__/dates-test.ts
@@ -18,8 +18,8 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
import * as dates from '../dates';
-import { parseDate } from '../../helpers/dates';
+const { parseDate } = dates;
const recentDate = parseDate('2017-08-16T12:00:00.000Z');
const recentDate2 = parseDate('2016-12-16T12:00:00.000Z');
const oldDate = parseDate('2014-01-12T12:00:00.000Z');