diff --git a/awx/ui/config/jest/textEncoderPolyfill.js b/awx/ui/config/jest/textEncoderPolyfill.js new file mode 100644 index 000000000..2520acd7c --- /dev/null +++ b/awx/ui/config/jest/textEncoderPolyfill.js @@ -0,0 +1,8 @@ +const { TextEncoder, TextDecoder } = require('util'); + +if (typeof globalThis.TextEncoder === 'undefined') { + globalThis.TextEncoder = TextEncoder; +} +if (typeof globalThis.TextDecoder === 'undefined') { + globalThis.TextDecoder = TextDecoder; +} diff --git a/awx/ui/package-lock.json b/awx/ui/package-lock.json index e2c0fb2cd..6cb27c150 100644 --- a/awx/ui/package-lock.json +++ b/awx/ui/package-lock.json @@ -27,7 +27,7 @@ "react-ace": "^14.0.1", "react-dom": "18.3.1", "react-error-boundary": "^6.1.2", - "react-router-dom": "^6.30.4", + "react-router": "^7.18.0", "rrule": "2.8.1", "styled-components": "^6.4.2" }, @@ -5738,15 +5738,6 @@ } } }, - "node_modules/@remix-run/router": { - "version": "1.23.3", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.23.3.tgz", - "integrity": "sha512-4An71tdz9X8+3sI4Qqqd2LWd9vS39J7sqd9EU4Scw7TJE/qB10Flv/UuqbPVgfQV9XoK8Np6jNquZitnZq5i+Q==", - "license": "MIT", - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/@rspack/binding": { "version": "1.7.11", "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-1.7.11.tgz", @@ -21146,35 +21137,38 @@ } }, "node_modules/react-router": { - "version": "6.30.4", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.30.4.tgz", - "integrity": "sha512-SVUsDe+DybHM/WmYKIVYhZh1o5Dcuf16yM6WjG02Q9XVFMZIJyHYhwrr6bFBXZkVP6z69kNkMyBCujt8FaFLJA==", + "version": "7.18.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.18.0.tgz", + "integrity": "sha512-pTTGt8J+ji1NOmYnjzT+bAJy/1zD+Jp4ziO6cL7T3ZLvXKtusO7BpFqlRXitqpcPVqllsIXFHRMt+2/k3Xn6HQ==", "license": "MIT", "dependencies": { - "@remix-run/router": "1.23.3" + "cookie": "^1.0.1", + "set-cookie-parser": "^2.6.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=20.0.0" }, "peerDependencies": { - "react": ">=16.8" + "react": ">=18", + "react-dom": ">=18" + }, + "peerDependenciesMeta": { + "react-dom": { + "optional": true + } } }, - "node_modules/react-router-dom": { - "version": "6.30.4", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.30.4.tgz", - "integrity": "sha512-q4HvNl+mmDdkS0g+MqiBZNteQJCuimWoOyHMy4T/RQLAn9Z29+E91QXRaxOujeMl2HTzRSS0KFPd7lxX3PjV0Q==", + "node_modules/react-router/node_modules/cookie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", "license": "MIT", - "dependencies": { - "@remix-run/router": "1.23.3", - "react-router": "6.30.4" - }, "engines": { - "node": ">=14.0.0" + "node": ">=18" }, - "peerDependencies": { - "react": ">=16.8", - "react-dom": ">=16.8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/readable-stream": { @@ -22150,6 +22144,12 @@ "node": ">= 0.8.0" } }, + "node_modules/set-cookie-parser": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.2.tgz", + "integrity": "sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==", + "license": "MIT" + }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", diff --git a/awx/ui/package.json b/awx/ui/package.json index 46204aa4c..c713b3276 100644 --- a/awx/ui/package.json +++ b/awx/ui/package.json @@ -6,6 +6,7 @@ "node": ">=22.19.0" }, "dependencies": { + "@dagrejs/dagre": "^3.0.0", "@lingui/react": "^6.3.0", "@patternfly/patternfly": "4.224.5", "@patternfly/react-core": "4.278.1", @@ -16,7 +17,6 @@ "ansi-to-html": "0.7.2", "cheerio": "1.0.0-rc.12", "d3": "7.9.0", - "@dagrejs/dagre": "^3.0.0", "dompurify": "^3.4.11", "formik": "2.4.9", "has-ansi": "5.0.1", @@ -27,7 +27,7 @@ "react-ace": "^14.0.1", "react-dom": "18.3.1", "react-error-boundary": "^6.1.2", - "react-router-dom": "^6.30.4", + "react-router": "^7.18.0", "rrule": "2.8.1", "styled-components": "^6.4.2" }, @@ -154,6 +154,7 @@ "testUtils/**/*.{js,jsx}" ], "setupFiles": [ + "/config/jest/textEncoderPolyfill.js", "react-app-polyfill/jsdom" ], "setupFilesAfterEnv": [ diff --git a/awx/ui/src/App.js b/awx/ui/src/App.js index 9aea78c6a..39425dd13 100644 --- a/awx/ui/src/App.js +++ b/awx/ui/src/App.js @@ -6,7 +6,7 @@ import { Navigate, useLocation, useNavigate, -} from 'react-router-dom'; +} from 'react-router'; import { ErrorBoundary } from 'react-error-boundary'; import locationReplace from 'util/navigation'; import { I18nProvider } from '@lingui/react'; diff --git a/awx/ui/src/components/AdHocCommands/AdHocCommands.js b/awx/ui/src/components/AdHocCommands/AdHocCommands.js index af22185ed..0bba50eed 100644 --- a/awx/ui/src/components/AdHocCommands/AdHocCommands.js +++ b/awx/ui/src/components/AdHocCommands/AdHocCommands.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState, useContext } from 'react'; -import { useParams } from 'react-router-dom'; +import { useParams } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/AdHocCommands/AdHocCommands.test.js b/awx/ui/src/components/AdHocCommands/AdHocCommands.test.js index ed4c4482d..8507a401f 100644 --- a/awx/ui/src/components/AdHocCommands/AdHocCommands.test.js +++ b/awx/ui/src/components/AdHocCommands/AdHocCommands.test.js @@ -19,8 +19,8 @@ jest.mock('../../api/models/Credentials'); jest.mock('../../api/models/ExecutionEnvironments'); jest.mock('../../api/models/Root'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/components/AddRole/SelectResourceStep.js b/awx/ui/src/components/AddRole/SelectResourceStep.js index 357e3aefa..cf9e47c42 100644 --- a/awx/ui/src/components/AddRole/SelectResourceStep.js +++ b/awx/ui/src/components/AddRole/SelectResourceStep.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import useRequest from 'hooks/useRequest'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/components/AppContainer/NavExpandableGroup.js b/awx/ui/src/components/AppContainer/NavExpandableGroup.js index 3b6d64c4d..b2eb8f2f9 100644 --- a/awx/ui/src/components/AppContainer/NavExpandableGroup.js +++ b/awx/ui/src/components/AppContainer/NavExpandableGroup.js @@ -1,5 +1,5 @@ import React from 'react'; -import { matchPath, Link, useLocation } from 'react-router-dom'; +import { matchPath, Link, useLocation } from 'react-router'; import { NavExpandable, NavItem } from '@patternfly/react-core'; function NavExpandableGroup(props) { diff --git a/awx/ui/src/components/AppContainer/PageHeaderToolbar.js b/awx/ui/src/components/AppContainer/PageHeaderToolbar.js index 0e6959acc..5f78e4f6b 100644 --- a/awx/ui/src/components/AppContainer/PageHeaderToolbar.js +++ b/awx/ui/src/components/AppContainer/PageHeaderToolbar.js @@ -4,7 +4,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import styled from 'styled-components'; import { Dropdown, diff --git a/awx/ui/src/components/ContentError/ContentError.js b/awx/ui/src/components/ContentError/ContentError.js index b910117bd..cbf692b47 100644 --- a/awx/ui/src/components/ContentError/ContentError.js +++ b/awx/ui/src/components/ContentError/ContentError.js @@ -1,6 +1,6 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/DetailList/LaunchedByDetail.js b/awx/ui/src/components/DetailList/LaunchedByDetail.js index d747b0645..a543a411b 100644 --- a/awx/ui/src/components/DetailList/LaunchedByDetail.js +++ b/awx/ui/src/components/DetailList/LaunchedByDetail.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import getScheduleUrl from 'util/getScheduleUrl'; import Detail from './Detail'; diff --git a/awx/ui/src/components/DetailList/UserDateDetail.js b/awx/ui/src/components/DetailList/UserDateDetail.js index 5dff7ad87..f3e0ec3c9 100644 --- a/awx/ui/src/components/DetailList/UserDateDetail.js +++ b/awx/ui/src/components/DetailList/UserDateDetail.js @@ -1,6 +1,6 @@ import React from 'react'; import { Trans } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import styled from 'styled-components'; import { formatDateString } from 'util/dates'; import _Detail from './Detail'; diff --git a/awx/ui/src/components/ExecutionEnvironmentDetail/ExecutionEnvironmentDetail.js b/awx/ui/src/components/ExecutionEnvironmentDetail/ExecutionEnvironmentDetail.js index f8bd586d7..9e7fb1694 100644 --- a/awx/ui/src/components/ExecutionEnvironmentDetail/ExecutionEnvironmentDetail.js +++ b/awx/ui/src/components/ExecutionEnvironmentDetail/ExecutionEnvironmentDetail.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Trans, useLingui } from '@lingui/react/macro'; import { Popover, Tooltip } from '@patternfly/react-core'; diff --git a/awx/ui/src/components/InstanceGroupLabels/InstanceGroupLabels.js b/awx/ui/src/components/InstanceGroupLabels/InstanceGroupLabels.js index 2008ab12a..58bcef17b 100644 --- a/awx/ui/src/components/InstanceGroupLabels/InstanceGroupLabels.js +++ b/awx/ui/src/components/InstanceGroupLabels/InstanceGroupLabels.js @@ -1,7 +1,7 @@ import React from 'react'; import { Label, LabelGroup } from '@patternfly/react-core'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; function InstanceGroupLabels({ labels, isLinkable = false }) { const buildLinkURL = (isContainerGroup) => diff --git a/awx/ui/src/components/JobList/JobList.js b/awx/ui/src/components/JobList/JobList.js index 394c0cdb2..5af083a1c 100644 --- a/awx/ui/src/components/JobList/JobList.js +++ b/awx/ui/src/components/JobList/JobList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback, useRef } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui, Plural } from '@lingui/react/macro'; import { Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/components/JobList/JobListItem.js b/awx/ui/src/components/JobList/JobListItem.js index 57045b948..585890bb1 100644 --- a/awx/ui/src/components/JobList/JobListItem.js +++ b/awx/ui/src/components/JobList/JobListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, Chip } from '@patternfly/react-core'; diff --git a/awx/ui/src/components/JobList/useWsJobs.js b/awx/ui/src/components/JobList/useWsJobs.js index 0d60868c8..21a80a9b3 100644 --- a/awx/ui/src/components/JobList/useWsJobs.js +++ b/awx/ui/src/components/JobList/useWsJobs.js @@ -1,5 +1,5 @@ import { useState, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import useWebsocket from 'hooks/useWebsocket'; import useThrottle from 'hooks/useThrottle'; import { parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/components/LabelLists/LabelListItem.js b/awx/ui/src/components/LabelLists/LabelListItem.js index 9c2abae5b..69313f997 100644 --- a/awx/ui/src/components/LabelLists/LabelListItem.js +++ b/awx/ui/src/components/LabelLists/LabelListItem.js @@ -1,6 +1,6 @@ import React from 'react'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; function LabelListItem({ label, searchOrg }) { diff --git a/awx/ui/src/components/LabelLists/LabelLists.js b/awx/ui/src/components/LabelLists/LabelLists.js index 81fc6d435..a39f21025 100644 --- a/awx/ui/src/components/LabelLists/LabelLists.js +++ b/awx/ui/src/components/LabelLists/LabelLists.js @@ -1,7 +1,7 @@ import React, { useEffect, useCallback } from 'react'; import { Card } from '@patternfly/react-core'; import { useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import useRequest from 'hooks/useRequest'; import { LabelsAPI } from 'api'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/components/LaunchPrompt/steps/CredentialsStep.js b/awx/ui/src/components/LaunchPrompt/steps/CredentialsStep.js index ce16551a9..2fbd24e39 100644 --- a/awx/ui/src/components/LaunchPrompt/steps/CredentialsStep.js +++ b/awx/ui/src/components/LaunchPrompt/steps/CredentialsStep.js @@ -1,5 +1,5 @@ import React, { useState, useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { useField } from 'formik'; diff --git a/awx/ui/src/components/ListHeader/ListHeader.js b/awx/ui/src/components/ListHeader/ListHeader.js index 30b506f33..873a5f1bb 100644 --- a/awx/ui/src/components/ListHeader/ListHeader.js +++ b/awx/ui/src/components/ListHeader/ListHeader.js @@ -1,6 +1,6 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { Toolbar, ToolbarContent } from '@patternfly/react-core'; diff --git a/awx/ui/src/components/Lookup/ApplicationLookup.js b/awx/ui/src/components/Lookup/ApplicationLookup.js index af5a7274c..c771d6507 100644 --- a/awx/ui/src/components/Lookup/ApplicationLookup.js +++ b/awx/ui/src/components/Lookup/ApplicationLookup.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { FormGroup } from '@patternfly/react-core'; import { ApplicationsAPI } from 'api'; diff --git a/awx/ui/src/components/Lookup/ExecutionEnvironmentLookup.js b/awx/ui/src/components/Lookup/ExecutionEnvironmentLookup.js index 24f62f312..a91fb743c 100644 --- a/awx/ui/src/components/Lookup/ExecutionEnvironmentLookup.js +++ b/awx/ui/src/components/Lookup/ExecutionEnvironmentLookup.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { FormGroup, Tooltip } from '@patternfly/react-core'; import { ExecutionEnvironmentsAPI, ProjectsAPI } from 'api'; diff --git a/awx/ui/src/components/Lookup/HostFilterLookup.js b/awx/ui/src/components/Lookup/HostFilterLookup.js index 1899b8e45..2da24e489 100644 --- a/awx/ui/src/components/Lookup/HostFilterLookup.js +++ b/awx/ui/src/components/Lookup/HostFilterLookup.js @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; diff --git a/awx/ui/src/components/NotificationList/NotificationList.js b/awx/ui/src/components/NotificationList/NotificationList.js index 17c80e9c6..72688fb43 100644 --- a/awx/ui/src/components/NotificationList/NotificationList.js +++ b/awx/ui/src/components/NotificationList/NotificationList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/components/NotificationList/NotificationListItem.js b/awx/ui/src/components/NotificationList/NotificationListItem.js index f18bbcdc5..4e68071d8 100644 --- a/awx/ui/src/components/NotificationList/NotificationListItem.js +++ b/awx/ui/src/components/NotificationList/NotificationListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Switch } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { ActionsTd, ActionItem } from '../PaginatedTable'; diff --git a/awx/ui/src/components/PaginatedTable/HeaderRow.js b/awx/ui/src/components/PaginatedTable/HeaderRow.js index 6722fa035..fbef7d392 100644 --- a/awx/ui/src/components/PaginatedTable/HeaderRow.js +++ b/awx/ui/src/components/PaginatedTable/HeaderRow.js @@ -1,5 +1,5 @@ import React from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Thead, Tr, Th as PFTh } from '@patternfly/react-table'; import styled from 'styled-components'; diff --git a/awx/ui/src/components/PaginatedTable/PaginatedTable.js b/awx/ui/src/components/PaginatedTable/PaginatedTable.js index 3f9e5d81d..ef0fef8ae 100644 --- a/awx/ui/src/components/PaginatedTable/PaginatedTable.js +++ b/awx/ui/src/components/PaginatedTable/PaginatedTable.js @@ -3,7 +3,7 @@ // import React, { useEffect } from 'react'; import { TableComposable, Tbody } from '@patternfly/react-table'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/PaginatedTable/ToolbarAddButton.js b/awx/ui/src/components/PaginatedTable/ToolbarAddButton.js index ca34ee5a2..4241a4553 100644 --- a/awx/ui/src/components/PaginatedTable/ToolbarAddButton.js +++ b/awx/ui/src/components/PaginatedTable/ToolbarAddButton.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button, DropdownItem, Tooltip } from '@patternfly/react-core'; import CaretDownIcon from '@patternfly/react-icons/dist/js/icons/caret-down-icon'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/PromptDetail/PromptDetail.js b/awx/ui/src/components/PromptDetail/PromptDetail.js index f9a3069bc..11cf98779 100644 --- a/awx/ui/src/components/PromptDetail/PromptDetail.js +++ b/awx/ui/src/components/PromptDetail/PromptDetail.js @@ -1,6 +1,6 @@ import React from 'react'; import { Trans, useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import styled from 'styled-components'; import { Chip, Divider, Title } from '@patternfly/react-core'; import { toTitleCase } from 'util/strings'; diff --git a/awx/ui/src/components/PromptDetail/PromptInventorySourceDetail.js b/awx/ui/src/components/PromptDetail/PromptInventorySourceDetail.js index f29d05e04..8c7b7cd0a 100644 --- a/awx/ui/src/components/PromptDetail/PromptInventorySourceDetail.js +++ b/awx/ui/src/components/PromptDetail/PromptInventorySourceDetail.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Chip, TextList, diff --git a/awx/ui/src/components/PromptDetail/PromptJobTemplateDetail.js b/awx/ui/src/components/PromptDetail/PromptJobTemplateDetail.js index df04971a8..516651086 100644 --- a/awx/ui/src/components/PromptDetail/PromptJobTemplateDetail.js +++ b/awx/ui/src/components/PromptDetail/PromptJobTemplateDetail.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Chip, TextList, diff --git a/awx/ui/src/components/PromptDetail/PromptProjectDetail.js b/awx/ui/src/components/PromptDetail/PromptProjectDetail.js index dd1cebd2e..41fe257dd 100644 --- a/awx/ui/src/components/PromptDetail/PromptProjectDetail.js +++ b/awx/ui/src/components/PromptDetail/PromptProjectDetail.js @@ -6,7 +6,7 @@ import { TextListVariants, TextListItemVariants, } from '@patternfly/react-core'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Config } from 'contexts/Config'; import { toTitleCase } from 'util/strings'; import { Detail, DeletedDetail } from '../DetailList'; diff --git a/awx/ui/src/components/PromptDetail/PromptWFJobTemplateDetail.js b/awx/ui/src/components/PromptDetail/PromptWFJobTemplateDetail.js index 11f8d7305..2c9160381 100644 --- a/awx/ui/src/components/PromptDetail/PromptWFJobTemplateDetail.js +++ b/awx/ui/src/components/PromptDetail/PromptWFJobTemplateDetail.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Chip, TextList, diff --git a/awx/ui/src/components/RelatedTemplateList/RelatedTemplateList.js b/awx/ui/src/components/RelatedTemplateList/RelatedTemplateList.js index 44699cb0d..f9c28e159 100644 --- a/awx/ui/src/components/RelatedTemplateList/RelatedTemplateList.js +++ b/awx/ui/src/components/RelatedTemplateList/RelatedTemplateList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useParams, useLocation } from 'react-router-dom'; +import { useParams, useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card } from '@patternfly/react-core'; import { JobTemplatesAPI } from 'api'; diff --git a/awx/ui/src/components/ResourceAccessList/ResourceAccessList.js b/awx/ui/src/components/ResourceAccessList/ResourceAccessList.js index 9b66a72dd..aa36d7d11 100644 --- a/awx/ui/src/components/ResourceAccessList/ResourceAccessList.js +++ b/awx/ui/src/components/ResourceAccessList/ResourceAccessList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { RolesAPI, TeamsAPI, UsersAPI } from 'api'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/components/ResourceAccessList/ResourceAccessListItem.js b/awx/ui/src/components/ResourceAccessList/ResourceAccessListItem.js index 8fd603571..0ef683449 100644 --- a/awx/ui/src/components/ResourceAccessList/ResourceAccessListItem.js +++ b/awx/ui/src/components/ResourceAccessList/ResourceAccessListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import { Chip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import ChipGroup from '../ChipGroup'; import { DetailList, Detail } from '../DetailList'; diff --git a/awx/ui/src/components/RoutedTabs/RoutedTabs.js b/awx/ui/src/components/RoutedTabs/RoutedTabs.js index df95e9d15..8d2e59c43 100644 --- a/awx/ui/src/components/RoutedTabs/RoutedTabs.js +++ b/awx/ui/src/components/RoutedTabs/RoutedTabs.js @@ -4,7 +4,7 @@ import { Tabs as PFTabs, TabTitleText, } from '@patternfly/react-core'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { getPersistentFilters } from 'components/PersistentFilters'; diff --git a/awx/ui/src/components/Schedule/Schedule.js b/awx/ui/src/components/Schedule/Schedule.js index 0ccdfe114..a3a34bb69 100644 --- a/awx/ui/src/components/Schedule/Schedule.js +++ b/awx/ui/src/components/Schedule/Schedule.js @@ -6,7 +6,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { SchedulesAPI } from 'api'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/components/Schedule/ScheduleAdd/ScheduleAdd.js b/awx/ui/src/components/Schedule/ScheduleAdd/ScheduleAdd.js index 2f4a932ef..6fc36082f 100644 --- a/awx/ui/src/components/Schedule/ScheduleAdd/ScheduleAdd.js +++ b/awx/ui/src/components/Schedule/ScheduleAdd/ScheduleAdd.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Card } from '@patternfly/react-core'; import yaml from 'js-yaml'; diff --git a/awx/ui/src/components/Schedule/ScheduleDetail/ScheduleDetail.js b/awx/ui/src/components/Schedule/ScheduleDetail/ScheduleDetail.js index a4a67b2f9..29f080da9 100644 --- a/awx/ui/src/components/Schedule/ScheduleDetail/ScheduleDetail.js +++ b/awx/ui/src/components/Schedule/ScheduleDetail/ScheduleDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link, useLocation } from 'react-router-dom'; +import { Link, useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js b/awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js index c40a9ae09..216546e8f 100644 --- a/awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js +++ b/awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Card } from '@patternfly/react-core'; import yaml from 'js-yaml'; diff --git a/awx/ui/src/components/Schedule/ScheduleList/ScheduleList.js b/awx/ui/src/components/Schedule/ScheduleList/ScheduleList.js index 41a538f4d..693e50001 100644 --- a/awx/ui/src/components/Schedule/ScheduleList/ScheduleList.js +++ b/awx/ui/src/components/Schedule/ScheduleList/ScheduleList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { SchedulesAPI } from 'api'; import useRequest, { useDeleteItems } from 'hooks/useRequest'; diff --git a/awx/ui/src/components/Schedule/ScheduleList/ScheduleListItem.js b/awx/ui/src/components/Schedule/ScheduleList/ScheduleListItem.js index 6fcaf5ea4..0eaf3dca5 100644 --- a/awx/ui/src/components/Schedule/ScheduleList/ScheduleListItem.js +++ b/awx/ui/src/components/Schedule/ScheduleList/ScheduleListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button, Tooltip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { diff --git a/awx/ui/src/components/ScreenHeader/ScreenHeader.js b/awx/ui/src/components/ScreenHeader/ScreenHeader.js index 2730f6ccf..64bad76bd 100644 --- a/awx/ui/src/components/ScreenHeader/ScreenHeader.js +++ b/awx/ui/src/components/ScreenHeader/ScreenHeader.js @@ -12,7 +12,7 @@ import { Tooltip, } from '@patternfly/react-core'; import { HistoryIcon } from '@patternfly/react-icons'; -import { Link, useLocation } from 'react-router-dom'; +import { Link, useLocation } from 'react-router'; const ScreenHeader = ({ breadcrumbConfig, streamType }) => { const { light } = PageSectionVariants; diff --git a/awx/ui/src/components/Search/AdvancedSearch.js b/awx/ui/src/components/Search/AdvancedSearch.js index b895807db..be71d42d3 100644 --- a/awx/ui/src/components/Search/AdvancedSearch.js +++ b/awx/ui/src/components/Search/AdvancedSearch.js @@ -14,7 +14,7 @@ import { } from '@patternfly/react-core'; import { SearchIcon, QuestionCircleIcon } from '@patternfly/react-icons'; import styled from 'styled-components'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useConfig } from 'contexts/Config'; import getDocsBaseUrl from 'util/getDocsBaseUrl'; import RelatedLookupTypeInput from './RelatedLookupTypeInput'; diff --git a/awx/ui/src/components/Search/Search.js b/awx/ui/src/components/Search/Search.js index 1e607213e..f3a0be097 100644 --- a/awx/ui/src/components/Search/Search.js +++ b/awx/ui/src/components/Search/Search.js @@ -1,7 +1,7 @@ import React, { useState, useEffect } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Button, ButtonVariant, diff --git a/awx/ui/src/components/Sort/Sort.js b/awx/ui/src/components/Sort/Sort.js index 069f9af72..82d5c35da 100644 --- a/awx/ui/src/components/Sort/Sort.js +++ b/awx/ui/src/components/Sort/Sort.js @@ -1,7 +1,7 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, diff --git a/awx/ui/src/components/Sort/Sort.test.js b/awx/ui/src/components/Sort/Sort.test.js index 6c8c19920..7c9c6167e 100644 --- a/awx/ui/src/components/Sort/Sort.test.js +++ b/awx/ui/src/components/Sort/Sort.test.js @@ -4,8 +4,8 @@ import { renderWithContexts } from '../../../testUtils/rtlContexts'; import Sort from './Sort'; -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useLocation: () => ({ pathname: '/organizations', }), diff --git a/awx/ui/src/components/Sparkline/Sparkline.js b/awx/ui/src/components/Sparkline/Sparkline.js index 52a5c113f..1de001e1b 100644 --- a/awx/ui/src/components/Sparkline/Sparkline.js +++ b/awx/ui/src/components/Sparkline/Sparkline.js @@ -1,6 +1,6 @@ import React from 'react'; -import { Link as _Link } from 'react-router-dom'; +import { Link as _Link } from 'react-router'; import { Tooltip } from '@patternfly/react-core'; import styled from 'styled-components'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/TemplateList/TemplateList.js b/awx/ui/src/components/TemplateList/TemplateList.js index 4a6fb1c9a..0cd7b0991 100644 --- a/awx/ui/src/components/TemplateList/TemplateList.js +++ b/awx/ui/src/components/TemplateList/TemplateList.js @@ -3,7 +3,7 @@ */ import React, { useEffect, useCallback } from 'react'; -import { useLocation, Link } from 'react-router-dom'; +import { useLocation, Link } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, DropdownItem } from '@patternfly/react-core'; import { diff --git a/awx/ui/src/components/TemplateList/TemplateListItem.js b/awx/ui/src/components/TemplateList/TemplateListItem.js index b9664c16e..4784fb3c0 100644 --- a/awx/ui/src/components/TemplateList/TemplateListItem.js +++ b/awx/ui/src/components/TemplateList/TemplateListItem.js @@ -3,7 +3,7 @@ */ import React, { useState, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button, Tooltip, Chip } from '@patternfly/react-core'; import { Tr, Td, ExpandableRowContent } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.js b/awx/ui/src/components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.js index 10fcbd284..f9e3001de 100644 --- a/awx/ui/src/components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.js +++ b/awx/ui/src/components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.js @@ -1,5 +1,5 @@ import React, { useState, useCallback, useMemo } from 'react'; -import { useParams, useMatch } from 'react-router-dom'; +import { useParams, useMatch } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; import { diff --git a/awx/ui/src/components/WorkflowOutputNavigation/WorkflowOutputNavigation.js b/awx/ui/src/components/WorkflowOutputNavigation/WorkflowOutputNavigation.js index a0b523c44..12bcbce05 100644 --- a/awx/ui/src/components/WorkflowOutputNavigation/WorkflowOutputNavigation.js +++ b/awx/ui/src/components/WorkflowOutputNavigation/WorkflowOutputNavigation.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { useParams, Link } from 'react-router-dom'; +import { useParams, Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Select, diff --git a/awx/ui/src/contexts/Config.js b/awx/ui/src/contexts/Config.js index b846ca965..14ebfa4ed 100644 --- a/awx/ui/src/contexts/Config.js +++ b/awx/ui/src/contexts/Config.js @@ -1,5 +1,5 @@ import React, { useCallback, useContext, useEffect, useMemo } from 'react'; -import { useMatch } from 'react-router-dom'; +import { useMatch } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/hooks/useRequest.js b/awx/ui/src/hooks/useRequest.js index 496f3a26a..9a6169ebf 100644 --- a/awx/ui/src/hooks/useRequest.js +++ b/awx/ui/src/hooks/useRequest.js @@ -1,5 +1,5 @@ import { useEffect, useState, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { parseQueryString, updateQueryString } from 'util/qs'; import useIsMounted from './useIsMounted'; diff --git a/awx/ui/src/routerCompat.js b/awx/ui/src/routerCompat.js index a049d258b..639f18dbc 100644 --- a/awx/ui/src/routerCompat.js +++ b/awx/ui/src/routerCompat.js @@ -1,7 +1,6 @@ // Single indirection point for the react-router API the app uses. The -// react-router-dom-v5-compat -> v6 migration was landed in three steps by first -// routing every consumer through this module and then repointing it here, so the -// whole app flipped to react-router-dom v6 from one place. It is kept as the +// v5-compat -> v6 -> v7 migration was landed in steps by first routing every +// consumer through this module and then repointing it here. It is kept as the // canonical import site for these symbols. export { Link, @@ -13,4 +12,4 @@ export { useNavigate, useNavigationType, useParams, -} from 'react-router-dom'; +} from 'react-router'; diff --git a/awx/ui/src/screens/ActivityStream/ActivityStream.js b/awx/ui/src/screens/ActivityStream/ActivityStream.js index 506393010..b4f7687d2 100644 --- a/awx/ui/src/screens/ActivityStream/ActivityStream.js +++ b/awx/ui/src/screens/ActivityStream/ActivityStream.js @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/ActivityStream/ActivityStreamDescription.js b/awx/ui/src/screens/ActivityStream/ActivityStreamDescription.js index f2d7a5d4a..198bac98c 100644 --- a/awx/ui/src/screens/ActivityStream/ActivityStreamDescription.js +++ b/awx/ui/src/screens/ActivityStream/ActivityStreamDescription.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; const buildAnchor = (obj, resource, activity) => { diff --git a/awx/ui/src/screens/ActivityStream/ActivityStreamDetailButton.test.js b/awx/ui/src/screens/ActivityStream/ActivityStreamDetailButton.test.js index 4da07ee3f..5b90c2f4b 100644 --- a/awx/ui/src/screens/ActivityStream/ActivityStreamDetailButton.test.js +++ b/awx/ui/src/screens/ActivityStream/ActivityStreamDetailButton.test.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { screen, within } from '@testing-library/react'; import { renderWithContexts, diff --git a/awx/ui/src/screens/ActivityStream/ActivityStreamListItem.js b/awx/ui/src/screens/ActivityStream/ActivityStreamListItem.js index 6afbb4e00..43c9b3739 100644 --- a/awx/ui/src/screens/ActivityStream/ActivityStreamListItem.js +++ b/awx/ui/src/screens/ActivityStream/ActivityStreamListItem.js @@ -1,7 +1,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { formatDateString } from 'util/dates'; import { ActionsTd, ActionItem } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Application/Application/Application.js b/awx/ui/src/screens/Application/Application/Application.js index 02a6fb00b..554605cac 100644 --- a/awx/ui/src/screens/Application/Application/Application.js +++ b/awx/ui/src/screens/Application/Application/Application.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Application/ApplicationDetails/ApplicationDetails.js b/awx/ui/src/screens/Application/ApplicationDetails/ApplicationDetails.js index c122576e8..517e277d7 100644 --- a/awx/ui/src/screens/Application/ApplicationDetails/ApplicationDetails.js +++ b/awx/ui/src/screens/Application/ApplicationDetails/ApplicationDetails.js @@ -1,6 +1,6 @@ import React, { useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Application/ApplicationEdit/ApplicationEdit.test.js b/awx/ui/src/screens/Application/ApplicationEdit/ApplicationEdit.test.js index 33765e215..796176c78 100644 --- a/awx/ui/src/screens/Application/ApplicationEdit/ApplicationEdit.test.js +++ b/awx/ui/src/screens/Application/ApplicationEdit/ApplicationEdit.test.js @@ -12,8 +12,8 @@ jest.mock('../../../api/models/Organizations'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping useNavigate real so the cancel/submit // navigation assertions still exercise history. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1 }), })); diff --git a/awx/ui/src/screens/Application/ApplicationTokens/ApplicationTokenListItem.js b/awx/ui/src/screens/Application/ApplicationTokens/ApplicationTokenListItem.js index d3b10797e..7c937d765 100644 --- a/awx/ui/src/screens/Application/ApplicationTokens/ApplicationTokenListItem.js +++ b/awx/ui/src/screens/Application/ApplicationTokens/ApplicationTokenListItem.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Tr, Td } from '@patternfly/react-table'; import { formatDateString } from 'util/dates'; diff --git a/awx/ui/src/screens/Application/ApplicationsList/ApplicationListItem.js b/awx/ui/src/screens/Application/ApplicationsList/ApplicationListItem.js index 7c2104d7c..743269200 100644 --- a/awx/ui/src/screens/Application/ApplicationsList/ApplicationListItem.js +++ b/awx/ui/src/screens/Application/ApplicationsList/ApplicationListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem, TdBreakWord } from 'components/PaginatedTable'; import { formatDateString } from 'util/dates'; diff --git a/awx/ui/src/screens/Application/ApplicationsList/ApplicationsList.js b/awx/ui/src/screens/Application/ApplicationsList/ApplicationsList.js index 819995792..f7e773db6 100644 --- a/awx/ui/src/screens/Application/ApplicationsList/ApplicationsList.js +++ b/awx/ui/src/screens/Application/ApplicationsList/ApplicationsList.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Card, PageSection } from '@patternfly/react-core'; import { getQSConfig, parseQueryString } from 'util/qs'; import useRequest, { useDeleteItems } from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Application/shared/ApplicationForm.js b/awx/ui/src/screens/Application/shared/ApplicationForm.js index 07568bc87..cde3e4cb0 100644 --- a/awx/ui/src/screens/Application/shared/ApplicationForm.js +++ b/awx/ui/src/screens/Application/shared/ApplicationForm.js @@ -1,5 +1,5 @@ import React, { useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Formik, useField, useFormikContext } from 'formik'; diff --git a/awx/ui/src/screens/Credential/Credential.js b/awx/ui/src/screens/Credential/Credential.js index c8b8af806..aa239d73e 100644 --- a/awx/ui/src/screens/Credential/Credential.js +++ b/awx/ui/src/screens/Credential/Credential.js @@ -8,7 +8,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import useRequest from 'hooks/useRequest'; import { ResourceAccessList } from 'components/ResourceAccessList'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Credential/CredentialAdd/CredentialAdd.js b/awx/ui/src/screens/Credential/CredentialAdd/CredentialAdd.js index 27a6c64b3..d2d33a4a7 100644 --- a/awx/ui/src/screens/Credential/CredentialAdd/CredentialAdd.js +++ b/awx/ui/src/screens/Credential/CredentialAdd/CredentialAdd.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router'; import { PageSection, Card } from '@patternfly/react-core'; import { CardBody } from 'components/Card'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Credential/CredentialDetail/CredentialDetail.js b/awx/ui/src/screens/Credential/CredentialDetail/CredentialDetail.js index e78cafe76..0bbf788f3 100644 --- a/awx/ui/src/screens/Credential/CredentialDetail/CredentialDetail.js +++ b/awx/ui/src/screens/Credential/CredentialDetail/CredentialDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; diff --git a/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.js b/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.js index c3c897a80..243a53bf3 100644 --- a/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.js +++ b/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useNavigate, useParams } from 'react-router-dom'; +import { useNavigate, useParams } from 'react-router'; import { CardBody } from 'components/Card'; import { CredentialsAPI, diff --git a/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.test.js b/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.test.js index df6cb785d..d61e5350f 100644 --- a/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.test.js +++ b/awx/ui/src/screens/Credential/CredentialEdit/CredentialEdit.test.js @@ -14,8 +14,8 @@ import CredentialEdit from './CredentialEdit'; jest.mock('../../../api'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 3, }), diff --git a/awx/ui/src/screens/Credential/CredentialList/CredentialList.js b/awx/ui/src/screens/Credential/CredentialList/CredentialList.js index 7119d64ee..448fa894f 100644 --- a/awx/ui/src/screens/Credential/CredentialList/CredentialList.js +++ b/awx/ui/src/screens/Credential/CredentialList/CredentialList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; import { CredentialsAPI } from 'api'; diff --git a/awx/ui/src/screens/Credential/CredentialList/CredentialListItem.js b/awx/ui/src/screens/Credential/CredentialList/CredentialListItem.js index c45419f16..c3ed2367b 100644 --- a/awx/ui/src/screens/Credential/CredentialList/CredentialListItem.js +++ b/awx/ui/src/screens/Credential/CredentialList/CredentialListItem.js @@ -1,7 +1,7 @@ import React, { useState, useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { PencilAltIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Credential/shared/CredentialForm.js b/awx/ui/src/screens/Credential/shared/CredentialForm.js index 768dba3e9..301785c59 100644 --- a/awx/ui/src/screens/Credential/shared/CredentialForm.js +++ b/awx/ui/src/screens/Credential/shared/CredentialForm.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Formik, useField, useFormikContext } from 'formik'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.js b/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.js index 39136a22a..2b491ecea 100644 --- a/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.js +++ b/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.js @@ -1,6 +1,6 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useField, useFormikContext } from 'formik'; import styled from 'styled-components'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.test.js b/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.test.js index 5aa59f8d8..4c342435d 100644 --- a/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.test.js +++ b/awx/ui/src/screens/Credential/shared/CredentialFormFields/CredentialField.test.js @@ -13,8 +13,8 @@ const fieldOptions = { secret: true, }; -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useLocation: () => ({ pathname: '/credentials/3/edit', }), diff --git a/awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginField.js b/awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginField.js index 79a96fefe..8df6570cf 100644 --- a/awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginField.js +++ b/awx/ui/src/screens/Credential/shared/CredentialPlugins/CredentialPluginField.js @@ -1,6 +1,6 @@ import React, { useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { useField } from 'formik'; diff --git a/awx/ui/src/screens/CredentialType/CredentialTypeDetails/CredentialTypeDetails.js b/awx/ui/src/screens/CredentialType/CredentialTypeDetails/CredentialTypeDetails.js index b3e72f251..26a2beda2 100644 --- a/awx/ui/src/screens/CredentialType/CredentialTypeDetails/CredentialTypeDetails.js +++ b/awx/ui/src/screens/CredentialType/CredentialTypeDetails/CredentialTypeDetails.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeList.js b/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeList.js index 60508ed60..2773efa34 100644 --- a/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeList.js +++ b/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeListItem.js b/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeListItem.js index a6c904e0f..ec312f926 100644 --- a/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeListItem.js +++ b/awx/ui/src/screens/CredentialType/CredentialTypeList/CredentialTypeListItem.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { PencilAltIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Dashboard/shared/Count.js b/awx/ui/src/screens/Dashboard/shared/Count.js index 2541d9141..20203ca1a 100644 --- a/awx/ui/src/screens/Dashboard/shared/Count.js +++ b/awx/ui/src/screens/Dashboard/shared/Count.js @@ -1,6 +1,6 @@ import React from 'react'; import styled from 'styled-components'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Card } from '@patternfly/react-core'; const CountCard = styled(Card)` diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironment.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironment.js index 957756dd6..76652c489 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironment.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironment.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentDetails/ExecutionEnvironmentDetails.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentDetails/ExecutionEnvironmentDetails.js index 204a06eca..877e4423d 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentDetails/ExecutionEnvironmentDetails.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentDetails/ExecutionEnvironmentDetails.js @@ -1,6 +1,6 @@ import React, { useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button, Label } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentList.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentList.js index 14cf91ff3..c2ddd58c6 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentList.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentListItem.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentListItem.js index 5f34b8c64..d353bc45a 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentListItem.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentList/ExecutionEnvironmentListItem.js @@ -1,6 +1,6 @@ import React, { useState, useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { PencilAltIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateList.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateList.js index 6e27055e2..813263fce 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateList.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateListItem.js b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateListItem.js index 87cb68042..40cd64036 100644 --- a/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateListItem.js +++ b/awx/ui/src/screens/ExecutionEnvironment/ExecutionEnvironmentTemplate/ExecutionEnvironmentTemplateListItem.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Tr, Td } from '@patternfly/react-table'; function ExecutionEnvironmentTemplateListItem({ template, detailUrl }) { diff --git a/awx/ui/src/screens/Host/Host.js b/awx/ui/src/screens/Host/Host.js index 93f5e4ad0..940211f27 100644 --- a/awx/ui/src/screens/Host/Host.js +++ b/awx/ui/src/screens/Host/Host.js @@ -7,7 +7,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import RoutedTabs from 'components/RoutedTabs'; diff --git a/awx/ui/src/screens/Host/HostDetail/HostDetail.js b/awx/ui/src/screens/Host/HostDetail/HostDetail.js index 5d14ead86..b9a1c2ded 100644 --- a/awx/ui/src/screens/Host/HostDetail/HostDetail.js +++ b/awx/ui/src/screens/Host/HostDetail/HostDetail.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Host/HostFacts/HostFacts.test.js b/awx/ui/src/screens/Host/HostFacts/HostFacts.test.js index 94de3c502..8395e5445 100644 --- a/awx/ui/src/screens/Host/HostFacts/HostFacts.test.js +++ b/awx/ui/src/screens/Host/HostFacts/HostFacts.test.js @@ -7,8 +7,8 @@ import mockHost from '../data.host.json'; import mockHostFacts from '../data.hostFacts.json'; jest.mock('../../../api/models/Hosts'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, hostId: 1, diff --git a/awx/ui/src/screens/Host/HostGroups/HostGroupItem.js b/awx/ui/src/screens/Host/HostGroups/HostGroupItem.js index 922f7e0a7..0ab1ac016 100644 --- a/awx/ui/src/screens/Host/HostGroups/HostGroupItem.js +++ b/awx/ui/src/screens/Host/HostGroups/HostGroupItem.js @@ -4,7 +4,7 @@ import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Host/HostGroups/HostGroupsList.js b/awx/ui/src/screens/Host/HostGroups/HostGroupsList.js index 4472c6dbd..c93326a3a 100644 --- a/awx/ui/src/screens/Host/HostGroups/HostGroupsList.js +++ b/awx/ui/src/screens/Host/HostGroups/HostGroupsList.js @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Host/HostList/HostList.js b/awx/ui/src/screens/Host/HostList/HostList.js index a38b839d2..94d3d2152 100644 --- a/awx/ui/src/screens/Host/HostList/HostList.js +++ b/awx/ui/src/screens/Host/HostList/HostList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Host/HostList/HostListItem.js b/awx/ui/src/screens/Host/HostList/HostListItem.js index 5da8b2107..9f17af918 100644 --- a/awx/ui/src/screens/Host/HostList/HostListItem.js +++ b/awx/ui/src/screens/Host/HostList/HostListItem.js @@ -4,7 +4,7 @@ import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem, TdBreakWord } from 'components/PaginatedTable'; import HostToggle from 'components/HostToggle'; diff --git a/awx/ui/src/screens/HostMetrics/HostMetrics.js b/awx/ui/src/screens/HostMetrics/HostMetrics.js index e89d638a6..065b5eb7c 100644 --- a/awx/ui/src/screens/HostMetrics/HostMetrics.js +++ b/awx/ui/src/screens/HostMetrics/HostMetrics.js @@ -10,7 +10,7 @@ import PaginatedTable, { import DataListToolbar from 'components/DataListToolbar'; import { getQSConfig, parseQueryString } from 'util/qs'; import { Card, PageSection } from '@patternfly/react-core'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import useSelected from 'hooks/useSelected'; import HostMetricsListItem from './HostMetricsListItem'; import HostMetricsDeleteButton from './HostMetricsDeleteButton'; diff --git a/awx/ui/src/screens/InstanceGroup/ContainerGroup.js b/awx/ui/src/screens/InstanceGroup/ContainerGroup.js index 82c3bbcec..345fd3b8f 100644 --- a/awx/ui/src/screens/InstanceGroup/ContainerGroup.js +++ b/awx/ui/src/screens/InstanceGroup/ContainerGroup.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/InstanceGroup/ContainerGroupDetails/ContainerGroupDetails.js b/awx/ui/src/screens/InstanceGroup/ContainerGroupDetails/ContainerGroupDetails.js index f6e339850..022e71518 100644 --- a/awx/ui/src/screens/InstanceGroup/ContainerGroupDetails/ContainerGroupDetails.js +++ b/awx/ui/src/screens/InstanceGroup/ContainerGroupDetails/ContainerGroupDetails.js @@ -2,7 +2,7 @@ import React, { useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button, Label } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/InstanceGroup/InstanceDetails/InstanceDetails.test.js b/awx/ui/src/screens/InstanceGroup/InstanceDetails/InstanceDetails.test.js index d9dd40718..2ea130649 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceDetails/InstanceDetails.test.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceDetails/InstanceDetails.test.js @@ -13,8 +13,8 @@ jest.mock('../../../api'); jest.mock('../../../hooks/useDebounce'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 2, instanceId: 1, diff --git a/awx/ui/src/screens/InstanceGroup/InstanceGroup.js b/awx/ui/src/screens/InstanceGroup/InstanceGroup.js index f66fd9fd1..ad1adb217 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceGroup.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceGroup.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/InstanceGroup/InstanceGroupDetails/InstanceGroupDetails.js b/awx/ui/src/screens/InstanceGroup/InstanceGroupDetails/InstanceGroupDetails.js index adba880b3..9dd4dcff7 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceGroupDetails/InstanceGroupDetails.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceGroupDetails/InstanceGroupDetails.js @@ -2,7 +2,7 @@ import React, { useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupList.js b/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupList.js index 28e9dc4e7..d18399ad9 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupList.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation, Link } from 'react-router-dom'; +import { useLocation, Link } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupListItem.js b/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupListItem.js index a5eff2bfc..aa5dac0c3 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupListItem.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceGroupList/InstanceGroupListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button, Progress, diff --git a/awx/ui/src/screens/InstanceGroup/InstanceGroups.js b/awx/ui/src/screens/InstanceGroup/InstanceGroups.js index bbefb28e1..f6d22d73e 100644 --- a/awx/ui/src/screens/InstanceGroup/InstanceGroups.js +++ b/awx/ui/src/screens/InstanceGroup/InstanceGroups.js @@ -2,7 +2,7 @@ import React, { useCallback, useState } from 'react'; import { useLingui } from '@lingui/react/macro'; import { Routes, Route } from 'routerCompat'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import ScreenHeader from 'components/ScreenHeader'; import PersistentFilters from 'components/PersistentFilters'; import InstanceGroupAdd from './InstanceGroupAdd'; diff --git a/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.js b/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.js index 6fc8e12f1..b8590c88a 100644 --- a/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.js +++ b/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect, useState, useRef } from 'react'; import { Trans, useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import useExpanded from 'hooks/useExpanded'; diff --git a/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.test.js b/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.test.js index 3e4b7af77..1cf7da5ca 100644 --- a/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.test.js +++ b/awx/ui/src/screens/InstanceGroup/Instances/InstanceList.test.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { screen, waitFor, within } from '@testing-library/react'; import { createMemoryHistory } from 'history'; @@ -14,8 +14,8 @@ import InstanceList from './InstanceList'; jest.mock('../../../api'); // InstanceList reads useParams from react-router-dom (the route tree // is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, instanceGroupId: 2, diff --git a/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js b/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js index 93945b887..ef8423261 100644 --- a/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js +++ b/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js @@ -1,5 +1,5 @@ import React, { useState, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.test.js b/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.test.js index 5a0aaa87f..2bce48f30 100644 --- a/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.test.js +++ b/awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.test.js @@ -12,8 +12,8 @@ jest.mock('../../../hooks/useDebounce'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/screens/Instances/Instance.js b/awx/ui/src/screens/Instances/Instance.js index 1148289da..d5fe268ee 100644 --- a/awx/ui/src/screens/Instances/Instance.js +++ b/awx/ui/src/screens/Instances/Instance.js @@ -5,7 +5,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import { useConfig } from 'contexts/Config'; diff --git a/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.js b/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.js index 0472e7ab4..e92c26607 100644 --- a/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.js +++ b/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate, useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.test.js b/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.test.js index 4d35fd743..1884be5de 100644 --- a/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.test.js +++ b/awx/ui/src/screens/Instances/InstanceDetail/InstanceDetail.test.js @@ -10,8 +10,8 @@ jest.mock('../../../api'); jest.mock('../../../hooks/useDebounce'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.js b/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.js index 385cef345..ba536bdff 100644 --- a/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.js +++ b/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.js @@ -1,7 +1,7 @@ import React, { useState, useCallback, useEffect } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate, useParams } from 'routerCompat'; import { Card, PageSection } from '@patternfly/react-core'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.test.js b/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.test.js index cbb787862..b4b5d8ebc 100644 --- a/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.test.js +++ b/awx/ui/src/screens/Instances/InstanceEdit/InstanceEdit.test.js @@ -11,8 +11,8 @@ jest.mock('../../../api'); jest.mock('../../../hooks/useDebounce'); // The component reads useParams from react-router-dom (the route // tree is v6); mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 42, }), diff --git a/awx/ui/src/screens/Instances/InstanceList/InstanceList.js b/awx/ui/src/screens/Instances/InstanceList/InstanceList.js index 896b37e2e..d91f373c7 100644 --- a/awx/ui/src/screens/Instances/InstanceList/InstanceList.js +++ b/awx/ui/src/screens/Instances/InstanceList/InstanceList.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { PageSection, Card } from '@patternfly/react-core'; import useExpanded from 'hooks/useExpanded'; diff --git a/awx/ui/src/screens/Instances/InstanceList/InstanceList.test.js b/awx/ui/src/screens/Instances/InstanceList/InstanceList.test.js index 9ca77a697..fc08e5ecc 100644 --- a/awx/ui/src/screens/Instances/InstanceList/InstanceList.test.js +++ b/awx/ui/src/screens/Instances/InstanceList/InstanceList.test.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { createMemoryHistory } from 'history'; import * as ConfigContext from 'contexts/Config'; import { within, waitFor, screen } from '@testing-library/react'; @@ -12,8 +12,8 @@ import InstanceList from './InstanceList'; jest.mock('../../../api/models/InstanceGroups'); jest.mock('../../../api/models/Instances'); jest.mock('../../../api/models/Settings'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.js b/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.js index 4ba1daa90..f46ed22bf 100644 --- a/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.js +++ b/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.js @@ -1,5 +1,5 @@ import React, { useState, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; import { diff --git a/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.test.js b/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.test.js index 7f44d620d..4d000cfad 100644 --- a/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.test.js +++ b/awx/ui/src/screens/Instances/InstanceList/InstanceListItem.test.js @@ -10,8 +10,8 @@ import InstanceListItem from './InstanceListItem'; jest.mock('../../../api'); jest.mock('../../../hooks/useDebounce'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/screens/Instances/InstancePeers/InstancePeerList.js b/awx/ui/src/screens/Instances/InstancePeers/InstancePeerList.js index 734aeb200..7c3e03c69 100644 --- a/awx/ui/src/screens/Instances/InstancePeers/InstancePeerList.js +++ b/awx/ui/src/screens/Instances/InstancePeers/InstancePeerList.js @@ -13,7 +13,7 @@ import ErrorDetail from 'components/ErrorDetail'; import AlertModal from 'components/AlertModal'; import useToast, { AlertVariant } from 'hooks/useToast'; import { getQSConfig, parseQueryString } from 'util/qs'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import useRequest, { useDismissableError } from 'hooks/useRequest'; import DataListToolbar from 'components/DataListToolbar'; diff --git a/awx/ui/src/screens/Instances/InstancePeers/InstancePeerListItem.js b/awx/ui/src/screens/Instances/InstancePeers/InstancePeerListItem.js index 1d5848597..0a4342594 100644 --- a/awx/ui/src/screens/Instances/InstancePeers/InstancePeerListItem.js +++ b/awx/ui/src/screens/Instances/InstancePeers/InstancePeerListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td, ExpandableRowContent } from '@patternfly/react-table'; import { formatDateString } from 'util/dates'; diff --git a/awx/ui/src/screens/Inventory/AdvancedInventoryHost/AdvancedInventoryHost.js b/awx/ui/src/screens/Inventory/AdvancedInventoryHost/AdvancedInventoryHost.js index a8aa834ff..5b3ed21d1 100644 --- a/awx/ui/src/screens/Inventory/AdvancedInventoryHost/AdvancedInventoryHost.js +++ b/awx/ui/src/screens/Inventory/AdvancedInventoryHost/AdvancedInventoryHost.js @@ -5,7 +5,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import ContentError from 'components/ContentError'; import ContentLoading from 'components/ContentLoading'; diff --git a/awx/ui/src/screens/Inventory/AdvancedInventoryHostDetail/AdvancedInventoryHostDetail.js b/awx/ui/src/screens/Inventory/AdvancedInventoryHostDetail/AdvancedInventoryHostDetail.js index 73bfa1bac..e44e2829a 100644 --- a/awx/ui/src/screens/Inventory/AdvancedInventoryHostDetail/AdvancedInventoryHostDetail.js +++ b/awx/ui/src/screens/Inventory/AdvancedInventoryHostDetail/AdvancedInventoryHostDetail.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { CardBody } from 'components/Card'; diff --git a/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostList.js b/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostList.js index c18a1c0fe..31be72734 100644 --- a/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostList.js +++ b/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import DataListToolbar from 'components/DataListToolbar'; diff --git a/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostListItem.js b/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostListItem.js index 437f99256..c115cef8e 100644 --- a/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostListItem.js +++ b/awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHostListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; import Sparkline from 'components/Sparkline'; diff --git a/awx/ui/src/screens/Inventory/ConstructedInventory.js b/awx/ui/src/screens/Inventory/ConstructedInventory.js index 77c6f71c9..ff3c7cc77 100644 --- a/awx/ui/src/screens/Inventory/ConstructedInventory.js +++ b/awx/ui/src/screens/Inventory/ConstructedInventory.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventoryDetail.js b/awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventoryDetail.js index 277e2b84d..f9e32ef8a 100644 --- a/awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventoryDetail.js +++ b/awx/ui/src/screens/Inventory/ConstructedInventoryDetail/ConstructedInventoryDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link, useNavigate } from 'react-router-dom'; +import { Link, useNavigate } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Inventory/FederatedInventory.js b/awx/ui/src/screens/Inventory/FederatedInventory.js index 45ec7cabd..313f973bf 100644 --- a/awx/ui/src/screens/Inventory/FederatedInventory.js +++ b/awx/ui/src/screens/Inventory/FederatedInventory.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/FederatedInventoryDetail/FederatedInventoryDetail.js b/awx/ui/src/screens/Inventory/FederatedInventoryDetail/FederatedInventoryDetail.js index cf823fd8a..6f00c900b 100644 --- a/awx/ui/src/screens/Inventory/FederatedInventoryDetail/FederatedInventoryDetail.js +++ b/awx/ui/src/screens/Inventory/FederatedInventoryDetail/FederatedInventoryDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link, useNavigate } from 'react-router-dom'; +import { Link, useNavigate } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Inventory/Inventory.js b/awx/ui/src/screens/Inventory/Inventory.js index 54db779a0..bb9866cfa 100644 --- a/awx/ui/src/screens/Inventory/Inventory.js +++ b/awx/ui/src/screens/Inventory/Inventory.js @@ -6,7 +6,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Inventory/InventoryDetail/InventoryDetail.js b/awx/ui/src/screens/Inventory/InventoryDetail/InventoryDetail.js index 7e4455e04..dbf30575b 100644 --- a/awx/ui/src/screens/Inventory/InventoryDetail/InventoryDetail.js +++ b/awx/ui/src/screens/Inventory/InventoryDetail/InventoryDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/InventoryGroup/InventoryGroup.js b/awx/ui/src/screens/Inventory/InventoryGroup/InventoryGroup.js index a8d5f5324..4217b326e 100644 --- a/awx/ui/src/screens/Inventory/InventoryGroup/InventoryGroup.js +++ b/awx/ui/src/screens/Inventory/InventoryGroup/InventoryGroup.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import RoutedTabs from 'components/RoutedTabs'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.js b/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.js index dcb68f706..d3a8b4451 100644 --- a/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.js +++ b/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback, useState } from 'react'; -import { useLocation, Link } from 'react-router-dom'; +import { useLocation, Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js b/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js index 5538506e2..24a678cfc 100644 --- a/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js +++ b/awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Button, Tooltip } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupItem.js b/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupItem.js index 68c51f99a..d3db0ce82 100644 --- a/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupItem.js +++ b/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupItem.js @@ -4,7 +4,7 @@ import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupsList.js b/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupsList.js index 62c7c4532..59d5722ca 100644 --- a/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupsList.js +++ b/awx/ui/src/screens/Inventory/InventoryGroups/InventoryGroupsList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Tooltip } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/InventoryHost/InventoryHost.js b/awx/ui/src/screens/Inventory/InventoryHost/InventoryHost.js index 1c2b77082..f0c4209cc 100644 --- a/awx/ui/src/screens/Inventory/InventoryHost/InventoryHost.js +++ b/awx/ui/src/screens/Inventory/InventoryHost/InventoryHost.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { Card } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.js b/awx/ui/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.js index 924589acd..98d70c60c 100644 --- a/awx/ui/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.js +++ b/awx/ui/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.js b/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.js index cf638a585..b0f022dd7 100644 --- a/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.js +++ b/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.js @@ -3,7 +3,7 @@ import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.js b/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.js index 5370b5127..1adfa537c 100644 --- a/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.js +++ b/awx/ui/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.js @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostItem.js b/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostItem.js index 963ce1705..6df7e3656 100644 --- a/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostItem.js +++ b/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostItem.js @@ -1,7 +1,7 @@ import React, { useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { Button, Chip } from '@patternfly/react-core'; import { HostsAPI } from 'api'; diff --git a/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostList.js b/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostList.js index 11b8c0032..c4e9d5589 100644 --- a/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostList.js +++ b/awx/ui/src/screens/Inventory/InventoryHosts/InventoryHostList.js @@ -1,5 +1,5 @@ import React, { useEffect, useState, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/screens/Inventory/InventoryList/InventoryList.js b/awx/ui/src/screens/Inventory/InventoryList/InventoryList.js index 139e2e699..45a74836a 100644 --- a/awx/ui/src/screens/Inventory/InventoryList/InventoryList.js +++ b/awx/ui/src/screens/Inventory/InventoryList/InventoryList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation, Link } from 'react-router-dom'; +import { useLocation, Link } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection, DropdownItem } from '@patternfly/react-core'; import { InventoriesAPI } from 'api'; diff --git a/awx/ui/src/screens/Inventory/InventoryList/InventoryListItem.js b/awx/ui/src/screens/Inventory/InventoryList/InventoryListItem.js index 53b2be573..203c6dcca 100644 --- a/awx/ui/src/screens/Inventory/InventoryList/InventoryListItem.js +++ b/awx/ui/src/screens/Inventory/InventoryList/InventoryListItem.js @@ -4,7 +4,7 @@ import { Button, Label } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { PencilAltIcon } from '@patternfly/react-icons'; import { Plural, useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { timeOfDay } from 'util/dates'; import { InventoriesAPI } from 'api'; import { ActionsTd, ActionItem, TdBreakWord } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Inventory/InventoryList/useWsInventories.js b/awx/ui/src/screens/Inventory/InventoryList/useWsInventories.js index bbdec37cf..ec41b9e32 100644 --- a/awx/ui/src/screens/Inventory/InventoryList/useWsInventories.js +++ b/awx/ui/src/screens/Inventory/InventoryList/useWsInventories.js @@ -1,5 +1,5 @@ import { useState, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { parseQueryString, updateQueryString } from 'util/qs'; import useWebsocket from 'hooks/useWebsocket'; diff --git a/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupList.js b/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupList.js index 495432b79..7d0a9692e 100644 --- a/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupList.js +++ b/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupList.js @@ -1,7 +1,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { useLocation, Link } from 'react-router-dom'; +import { useLocation, Link } from 'react-router'; import { useParams } from 'routerCompat'; import { DropdownItem } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js b/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js index abcf959ba..5cb2670c8 100644 --- a/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js +++ b/awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/InventorySource/InventorySource.js b/awx/ui/src/screens/Inventory/InventorySource/InventorySource.js index 0868955c6..2477c0084 100644 --- a/awx/ui/src/screens/Inventory/InventorySource/InventorySource.js +++ b/awx/ui/src/screens/Inventory/InventorySource/InventorySource.js @@ -6,7 +6,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.js b/awx/ui/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.js index 6b6be68d9..9ea1df96d 100644 --- a/awx/ui/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.js +++ b/awx/ui/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router'; import { Card } from '@patternfly/react-core'; import { InventorySourcesAPI } from 'api'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.js b/awx/ui/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.js index 34cfc5488..30be99339 100644 --- a/awx/ui/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.js +++ b/awx/ui/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Inventory/InventorySourceEdit/InventorySourceEdit.js b/awx/ui/src/screens/Inventory/InventorySourceEdit/InventorySourceEdit.js index 6b9fd4f35..72eaa2af6 100644 --- a/awx/ui/src/screens/Inventory/InventorySourceEdit/InventorySourceEdit.js +++ b/awx/ui/src/screens/Inventory/InventorySourceEdit/InventorySourceEdit.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router'; import { Card } from '@patternfly/react-core'; import { CardBody } from 'components/Card'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Inventory/InventorySources/InventorySourceList.js b/awx/ui/src/screens/Inventory/InventorySources/InventorySourceList.js index a08526a9c..d5946b49f 100644 --- a/awx/ui/src/screens/Inventory/InventorySources/InventorySourceList.js +++ b/awx/ui/src/screens/Inventory/InventorySources/InventorySourceList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { Plural, useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/InventorySources/InventorySourceListItem.js b/awx/ui/src/screens/Inventory/InventorySources/InventorySourceListItem.js index 9df8c2cdb..6456d7fbb 100644 --- a/awx/ui/src/screens/Inventory/InventorySources/InventorySourceListItem.js +++ b/awx/ui/src/screens/Inventory/InventorySources/InventorySourceListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, Tooltip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; diff --git a/awx/ui/src/screens/Inventory/SmartInventory.js b/awx/ui/src/screens/Inventory/SmartInventory.js index af9ebd09b..29dd82528 100644 --- a/awx/ui/src/screens/Inventory/SmartInventory.js +++ b/awx/ui/src/screens/Inventory/SmartInventory.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/SmartInventoryAdd/SmartInventoryAdd.js b/awx/ui/src/screens/Inventory/SmartInventoryAdd/SmartInventoryAdd.js index 0ab4f4b39..ff888dec2 100644 --- a/awx/ui/src/screens/Inventory/SmartInventoryAdd/SmartInventoryAdd.js +++ b/awx/ui/src/screens/Inventory/SmartInventoryAdd/SmartInventoryAdd.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router'; import { Card, PageSection } from '@patternfly/react-core'; import { CardBody } from 'components/Card'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.js b/awx/ui/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.js index 03948cbc1..6ed1d08de 100644 --- a/awx/ui/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.js +++ b/awx/ui/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js b/awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js index 31581d5fb..bc809e58a 100644 --- a/awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js +++ b/awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useNavigate } from 'react-router-dom'; +import { useNavigate } from 'react-router'; import useRequest from 'hooks/useRequest'; import { InventoriesAPI } from 'api'; import { CardBody } from 'components/Card'; diff --git a/awx/ui/src/screens/Inventory/shared/Inventory.helptext.js b/awx/ui/src/screens/Inventory/shared/Inventory.helptext.js index c8bc3c4bf..86f15127f 100644 --- a/awx/ui/src/screens/Inventory/shared/Inventory.helptext.js +++ b/awx/ui/src/screens/Inventory/shared/Inventory.helptext.js @@ -1,7 +1,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; const ansibleDocUrls = { ec2: 'https://docs.ansible.com/ansible/latest/collections/amazon/aws/aws_ec2_inventory.html', diff --git a/awx/ui/src/screens/Inventory/shared/SmartInventoryForm.js b/awx/ui/src/screens/Inventory/shared/SmartInventoryForm.js index 664c1a643..485c6c80d 100644 --- a/awx/ui/src/screens/Inventory/shared/SmartInventoryForm.js +++ b/awx/ui/src/screens/Inventory/shared/SmartInventoryForm.js @@ -1,6 +1,6 @@ import React, { useEffect, useCallback } from 'react'; import { Formik, useField, useFormikContext } from 'formik'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Form } from '@patternfly/react-core'; import { VariablesField } from 'components/CodeEditor'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Job/Job.js b/awx/ui/src/screens/Job/Job.js index 610ad0e25..344331d62 100644 --- a/awx/ui/src/screens/Job/Job.js +++ b/awx/ui/src/screens/Job/Job.js @@ -3,7 +3,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Job/Job.test.js b/awx/ui/src/screens/Job/Job.test.js index 930a273ab..2f668274a 100644 --- a/awx/ui/src/screens/Job/Job.test.js +++ b/awx/ui/src/screens/Job/Job.test.js @@ -7,8 +7,8 @@ import Job from './Job'; jest.mock('../../api'); // Job reads useParams from react-router-dom (the route tree is v6); // mock it there, keeping the rest of the module real. -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, typeSegment: 'project', diff --git a/awx/ui/src/screens/Job/JobDetail/JobDetail.js b/awx/ui/src/screens/Job/JobDetail/JobDetail.js index 266a4a63c..77c5e24c9 100644 --- a/awx/ui/src/screens/Job/JobDetail/JobDetail.js +++ b/awx/ui/src/screens/Job/JobDetail/JobDetail.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button, Chip } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Job/JobOutput/EmptyOutput.js b/awx/ui/src/screens/Job/JobOutput/EmptyOutput.js index 709631ef7..455d8f46e 100644 --- a/awx/ui/src/screens/Job/JobOutput/EmptyOutput.js +++ b/awx/ui/src/screens/Job/JobOutput/EmptyOutput.js @@ -1,5 +1,5 @@ import React, { useEffect } from 'react'; -import { Link, useParams } from 'react-router-dom'; +import { Link, useParams } from 'react-router'; import { SearchIcon, ExclamationCircleIcon as PFExclamationCircleIcon, diff --git a/awx/ui/src/screens/Job/JobOutput/JobOutput.js b/awx/ui/src/screens/Job/JobOutput/JobOutput.js index 8d940083d..54779a850 100644 --- a/awx/ui/src/screens/Job/JobOutput/JobOutput.js +++ b/awx/ui/src/screens/Job/JobOutput/JobOutput.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; diff --git a/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.js b/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.js index a726c36e1..0edc97840 100644 --- a/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.js +++ b/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.js @@ -1,5 +1,5 @@ import React from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { diff --git a/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.test.js b/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.test.js index aa430180e..2205e6f8f 100644 --- a/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.test.js +++ b/awx/ui/src/screens/Job/JobOutput/JobOutputSearch.test.js @@ -4,8 +4,8 @@ import { createMemoryHistory } from 'history'; import { renderWithContexts } from '../../../../testUtils/rtlContexts'; import JobOutputSearch from './JobOutputSearch'; -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), history: () => ({ location: '/jobs/playbook/1/output', }), diff --git a/awx/ui/src/screens/Job/JobTypeRedirect.js b/awx/ui/src/screens/Job/JobTypeRedirect.js index 3faa799c5..7938a0efd 100644 --- a/awx/ui/src/screens/Job/JobTypeRedirect.js +++ b/awx/ui/src/screens/Job/JobTypeRedirect.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Navigate } from 'routerCompat'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/ManagementJob/ManagementJob.js b/awx/ui/src/screens/ManagementJob/ManagementJob.js index 5a4613ef9..cb9ee1519 100644 --- a/awx/ui/src/screens/ManagementJob/ManagementJob.js +++ b/awx/ui/src/screens/ManagementJob/ManagementJob.js @@ -4,7 +4,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobList.js b/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobList.js index e8d75cf70..639a58e00 100644 --- a/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobList.js +++ b/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobList.js @@ -1,7 +1,7 @@ import React, { useCallback, useEffect, useState } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Card, PageSection } from '@patternfly/react-core'; import { SystemJobTemplatesAPI } from 'api'; diff --git a/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobListItem.js b/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobListItem.js index 10f3dd944..cbc09962f 100644 --- a/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobListItem.js +++ b/awx/ui/src/screens/ManagementJob/ManagementJobList/ManagementJobListItem.js @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button, Tooltip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; diff --git a/awx/ui/src/screens/NotificationTemplate/NotificationTemplate.js b/awx/ui/src/screens/NotificationTemplate/NotificationTemplate.js index 712a5ac0d..4b00b2db3 100644 --- a/awx/ui/src/screens/NotificationTemplate/NotificationTemplate.js +++ b/awx/ui/src/screens/NotificationTemplate/NotificationTemplate.js @@ -7,7 +7,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import useRequest from 'hooks/useRequest'; import RoutedTabs from 'components/RoutedTabs'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateAdd.js b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateAdd.js index 228472877..e6d63e89d 100644 --- a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateAdd.js +++ b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateAdd.js @@ -1,5 +1,5 @@ import React, { useState, useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.js b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.js index 23a7dd1c7..8c0989892 100644 --- a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.js +++ b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.js @@ -1,5 +1,5 @@ import React, { useState, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { Button, diff --git a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.js b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.js index c25653096..2ecd349ed 100644 --- a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.js +++ b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateListItem.js b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateListItem.js index 39d99e03f..201e92862 100644 --- a/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateListItem.js +++ b/awx/ui/src/screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateListItem.js @@ -1,6 +1,6 @@ import React, { useState, useEffect, useCallback } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { PencilAltIcon, BellIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Organization/Organization.js b/awx/ui/src/screens/Organization/Organization.js index fdc3befb8..caa751d22 100644 --- a/awx/ui/src/screens/Organization/Organization.js +++ b/awx/ui/src/screens/Organization/Organization.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js b/awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js index 133b3ab42..0a4d96ab4 100644 --- a/awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js +++ b/awx/ui/src/screens/Organization/OrganizationDetail/OrganizationDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useState, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate, useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvList.js b/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvList.js index 77883659e..4c0a7ab59 100644 --- a/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvList.js +++ b/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvListItem.js b/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvListItem.js index f28effda4..4d4f61e37 100644 --- a/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvListItem.js +++ b/awx/ui/src/screens/Organization/OrganizationExecEnvList/OrganizationExecEnvListItem.js @@ -1,6 +1,6 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Tr, Td } from '@patternfly/react-table'; function OrganizationExecEnvListItem({ executionEnvironment, detailUrl }) { diff --git a/awx/ui/src/screens/Organization/OrganizationList/OrganizationList.js b/awx/ui/src/screens/Organization/OrganizationList/OrganizationList.js index 7dc8ac2f9..cce9bb012 100644 --- a/awx/ui/src/screens/Organization/OrganizationList/OrganizationList.js +++ b/awx/ui/src/screens/Organization/OrganizationList/OrganizationList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Organization/OrganizationList/OrganizationListItem.js b/awx/ui/src/screens/Organization/OrganizationList/OrganizationListItem.js index 868a55ebd..bbc1f911d 100644 --- a/awx/ui/src/screens/Organization/OrganizationList/OrganizationListItem.js +++ b/awx/ui/src/screens/Organization/OrganizationList/OrganizationListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon, } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamList.js b/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamList.js index a5cd89862..fb52a8dc8 100644 --- a/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamList.js +++ b/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { OrganizationsAPI } from 'api'; import PaginatedTable, { diff --git a/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamListItem.js b/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamListItem.js index 8f4242711..5922cb402 100644 --- a/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamListItem.js +++ b/awx/ui/src/screens/Organization/OrganizationTeams/OrganizationTeamListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Project/Project.js b/awx/ui/src/screens/Project/Project.js index e697cc692..7d8f356d9 100644 --- a/awx/ui/src/screens/Project/Project.js +++ b/awx/ui/src/screens/Project/Project.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import { useConfig } from 'contexts/Config'; diff --git a/awx/ui/src/screens/Project/ProjectDetail/ProjectDetail.js b/awx/ui/src/screens/Project/ProjectDetail/ProjectDetail.js index 86c1ca750..594dd2c36 100644 --- a/awx/ui/src/screens/Project/ProjectDetail/ProjectDetail.js +++ b/awx/ui/src/screens/Project/ProjectDetail/ProjectDetail.js @@ -1,5 +1,5 @@ import React, { useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; diff --git a/awx/ui/src/screens/Project/ProjectList/ProjectList.js b/awx/ui/src/screens/Project/ProjectList/ProjectList.js index 26d21671b..95bca7eea 100644 --- a/awx/ui/src/screens/Project/ProjectList/ProjectList.js +++ b/awx/ui/src/screens/Project/ProjectList/ProjectList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; import { ProjectsAPI } from 'api'; diff --git a/awx/ui/src/screens/Project/ProjectList/ProjectListItem.js b/awx/ui/src/screens/Project/ProjectList/ProjectListItem.js index 9fb59998d..f682ea7af 100644 --- a/awx/ui/src/screens/Project/ProjectList/ProjectListItem.js +++ b/awx/ui/src/screens/Project/ProjectList/ProjectListItem.js @@ -2,7 +2,7 @@ import React, { useState, useCallback } from 'react'; import { Button, ClipboardCopy, Tooltip } from '@patternfly/react-core'; import { Tr, Td, ExpandableRowContent } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon, UndoIcon, diff --git a/awx/ui/src/screens/Setting/AzureAD/AzureAD.js b/awx/ui/src/screens/Setting/AzureAD/AzureAD.js index 7a6f96fdb..f0453139b 100644 --- a/awx/ui/src/screens/Setting/AzureAD/AzureAD.js +++ b/awx/ui/src/screens/Setting/AzureAD/AzureAD.js @@ -3,7 +3,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.js b/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.js index 92e480a8e..9692403b1 100644 --- a/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.js +++ b/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link, Navigate, useMatch } from 'react-router-dom'; +import { Link, Navigate, useMatch } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.test.js b/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.test.js index 5e6150e7f..d97d2be63 100644 --- a/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.test.js +++ b/awx/ui/src/screens/Setting/AzureAD/AzureADDetail/AzureADDetail.test.js @@ -10,10 +10,9 @@ import mockAllOptions from '../../shared/data.allSettingOptions.json'; import AzureADDetail from './AzureADDetail'; jest.mock('../../../../api'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), - useRouteMatch: () => ({ - path: '/settings/azure/default/details', +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), + useMatch: () => ({ params: { category: 'default' }, }), })); diff --git a/awx/ui/src/screens/Setting/GitHub/GitHub.js b/awx/ui/src/screens/Setting/GitHub/GitHub.js index 625f759cb..c79551607 100644 --- a/awx/ui/src/screens/Setting/GitHub/GitHub.js +++ b/awx/ui/src/screens/Setting/GitHub/GitHub.js @@ -3,7 +3,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.js b/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.js index 1349160ce..0d89c340e 100644 --- a/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.js +++ b/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link, Navigate, useMatch } from 'react-router-dom'; +import { Link, Navigate, useMatch } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.test.js b/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.test.js index 362a23db5..233a1047b 100644 --- a/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.test.js +++ b/awx/ui/src/screens/Setting/GitHub/GitHubDetail/GitHubDetail.test.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { screen, waitFor } from '@testing-library/react'; import { createMemoryHistory } from 'history'; import { SettingsProvider } from 'contexts/Settings'; diff --git a/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2.js b/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2.js index bd1e72149..e1e091bd0 100644 --- a/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2.js +++ b/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.js b/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.js index 4f6429319..43da10855 100644 --- a/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.js +++ b/awx/ui/src/screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/Jobs/Jobs.js b/awx/ui/src/screens/Setting/Jobs/Jobs.js index e69f6788f..2167ad7b4 100644 --- a/awx/ui/src/screens/Setting/Jobs/Jobs.js +++ b/awx/ui/src/screens/Setting/Jobs/Jobs.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/Jobs/JobsDetail/JobsDetail.js b/awx/ui/src/screens/Setting/Jobs/JobsDetail/JobsDetail.js index 522d5904b..2a6755521 100644 --- a/awx/ui/src/screens/Setting/Jobs/JobsDetail/JobsDetail.js +++ b/awx/ui/src/screens/Setting/Jobs/JobsDetail/JobsDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/LDAP/LDAP.js b/awx/ui/src/screens/Setting/LDAP/LDAP.js index 8dab4768c..cfea8529c 100644 --- a/awx/ui/src/screens/Setting/LDAP/LDAP.js +++ b/awx/ui/src/screens/Setting/LDAP/LDAP.js @@ -3,7 +3,7 @@ import { Link, Routes, Route, Navigate, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/Setting/LDAP/LDAPDetail/LDAPDetail.js b/awx/ui/src/screens/Setting/LDAP/LDAPDetail/LDAPDetail.js index 0b7328c00..8d548bd6b 100644 --- a/awx/ui/src/screens/Setting/LDAP/LDAPDetail/LDAPDetail.js +++ b/awx/ui/src/screens/Setting/LDAP/LDAPDetail/LDAPDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link, Navigate, useMatch } from 'react-router-dom'; +import { Link, Navigate, useMatch } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/LDAP/LDAPEdit/LDAPEdit.js b/awx/ui/src/screens/Setting/LDAP/LDAPEdit/LDAPEdit.js index e1c2e81d0..90151c09e 100644 --- a/awx/ui/src/screens/Setting/LDAP/LDAPEdit/LDAPEdit.js +++ b/awx/ui/src/screens/Setting/LDAP/LDAPEdit/LDAPEdit.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useMatch, useNavigate } from 'react-router-dom'; +import { useMatch, useNavigate } from 'react-router'; import { Formik } from 'formik'; import { Form } from '@patternfly/react-core'; import { CardBody } from 'components/Card'; diff --git a/awx/ui/src/screens/Setting/Logging/Logging.js b/awx/ui/src/screens/Setting/Logging/Logging.js index 8ca642f08..ad8fdfbaf 100644 --- a/awx/ui/src/screens/Setting/Logging/Logging.js +++ b/awx/ui/src/screens/Setting/Logging/Logging.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/Logging/LoggingDetail/LoggingDetail.js b/awx/ui/src/screens/Setting/Logging/LoggingDetail/LoggingDetail.js index 402177d2e..d7d497eb5 100644 --- a/awx/ui/src/screens/Setting/Logging/LoggingDetail/LoggingDetail.js +++ b/awx/ui/src/screens/Setting/Logging/LoggingDetail/LoggingDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthentication.js b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthentication.js index 6bd6b96b4..3d85735a4 100644 --- a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthentication.js +++ b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthentication.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.js b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.js index 060a53cab..dea540e64 100644 --- a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.js +++ b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/MiscSystem/MiscSystem.js b/awx/ui/src/screens/Setting/MiscSystem/MiscSystem.js index 5dcf5b605..a06176fb5 100644 --- a/awx/ui/src/screens/Setting/MiscSystem/MiscSystem.js +++ b/awx/ui/src/screens/Setting/MiscSystem/MiscSystem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.js b/awx/ui/src/screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.js index c65b15a63..5c6e38cf4 100644 --- a/awx/ui/src/screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.js +++ b/awx/ui/src/screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.js @@ -2,7 +2,7 @@ // Modifications Copyright (c) 2023 Ctrl IQ, Inc. // import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/OIDC/OIDC.js b/awx/ui/src/screens/Setting/OIDC/OIDC.js index b85391fc8..8e3a8d7d7 100644 --- a/awx/ui/src/screens/Setting/OIDC/OIDC.js +++ b/awx/ui/src/screens/Setting/OIDC/OIDC.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/OIDC/OIDCDetail/OIDCDetail.js b/awx/ui/src/screens/Setting/OIDC/OIDCDetail/OIDCDetail.js index 5c83e3170..c8688b261 100644 --- a/awx/ui/src/screens/Setting/OIDC/OIDCDetail/OIDCDetail.js +++ b/awx/ui/src/screens/Setting/OIDC/OIDCDetail/OIDCDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/RADIUS/RADIUS.js b/awx/ui/src/screens/Setting/RADIUS/RADIUS.js index 82b68f26c..0fd6d34ad 100644 --- a/awx/ui/src/screens/Setting/RADIUS/RADIUS.js +++ b/awx/ui/src/screens/Setting/RADIUS/RADIUS.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.js b/awx/ui/src/screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.js index dbe1b2fc5..4af2ee6f9 100644 --- a/awx/ui/src/screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.js +++ b/awx/ui/src/screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, Alert as PFAlert } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/SAML/SAML.js b/awx/ui/src/screens/Setting/SAML/SAML.js index 34f57cc08..a3730dc66 100644 --- a/awx/ui/src/screens/Setting/SAML/SAML.js +++ b/awx/ui/src/screens/Setting/SAML/SAML.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/SAML/SAMLDetail/SAMLDetail.js b/awx/ui/src/screens/Setting/SAML/SAMLDetail/SAMLDetail.js index a44ae0a75..6a01e7b06 100644 --- a/awx/ui/src/screens/Setting/SAML/SAMLDetail/SAMLDetail.js +++ b/awx/ui/src/screens/Setting/SAML/SAMLDetail/SAMLDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/SettingList.js b/awx/ui/src/screens/Setting/SettingList.js index b367aa0f3..3264714c0 100644 --- a/awx/ui/src/screens/Setting/SettingList.js +++ b/awx/ui/src/screens/Setting/SettingList.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Card as _Card, diff --git a/awx/ui/src/screens/Setting/Settings.js b/awx/ui/src/screens/Setting/Settings.js index 689a38494..3efe243e1 100644 --- a/awx/ui/src/screens/Setting/Settings.js +++ b/awx/ui/src/screens/Setting/Settings.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/Subscription/Subscription.js b/awx/ui/src/screens/Setting/Subscription/Subscription.js index b3dec189f..f159c932e 100644 --- a/awx/ui/src/screens/Setting/Subscription/Subscription.js +++ b/awx/ui/src/screens/Setting/Subscription/Subscription.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.js b/awx/ui/src/screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.js index 5c2764cc6..f5df5cabc 100644 --- a/awx/ui/src/screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.js +++ b/awx/ui/src/screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Trans, useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; import { diff --git a/awx/ui/src/screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.js b/awx/ui/src/screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.js index d608a3f63..0c44a9e82 100644 --- a/awx/ui/src/screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.js +++ b/awx/ui/src/screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link, useMatch, useNavigate } from 'react-router-dom'; +import { Link, useMatch, useNavigate } from 'react-router'; import { Trans, useLingui } from '@lingui/react/macro'; import { Formik, useFormikContext } from 'formik'; import { diff --git a/awx/ui/src/screens/Setting/TACACS/TACACS.js b/awx/ui/src/screens/Setting/TACACS/TACACS.js index fa0e60bae..04ace38fe 100644 --- a/awx/ui/src/screens/Setting/TACACS/TACACS.js +++ b/awx/ui/src/screens/Setting/TACACS/TACACS.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/TACACS/TACACSDetail/TACACSDetail.js b/awx/ui/src/screens/Setting/TACACS/TACACSDetail/TACACSDetail.js index eb7e7e061..a3d55427e 100644 --- a/awx/ui/src/screens/Setting/TACACS/TACACSDetail/TACACSDetail.js +++ b/awx/ui/src/screens/Setting/TACACS/TACACSDetail/TACACSDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, Alert as PFAlert } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/Troubleshooting/Troubleshooting.js b/awx/ui/src/screens/Setting/Troubleshooting/Troubleshooting.js index c354ff4cb..fc3b92c04 100644 --- a/awx/ui/src/screens/Setting/Troubleshooting/Troubleshooting.js +++ b/awx/ui/src/screens/Setting/Troubleshooting/Troubleshooting.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/Troubleshooting/TroubleshootingDetail/TroubleshootingDetail.js b/awx/ui/src/screens/Setting/Troubleshooting/TroubleshootingDetail/TroubleshootingDetail.js index fe0377fac..6ec9c08a4 100644 --- a/awx/ui/src/screens/Setting/Troubleshooting/TroubleshootingDetail/TroubleshootingDetail.js +++ b/awx/ui/src/screens/Setting/Troubleshooting/TroubleshootingDetail/TroubleshootingDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; diff --git a/awx/ui/src/screens/Setting/UI/UI.js b/awx/ui/src/screens/Setting/UI/UI.js index dbad813c9..73cbd8f33 100644 --- a/awx/ui/src/screens/Setting/UI/UI.js +++ b/awx/ui/src/screens/Setting/UI/UI.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Routes, Route, Navigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { PageSection, Card } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Setting/UI/UIDetail/UIDetail.js b/awx/ui/src/screens/Setting/UI/UIDetail/UIDetail.js index 431b1a0fa..7bd222ae0 100644 --- a/awx/ui/src/screens/Setting/UI/UIDetail/UIDetail.js +++ b/awx/ui/src/screens/Setting/UI/UIDetail/UIDetail.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { Link, useLocation } from 'react-router-dom'; +import { Link, useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Team/Team.js b/awx/ui/src/screens/Team/Team.js index 155f3d8f4..31dbf8561 100644 --- a/awx/ui/src/screens/Team/Team.js +++ b/awx/ui/src/screens/Team/Team.js @@ -6,7 +6,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import { Config } from 'contexts/Config'; diff --git a/awx/ui/src/screens/Team/TeamDetail/TeamDetail.js b/awx/ui/src/screens/Team/TeamDetail/TeamDetail.js index ca887be0d..4be09ee06 100644 --- a/awx/ui/src/screens/Team/TeamDetail/TeamDetail.js +++ b/awx/ui/src/screens/Team/TeamDetail/TeamDetail.js @@ -1,5 +1,5 @@ import React, { useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate, useParams } from 'routerCompat'; import { Button } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Team/TeamList/TeamList.js b/awx/ui/src/screens/Team/TeamList/TeamList.js index 915d86849..3ce4c7de7 100644 --- a/awx/ui/src/screens/Team/TeamList/TeamList.js +++ b/awx/ui/src/screens/Team/TeamList/TeamList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Card, PageSection } from '@patternfly/react-core'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Team/TeamList/TeamListItem.js b/awx/ui/src/screens/Team/TeamList/TeamListItem.js index 7c13c76d7..4d430c178 100644 --- a/awx/ui/src/screens/Team/TeamList/TeamListItem.js +++ b/awx/ui/src/screens/Team/TeamList/TeamListItem.js @@ -3,7 +3,7 @@ import { useLingui } from '@lingui/react/macro'; import { Button } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem, TdBreakWord } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/Team/TeamRoles/TeamRoleListItem.js b/awx/ui/src/screens/Team/TeamRoles/TeamRoleListItem.js index a7de0059c..369931041 100644 --- a/awx/ui/src/screens/Team/TeamRoles/TeamRoleListItem.js +++ b/awx/ui/src/screens/Team/TeamRoles/TeamRoleListItem.js @@ -4,7 +4,7 @@ import { Chip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; import { useLingui } from '@lingui/react/macro'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; function TeamRoleListItem({ role, detailUrl, onDisassociate }) { const { t } = useLingui(); diff --git a/awx/ui/src/screens/Team/TeamRoles/TeamRolesList.js b/awx/ui/src/screens/Team/TeamRoles/TeamRolesList.js index 96cacf34c..8601211b2 100644 --- a/awx/ui/src/screens/Team/TeamRoles/TeamRolesList.js +++ b/awx/ui/src/screens/Team/TeamRoles/TeamRolesList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Button, diff --git a/awx/ui/src/screens/Template/JobTemplateDetail/JobTemplateDetail.js b/awx/ui/src/screens/Template/JobTemplateDetail/JobTemplateDetail.js index 2e701b095..53366a014 100644 --- a/awx/ui/src/screens/Template/JobTemplateDetail/JobTemplateDetail.js +++ b/awx/ui/src/screens/Template/JobTemplateDetail/JobTemplateDetail.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate, useParams } from 'routerCompat'; import { Button, diff --git a/awx/ui/src/screens/Template/Survey/SurveyListItem.js b/awx/ui/src/screens/Template/Survey/SurveyListItem.js index a23a00cca..a551a85e8 100644 --- a/awx/ui/src/screens/Template/Survey/SurveyListItem.js +++ b/awx/ui/src/screens/Template/Survey/SurveyListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Chip, Tooltip, Button } from '@patternfly/react-core'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/Template/Survey/SurveyQuestionAdd.js b/awx/ui/src/screens/Template/Survey/SurveyQuestionAdd.js index f5eee7512..964c5a9e8 100644 --- a/awx/ui/src/screens/Template/Survey/SurveyQuestionAdd.js +++ b/awx/ui/src/screens/Template/Survey/SurveyQuestionAdd.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate } from 'routerCompat'; import { CardBody } from 'components/Card'; import SurveyQuestionForm from './SurveyQuestionForm'; diff --git a/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.js b/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.js index 39fa25bcb..2bb647dac 100644 --- a/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.js +++ b/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.js @@ -1,5 +1,5 @@ import React, { useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useNavigate, Navigate } from 'routerCompat'; import ContentLoading from 'components/ContentLoading'; import { CardBody } from 'components/Card'; diff --git a/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.test.js b/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.test.js index 1e965d13d..b4a6e9bb4 100644 --- a/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.test.js +++ b/awx/ui/src/screens/Template/Survey/SurveyQuestionEdit.test.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { createMemoryHistory } from 'history'; import { screen, waitFor, fireEvent } from '@testing-library/react'; import { renderWithContexts } from '../../../../testUtils/rtlContexts'; diff --git a/awx/ui/src/screens/Template/Survey/SurveyToolbar.js b/awx/ui/src/screens/Template/Survey/SurveyToolbar.js index 321c0e9d9..cd274f451 100644 --- a/awx/ui/src/screens/Template/Survey/SurveyToolbar.js +++ b/awx/ui/src/screens/Template/Survey/SurveyToolbar.js @@ -1,5 +1,5 @@ import React from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; diff --git a/awx/ui/src/screens/Template/Template.js b/awx/ui/src/screens/Template/Template.js index 607a4bfad..e60a9f561 100644 --- a/awx/ui/src/screens/Template/Template.js +++ b/awx/ui/src/screens/Template/Template.js @@ -3,7 +3,7 @@ import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; -import { Link, useLocation } from 'react-router-dom'; +import { Link, useLocation } from 'react-router'; import { Routes, Route, Navigate, useParams } from 'routerCompat'; import RoutedTabs from 'components/RoutedTabs'; import { useConfig } from 'contexts/Config'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplate.js b/awx/ui/src/screens/Template/WorkflowJobTemplate.js index a0cb2c627..685233c4f 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplate.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplate.js @@ -3,7 +3,7 @@ import { useLingui } from '@lingui/react/macro'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; -import { Link, useLocation } from 'react-router-dom'; +import { Link, useLocation } from 'react-router'; import { Routes, Route, Navigate, useParams } from 'routerCompat'; import RoutedTabs from 'components/RoutedTabs'; import { useConfig } from 'contexts/Config'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.js b/awx/ui/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.js index 703e64fa8..23ce882b9 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.js @@ -1,5 +1,5 @@ import React, { useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.js b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.js index 164e08a14..11ef58967 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { InventorySourcesAPI } from 'api'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.js b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.js index efb7943d1..dfa4c70a4 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Popover } from '@patternfly/react-core'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.js b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.js index 0e5ccff0d..46f6aa559 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { ProjectsAPI } from 'api'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/SystemJobTemplatesList.js b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/SystemJobTemplatesList.js index 01f88ac6f..bb7cbb1d0 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/SystemJobTemplatesList.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/SystemJobTemplatesList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { SystemJobTemplatesAPI } from 'api'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.js b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.js index 541f5952c..adff1a516 100644 --- a/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.js +++ b/awx/ui/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { WorkflowJobTemplatesAPI } from 'api'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/screens/Template/shared/JobTemplateForm.test.js b/awx/ui/src/screens/Template/shared/JobTemplateForm.test.js index ad850c148..9734cfa93 100644 --- a/awx/ui/src/screens/Template/shared/JobTemplateForm.test.js +++ b/awx/ui/src/screens/Template/shared/JobTemplateForm.test.js @@ -1,6 +1,6 @@ import React from 'react'; import { screen, waitFor, fireEvent } from '@testing-library/react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { createMemoryHistory } from 'history'; import { LabelsAPI, diff --git a/awx/ui/src/screens/Template/shared/WebhookSubForm.js b/awx/ui/src/screens/Template/shared/WebhookSubForm.js index 3eaabde86..44b025e88 100644 --- a/awx/ui/src/screens/Template/shared/WebhookSubForm.js +++ b/awx/ui/src/screens/Template/shared/WebhookSubForm.js @@ -1,6 +1,6 @@ import React, { useEffect, useCallback } from 'react'; import { SyncAltIcon } from '@patternfly/react-icons'; -import { useParams, useLocation } from 'react-router-dom'; +import { useParams, useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/Template/shared/WebhookSubForm.test.js b/awx/ui/src/screens/Template/shared/WebhookSubForm.test.js index 21a26f5ad..7b4887ca5 100644 --- a/awx/ui/src/screens/Template/shared/WebhookSubForm.test.js +++ b/awx/ui/src/screens/Template/shared/WebhookSubForm.test.js @@ -1,6 +1,6 @@ import React from 'react'; import { screen, waitFor, fireEvent } from '@testing-library/react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { createMemoryHistory } from 'history'; import { Formik } from 'formik'; diff --git a/awx/ui/src/screens/Template/shared/WorkflowJobTemplateForm.test.js b/awx/ui/src/screens/Template/shared/WorkflowJobTemplateForm.test.js index 4da20e76a..dfec0910c 100644 --- a/awx/ui/src/screens/Template/shared/WorkflowJobTemplateForm.test.js +++ b/awx/ui/src/screens/Template/shared/WorkflowJobTemplateForm.test.js @@ -1,6 +1,6 @@ import React from 'react'; import { screen, waitFor, fireEvent, within } from '@testing-library/react'; -import { Routes, Route } from 'react-router-dom'; +import { Routes, Route } from 'react-router'; import { createMemoryHistory } from 'history'; import { WorkflowJobTemplatesAPI, diff --git a/awx/ui/src/screens/TopologyView/Tooltip.js b/awx/ui/src/screens/TopologyView/Tooltip.js index b55cccfb1..d74d9d7d5 100644 --- a/awx/ui/src/screens/TopologyView/Tooltip.js +++ b/awx/ui/src/screens/TopologyView/Tooltip.js @@ -1,5 +1,5 @@ import React, { useState, useCallback, useEffect } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import styled from 'styled-components'; import { useConfig } from 'contexts/Config'; diff --git a/awx/ui/src/screens/User/User.js b/awx/ui/src/screens/User/User.js index e9c1444b7..2debf9048 100644 --- a/awx/ui/src/screens/User/User.js +++ b/awx/ui/src/screens/User/User.js @@ -6,7 +6,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import useRequest from 'hooks/useRequest'; diff --git a/awx/ui/src/screens/User/UserDetail/UserDetail.js b/awx/ui/src/screens/User/UserDetail/UserDetail.js index 48b477c0d..3741a0661 100644 --- a/awx/ui/src/screens/User/UserDetail/UserDetail.js +++ b/awx/ui/src/screens/User/UserDetail/UserDetail.js @@ -1,5 +1,5 @@ import React, { useCallback } from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useNavigate } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/User/UserList/UserList.js b/awx/ui/src/screens/User/UserList/UserList.js index 7edb268a1..3bde48e81 100644 --- a/awx/ui/src/screens/User/UserList/UserList.js +++ b/awx/ui/src/screens/User/UserList/UserList.js @@ -1,5 +1,5 @@ import React, { useEffect, useCallback } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Card, PageSection } from '@patternfly/react-core'; import { UsersAPI } from 'api'; diff --git a/awx/ui/src/screens/User/UserList/UserListItem.js b/awx/ui/src/screens/User/UserList/UserListItem.js index e70017cd8..6c181e7b4 100644 --- a/awx/ui/src/screens/User/UserList/UserListItem.js +++ b/awx/ui/src/screens/User/UserList/UserListItem.js @@ -3,7 +3,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import { Button, Label } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { PencilAltIcon } from '@patternfly/react-icons'; import { ActionsTd, ActionItem, TdBreakWord } from 'components/PaginatedTable'; diff --git a/awx/ui/src/screens/User/UserOrganizations/UserOrganizationList.js b/awx/ui/src/screens/User/UserOrganizations/UserOrganizationList.js index 40d5f5457..dfa51ee90 100644 --- a/awx/ui/src/screens/User/UserOrganizations/UserOrganizationList.js +++ b/awx/ui/src/screens/User/UserOrganizations/UserOrganizationList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; diff --git a/awx/ui/src/screens/User/UserOrganizations/UserOrganizationListItem.js b/awx/ui/src/screens/User/UserOrganizations/UserOrganizationListItem.js index c93fcb512..0e9e91314 100644 --- a/awx/ui/src/screens/User/UserOrganizations/UserOrganizationListItem.js +++ b/awx/ui/src/screens/User/UserOrganizations/UserOrganizationListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; diff --git a/awx/ui/src/screens/User/UserRoles/UserRolesList.js b/awx/ui/src/screens/User/UserRoles/UserRolesList.js index 2768e2917..d37cea7d2 100644 --- a/awx/ui/src/screens/User/UserRoles/UserRolesList.js +++ b/awx/ui/src/screens/User/UserRoles/UserRolesList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect, useState } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { diff --git a/awx/ui/src/screens/User/UserRoles/UserRolesListItem.js b/awx/ui/src/screens/User/UserRoles/UserRolesListItem.js index 05d860372..2b44874fa 100644 --- a/awx/ui/src/screens/User/UserRoles/UserRolesListItem.js +++ b/awx/ui/src/screens/User/UserRoles/UserRolesListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import { Chip } from '@patternfly/react-core'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; function UserRolesListItem({ role, detailUrl, onSelect }) { const { t } = useLingui(); diff --git a/awx/ui/src/screens/User/UserTeams/UserTeamList.js b/awx/ui/src/screens/User/UserTeams/UserTeamList.js index 69aec06dd..787d3daa7 100644 --- a/awx/ui/src/screens/User/UserTeams/UserTeamList.js +++ b/awx/ui/src/screens/User/UserTeams/UserTeamList.js @@ -1,5 +1,5 @@ import React, { useState, useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import PaginatedTable, { diff --git a/awx/ui/src/screens/User/UserTeams/UserTeamList.test.js b/awx/ui/src/screens/User/UserTeams/UserTeamList.test.js index f7b3b79e6..bb0f4b704 100644 --- a/awx/ui/src/screens/User/UserTeams/UserTeamList.test.js +++ b/awx/ui/src/screens/User/UserTeams/UserTeamList.test.js @@ -11,8 +11,8 @@ import { import UserTeamList from './UserTeamList'; jest.mock('../../../api'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, userId: 2, diff --git a/awx/ui/src/screens/User/UserTeams/UserTeamListItem.js b/awx/ui/src/screens/User/UserTeams/UserTeamListItem.js index e28c35c61..e365b9645 100644 --- a/awx/ui/src/screens/User/UserTeams/UserTeamListItem.js +++ b/awx/ui/src/screens/User/UserTeams/UserTeamListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; diff --git a/awx/ui/src/screens/User/UserToken/UserToken.js b/awx/ui/src/screens/User/UserToken/UserToken.js index 56c9907d0..0ed9f0120 100644 --- a/awx/ui/src/screens/User/UserToken/UserToken.js +++ b/awx/ui/src/screens/User/UserToken/UserToken.js @@ -5,7 +5,7 @@ import { Link, Route, Navigate, useLocation, - useParams } from 'react-router-dom'; + useParams } from 'react-router'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { Card, PageSection } from '@patternfly/react-core'; import RoutedTabs from 'components/RoutedTabs'; diff --git a/awx/ui/src/screens/User/UserToken/UserToken.test.js b/awx/ui/src/screens/User/UserToken/UserToken.test.js index bc0d4311f..b3b7b8580 100644 --- a/awx/ui/src/screens/User/UserToken/UserToken.test.js +++ b/awx/ui/src/screens/User/UserToken/UserToken.test.js @@ -6,8 +6,8 @@ import UserToken from './UserToken'; jest.mock('../../../api/models/Tokens'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, tokenId: 2, diff --git a/awx/ui/src/screens/User/UserTokenAdd/UserTokenAdd.test.js b/awx/ui/src/screens/User/UserTokenAdd/UserTokenAdd.test.js index 76d2134b7..ba1463cd2 100644 --- a/awx/ui/src/screens/User/UserTokenAdd/UserTokenAdd.test.js +++ b/awx/ui/src/screens/User/UserTokenAdd/UserTokenAdd.test.js @@ -6,8 +6,8 @@ import { renderWithContexts } from '../../../../testUtils/rtlContexts'; import UserTokenAdd from './UserTokenAdd'; jest.mock('../../../api'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1 }), })); diff --git a/awx/ui/src/screens/User/UserTokenDetail/UserTokenDetail.test.js b/awx/ui/src/screens/User/UserTokenDetail/UserTokenDetail.test.js index 8582613be..2ceed1352 100644 --- a/awx/ui/src/screens/User/UserTokenDetail/UserTokenDetail.test.js +++ b/awx/ui/src/screens/User/UserTokenDetail/UserTokenDetail.test.js @@ -9,8 +9,8 @@ import UserTokenDetail from './UserTokenDetail'; jest.mock('../../../api/models/Tokens'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 1, tokenId: 2, diff --git a/awx/ui/src/screens/User/UserTokenList/UserTokenList.js b/awx/ui/src/screens/User/UserTokenList/UserTokenList.js index 38a52e225..ee6d4edba 100644 --- a/awx/ui/src/screens/User/UserTokenList/UserTokenList.js +++ b/awx/ui/src/screens/User/UserTokenList/UserTokenList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { getQSConfig, parseQueryString } from 'util/qs'; diff --git a/awx/ui/src/screens/User/UserTokenList/UserTokenList.test.js b/awx/ui/src/screens/User/UserTokenList/UserTokenList.test.js index ca36bcf85..bb1605896 100644 --- a/awx/ui/src/screens/User/UserTokenList/UserTokenList.test.js +++ b/awx/ui/src/screens/User/UserTokenList/UserTokenList.test.js @@ -10,15 +10,11 @@ import UserTokenList from './UserTokenList'; jest.mock('../../../api/models/Users'); jest.mock('../../../api/models/Tokens'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useLocation: () => ({ search: '', }), -})); -// the component reads useParams from react-router-dom (v6 route tree) -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), useParams: () => ({ id: 1, }), diff --git a/awx/ui/src/screens/User/UserTokenList/UserTokenListItem.js b/awx/ui/src/screens/User/UserTokenList/UserTokenListItem.js index da7091a0b..c147f4555 100644 --- a/awx/ui/src/screens/User/UserTokenList/UserTokenListItem.js +++ b/awx/ui/src/screens/User/UserTokenList/UserTokenListItem.js @@ -1,5 +1,5 @@ import React from 'react'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { useParams } from 'routerCompat'; import { useLingui } from '@lingui/react/macro'; import { Tr, Td } from '@patternfly/react-table'; diff --git a/awx/ui/src/screens/WorkflowApproval/WorkflowApproval.js b/awx/ui/src/screens/WorkflowApproval/WorkflowApproval.js index 3261c7562..de4742641 100644 --- a/awx/ui/src/screens/WorkflowApproval/WorkflowApproval.js +++ b/awx/ui/src/screens/WorkflowApproval/WorkflowApproval.js @@ -8,7 +8,7 @@ import { Link, Route, Navigate, useParams, - useLocation } from 'react-router-dom'; + useLocation } from 'react-router'; import useRequest from 'hooks/useRequest'; import RoutedTabs from 'components/RoutedTabs'; import ContentError from 'components/ContentError'; diff --git a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.js b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.js index c5ea0dd05..738fb3a14 100644 --- a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.js +++ b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.js @@ -1,6 +1,6 @@ import React, { useCallback, useEffect } from 'react'; import { useLingui } from '@lingui/react/macro'; -import { Link, useParams } from 'react-router-dom'; +import { Link, useParams } from 'react-router'; import { useNavigate } from 'routerCompat'; import styled from 'styled-components'; import { diff --git a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.test.js b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.test.js index 486aa1c47..6fc811646 100644 --- a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.test.js +++ b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalDetail/WorkflowApprovalDetail.test.js @@ -12,8 +12,8 @@ import mockWorkflowApprovals from '../data.workflowApprovals.json'; const workflowApproval = mockWorkflowApprovals.results[0]; jest.mock('../../../api'); -jest.mock('react-router-dom', () => ({ - ...jest.requireActual('react-router-dom'), +jest.mock('react-router', () => ({ + ...jest.requireActual('react-router'), useParams: () => ({ id: 218, }), diff --git a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalList.js b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalList.js index a667d7faf..af6096823 100644 --- a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalList.js +++ b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalList.js @@ -1,5 +1,5 @@ import React, { useCallback, useEffect } from 'react'; -import { useLocation } from 'react-router-dom'; +import { useLocation } from 'react-router'; import { Plural, useLingui } from '@lingui/react/macro'; import { Card, PageSection } from '@patternfly/react-core'; import { WorkflowApprovalsAPI } from 'api'; diff --git a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListItem.js b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListItem.js index d80532a14..9014f0543 100644 --- a/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListItem.js +++ b/awx/ui/src/screens/WorkflowApproval/WorkflowApprovalList/WorkflowApprovalListItem.js @@ -2,7 +2,7 @@ import React from 'react'; import { useLingui } from '@lingui/react/macro'; import useToast, { AlertVariant } from 'hooks/useToast'; import { Tr, Td } from '@patternfly/react-table'; -import { Link } from 'react-router-dom'; +import { Link } from 'react-router'; import { formatDateString } from 'util/dates'; import StatusLabel from 'components/StatusLabel'; import JobCancelButton from 'components/JobCancelButton'; diff --git a/awx/ui/testUtils/rtlContexts.js b/awx/ui/testUtils/rtlContexts.js index 248814776..8316e6e6d 100644 --- a/awx/ui/testUtils/rtlContexts.js +++ b/awx/ui/testUtils/rtlContexts.js @@ -13,7 +13,7 @@ import React from 'react'; import { render, screen, waitFor } from '@testing-library/react'; import userEvent from '@testing-library/user-event'; -import { Router } from 'react-router-dom'; +import { Router } from 'react-router'; import { createMemoryHistory } from 'history'; import { I18nProvider } from '@lingui/react'; import { i18n } from '@lingui/core'; diff --git a/awx/ui/testUtils/rtlContexts.test.js b/awx/ui/testUtils/rtlContexts.test.js index ffa253dc2..932ceb1d5 100644 --- a/awx/ui/testUtils/rtlContexts.test.js +++ b/awx/ui/testUtils/rtlContexts.test.js @@ -1,7 +1,7 @@ import React from 'react'; import { screen } from '@testing-library/react'; import { createMemoryHistory } from 'history'; -import { useNavigate, useLocation } from 'react-router-dom'; +import { useNavigate, useLocation } from 'react-router'; import { Plural } from '@lingui/react/macro'; import { useConfig } from '../src/contexts/Config'; import { useSession } from '../src/contexts/Session';