Fix relative imports

python tools/fixrelative.py awx/ui_next/src
npm --prefix=awx/ui_next run lint -- --fix
npm --prefix=awx/ui_next run prettier
This commit is contained in:
Jake McDermott
2021-07-19 11:29:26 -04:00
parent 0ee7d22e9d
commit 595cf192b7
716 changed files with 2488 additions and 2673 deletions

View File

@@ -16,21 +16,21 @@ import {
ConfigProvider, ConfigProvider,
useAuthorizedPath, useAuthorizedPath,
useUserProfile, useUserProfile,
} from './contexts/Config'; } from 'contexts/Config';
import { SessionProvider, useSession } from './contexts/Session'; import { SessionProvider, useSession } from 'contexts/Session';
import AppContainer from './components/AppContainer'; import AppContainer from 'components/AppContainer';
import Background from './components/Background'; import Background from 'components/Background';
import ContentError from './components/ContentError'; import ContentError from 'components/ContentError';
import NotFound from './screens/NotFound'; import NotFound from 'screens/NotFound';
import Login from './screens/Login'; import Login from 'screens/Login';
import { isAuthenticated } from './util/auth'; import { isAuthenticated } from 'util/auth';
import { getLanguageWithoutRegionCode } from './util/language'; import { getLanguageWithoutRegionCode } from 'util/language';
import Metrics from 'screens/Metrics';
import SubscriptionEdit from 'screens/Setting/Subscription/SubscriptionEdit';
import { RootAPI } from 'api';
import { dynamicActivate, locales } from './i18nLoader'; import { dynamicActivate, locales } from './i18nLoader';
import Metrics from './screens/Metrics';
import getRouteConfig from './routeConfig'; import getRouteConfig from './routeConfig';
import SubscriptionEdit from './screens/Setting/Subscription/SubscriptionEdit';
import { SESSION_REDIRECT_URL } from './constants'; import { SESSION_REDIRECT_URL } from './constants';
import { RootAPI } from './api';
function ErrorFallback({ error }) { function ErrorFallback({ error }) {
return ( return (

View File

@@ -1,8 +1,8 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { RootAPI } from 'api';
import * as SessionContext from 'contexts/Session';
import { mountWithContexts } from '../testUtils/enzymeHelpers'; import { mountWithContexts } from '../testUtils/enzymeHelpers';
import { RootAPI } from './api';
import * as SessionContext from './contexts/Session';
import App from './App'; import App from './App';
jest.mock('./api'); jest.mock('./api');

View File

@@ -1,7 +1,7 @@
import axios from 'axios'; import axios from 'axios';
import { encodeQueryString } from 'util/qs';
import debounce from 'util/debounce';
import { SESSION_TIMEOUT_KEY } from '../constants'; import { SESSION_TIMEOUT_KEY } from '../constants';
import { encodeQueryString } from '../util/qs';
import debounce from '../util/debounce';
const updateStorage = debounce((key, val) => { const updateStorage = debounce((key, val) => {
window.localStorage.setItem(key, val); window.localStorage.setItem(key, val);

View File

@@ -2,7 +2,7 @@ import React from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { AboutModal } from '@patternfly/react-core'; import { AboutModal } from '@patternfly/react-core';
import useBrandName from '../../util/useBrandName'; import useBrandName from 'util/useBrandName';
function About({ version, isOpen, onClose }) { function About({ version, isOpen, onClose }) {
const brandName = useBrandName(); const brandName = useBrandName();

View File

@@ -5,13 +5,13 @@ import { t } from '@lingui/macro';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { Button, DropdownItem } from '@patternfly/react-core'; import { Button, DropdownItem } from '@patternfly/react-core';
import useRequest, { useDismissableError } from '../../util/useRequest'; import useRequest, { useDismissableError } from 'util/useRequest';
import { InventoriesAPI, CredentialTypesAPI } from '../../api'; import { InventoriesAPI, CredentialTypesAPI } from 'api';
import { KebabifiedContext } from 'contexts/Kebabified';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
import AdHocCommandsWizard from './AdHocCommandsWizard'; import AdHocCommandsWizard from './AdHocCommandsWizard';
import { KebabifiedContext } from '../../contexts/Kebabified';
import ContentError from '../ContentError'; import ContentError from '../ContentError';
function AdHocCommands({ adHocItems, hasListItems, onLaunchLoading }) { function AdHocCommands({ adHocItems, hasListItems, onLaunchLoading }) {

View File

@@ -1,16 +1,16 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import {
mountWithContexts,
waitForElement,
} from '../../../testUtils/enzymeHelpers';
import { import {
CredentialTypesAPI, CredentialTypesAPI,
InventoriesAPI, InventoriesAPI,
CredentialsAPI, CredentialsAPI,
ExecutionEnvironmentsAPI, ExecutionEnvironmentsAPI,
RootAPI, RootAPI,
} from '../../api'; } from 'api';
import {
mountWithContexts,
waitForElement,
} from '../../../testUtils/enzymeHelpers';
import AdHocCommands from './AdHocCommands'; import AdHocCommands from './AdHocCommands';
jest.mock('../../api/models/CredentialTypes'); jest.mock('../../api/models/CredentialTypes');

View File

@@ -1,10 +1,10 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { CredentialsAPI, ExecutionEnvironmentsAPI, RootAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { CredentialsAPI, ExecutionEnvironmentsAPI, RootAPI } from '../../api';
import AdHocCommandsWizard from './AdHocCommandsWizard'; import AdHocCommandsWizard from './AdHocCommandsWizard';
jest.mock('../../api/models/CredentialTypes'); jest.mock('../../api/models/CredentialTypes');

View File

@@ -5,14 +5,14 @@ import { t } from '@lingui/macro';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { useField } from 'formik'; import { useField } from 'formik';
import { Form, FormGroup } from '@patternfly/react-core'; import { Form, FormGroup } from '@patternfly/react-core';
import { CredentialsAPI } from '../../api'; import { CredentialsAPI } from 'api';
import { getQSConfig, parseQueryString, mergeParams } from 'util/qs';
import useRequest from 'util/useRequest';
import { required } from 'util/validators';
import Popover from '../Popover'; import Popover from '../Popover';
import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs';
import useRequest from '../../util/useRequest';
import ContentError from '../ContentError'; import ContentError from '../ContentError';
import ContentLoading from '../ContentLoading'; import ContentLoading from '../ContentLoading';
import { required } from '../../util/validators';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
const QS_CONFIG = getQSConfig('credentials', { const QS_CONFIG = getQSConfig('credentials', {

View File

@@ -1,11 +1,11 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { CredentialsAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { CredentialsAPI } from '../../api';
import AdHocCredentialStep from './AdHocCredentialStep'; import AdHocCredentialStep from './AdHocCredentialStep';
jest.mock('../../api/models/Credentials'); jest.mock('../../api/models/Credentials');

View File

@@ -6,6 +6,8 @@ import PropTypes from 'prop-types';
import { useField } from 'formik'; import { useField } from 'formik';
import { Form, FormGroup, Switch, Checkbox } from '@patternfly/react-core'; import { Form, FormGroup, Switch, Checkbox } from '@patternfly/react-core';
import styled from 'styled-components'; import styled from 'styled-components';
import { required } from 'util/validators';
import useBrandName from 'util/useBrandName';
import AnsibleSelect from '../AnsibleSelect'; import AnsibleSelect from '../AnsibleSelect';
import FormField from '../FormField'; import FormField from '../FormField';
import { VariablesField } from '../CodeEditor'; import { VariablesField } from '../CodeEditor';
@@ -15,8 +17,6 @@ import {
FormCheckboxLayout, FormCheckboxLayout,
} from '../FormLayout'; } from '../FormLayout';
import Popover from '../Popover'; import Popover from '../Popover';
import { required } from '../../util/validators';
import useBrandName from '../../util/useBrandName';
const TooltipWrapper = styled.div` const TooltipWrapper = styled.div`
text-align: left; text-align: left;

View File

@@ -1,8 +1,8 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { RootAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { RootAPI } from '../../api';
import DetailsStep from './AdHocDetailsStep'; import DetailsStep from './AdHocDetailsStep';
jest.mock('../../api/models/Credentials'); jest.mock('../../api/models/Credentials');

View File

@@ -1,11 +1,11 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { ExecutionEnvironmentsAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { ExecutionEnvironmentsAPI } from '../../api';
import AdHocExecutionEnvironmentStep from './AdHocExecutionEnvironmentStep'; import AdHocExecutionEnvironmentStep from './AdHocExecutionEnvironmentStep';
jest.mock('../../api/models/ExecutionEnvironments'); jest.mock('../../api/models/ExecutionEnvironments');

View File

@@ -3,11 +3,11 @@ import { useHistory } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { useField } from 'formik'; import { useField } from 'formik';
import { Form, FormGroup } from '@patternfly/react-core'; import { Form, FormGroup } from '@patternfly/react-core';
import { ExecutionEnvironmentsAPI } from '../../api'; import { ExecutionEnvironmentsAPI } from 'api';
import Popover from '../Popover';
import { parseQueryString, getQSConfig, mergeParams } from '../../util/qs'; import { parseQueryString, getQSConfig, mergeParams } from 'util/qs';
import useRequest from '../../util/useRequest'; import useRequest from 'util/useRequest';
import Popover from '../Popover';
import ContentError from '../ContentError'; import ContentError from '../ContentError';
import ContentLoading from '../ContentLoading'; import ContentLoading from '../ContentLoading';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';

View File

@@ -2,8 +2,8 @@ import React, { useState, useRef, useEffect, Fragment } from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { Dropdown, DropdownPosition } from '@patternfly/react-core'; import { Dropdown, DropdownPosition } from '@patternfly/react-core';
import { useKebabifiedMenu } from 'contexts/Kebabified';
import { ToolbarAddButton } from '../PaginatedTable'; import { ToolbarAddButton } from '../PaginatedTable';
import { useKebabifiedMenu } from '../../contexts/Kebabified';
function AddDropDownButton({ dropdownItems, ouiaId }) { function AddDropDownButton({ dropdownItems, ouiaId }) {
const { isKebabified } = useKebabifiedMenu(); const { isKebabified } = useKebabifiedMenu();

View File

@@ -2,11 +2,11 @@ import React, { Fragment, useState, useEffect } from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { useHistory } from 'react-router-dom'; import { useHistory } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { TeamsAPI, UsersAPI } from 'api';
import SelectableCard from '../SelectableCard'; import SelectableCard from '../SelectableCard';
import Wizard from '../Wizard'; import Wizard from '../Wizard';
import SelectResourceStep from './SelectResourceStep'; import SelectResourceStep from './SelectResourceStep';
import SelectRoleStep from './SelectRoleStep'; import SelectRoleStep from './SelectRoleStep';
import { TeamsAPI, UsersAPI } from '../../api';
const readUsers = async queryParams => const readUsers = async queryParams =>
UsersAPI.read(Object.assign(queryParams, { is_superuser: false })); UsersAPI.read(Object.assign(queryParams, { is_superuser: false }));

View File

@@ -4,12 +4,12 @@ import { shallow } from 'enzyme';
import { createMemoryHistory } from 'history'; import { createMemoryHistory } from 'history';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { TeamsAPI, UsersAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import AddResourceRole, { _AddResourceRole } from './AddResourceRole'; import AddResourceRole, { _AddResourceRole } from './AddResourceRole';
import { TeamsAPI, UsersAPI } from '../../api';
jest.mock('../../api/models/Teams'); jest.mock('../../api/models/Teams');
jest.mock('../../api/models/Users'); jest.mock('../../api/models/Users');

View File

@@ -2,12 +2,12 @@ import React, { Fragment, useCallback, useEffect } from 'react';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { withRouter, useLocation } from 'react-router-dom'; import { withRouter, useLocation } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import useRequest from '../../util/useRequest'; import useRequest from 'util/useRequest';
import { SearchColumns, SortColumns } from '../../types'; import { SearchColumns, SortColumns } from 'types';
import { getQSConfig, parseQueryString } from 'util/qs';
import DataListToolbar from '../DataListToolbar'; import DataListToolbar from '../DataListToolbar';
import CheckboxListItem from '../CheckboxListItem'; import CheckboxListItem from '../CheckboxListItem';
import { SelectedList } from '../SelectedList'; import { SelectedList } from '../SelectedList';
import { getQSConfig, parseQueryString } from '../../util/qs';
import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable'; import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable';
const QS_Config = sortColumns => { const QS_Config = sortColumns => {

View File

@@ -15,9 +15,9 @@ import { t, Plural } from '@lingui/macro';
import styled from 'styled-components'; import styled from 'styled-components';
import { useConfig, useAuthorizedPath } from '../../contexts/Config'; import { useConfig, useAuthorizedPath } from 'contexts/Config';
import { useSession } from '../../contexts/Session'; import { useSession } from 'contexts/Session';
import issuePendoIdentity from '../../util/issuePendoIdentity'; import issuePendoIdentity from 'util/issuePendoIdentity';
import About from '../About'; import About from '../About';
import BrandLogo from './BrandLogo'; import BrandLogo from './BrandLogo';
import NavExpandableGroup from './NavExpandableGroup'; import NavExpandableGroup from './NavExpandableGroup';

View File

@@ -1,11 +1,11 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { MeAPI, RootAPI } from 'api';
import { useAuthorizedPath } from 'contexts/Config';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { MeAPI, RootAPI } from '../../api';
import { useAuthorizedPath } from '../../contexts/Config';
import AppContainer from './AppContainer'; import AppContainer from './AppContainer';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -20,10 +20,10 @@ import {
QuestionCircleIcon, QuestionCircleIcon,
UserIcon, UserIcon,
} from '@patternfly/react-icons'; } from '@patternfly/react-icons';
import { WorkflowApprovalsAPI } from '../../api'; import { WorkflowApprovalsAPI } from 'api';
import useRequest from '../../util/useRequest'; import useRequest from 'util/useRequest';
import getDocsBaseUrl from '../../util/getDocsBaseUrl'; import getDocsBaseUrl from 'util/getDocsBaseUrl';
import { useConfig } from '../../contexts/Config'; import { useConfig } from 'contexts/Config';
import useWsPendingApprovalCount from './useWsPendingApprovalCount'; import useWsPendingApprovalCount from './useWsPendingApprovalCount';
const PendingWorkflowApprovals = styled.div` const PendingWorkflowApprovals = styled.div`

View File

@@ -1,8 +1,8 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { WorkflowApprovalsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import PageHeaderToolbar from './PageHeaderToolbar'; import PageHeaderToolbar from './PageHeaderToolbar';
import { WorkflowApprovalsAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -1,6 +1,6 @@
import { useState, useEffect } from 'react'; import { useState, useEffect } from 'react';
import useWebsocket from '../../util/useWebsocket'; import useWebsocket from 'util/useWebsocket';
import useThrottle from '../../util/useThrottle'; import useThrottle from 'util/useThrottle';
export default function useWsPendingApprovalCount( export default function useWsPendingApprovalCount(
initialCount, initialCount,

View File

@@ -3,10 +3,10 @@ import { useHistory } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Button, Modal } from '@patternfly/react-core'; import { Button, Modal } from '@patternfly/react-core';
import useRequest from 'util/useRequest';
import { getQSConfig, parseQueryString } from 'util/qs';
import useSelected from 'util/useSelected';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import { getQSConfig, parseQueryString } from '../../util/qs';
import useSelected from '../../util/useSelected';
const QS_CONFIG = (order_by = 'name') => { const QS_CONFIG = (order_by = 'name') => {
return getQSConfig('associate', { return getQSConfig('associate', {

View File

@@ -11,7 +11,7 @@ import 'ace-builds/src-noconflict/theme-github';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import styled from 'styled-components'; import styled from 'styled-components';
import debounce from '../../util/debounce'; import debounce from 'util/debounce';
config.set('loadWorkerFromBlob', false); config.set('loadWorkerFromBlob', false);

View File

@@ -1,7 +1,7 @@
import React from 'react'; import React from 'react';
import debounce from 'util/debounce';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import CodeEditor from './CodeEditor'; import CodeEditor from './CodeEditor';
import debounce from '../../util/debounce';
jest.mock('../../util/debounce'); jest.mock('../../util/debounce');

View File

@@ -11,15 +11,10 @@ import {
Modal, Modal,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { ExpandArrowsAltIcon } from '@patternfly/react-icons'; import { ExpandArrowsAltIcon } from '@patternfly/react-icons';
import { yamlToJson, jsonToYaml, isJsonObject, isJsonString } from 'util/yaml';
import { DetailName, DetailValue } from '../DetailList'; import { DetailName, DetailValue } from '../DetailList';
import MultiButtonToggle from '../MultiButtonToggle'; import MultiButtonToggle from '../MultiButtonToggle';
import Popover from '../Popover'; import Popover from '../Popover';
import {
yamlToJson,
jsonToYaml,
isJsonObject,
isJsonString,
} from '../../util/yaml';
import CodeEditor from './CodeEditor'; import CodeEditor from './CodeEditor';
import { JSON_MODE, YAML_MODE } from './constants'; import { JSON_MODE, YAML_MODE } from './constants';

View File

@@ -6,9 +6,9 @@ import { useField } from 'formik';
import styled from 'styled-components'; import styled from 'styled-components';
import { Split, SplitItem, Button, Modal } from '@patternfly/react-core'; import { Split, SplitItem, Button, Modal } from '@patternfly/react-core';
import { ExpandArrowsAltIcon } from '@patternfly/react-icons'; import { ExpandArrowsAltIcon } from '@patternfly/react-icons';
import { yamlToJson, jsonToYaml, isJsonString } from 'util/yaml';
import { CheckboxField } from '../FormField'; import { CheckboxField } from '../FormField';
import MultiButtonToggle from '../MultiButtonToggle'; import MultiButtonToggle from '../MultiButtonToggle';
import { yamlToJson, jsonToYaml, isJsonString } from '../../util/yaml';
import CodeEditor from './CodeEditor'; import CodeEditor from './CodeEditor';
import Popover from '../Popover'; import Popover from '../Popover';
import { JSON_MODE, YAML_MODE } from './constants'; import { JSON_MODE, YAML_MODE } from './constants';

View File

@@ -2,7 +2,7 @@ import React, { useState } from 'react';
import { string, func, bool, number } from 'prop-types'; import { string, func, bool, number } from 'prop-types';
import { Split, SplitItem } from '@patternfly/react-core'; import { Split, SplitItem } from '@patternfly/react-core';
import styled from 'styled-components'; import styled from 'styled-components';
import { yamlToJson, jsonToYaml, isJsonString } from '../../util/yaml'; import { yamlToJson, jsonToYaml, isJsonString } from 'util/yaml';
import MultiButtonToggle from '../MultiButtonToggle'; import MultiButtonToggle from '../MultiButtonToggle';
import CodeEditor from './CodeEditor'; import CodeEditor from './CodeEditor';
import { JSON_MODE, YAML_MODE } from './constants'; import { JSON_MODE, YAML_MODE } from './constants';

View File

@@ -10,7 +10,7 @@ import {
EmptyStateBody, EmptyStateBody,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { ExclamationTriangleIcon } from '@patternfly/react-icons'; import { ExclamationTriangleIcon } from '@patternfly/react-icons';
import { useSession } from '../../contexts/Session'; import { useSession } from 'contexts/Session';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
function ContentError({ error, children, isNotFound }) { function ContentError({ error, children, isNotFound }) {

View File

@@ -3,7 +3,7 @@ import { t } from '@lingui/macro';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { Button } from '@patternfly/react-core'; import { Button } from '@patternfly/react-core';
import { CopyIcon } from '@patternfly/react-icons'; import { CopyIcon } from '@patternfly/react-icons';
import useRequest, { useDismissableError } from '../../util/useRequest'; import useRequest, { useDismissableError } from 'util/useRequest';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';

View File

@@ -2,8 +2,8 @@ import React from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Chip } from '@patternfly/react-core'; import { Chip } from '@patternfly/react-core';
import { Credential } from '../../types'; import { Credential } from 'types';
import { toTitleCase } from '../../util/strings'; import { toTitleCase } from 'util/strings';
function CredentialChip({ credential, ...props }) { function CredentialChip({ credential, ...props }) {
let type; let type;

View File

@@ -20,11 +20,11 @@ import {
AngleRightIcon, AngleRightIcon,
SearchIcon, SearchIcon,
} from '@patternfly/react-icons'; } from '@patternfly/react-icons';
import { SearchColumns, SortColumns, QSConfig } from 'types';
import { KebabifiedProvider } from 'contexts/Kebabified';
import ExpandCollapse from '../ExpandCollapse'; import ExpandCollapse from '../ExpandCollapse';
import Search from '../Search'; import Search from '../Search';
import Sort from '../Sort'; import Sort from '../Sort';
import { SearchColumns, SortColumns, QSConfig } from '../../types';
import { KebabifiedProvider } from '../../contexts/Kebabified';
const ToolbarContent = styled(PFToolbarContent)` const ToolbarContent = styled(PFToolbarContent)`
& > .pf-c-toolbar__content-section { & > .pf-c-toolbar__content-section {

View File

@@ -4,8 +4,8 @@ import PropTypes from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import styled from 'styled-components'; import styled from 'styled-components';
import { Button, Badge, Alert, Tooltip } from '@patternfly/react-core'; import { Button, Badge, Alert, Tooltip } from '@patternfly/react-core';
import { getRelatedResourceDeleteCounts } from 'util/getRelatedResourceDeleteDetails';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import { getRelatedResourceDeleteCounts } from '../../util/getRelatedResourceDeleteDetails';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
const WarningMessage = styled(Alert)` const WarningMessage = styled(Alert)`

View File

@@ -1,10 +1,10 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { CredentialsAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { CredentialsAPI } from '../../api';
import DeleteButton from './DeleteButton'; import DeleteButton from './DeleteButton';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -2,7 +2,7 @@ import React from 'react';
import { node, string } from 'prop-types'; import { node, string } from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import styled from 'styled-components'; import styled from 'styled-components';
import { formatDateString } from '../../util/dates'; import { formatDateString } from 'util/dates';
import _Detail from './Detail'; import _Detail from './Detail';
const Detail = styled(_Detail)` const Detail = styled(_Detail)`

View File

@@ -3,9 +3,9 @@ import { node, string } from 'prop-types';
import { Trans } from '@lingui/macro'; import { Trans } from '@lingui/macro';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import styled from 'styled-components'; import styled from 'styled-components';
import { formatDateString } from '../../util/dates'; import { formatDateString } from 'util/dates';
import { SummaryFieldUser } from 'types';
import _Detail from './Detail'; import _Detail from './Detail';
import { SummaryFieldUser } from '../../types';
const Detail = styled(_Detail)` const Detail = styled(_Detail)`
word-break: break-word; word-break: break-word;

View File

@@ -4,7 +4,7 @@ import { arrayOf, func, shape, string, oneOfType, number } from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Button, Tooltip, DropdownItem } from '@patternfly/react-core'; import { Button, Tooltip, DropdownItem } from '@patternfly/react-core';
import styled from 'styled-components'; import styled from 'styled-components';
import { KebabifiedContext } from '../../contexts/Kebabified'; import { KebabifiedContext } from 'contexts/Kebabified';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';

View File

@@ -5,10 +5,10 @@ import { t, Trans } from '@lingui/macro';
import { Popover, Tooltip } from '@patternfly/react-core'; import { Popover, Tooltip } from '@patternfly/react-core';
import styled from 'styled-components'; import styled from 'styled-components';
import { ExclamationTriangleIcon as PFExclamationTriangleIcon } from '@patternfly/react-icons'; import { ExclamationTriangleIcon as PFExclamationTriangleIcon } from '@patternfly/react-icons';
import { ExecutionEnvironment } from 'types';
import getDocsBaseUrl from 'util/getDocsBaseUrl';
import { useConfig } from 'contexts/Config';
import { Detail } from '../DetailList'; import { Detail } from '../DetailList';
import { ExecutionEnvironment } from '../../types';
import getDocsBaseUrl from '../../util/getDocsBaseUrl';
import { useConfig } from '../../contexts/Config';
const ExclamationTriangleIcon = styled(PFExclamationTriangleIcon)` const ExclamationTriangleIcon = styled(PFExclamationTriangleIcon)`
color: var(--pf-global--warning-color--100); color: var(--pf-global--warning-color--100);

View File

@@ -3,13 +3,13 @@ import { bool, func, shape } from 'prop-types';
import { Formik, useField, useFormikContext } from 'formik'; import { Formik, useField, useFormikContext } from 'formik';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Form, FormGroup, Tooltip } from '@patternfly/react-core'; import { Form, FormGroup, Tooltip } from '@patternfly/react-core';
import { required } from 'util/validators';
import FormField, { FormSubmitError } from '../FormField'; import FormField, { FormSubmitError } from '../FormField';
import FormActionGroup from '../FormActionGroup/FormActionGroup'; import FormActionGroup from '../FormActionGroup/FormActionGroup';
import { VariablesField } from '../CodeEditor'; import { VariablesField } from '../CodeEditor';
import { InventoryLookup } from '../Lookup'; import { InventoryLookup } from '../Lookup';
import { FormColumnLayout, FormFullWidthLayout } from '../FormLayout'; import { FormColumnLayout, FormFullWidthLayout } from '../FormLayout';
import Popover from '../Popover'; import Popover from '../Popover';
import { required } from '../../util/validators';
const InventoryLookupField = ({ isDisabled }) => { const InventoryLookupField = ({ isDisabled }) => {
const { setFieldValue, setFieldTouched } = useFormikContext(); const { setFieldValue, setFieldTouched } = useFormikContext();

View File

@@ -3,10 +3,10 @@ import React, { Fragment, useState, useEffect, useCallback } from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Switch, Tooltip } from '@patternfly/react-core'; import { Switch, Tooltip } from '@patternfly/react-core';
import useRequest from 'util/useRequest';
import { HostsAPI } from 'api';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
import useRequest from '../../util/useRequest';
import { HostsAPI } from '../../api';
function HostToggle({ function HostToggle({
className, className,

View File

@@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { HostsAPI } from '../../api'; import { HostsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import HostToggle from './HostToggle'; import HostToggle from './HostToggle';

View File

@@ -2,11 +2,11 @@ import React, { useState, useEffect, useCallback } from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Switch, Tooltip } from '@patternfly/react-core'; import { Switch, Tooltip } from '@patternfly/react-core';
import AlertModal from '../AlertModal'; import useRequest from 'util/useRequest';
import { InstancesAPI } from 'api';
import { useConfig } from 'contexts/Config';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
import useRequest from '../../util/useRequest'; import AlertModal from '../AlertModal';
import { InstancesAPI } from '../../api';
import { useConfig } from '../../contexts/Config';
function InstanceToggle({ className, fetchInstances, instance, onToggle }) { function InstanceToggle({ className, fetchInstances, instance, onToggle }) {
const { me = {} } = useConfig(); const { me = {} } = useConfig();

View File

@@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { InstancesAPI } from '../../api'; import { InstancesAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import InstanceToggle from './InstanceToggle'; import InstanceToggle from './InstanceToggle';

View File

@@ -2,8 +2,8 @@ import React, { useCallback, useState } from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { MinusCircleIcon } from '@patternfly/react-icons'; import { MinusCircleIcon } from '@patternfly/react-icons';
import { Button, Tooltip } from '@patternfly/react-core'; import { Button, Tooltip } from '@patternfly/react-core';
import { getJobModel } from '../../util/jobs'; import { getJobModel } from 'util/jobs';
import useRequest, { useDismissableError } from '../../util/useRequest'; import useRequest, { useDismissableError } from 'util/useRequest';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';

View File

@@ -6,7 +6,7 @@ import {
SystemJobsAPI, SystemJobsAPI,
WorkflowJobsAPI, WorkflowJobsAPI,
JobsAPI, JobsAPI,
} from '../../api'; } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import JobCancelButton from './JobCancelButton'; import JobCancelButton from './JobCancelButton';

View File

@@ -3,6 +3,16 @@ import { useLocation } from 'react-router-dom';
import { t, Plural } from '@lingui/macro'; import { t, Plural } from '@lingui/macro';
import { Card } from '@patternfly/react-core'; import { Card } from '@patternfly/react-core';
import useRequest, {
useDeleteItems,
useDismissableError,
} from 'util/useRequest';
import { useConfig } from 'contexts/Config';
import useSelected from 'util/useSelected';
import useExpanded from 'util/useExpanded';
import { isJobRunning, getJobModel } from 'util/jobs';
import { getQSConfig, parseQueryString } from 'util/qs';
import { UnifiedJobsAPI } from 'api';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import DatalistToolbar from '../DataListToolbar'; import DatalistToolbar from '../DataListToolbar';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
@@ -11,19 +21,9 @@ import PaginatedTable, {
HeaderCell, HeaderCell,
ToolbarDeleteButton, ToolbarDeleteButton,
} from '../PaginatedTable'; } from '../PaginatedTable';
import useRequest, {
useDeleteItems,
useDismissableError,
} from '../../util/useRequest';
import { useConfig } from '../../contexts/Config';
import useSelected from '../../util/useSelected';
import useExpanded from '../../util/useExpanded';
import { isJobRunning, getJobModel } from '../../util/jobs';
import { getQSConfig, parseQueryString } from '../../util/qs';
import JobListItem from './JobListItem'; import JobListItem from './JobListItem';
import JobListCancelButton from './JobListCancelButton'; import JobListCancelButton from './JobListCancelButton';
import useWsJobs from './useWsJobs'; import useWsJobs from './useWsJobs';
import { UnifiedJobsAPI } from '../../api';
function JobList({ defaultParams, showTypeColumn = false }) { function JobList({ defaultParams, showTypeColumn = false }) {
const qsConfig = getQSConfig( const qsConfig = getQSConfig(

View File

@@ -1,9 +1,5 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import {
mountWithContexts,
waitForElement,
} from '../../../testUtils/enzymeHelpers';
import { import {
AdHocCommandsAPI, AdHocCommandsAPI,
InventoryUpdatesAPI, InventoryUpdatesAPI,
@@ -12,7 +8,11 @@ import {
SystemJobsAPI, SystemJobsAPI,
UnifiedJobsAPI, UnifiedJobsAPI,
WorkflowJobsAPI, WorkflowJobsAPI,
} from '../../api'; } from 'api';
import {
mountWithContexts,
waitForElement,
} from '../../../testUtils/enzymeHelpers';
import JobList from './JobList'; import JobList from './JobList';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -3,10 +3,10 @@ import React, { useContext, useEffect, useState } from 'react';
import { t, Plural } from '@lingui/macro'; import { t, Plural } from '@lingui/macro';
import { arrayOf, func } from 'prop-types'; import { arrayOf, func } from 'prop-types';
import { Button, DropdownItem, Tooltip } from '@patternfly/react-core'; import { Button, DropdownItem, Tooltip } from '@patternfly/react-core';
import { KebabifiedContext } from '../../contexts/Kebabified'; import { KebabifiedContext } from 'contexts/Kebabified';
import { isJobRunning } from '../../util/jobs'; import { isJobRunning } from 'util/jobs';
import { Job } from 'types';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import { Job } from '../../types';
function cannotCancelBecausePermissions(job) { function cannotCancelBecausePermissions(job) {
return ( return (

View File

@@ -6,6 +6,8 @@ import { Button, Chip } from '@patternfly/react-core';
import { Tr, Td, ExpandableRowContent } from '@patternfly/react-table'; import { Tr, Td, ExpandableRowContent } from '@patternfly/react-table';
import { RocketIcon } from '@patternfly/react-icons'; import { RocketIcon } from '@patternfly/react-icons';
import styled from 'styled-components'; import styled from 'styled-components';
import { formatDateString } from 'util/dates';
import { isJobRunning } from 'util/jobs';
import { ActionsTd, ActionItem } from '../PaginatedTable'; import { ActionsTd, ActionItem } from '../PaginatedTable';
import { LaunchButton, ReLaunchDropDown } from '../LaunchButton'; import { LaunchButton, ReLaunchDropDown } from '../LaunchButton';
import StatusLabel from '../StatusLabel'; import StatusLabel from '../StatusLabel';
@@ -13,8 +15,6 @@ import { DetailList, Detail, LaunchedByDetail } from '../DetailList';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail'; import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail';
import { formatDateString } from '../../util/dates';
import { isJobRunning } from '../../util/jobs';
import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; import { JOB_TYPE_URL_SEGMENTS } from '../../constants';
import JobCancelButton from '../JobCancelButton'; import JobCancelButton from '../JobCancelButton';

View File

@@ -1,8 +1,8 @@
import { useState, useEffect } from 'react'; import { useState, useEffect } from 'react';
import { useLocation } from 'react-router-dom'; import { useLocation } from 'react-router-dom';
import useWebsocket from '../../util/useWebsocket'; import useWebsocket from 'util/useWebsocket';
import useThrottle from '../../util/useThrottle'; import useThrottle from 'util/useThrottle';
import { parseQueryString } from '../../util/qs'; import { parseQueryString } from 'util/qs';
import sortJobs from './sortJobs'; import sortJobs from './sortJobs';
export default function useWsJobs(initialJobs, fetchJobsById, qsConfig) { export default function useWsJobs(initialJobs, fetchJobsById, qsConfig) {

View File

@@ -4,8 +4,6 @@ import { number, shape } from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail';
import { import {
AdHocCommandsAPI, AdHocCommandsAPI,
InventorySourcesAPI, InventorySourcesAPI,
@@ -14,7 +12,9 @@ import {
ProjectsAPI, ProjectsAPI,
WorkflowJobsAPI, WorkflowJobsAPI,
WorkflowJobTemplatesAPI, WorkflowJobTemplatesAPI,
} from '../../api'; } from 'api';
import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail';
import LaunchPrompt from '../LaunchPrompt'; import LaunchPrompt from '../LaunchPrompt';
function canLaunchWithoutPrompt(launchData) { function canLaunchWithoutPrompt(launchData) {

View File

@@ -1,10 +1,6 @@
import React from 'react'; import React from 'react';
import { createMemoryHistory } from 'history'; import { createMemoryHistory } from 'history';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { sleep } from '../../../testUtils/testUtils';
import LaunchButton from './LaunchButton';
import { import {
InventorySourcesAPI, InventorySourcesAPI,
JobsAPI, JobsAPI,
@@ -12,7 +8,11 @@ import {
ProjectsAPI, ProjectsAPI,
WorkflowJobsAPI, WorkflowJobsAPI,
WorkflowJobTemplatesAPI, WorkflowJobTemplatesAPI,
} from '../../api'; } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { sleep } from '../../../testUtils/testUtils';
import LaunchButton from './LaunchButton';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -2,11 +2,11 @@ import React, { useState } from 'react';
import { ExpandableSection, Wizard } from '@patternfly/react-core'; import { ExpandableSection, Wizard } from '@patternfly/react-core';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Formik, useFormikContext } from 'formik'; import { Formik, useFormikContext } from 'formik';
import ContentError from '../ContentError'; import { useDismissableError } from 'util/useRequest';
import mergeExtraVars from 'util/prompt/mergeExtraVars';
import getSurveyValues from 'util/prompt/getSurveyValues';
import ContentLoading from '../ContentLoading'; import ContentLoading from '../ContentLoading';
import { useDismissableError } from '../../util/useRequest'; import ContentError from '../ContentError';
import mergeExtraVars from '../../util/prompt/mergeExtraVars';
import getSurveyValues from '../../util/prompt/getSurveyValues';
import useLaunchSteps from './useLaunchSteps'; import useLaunchSteps from './useLaunchSteps';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';

View File

@@ -1,5 +1,11 @@
import React from 'react'; import React from 'react';
import { act, isElementOfType } from 'react-dom/test-utils'; import { act, isElementOfType } from 'react-dom/test-utils';
import {
InventoriesAPI,
CredentialsAPI,
CredentialTypesAPI,
JobTemplatesAPI,
} from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
@@ -10,12 +16,6 @@ import CredentialsStep from './steps/CredentialsStep';
import CredentialPasswordsStep from './steps/CredentialPasswordsStep'; import CredentialPasswordsStep from './steps/CredentialPasswordsStep';
import OtherPromptsStep from './steps/OtherPromptsStep'; import OtherPromptsStep from './steps/OtherPromptsStep';
import PreviewStep from './steps/PreviewStep'; import PreviewStep from './steps/PreviewStep';
import {
InventoriesAPI,
CredentialsAPI,
CredentialTypesAPI,
JobTemplatesAPI,
} from '../../api';
jest.mock('../../api/models/Inventories'); jest.mock('../../api/models/Inventories');
jest.mock('../../api/models/CredentialTypes'); jest.mock('../../api/models/CredentialTypes');

View File

@@ -6,14 +6,14 @@ import { t } from '@lingui/macro';
import { useField } from 'formik'; import { useField } from 'formik';
import styled from 'styled-components'; import styled from 'styled-components';
import { Alert, ToolbarItem } from '@patternfly/react-core'; import { Alert, ToolbarItem } from '@patternfly/react-core';
import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; import { CredentialsAPI, CredentialTypesAPI } from 'api';
import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from 'util/useRequest';
import AnsibleSelect from '../../AnsibleSelect'; import AnsibleSelect from '../../AnsibleSelect';
import OptionsList from '../../OptionsList'; import OptionsList from '../../OptionsList';
import ContentLoading from '../../ContentLoading'; import ContentLoading from '../../ContentLoading';
import CredentialChip from '../../CredentialChip'; import CredentialChip from '../../CredentialChip';
import ContentError from '../../ContentError'; import ContentError from '../../ContentError';
import { getQSConfig, parseQueryString } from '../../../util/qs';
import useRequest from '../../../util/useRequest';
import credentialsValidator from './credentialsValidator'; import credentialsValidator from './credentialsValidator';
const CredentialErrorAlert = styled(Alert)` const CredentialErrorAlert = styled(Alert)`

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { CredentialsAPI, CredentialTypesAPI } from 'api';
import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../../testUtils/enzymeHelpers';
import CredentialsStep from './CredentialsStep'; import CredentialsStep from './CredentialsStep';
import { CredentialsAPI, CredentialTypesAPI } from '../../../api';
jest.mock('../../../api/models/CredentialTypes'); jest.mock('../../../api/models/CredentialTypes');
jest.mock('../../../api/models/Credentials'); jest.mock('../../../api/models/Credentials');

View File

@@ -5,9 +5,9 @@ import { t } from '@lingui/macro';
import { useField } from 'formik'; import { useField } from 'formik';
import styled from 'styled-components'; import styled from 'styled-components';
import { Alert } from '@patternfly/react-core'; import { Alert } from '@patternfly/react-core';
import { InventoriesAPI } from '../../../api'; import { InventoriesAPI } from 'api';
import { getQSConfig, parseQueryString } from '../../../util/qs'; import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from '../../../util/useRequest'; import useRequest from 'util/useRequest';
import OptionsList from '../../OptionsList'; import OptionsList from '../../OptionsList';
import ContentLoading from '../../ContentLoading'; import ContentLoading from '../../ContentLoading';
import ContentError from '../../ContentError'; import ContentError from '../../ContentError';

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { InventoriesAPI } from 'api';
import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../../testUtils/enzymeHelpers';
import InventoryStep from './InventoryStep'; import InventoryStep from './InventoryStep';
import { InventoriesAPI } from '../../../api';
jest.mock('../../../api/models/Inventories'); jest.mock('../../../api/models/Inventories');

View File

@@ -6,10 +6,8 @@ import { t } from '@lingui/macro';
import { useFormikContext } from 'formik'; import { useFormikContext } from 'formik';
import yaml from 'js-yaml'; import yaml from 'js-yaml';
import mergeExtraVars, { import mergeExtraVars, { maskPasswords } from 'util/prompt/mergeExtraVars';
maskPasswords, import getSurveyValues from 'util/prompt/getSurveyValues';
} from '../../../util/prompt/mergeExtraVars';
import getSurveyValues from '../../../util/prompt/getSurveyValues';
import PromptDetail from '../../PromptDetail'; import PromptDetail from '../../PromptDetail';
const ExclamationCircleIcon = styled(PFExclamationCircleIcon)` const ExclamationCircleIcon = styled(PFExclamationCircleIcon)`

View File

@@ -8,8 +8,6 @@ import {
SelectOption, SelectOption,
SelectVariant, SelectVariant,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import FormField from '../../FormField';
import Popover from '../../Popover';
import { import {
required, required,
minMaxValue, minMaxValue,
@@ -17,8 +15,10 @@ import {
minLength, minLength,
integer, integer,
combine, combine,
} from '../../../util/validators'; } from 'util/validators';
import { Survey } from '../../../types'; import { Survey } from 'types';
import FormField from '../../FormField';
import Popover from '../../Popover';
function SurveyStep({ surveyConfig }) { function SurveyStep({ surveyConfig }) {
const fieldTypes = { const fieldTypes = {

View File

@@ -1,7 +1,7 @@
import React, { useState } from 'react'; import React, { useState } from 'react';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { useField } from 'formik'; import { useField } from 'formik';
import { jsonToYaml, yamlToJson } from '../../../util/yaml'; import { jsonToYaml, yamlToJson } from 'util/yaml';
import OtherPromptsStep from './OtherPromptsStep'; import OtherPromptsStep from './OtherPromptsStep';
import StepName from './StepName'; import StepName from './StepName';

View File

@@ -3,15 +3,15 @@ import PropTypes from 'prop-types';
import { withRouter } from 'react-router-dom'; import { withRouter } from 'react-router-dom';
import styled from 'styled-components'; import styled from 'styled-components';
import { Toolbar, ToolbarContent } from '@patternfly/react-core'; import { Toolbar, ToolbarContent } from '@patternfly/react-core';
import DataListToolbar from '../DataListToolbar';
import { import {
parseQueryString, parseQueryString,
mergeParams, mergeParams,
removeParams, removeParams,
updateQueryString, updateQueryString,
} from '../../util/qs'; } from 'util/qs';
import { QSConfig, SearchColumns, SortColumns } from '../../types'; import { QSConfig, SearchColumns, SortColumns } from 'types';
import DataListToolbar from '../DataListToolbar';
const EmptyStateControlsWrapper = styled.div` const EmptyStateControlsWrapper = styled.div`
display: flex; display: flex;

View File

@@ -3,12 +3,12 @@ import { func, node, string } from 'prop-types';
import { withRouter, useLocation } from 'react-router-dom'; import { withRouter, useLocation } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { FormGroup } from '@patternfly/react-core'; import { FormGroup } from '@patternfly/react-core';
import { ApplicationsAPI } from '../../api'; import { ApplicationsAPI } from 'api';
import { Application } from '../../types'; import { Application } from 'types';
import { getQSConfig, parseQueryString } from '../../util/qs'; import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from 'util/useRequest';
import Lookup from './Lookup'; import Lookup from './Lookup';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';
const QS_CONFIG = getQSConfig('applications', { const QS_CONFIG = getQSConfig('applications', {

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { ApplicationsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import ApplicationLookup from './ApplicationLookup'; import ApplicationLookup from './ApplicationLookup';
import { ApplicationsAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');
const application = { const application = {

View File

@@ -12,14 +12,14 @@ import {
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { FormGroup } from '@patternfly/react-core'; import { FormGroup } from '@patternfly/react-core';
import { CredentialsAPI } from '../../api'; import { CredentialsAPI } from 'api';
import { Credential } from '../../types'; import { Credential } from 'types';
import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs'; import { getQSConfig, parseQueryString, mergeParams } from 'util/qs';
import useAutoPopulateLookup from 'util/useAutoPopulateLookup';
import useRequest from 'util/useRequest';
import Popover from '../Popover'; import Popover from '../Popover';
import Lookup from './Lookup'; import Lookup from './Lookup';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useAutoPopulateLookup from '../../util/useAutoPopulateLookup';
import useRequest from '../../util/useRequest';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';
const QS_CONFIG = getQSConfig('credentials', { const QS_CONFIG = getQSConfig('credentials', {

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { CredentialsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import CredentialLookup, { _CredentialLookup } from './CredentialLookup'; import CredentialLookup, { _CredentialLookup } from './CredentialLookup';
import { CredentialsAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -3,12 +3,12 @@ import { string, func, bool, oneOfType, number } from 'prop-types';
import { useLocation } from 'react-router-dom'; import { useLocation } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { FormGroup, Tooltip } from '@patternfly/react-core'; import { FormGroup, Tooltip } from '@patternfly/react-core';
import { ExecutionEnvironmentsAPI, ProjectsAPI } from '../../api'; import { ExecutionEnvironmentsAPI, ProjectsAPI } from 'api';
import { ExecutionEnvironment } from '../../types'; import { ExecutionEnvironment } from 'types';
import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs'; import { getQSConfig, parseQueryString, mergeParams } from 'util/qs';
import useRequest from 'util/useRequest';
import Popover from '../Popover'; import Popover from '../Popover';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import Lookup from './Lookup'; import Lookup from './Lookup';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { ExecutionEnvironmentsAPI, ProjectsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import ExecutionEnvironmentLookup from './ExecutionEnvironmentLookup'; import ExecutionEnvironmentLookup from './ExecutionEnvironmentLookup';
import { ExecutionEnvironmentsAPI, ProjectsAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -14,15 +14,15 @@ import {
Modal, Modal,
Tooltip, Tooltip,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { HostsAPI } from 'api';
import { getQSConfig, mergeParams, parseQueryString } from 'util/qs';
import useRequest, { useDismissableError } from 'util/useRequest';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import Popover from '../Popover'; import Popover from '../Popover';
import DataListToolbar from '../DataListToolbar'; import DataListToolbar from '../DataListToolbar';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';
import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable'; import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable';
import HostListItem from './HostListItem'; import HostListItem from './HostListItem';
import { HostsAPI } from '../../api';
import { getQSConfig, mergeParams, parseQueryString } from '../../util/qs';
import useRequest, { useDismissableError } from '../../util/useRequest';
import { import {
removeDefaultParams, removeDefaultParams,
removeNamespacedKeys, removeNamespacedKeys,

View File

@@ -4,12 +4,12 @@ import { withRouter } from 'react-router-dom';
import { t, Trans } from '@lingui/macro'; import { t, Trans } from '@lingui/macro';
import { FormGroup } from '@patternfly/react-core'; import { FormGroup } from '@patternfly/react-core';
import { InstanceGroupsAPI } from '../../api'; import { InstanceGroupsAPI } from 'api';
import { InstanceGroup } from '../../types'; import { InstanceGroup } from 'types';
import { getQSConfig, parseQueryString } from '../../util/qs'; import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from 'util/useRequest';
import Popover from '../Popover'; import Popover from '../Popover';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import Lookup from './Lookup'; import Lookup from './Lookup';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';

View File

@@ -2,12 +2,12 @@ import React, { useCallback, useEffect } from 'react';
import { func, bool, string } from 'prop-types'; import { func, bool, string } from 'prop-types';
import { withRouter } from 'react-router-dom'; import { withRouter } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { InventoriesAPI } from '../../api'; import { InventoriesAPI } from 'api';
import { Inventory } from '../../types'; import { Inventory } from 'types';
import useRequest from 'util/useRequest';
import { getQSConfig, parseQueryString, mergeParams } from 'util/qs';
import Lookup from './Lookup'; import Lookup from './Lookup';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';
import FieldWithPrompt from '../FieldWithPrompt'; import FieldWithPrompt from '../FieldWithPrompt';

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { InventoriesAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import InventoryLookup from './InventoryLookup'; import InventoryLookup from './InventoryLookup';
import { InventoriesAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -22,10 +22,10 @@ import {
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import styled from 'styled-components'; import styled from 'styled-components';
import useDebounce from '../../util/useDebounce'; import useDebounce from 'util/useDebounce';
import { QSConfig } from 'types';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import reducer, { initReducer } from './shared/reducer'; import reducer, { initReducer } from './shared/reducer';
import { QSConfig } from '../../types';
const ChipHolder = styled.div` const ChipHolder = styled.div`
--pf-c-form-control--Height: auto; --pf-c-form-control--Height: auto;

View File

@@ -2,11 +2,11 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { getQSConfig } from 'util/qs';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { getQSConfig } from '../../util/qs';
import Lookup from './Lookup'; import Lookup from './Lookup';
/** /**

View File

@@ -4,14 +4,14 @@ import { withRouter } from 'react-router-dom';
import PropTypes from 'prop-types'; import PropTypes from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { ToolbarItem, Alert } from '@patternfly/react-core'; import { ToolbarItem, Alert } from '@patternfly/react-core';
import { CredentialsAPI, CredentialTypesAPI } from '../../api'; import { CredentialsAPI, CredentialTypesAPI } from 'api';
import useRequest from 'util/useRequest';
import { getQSConfig, parseQueryString } from 'util/qs';
import useIsMounted from 'util/useIsMounted';
import AnsibleSelect from '../AnsibleSelect'; import AnsibleSelect from '../AnsibleSelect';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useRequest from '../../util/useRequest';
import { getQSConfig, parseQueryString } from '../../util/qs';
import Lookup from './Lookup'; import Lookup from './Lookup';
import useIsMounted from '../../util/useIsMounted';
const QS_CONFIG = getQSConfig('credentials', { const QS_CONFIG = getQSConfig('credentials', {
page: 1, page: 1,

View File

@@ -1,12 +1,12 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { CredentialsAPI, CredentialTypesAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import MultiCredentialsLookup from './MultiCredentialsLookup'; import MultiCredentialsLookup from './MultiCredentialsLookup';
import { CredentialsAPI, CredentialTypesAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -3,11 +3,11 @@ import { node, func, bool, string } from 'prop-types';
import { withRouter } from 'react-router-dom'; import { withRouter } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { FormGroup } from '@patternfly/react-core'; import { FormGroup } from '@patternfly/react-core';
import { OrganizationsAPI } from '../../api'; import { OrganizationsAPI } from 'api';
import { Organization } from '../../types'; import { Organization } from 'types';
import { getQSConfig, parseQueryString } from '../../util/qs'; import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from '../../util/useRequest'; import useRequest from 'util/useRequest';
import useAutoPopulateLookup from '../../util/useAutoPopulateLookup'; import useAutoPopulateLookup from 'util/useAutoPopulateLookup';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import Lookup from './Lookup'; import Lookup from './Lookup';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';

View File

@@ -1,9 +1,9 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { OrganizationsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import OrganizationLookup, { _OrganizationLookup } from './OrganizationLookup'; import OrganizationLookup, { _OrganizationLookup } from './OrganizationLookup';
import { OrganizationsAPI } from '../../api';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -3,13 +3,13 @@ import { node, string, func, bool } from 'prop-types';
import { withRouter } from 'react-router-dom'; import { withRouter } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { FormGroup } from '@patternfly/react-core'; import { FormGroup } from '@patternfly/react-core';
import { ProjectsAPI } from '../../api'; import { ProjectsAPI } from 'api';
import { Project } from '../../types'; import { Project } from 'types';
import Popover from '../Popover'; import useAutoPopulateLookup from 'util/useAutoPopulateLookup';
import useRequest from 'util/useRequest';
import { getQSConfig, parseQueryString } from 'util/qs';
import OptionsList from '../OptionsList'; import OptionsList from '../OptionsList';
import useAutoPopulateLookup from '../../util/useAutoPopulateLookup'; import Popover from '../Popover';
import useRequest from '../../util/useRequest';
import { getQSConfig, parseQueryString } from '../../util/qs';
import Lookup from './Lookup'; import Lookup from './Lookup';
import LookupErrorMessage from './shared/LookupErrorMessage'; import LookupErrorMessage from './shared/LookupErrorMessage';

View File

@@ -1,8 +1,8 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { Formik } from 'formik'; import { Formik } from 'formik';
import { ProjectsAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { ProjectsAPI } from '../../api';
import ProjectLookup from './ProjectLookup'; import ProjectLookup from './ProjectLookup';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -2,7 +2,7 @@ import React, { useState } from 'react';
import { func, string } from 'prop-types'; import { func, string } from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Select, SelectOption, SelectVariant } from '@patternfly/react-core'; import { Select, SelectOption, SelectVariant } from '@patternfly/react-core';
import { arrayToString, stringToArray } from '../../util/strings'; import { arrayToString, stringToArray } from 'util/strings';
function TagMultiSelect({ onChange, value }) { function TagMultiSelect({ onChange, value }) {
const selections = stringToArray(value); const selections = stringToArray(value);

View File

@@ -1,5 +1,5 @@
import { useState, useEffect } from 'react'; import { useState, useEffect } from 'react';
import useIsMounted from '../../util/useIsMounted'; import useIsMounted from 'util/useIsMounted';
/* /*
Hook for using PatternFly's <Select> component when a pre-existing value Hook for using PatternFly's <Select> component when a pre-existing value

View File

@@ -3,13 +3,13 @@ import { useLocation } from 'react-router-dom';
import { number, shape, bool } from 'prop-types'; import { number, shape, bool } from 'prop-types';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest from 'util/useRequest';
import { NotificationTemplatesAPI } from 'api';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';
import NotificationListItem from './NotificationListItem'; import NotificationListItem from './NotificationListItem';
import PaginatedTable, { HeaderRow, HeaderCell } from '../PaginatedTable'; import PaginatedTable, { HeaderRow, HeaderCell } from '../PaginatedTable';
import { getQSConfig, parseQueryString } from '../../util/qs';
import useRequest from '../../util/useRequest';
import { NotificationTemplatesAPI } from '../../api';
const QS_CONFIG = getQSConfig('notification', { const QS_CONFIG = getQSConfig('notification', {
page: 1, page: 1,

View File

@@ -1,7 +1,7 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { NotificationTemplatesAPI, JobTemplatesAPI } from 'api';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { NotificationTemplatesAPI, JobTemplatesAPI } from '../../api';
import NotificationList from './NotificationList'; import NotificationList from './NotificationList';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -10,10 +10,10 @@ import {
} from 'prop-types'; } from 'prop-types';
import styled from 'styled-components'; import styled from 'styled-components';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { QSConfig, SearchColumns, SortColumns } from 'types';
import { SelectedList, DraggableSelectedList } from '../SelectedList'; import { SelectedList, DraggableSelectedList } from '../SelectedList';
import CheckboxListItem from '../CheckboxListItem'; import CheckboxListItem from '../CheckboxListItem';
import DataListToolbar from '../DataListToolbar'; import DataListToolbar from '../DataListToolbar';
import { QSConfig, SearchColumns, SortColumns } from '../../types';
import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable'; import PaginatedTable, { HeaderCell, HeaderRow } from '../PaginatedTable';
const ModalList = styled.div` const ModalList = styled.div`

View File

@@ -1,6 +1,6 @@
import React from 'react'; import React from 'react';
import { getQSConfig } from 'util/qs';
import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers';
import { getQSConfig } from '../../util/qs';
import OptionsList from './OptionsList'; import OptionsList from './OptionsList';
const qsConfig = getQSConfig('test', { order_by: 'foo' }); const qsConfig = getQSConfig('test', { order_by: 'foo' });

View File

@@ -3,7 +3,7 @@ import React from 'react';
import { useLocation, useHistory } from 'react-router-dom'; import { useLocation, useHistory } from 'react-router-dom';
import { Thead, Tr, Th as PFTh } from '@patternfly/react-table'; import { Thead, Tr, Th as PFTh } from '@patternfly/react-table';
import styled from 'styled-components'; import styled from 'styled-components';
import { parseQueryString, updateQueryString } from '../../util/qs'; import { parseQueryString, updateQueryString } from 'util/qs';
const Th = styled(PFTh)` const Th = styled(PFTh)`
--pf-c-table--cell--Overflow: initial; --pf-c-table--cell--Overflow: initial;

View File

@@ -6,6 +6,8 @@ import { TableComposable, Tbody } from '@patternfly/react-table';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { useLocation, useHistory } from 'react-router-dom'; import { useLocation, useHistory } from 'react-router-dom';
import { parseQueryString, updateQueryString } from 'util/qs';
import { QSConfig, SearchColumns } from 'types';
import ListHeader from '../ListHeader'; import ListHeader from '../ListHeader';
import ContentEmpty from '../ContentEmpty'; import ContentEmpty from '../ContentEmpty';
import ContentError from '../ContentError'; import ContentError from '../ContentError';
@@ -14,9 +16,6 @@ import Pagination from '../Pagination';
import DataListToolbar from '../DataListToolbar'; import DataListToolbar from '../DataListToolbar';
import LoadingSpinner from '../LoadingSpinner'; import LoadingSpinner from '../LoadingSpinner';
import { parseQueryString, updateQueryString } from '../../util/qs';
import { QSConfig, SearchColumns } from '../../types';
function PaginatedTable({ function PaginatedTable({
contentError, contentError,
hasContentLoading, hasContentLoading,

View File

@@ -5,7 +5,7 @@ import { Button, DropdownItem, Tooltip } from '@patternfly/react-core';
import CaretDownIcon from '@patternfly/react-icons/dist/js/icons/caret-down-icon'; import CaretDownIcon from '@patternfly/react-icons/dist/js/icons/caret-down-icon';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { useKebabifiedMenu } from '../../contexts/Kebabified'; import { useKebabifiedMenu } from 'contexts/Kebabified';
function ToolbarAddButton({ function ToolbarAddButton({
linkTo, linkTo,

View File

@@ -18,9 +18,9 @@ import {
Tooltip, Tooltip,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { KebabifiedContext } from 'contexts/Kebabified';
import { getRelatedResourceDeleteCounts } from 'util/getRelatedResourceDeleteDetails';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import { KebabifiedContext } from '../../contexts/Kebabified';
import { getRelatedResourceDeleteCounts } from '../../util/getRelatedResourceDeleteDetails';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';

View File

@@ -1,11 +1,11 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { CredentialsAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { CredentialsAPI } from '../../api';
import ToolbarDeleteButton from './ToolbarDeleteButton'; import ToolbarDeleteButton from './ToolbarDeleteButton';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -6,7 +6,7 @@ import { t, Trans } from '@lingui/macro';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import styled from 'styled-components'; import styled from 'styled-components';
import { Chip, Divider, Title } from '@patternfly/react-core'; import { Chip, Divider, Title } from '@patternfly/react-core';
import { toTitleCase } from '../../util/strings'; import { toTitleCase } from 'util/strings';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';

View File

@@ -8,13 +8,13 @@ import {
TextListVariants, TextListVariants,
TextListItemVariants, TextListItemVariants,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { toTitleCase } from 'util/strings';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import Sparkline from '../Sparkline'; import Sparkline from '../Sparkline';
import { Detail, DeletedDetail } from '../DetailList'; import { Detail, DeletedDetail } from '../DetailList';
import { VariablesDetail } from '../CodeEditor'; import { VariablesDetail } from '../CodeEditor';
import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail'; import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail';
import { toTitleCase } from '../../util/strings';
function PromptJobTemplateDetail({ resource }) { function PromptJobTemplateDetail({ resource }) {
const { const {

View File

@@ -7,10 +7,10 @@ import {
TextListItemVariants, TextListItemVariants,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { Config } from '../../contexts/Config'; import { Config } from 'contexts/Config';
import { toTitleCase } from 'util/strings';
import { Detail, DeletedDetail } from '../DetailList'; import { Detail, DeletedDetail } from '../DetailList';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import { toTitleCase } from '../../util/strings';
import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail'; import ExecutionEnvironmentDetail from '../ExecutionEnvironmentDetail';
function PromptProjectDetail({ resource }) { function PromptProjectDetail({ resource }) {

View File

@@ -8,12 +8,12 @@ import {
TextListVariants, TextListVariants,
TextListItemVariants, TextListItemVariants,
} from '@patternfly/react-core'; } from '@patternfly/react-core';
import { toTitleCase } from 'util/strings';
import CredentialChip from '../CredentialChip'; import CredentialChip from '../CredentialChip';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import { Detail } from '../DetailList'; import { Detail } from '../DetailList';
import { VariablesDetail } from '../CodeEditor'; import { VariablesDetail } from '../CodeEditor';
import Sparkline from '../Sparkline'; import Sparkline from '../Sparkline';
import { toTitleCase } from '../../util/strings';
function PromptWFJobTemplateDetail({ resource }) { function PromptWFJobTemplateDetail({ resource }) {
const { const {

View File

@@ -4,8 +4,8 @@ import { Button } from '@patternfly/react-core';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { Role } from 'types';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import { Role } from '../../types';
function DeleteRoleConfirmationModal({ role, username, onCancel, onConfirm }) { function DeleteRoleConfirmationModal({ role, username, onCancel, onConfirm }) {
const isTeamRole = () => { const isTeamRole = () => {

View File

@@ -1,7 +1,9 @@
import React, { useCallback, useEffect, useState } from 'react'; import React, { useCallback, useEffect, useState } from 'react';
import { useLocation } from 'react-router-dom'; import { useLocation } from 'react-router-dom';
import { t } from '@lingui/macro'; import { t } from '@lingui/macro';
import { RolesAPI, TeamsAPI, UsersAPI } from '../../api'; import { RolesAPI, TeamsAPI, UsersAPI } from 'api';
import { getQSConfig, parseQueryString } from 'util/qs';
import useRequest, { useDeleteItems } from 'util/useRequest';
import AddResourceRole from '../AddRole/AddResourceRole'; import AddResourceRole from '../AddRole/AddResourceRole';
import AlertModal from '../AlertModal'; import AlertModal from '../AlertModal';
import DataListToolbar from '../DataListToolbar'; import DataListToolbar from '../DataListToolbar';
@@ -10,8 +12,6 @@ import PaginatedTable, {
HeaderCell, HeaderCell,
ToolbarAddButton, ToolbarAddButton,
} from '../PaginatedTable'; } from '../PaginatedTable';
import { getQSConfig, parseQueryString } from '../../util/qs';
import useRequest, { useDeleteItems } from '../../util/useRequest';
import DeleteRoleConfirmationModal from './DeleteRoleConfirmationModal'; import DeleteRoleConfirmationModal from './DeleteRoleConfirmationModal';
import ResourceAccessListItem from './ResourceAccessListItem'; import ResourceAccessListItem from './ResourceAccessListItem';
import ErrorDetail from '../ErrorDetail'; import ErrorDetail from '../ErrorDetail';

View File

@@ -1,13 +1,12 @@
import React from 'react'; import React from 'react';
import { act } from 'react-dom/test-utils'; import { act } from 'react-dom/test-utils';
import { createMemoryHistory } from 'history'; import { createMemoryHistory } from 'history';
import { OrganizationsAPI, TeamsAPI, UsersAPI, RolesAPI } from 'api';
import { import {
mountWithContexts, mountWithContexts,
waitForElement, waitForElement,
} from '../../../testUtils/enzymeHelpers'; } from '../../../testUtils/enzymeHelpers';
import { OrganizationsAPI, TeamsAPI, UsersAPI, RolesAPI } from '../../api';
import ResourceAccessList from './ResourceAccessList'; import ResourceAccessList from './ResourceAccessList';
jest.mock('../../api'); jest.mock('../../api');

View File

@@ -6,9 +6,9 @@ import { Chip } from '@patternfly/react-core';
import { Tr, Td } from '@patternfly/react-table'; import { Tr, Td } from '@patternfly/react-table';
import { Link } from 'react-router-dom'; import { Link } from 'react-router-dom';
import { AccessRecord } from 'types';
import ChipGroup from '../ChipGroup'; import ChipGroup from '../ChipGroup';
import { DetailList, Detail } from '../DetailList'; import { DetailList, Detail } from '../DetailList';
import { AccessRecord } from '../../types';
function ResourceAccessListItem({ accessRecord, onRoleDelete }) { function ResourceAccessListItem({ accessRecord, onRoleDelete }) {
ResourceAccessListItem.propTypes = { ResourceAccessListItem.propTypes = {

View File

@@ -10,13 +10,13 @@ import {
useParams, useParams,
} from 'react-router-dom'; } from 'react-router-dom';
import { CaretLeftIcon } from '@patternfly/react-icons'; import { CaretLeftIcon } from '@patternfly/react-icons';
import { SchedulesAPI } from 'api';
import useRequest from 'util/useRequest';
import RoutedTabs from '../RoutedTabs'; import RoutedTabs from '../RoutedTabs';
import ContentError from '../ContentError'; import ContentError from '../ContentError';
import ContentLoading from '../ContentLoading'; import ContentLoading from '../ContentLoading';
import ScheduleDetail from './ScheduleDetail'; import ScheduleDetail from './ScheduleDetail';
import ScheduleEdit from './ScheduleEdit'; import ScheduleEdit from './ScheduleEdit';
import { SchedulesAPI } from '../../api';
import useRequest from '../../util/useRequest';
function Schedule({ function Schedule({
setBreadcrumb, setBreadcrumb,

Some files were not shown because too many files have changed in this diff Show More