diff --git a/awx/ui_next/src/App.jsx b/awx/ui_next/src/App.jsx
index e98fdc3035..49b2c82987 100644
--- a/awx/ui_next/src/App.jsx
+++ b/awx/ui_next/src/App.jsx
@@ -6,6 +6,7 @@ import {
Route,
Switch,
Redirect,
+ useHistory,
} from 'react-router-dom';
import { ErrorBoundary } from 'react-error-boundary';
import { I18nProvider } from '@lingui/react';
@@ -13,6 +14,7 @@ import { i18n } from '@lingui/core';
import { Card, PageSection } from '@patternfly/react-core';
import { ConfigProvider, useAuthorizedPath } from './contexts/Config';
+import { SessionProvider, useSession } from './contexts/Session';
import AppContainer from './components/AppContainer';
import Background from './components/Background';
import ContentError from './components/ContentError';
@@ -26,6 +28,7 @@ import Metrics from './screens/Metrics';
import getRouteConfig from './routeConfig';
import SubscriptionEdit from './screens/Setting/Subscription/SubscriptionEdit';
+import { SESSION_REDIRECT_URL } from './constants';
function ErrorFallback({ error }) {
return (
@@ -82,18 +85,27 @@ const AuthorizedRoutes = ({ routeConfig }) => {
);
};
-const ProtectedRoute = ({ children, ...rest }) =>
- isAuthenticated(document.cookie) ? (
-
-
- {children}
-
-
- ) : (
-
- );
+const ProtectedRoute = ({ children, ...rest }) => {
+ const { setAuthRedirectTo } = useSession();
+ const { pathname } = useLocation();
+
+ if (isAuthenticated(document.cookie)) {
+ return (
+
+
+ {children}
+
+
+ );
+ }
+
+ setAuthRedirectTo(pathname);
+ return ;
+};
function App() {
+ const history = useHistory();
+ const { hash, search, pathname } = useLocation();
let language = getLanguageWithoutRegionCode(navigator);
if (!Object.keys(locales).includes(language)) {
// If there isn't a string catalog available for the browser's
@@ -104,29 +116,36 @@ function App() {
dynamicActivate(language);
}, [language]);
- const { hash, search, pathname } = useLocation();
+ const redirectURL = window.sessionStorage.getItem(SESSION_REDIRECT_URL);
+ if (redirectURL) {
+ window.sessionStorage.removeItem(SESSION_REDIRECT_URL);
+ if (redirectURL !== '/' || redirectURL !== '/home')
+ history.replace(redirectURL);
+ }
return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
);
diff --git a/awx/ui_next/src/App.test.jsx b/awx/ui_next/src/App.test.jsx
index a6fe414b39..0e732b1574 100644
--- a/awx/ui_next/src/App.test.jsx
+++ b/awx/ui_next/src/App.test.jsx
@@ -1,17 +1,27 @@
import React from 'react';
import { act } from 'react-dom/test-utils';
import { mountWithContexts } from '../testUtils/enzymeHelpers';
-
+import * as SessionContext from './contexts/Session';
import App from './App';
jest.mock('./api');
describe('', () => {
test('renders ok', async () => {
+ const contextValues = {
+ setAuthRedirectTo: jest.fn(),
+ isSessionExpired: false,
+ };
+ jest
+ .spyOn(SessionContext, 'useSession')
+ .mockImplementation(() => contextValues);
+
let wrapper;
await act(async () => {
wrapper = mountWithContexts();
});
expect(wrapper.length).toBe(1);
+ jest.clearAllMocks();
+ wrapper.unmount();
});
});
diff --git a/awx/ui_next/src/components/AppContainer/AppContainer.jsx b/awx/ui_next/src/components/AppContainer/AppContainer.jsx
index e697d27de7..6dd0632af4 100644
--- a/awx/ui_next/src/components/AppContainer/AppContainer.jsx
+++ b/awx/ui_next/src/components/AppContainer/AppContainer.jsx
@@ -1,5 +1,5 @@
-import React, { useEffect, useState, useCallback, useRef } from 'react';
-import { useHistory, withRouter } from 'react-router-dom';
+import React, { useState, useEffect } from 'react';
+import { withRouter } from 'react-router-dom';
import {
Button,
Nav,
@@ -11,133 +11,38 @@ import {
PageHeaderToolsItem,
PageSidebar,
} from '@patternfly/react-core';
-import { t } from '@lingui/macro';
+import { t, Plural } from '@lingui/macro';
import styled from 'styled-components';
-import { MeAPI, RootAPI } from '../../api';
import { useConfig, useAuthorizedPath } from '../../contexts/Config';
-import { SESSION_TIMEOUT_KEY } from '../../constants';
-import { isAuthenticated } from '../../util/auth';
+import { useSession } from '../../contexts/Session';
import issuePendoIdentity from '../../util/issuePendoIdentity';
import About from '../About';
-import AlertModal from '../AlertModal';
import BrandLogo from './BrandLogo';
import NavExpandableGroup from './NavExpandableGroup';
import PageHeaderToolbar from './PageHeaderToolbar';
-
-// The maximum supported timeout for setTimeout(), in milliseconds,
-// is the highest number you can represent as a signed 32bit
-// integer (approximately 25 days)
-const MAX_TIMEOUT = 2 ** (32 - 1) - 1;
-
-// The number of seconds the session timeout warning is displayed
-// before the user is logged out. Increasing this number (up to
-// the total session time, which is 1800s by default) will cause
-// the session timeout warning to display sooner.
-const SESSION_WARNING_DURATION = 10;
+import AlertModal from '../AlertModal';
const PageHeader = styled(PFPageHeader)`
& .pf-c-page__header-brand-link {
color: inherit;
-
&:hover {
color: inherit;
}
}
`;
-/**
- * The useStorage hook integrates with the browser's localStorage api.
- * It accepts a storage key as its only argument and returns a state
- * variable and setter function for that state variable.
- *
- * This utility behaves much like the standard useState hook with some
- * key differences:
- * 1. You don't pass it an initial value. Instead, the provided key
- * is used to retrieve the initial value from local storage. If
- * the key doesn't exist in local storage, null is returned.
- * 2. Behind the scenes, this hook registers an event listener with
- * the Web Storage api to establish a two-way binding between the
- * state variable and its corresponding local storage value. This
- * means that updates to the state variable with the setter
- * function will produce a corresponding update to the local
- * storage value and vice-versa.
- * 3. When local storage is shared across browser tabs, the data
- * binding is also shared across browser tabs. This means that
- * updates to the state variable using the setter function on
- * one tab will also update the state variable on any other tab
- * using this hook with the same key and vice-versa.
- */
-function useStorage(key) {
- const [storageVal, setStorageVal] = useState(
- window.localStorage.getItem(key)
- );
- window.addEventListener('storage', () => {
- const newVal = window.localStorage.getItem(key);
- if (newVal !== storageVal) {
- setStorageVal(newVal);
- }
- });
- const setValue = val => {
- window.localStorage.setItem(key, val);
- setStorageVal(val);
- };
- return [storageVal, setValue];
-}
-
function AppContainer({ navRouteConfig = [], children }) {
- const history = useHistory();
const config = useConfig();
+ const { logout, handleSessionContinue, sessionCountdown } = useSession();
const isReady = !!config.license_info;
const isSidebarVisible = useAuthorizedPath();
const [isAboutModalOpen, setIsAboutModalOpen] = useState(false);
- const sessionTimeoutId = useRef();
- const sessionIntervalId = useRef();
- const [sessionTimeout, setSessionTimeout] = useStorage(SESSION_TIMEOUT_KEY);
- const [timeoutWarning, setTimeoutWarning] = useState(false);
- const [timeRemaining, setTimeRemaining] = useState(null);
-
const handleAboutModalOpen = () => setIsAboutModalOpen(true);
const handleAboutModalClose = () => setIsAboutModalOpen(false);
- const handleSessionTimeout = () => setTimeoutWarning(true);
-
- const handleLogout = useCallback(async () => {
- await RootAPI.logout();
- setSessionTimeout(null);
- }, [setSessionTimeout]);
-
- const handleSessionContinue = () => {
- MeAPI.read();
- setTimeoutWarning(false);
- };
-
- useEffect(() => {
- if (!isAuthenticated(document.cookie)) history.replace('/login');
- const calcRemaining = () =>
- parseInt(sessionTimeout, 10) - new Date().getTime();
- const updateRemaining = () => setTimeRemaining(calcRemaining());
- setTimeoutWarning(false);
- clearTimeout(sessionTimeoutId.current);
- clearInterval(sessionIntervalId.current);
- sessionTimeoutId.current = setTimeout(
- handleSessionTimeout,
- Math.min(calcRemaining() - SESSION_WARNING_DURATION * 1000, MAX_TIMEOUT)
- );
- sessionIntervalId.current = setInterval(updateRemaining, 1000);
- return () => {
- clearTimeout(sessionTimeoutId.current);
- clearInterval(sessionIntervalId.current);
- };
- }, [history, sessionTimeout]);
-
- useEffect(() => {
- if (timeRemaining !== null && timeRemaining <= 1) {
- handleLogout();
- }
- }, [handleLogout, timeRemaining]);
useEffect(() => {
if ('analytics_status' in config) {
@@ -159,7 +64,7 @@ function AppContainer({ navRouteConfig = [], children }) {
loggedInUser={config?.me}
isAboutDisabled={!config?.version}
onAboutClick={handleAboutModalOpen}
- onLogoutClick={handleLogout}
+ onLogoutClick={logout}
/>
}
/>
@@ -172,7 +77,7 @@ function AppContainer({ navRouteConfig = [], children }) {
-
@@ -219,8 +124,8 @@ function AppContainer({ navRouteConfig = [], children }) {
0 && timeRemaining !== null}
- onClose={handleLogout}
+ isOpen={sessionCountdown && sessionCountdown > 0}
+ onClose={logout}
showClose={false}
variant="warning"
actions={[
@@ -236,15 +141,17 @@ function AppContainer({ navRouteConfig = [], children }) {
ouiaId="session-expiration-logout-button"
key="logout"
variant="secondary"
- onClick={handleLogout}
+ onClick={logout}
>
{t`Logout`}
,
]}
>
- {t`You will be logged out in ${Number(
- Math.max(Math.floor(timeRemaining / 1000), 0)
- )} seconds due to inactivity.`}
+
>
);
diff --git a/awx/ui_next/src/components/AppContainer/AppContainer.test.jsx b/awx/ui_next/src/components/AppContainer/AppContainer.test.jsx
index df5039a6bb..ef168f0278 100644
--- a/awx/ui_next/src/components/AppContainer/AppContainer.test.jsx
+++ b/awx/ui_next/src/components/AppContainer/AppContainer.test.jsx
@@ -181,12 +181,17 @@ describe('', () => {
test('logout makes expected call to api client', async () => {
const userMenuButton = 'UserIcon';
const logoutButton = '#logout-button button';
-
+ const logout = jest.fn();
let wrapper;
await act(async () => {
- wrapper = mountWithContexts();
+ wrapper = mountWithContexts(, {
+ context: {
+ session: {
+ logout,
+ },
+ },
+ });
});
-
// open the user menu
expect(wrapper.find(logoutButton)).toHaveLength(0);
wrapper.find(userMenuButton).simulate('click');
@@ -194,6 +199,6 @@ describe('', () => {
// logout
wrapper.find(logoutButton).simulate('click');
- expect(RootAPI.logout).toHaveBeenCalledTimes(1);
+ expect(logout).toHaveBeenCalledTimes(1);
});
});
diff --git a/awx/ui_next/src/components/ContentError/ContentError.jsx b/awx/ui_next/src/components/ContentError/ContentError.jsx
index 1d54e3ba10..6ac256ec26 100644
--- a/awx/ui_next/src/components/ContentError/ContentError.jsx
+++ b/awx/ui_next/src/components/ContentError/ContentError.jsx
@@ -10,15 +10,12 @@ import {
EmptyStateBody,
} from '@patternfly/react-core';
import { ExclamationTriangleIcon } from '@patternfly/react-icons';
-import { RootAPI } from '../../api';
+import { useSession } from '../../contexts/Session';
import ErrorDetail from '../ErrorDetail';
-async function logout() {
- await RootAPI.logout();
- window.location.replace('#/login');
-}
-
function ContentError({ error, children, isNotFound }) {
+ const { logout } = useSession();
+
if (error && error.response && error.response.status === 401) {
if (!error.response.headers['session-timeout']) {
logout();
diff --git a/awx/ui_next/src/constants.js b/awx/ui_next/src/constants.js
index f157c26d49..092bdcd5b0 100644
--- a/awx/ui_next/src/constants.js
+++ b/awx/ui_next/src/constants.js
@@ -9,3 +9,4 @@ export const JOB_TYPE_URL_SEGMENTS = {
};
export const SESSION_TIMEOUT_KEY = 'awx-session-timeout';
+export const SESSION_REDIRECT_URL = 'awx-redirect-url';
diff --git a/awx/ui_next/src/contexts/Config.jsx b/awx/ui_next/src/contexts/Config.jsx
index f95e5017a5..e87c2a24f2 100644
--- a/awx/ui_next/src/contexts/Config.jsx
+++ b/awx/ui_next/src/contexts/Config.jsx
@@ -3,13 +3,14 @@ import { useRouteMatch } from 'react-router-dom';
import { t } from '@lingui/macro';
-import { ConfigAPI, MeAPI, RootAPI } from '../api';
+import { ConfigAPI, MeAPI } from '../api';
import useRequest, { useDismissableError } from '../util/useRequest';
import AlertModal from '../components/AlertModal';
import ErrorDetail from '../components/ErrorDetail';
+import { useSession } from './Session';
// eslint-disable-next-line import/prefer-default-export
-export const ConfigContext = React.createContext([{}, () => {}]);
+export const ConfigContext = React.createContext({});
ConfigContext.displayName = 'ConfigContext';
export const Config = ConfigContext.Consumer;
@@ -22,6 +23,8 @@ export const useConfig = () => {
};
export const ConfigProvider = ({ children }) => {
+ const { logout } = useSession();
+
const { error: configError, isLoading, request, result: config } = useRequest(
useCallback(async () => {
const [
@@ -45,9 +48,9 @@ export const ConfigProvider = ({ children }) => {
useEffect(() => {
if (error?.response?.status === 401) {
- RootAPI.logout();
+ logout();
}
- }, [error]);
+ }, [error, logout]);
const value = useMemo(() => ({ ...config, request, isLoading }), [
config,
diff --git a/awx/ui_next/src/contexts/Session.jsx b/awx/ui_next/src/contexts/Session.jsx
new file mode 100644
index 0000000000..6d9b300cf6
--- /dev/null
+++ b/awx/ui_next/src/contexts/Session.jsx
@@ -0,0 +1,157 @@
+import React, {
+ useContext,
+ useEffect,
+ useState,
+ useRef,
+ useCallback,
+} from 'react';
+import { useHistory } from 'react-router-dom';
+import { RootAPI, MeAPI } from '../api';
+import { SESSION_TIMEOUT_KEY } from '../constants';
+import { isAuthenticated } from '../util/auth';
+
+// The maximum supported timeout for setTimeout(), in milliseconds,
+// is the highest number you can represent as a signed 32bit
+// integer (approximately 25 days)
+const MAX_TIMEOUT = 2 ** (32 - 1) - 1;
+
+// The number of seconds the session timeout warning is displayed
+// before the user is logged out. Increasing this number (up to
+// the total session time, which is 1800s by default) will cause
+// the session timeout warning to display sooner.
+const SESSION_WARNING_DURATION = 10;
+
+/**
+ * The useStorage hook integrates with the browser's localStorage api.
+ * It accepts a storage key as its only argument and returns a state
+ * variable and setter function for that state variable.
+ *
+ * This utility behaves much like the standard useState hook with some
+ * key differences:
+ * 1. You don't pass it an initial value. Instead, the provided key
+ * is used to retrieve the initial value from local storage. If
+ * the key doesn't exist in local storage, null is returned.
+ * 2. Behind the scenes, this hook registers an event listener with
+ * the Web Storage api to establish a two-way binding between the
+ * state variable and its corresponding local storage value. This
+ * means that updates to the state variable with the setter
+ * function will produce a corresponding update to the local
+ * storage value and vice-versa.
+ * 3. When local storage is shared across browser tabs, the data
+ * binding is also shared across browser tabs. This means that
+ * updates to the state variable using the setter function on
+ * one tab will also update the state variable on any other tab
+ * using this hook with the same key and vice-versa.
+ */
+function useStorage(key) {
+ const [storageVal, setStorageVal] = useState(
+ window.localStorage.getItem(key)
+ );
+ window.addEventListener('storage', () => {
+ const newVal = window.localStorage.getItem(key);
+ if (newVal !== storageVal) {
+ setStorageVal(newVal);
+ }
+ });
+ const setValue = val => {
+ window.localStorage.setItem(key, JSON.stringify(val));
+ setStorageVal(val);
+ };
+ return [storageVal, setValue];
+}
+
+const SessionContext = React.createContext({});
+SessionContext.displayName = 'SessionContext';
+
+function SessionProvider({ children }) {
+ const history = useHistory();
+ const isSessionExpired = useRef(false);
+ const sessionTimeoutId = useRef();
+ const sessionIntervalId = useRef();
+ const [sessionTimeout, setSessionTimeout] = useStorage(SESSION_TIMEOUT_KEY);
+ const [sessionCountdown, setSessionCountdown] = useState(0);
+ const [authRedirectTo, setAuthRedirectTo] = useState('/');
+
+ const logout = useCallback(async () => {
+ if (!isSessionExpired.current) {
+ history.replace('/');
+ }
+ await RootAPI.logout();
+ setSessionTimeout(0);
+ setSessionCountdown(0);
+ clearTimeout(sessionTimeoutId.current);
+ clearInterval(sessionIntervalId.current);
+ }, [setSessionTimeout, setSessionCountdown, history]);
+
+ useEffect(() => {
+ if (!isAuthenticated(document.cookie)) {
+ history.replace('/login');
+ return () => {};
+ }
+
+ const calcRemaining = () =>
+ parseInt(sessionTimeout, 10) - new Date().getTime();
+
+ const handleSessionTimeout = () => {
+ let countDown = SESSION_WARNING_DURATION;
+ setSessionCountdown(countDown);
+
+ sessionIntervalId.current = setInterval(() => {
+ if (countDown > 0) {
+ setSessionCountdown(--countDown);
+ } else {
+ isSessionExpired.current = true;
+ logout();
+ }
+ }, 1000);
+ };
+
+ setSessionCountdown(0);
+ clearTimeout(sessionTimeoutId.current);
+ clearInterval(sessionIntervalId.current);
+
+ isSessionExpired.current = false;
+ sessionTimeoutId.current = setTimeout(
+ handleSessionTimeout,
+ Math.min(calcRemaining() - SESSION_WARNING_DURATION * 1000, MAX_TIMEOUT)
+ );
+
+ return () => {
+ clearTimeout(sessionTimeoutId.current);
+ clearInterval(sessionIntervalId.current);
+ };
+ // eslint-disable-next-line react-hooks/exhaustive-deps
+ }, [history, sessionTimeout]);
+
+ const handleSessionContinue = useCallback(async () => {
+ await MeAPI.read();
+ setSessionCountdown(0);
+ clearTimeout(sessionTimeoutId.current);
+ clearInterval(sessionIntervalId.current);
+ }, []);
+
+ return (
+
+ {children}
+
+ );
+}
+
+function useSession() {
+ const context = useContext(SessionContext);
+ if (context === undefined) {
+ throw new Error('useSession must be used within a SessionProvider');
+ }
+ return context;
+}
+
+export { SessionContext, SessionProvider, useSession };
diff --git a/awx/ui_next/src/locales/en/messages.po b/awx/ui_next/src/locales/en/messages.po
index dbc9269b5d..203cf0f8c0 100644
--- a/awx/ui_next/src/locales/en/messages.po
+++ b/awx/ui_next/src/locales/en/messages.po
@@ -191,8 +191,8 @@ msgstr ""
msgid "Access"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr "Access Token Expiration"
@@ -432,12 +432,12 @@ msgid "After number of occurrences"
msgstr "After number of occurrences"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr "Agree to end user license agreement"
+#~ msgid "Agree to end user license agreement"
+#~ msgstr "Agree to end user license agreement"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr "Agree to the end user license agreement and click submit."
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr "Agree to the end user license agreement and click submit."
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -628,6 +628,10 @@ msgstr "Are you sure you want to cancel this job?"
msgid "Are you sure you want to delete:"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr "Are you sure you want to exit the Workflow Creator without saving your changes?"
@@ -698,8 +702,8 @@ msgstr ""
#~ msgid "Authentication Settings"
#~ msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr "Authorization Code Expiration"
@@ -725,7 +729,7 @@ msgstr "Azure AD settings"
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -735,7 +739,7 @@ msgstr "Back"
msgid "Back to Credentials"
msgstr "Back to Credentials"
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr "Back to Dashboard."
@@ -782,7 +786,7 @@ msgstr "Back to Schedules"
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -933,12 +937,14 @@ msgstr "Cache timeout (seconds)"
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -1006,7 +1012,7 @@ msgstr "Cancel selected job"
msgid "Cancel selected jobs"
msgstr "Cancel selected jobs"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr "Cancel subscription edit"
@@ -1191,7 +1197,7 @@ msgstr "Choose an email option"
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
@@ -1312,11 +1318,20 @@ msgstr "Compliant"
msgid "Concurrent Jobs"
msgstr "Concurrent Jobs"
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr "Confirm"
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr "Confirm Delete"
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr "Confirm Disable Local Authorization"
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr "Confirm Password"
@@ -1376,7 +1391,7 @@ msgstr "Container group not found."
msgid "Content Loading"
msgstr "Content Loading"
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr "Continue"
@@ -2251,7 +2266,7 @@ msgstr "Destination channels or users"
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2464,8 +2479,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2809,7 +2824,7 @@ msgstr "Encrypted"
msgid "End"
msgstr "End"
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr "End User License Agreement"
@@ -2821,7 +2836,7 @@ msgstr "End date/time"
msgid "End did not match an expected value"
msgstr "End did not match an expected value"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr "End user license agreement"
@@ -3031,7 +3046,7 @@ msgstr "Error saving the workflow!"
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -3059,7 +3074,7 @@ msgstr "Error saving the workflow!"
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3561,7 +3576,7 @@ msgstr "Failed to disassociate one or more instances."
msgid "Failed to disassociate one or more teams."
msgstr "Failed to disassociate one or more teams."
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr "Failed to fetch custom login configuration settings. System defaults will be shown instead."
@@ -3571,7 +3586,7 @@ msgstr "Failed to fetch custom login configuration settings. System defaults wi
msgid "Failed to launch job."
msgstr "Failed to launch job."
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr "Failed to retrieve configuration."
@@ -4105,8 +4120,8 @@ msgid "Hour"
msgstr "Hour"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr "I agree to the End User License Agreement"
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr "I agree to the End User License Agreement"
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4502,7 +4517,7 @@ msgstr "Invalid file format. Please upload a valid Red Hat Subscription Manifest
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr ""
@@ -5112,7 +5127,7 @@ msgstr "Local Time Zone"
msgid "Local time zone"
msgstr "Local time zone"
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr "Log In"
@@ -5128,8 +5143,8 @@ msgstr "Logging"
msgid "Logging settings"
msgstr "Logging settings"
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr ""
@@ -5399,7 +5414,7 @@ msgstr "Month"
msgid "More information"
msgstr "More information"
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr "More information for"
@@ -5469,7 +5484,7 @@ msgstr "Multiple Choice Options"
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5629,7 +5644,7 @@ msgstr "Multiple Choice Options"
msgid "Name"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr "Navigation"
@@ -5658,7 +5673,7 @@ msgstr "New"
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr ""
@@ -5761,7 +5776,7 @@ msgstr "None (run once)"
msgid "Normal User"
msgstr "Normal User"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr "Not Found"
@@ -5934,7 +5949,7 @@ msgstr "October"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5952,7 +5967,7 @@ msgstr "Off"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -6230,7 +6245,7 @@ msgstr "Pass extra command line variables to the playbook. This is the -e or --e
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6354,8 +6369,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr "Please add {pluralizedItemName} to populate this list"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr "Please agree to End User License Agreement before proceeding."
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr "Please agree to End User License Agreement before proceeding."
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6369,7 +6384,7 @@ msgstr "Please enter a valid URL"
msgid "Please enter a value."
msgstr "Please enter a value."
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr "Please log in"
@@ -6756,11 +6771,11 @@ msgstr "Redirect URIs"
msgid "Redirect uris"
msgstr "Redirect uris"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr "Redirecting to dashboard"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr "Redirecting to subscription detail"
@@ -6784,8 +6799,8 @@ msgstr ""
msgid "Refresh Token"
msgstr "Refresh Token"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr "Refresh Token Expiration"
@@ -7172,7 +7187,7 @@ msgstr "Save and enable log aggregation before testing the log aggregator."
msgid "Save link changes"
msgstr "Save link changes"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr "Save successful!"
@@ -7659,8 +7674,8 @@ msgstr "Select {0}"
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7793,6 +7808,7 @@ msgstr "Show all groups"
msgid "Show changes"
msgstr "Show changes"
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr "Show description"
@@ -7805,43 +7821,43 @@ msgstr "Show less"
msgid "Show only root groups"
msgstr "Show only root groups"
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr "Sign in with Azure AD"
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr "Sign in with GitHub"
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr "Sign in with GitHub Enterprise"
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr "Sign in with GitHub Enterprise Organizations"
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr "Sign in with GitHub Enterprise Teams"
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr "Sign in with GitHub Organizations"
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr "Sign in with GitHub Teams"
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr "Sign in with Google"
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr "Sign in with SAML"
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr "Sign in with SAML {samlIDP}"
@@ -7943,7 +7959,7 @@ msgstr "Some of the previous step(s) have errors"
msgid "Something went wrong with the request to test this credential and metadata."
msgstr "Something went wrong with the request to test this credential and metadata."
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr "Something went wrong..."
@@ -8178,9 +8194,9 @@ msgstr "Status"
msgid "Stdout"
msgstr "Stdout"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr "Submit"
@@ -8203,7 +8219,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr "Subscription"
@@ -8211,7 +8227,7 @@ msgstr "Subscription"
msgid "Subscription Details"
msgstr "Subscription Details"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr "Subscription Management"
@@ -8557,7 +8573,7 @@ msgstr "Textarea"
msgid "The"
msgstr "The"
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr "The Execution Environment to be used when one has not been configured for a job template."
@@ -8669,7 +8685,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr "The page you requested could not be found."
@@ -8729,7 +8745,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr "There must be a value in at least one input"
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr "There was a problem logging in. Please try again."
@@ -8737,7 +8753,7 @@ msgstr "There was a problem logging in. Please try again."
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr "There was a problem signing in. Please try again."
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr "There was an error loading this content. Please reload the page."
@@ -9459,7 +9475,7 @@ msgid "User analytics"
msgstr "User analytics"
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr "User and Insights analytics"
@@ -9479,7 +9495,7 @@ msgstr "User tokens"
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9950,7 +9966,7 @@ msgstr ""
"Welcome to Red Hat Ansible Automation Platform!\n"
"Please complete the steps below to activate your subscription."
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr "Welcome to {brandName}!"
@@ -10166,10 +10182,14 @@ msgstr ""
#~ msgstr "You may apply a number of possible variables in the message. Refer to the"
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
-msgstr "You will be logged out in {0} seconds due to inactivity."
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr "You will be logged out in {0} seconds due to inactivity."
-#: components/AppContainer/AppContainer.jsx:221
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
+msgstr "Your session has expired. Please log in to continue where you left off."
+
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr "Your session is about to expire"
@@ -10215,7 +10235,7 @@ msgstr "and click on Update Revision on Launch"
msgid "approved"
msgstr "approved"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr "brand logo"
@@ -10615,7 +10635,7 @@ msgstr "{0} sources with sync failures."
msgid "{0}: {1}"
msgstr "{0}: {1}"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr "{brandName} logo"
@@ -10696,6 +10716,10 @@ msgstr "{numJobsToCancel, plural, one {{0}} other {{1}}}"
msgid "{pluralizedItemName} List"
msgstr "{pluralizedItemName} List"
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+
#: src/components/JobList/JobListCancelButton.jsx:96
#~ msgid "{zeroOrOneJobSelected, plural, one {Cancel job} other {Cancel jobs}}"
#~ msgstr "{zeroOrOneJobSelected, plural, one {Cancel job} other {Cancel jobs}}"
diff --git a/awx/ui_next/src/locales/es/messages.po b/awx/ui_next/src/locales/es/messages.po
index dc06fa1480..43f1c73b54 100644
--- a/awx/ui_next/src/locales/es/messages.po
+++ b/awx/ui_next/src/locales/es/messages.po
@@ -168,8 +168,8 @@ msgstr ""
msgid "Access"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr ""
@@ -401,12 +401,12 @@ msgid "After number of occurrences"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -591,6 +591,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr ""
@@ -657,8 +661,8 @@ msgstr ""
msgid "Authentication"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr ""
@@ -684,7 +688,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -694,7 +698,7 @@ msgstr ""
msgid "Back to Credentials"
msgstr ""
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr ""
@@ -741,7 +745,7 @@ msgstr ""
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -884,12 +888,14 @@ msgstr ""
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -957,7 +963,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1120,7 +1126,7 @@ msgstr ""
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr ""
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr ""
@@ -1241,11 +1247,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr ""
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr ""
@@ -1305,7 +1320,7 @@ msgstr ""
msgid "Content Loading"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr ""
@@ -2158,7 +2173,7 @@ msgstr ""
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2363,8 +2378,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2696,7 +2711,7 @@ msgstr ""
msgid "End"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2708,7 +2723,7 @@ msgstr ""
msgid "End did not match an expected value"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2901,7 +2916,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2929,7 +2944,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3431,7 +3446,7 @@ msgstr ""
msgid "Failed to disassociate one or more teams."
msgstr ""
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr ""
@@ -3441,7 +3456,7 @@ msgstr ""
msgid "Failed to launch job."
msgstr ""
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr ""
@@ -3968,8 +3983,8 @@ msgid "Hour"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4320,7 +4335,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr ""
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr ""
@@ -4909,7 +4924,7 @@ msgstr ""
msgid "Local time zone"
msgstr ""
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr ""
@@ -4925,8 +4940,8 @@ msgstr ""
msgid "Logging settings"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr ""
@@ -5192,7 +5207,7 @@ msgstr ""
msgid "More information"
msgstr ""
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr ""
@@ -5257,7 +5272,7 @@ msgstr ""
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5417,7 +5432,7 @@ msgstr ""
msgid "Name"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr ""
@@ -5446,7 +5461,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr ""
@@ -5545,7 +5560,7 @@ msgstr ""
msgid "Normal User"
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr ""
@@ -5701,7 +5716,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5719,7 +5734,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5962,7 +5977,7 @@ msgstr ""
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6073,8 +6088,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6088,7 +6103,7 @@ msgstr ""
msgid "Please enter a value."
msgstr ""
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6436,11 +6451,11 @@ msgstr ""
msgid "Redirect uris"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6462,8 +6477,8 @@ msgstr ""
msgid "Refresh Token"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr ""
@@ -6848,7 +6863,7 @@ msgstr ""
msgid "Save link changes"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7303,8 +7318,8 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7437,6 +7452,7 @@ msgstr ""
msgid "Show changes"
msgstr ""
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7449,43 +7465,43 @@ msgstr ""
msgid "Show only root groups"
msgstr ""
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr ""
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr ""
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr ""
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr ""
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr ""
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr ""
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr ""
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr ""
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr ""
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr ""
@@ -7573,7 +7589,7 @@ msgstr ""
msgid "Something went wrong with the request to test this credential and metadata."
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr ""
@@ -7802,9 +7818,9 @@ msgstr ""
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7821,7 +7837,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7829,7 +7845,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -8157,7 +8173,7 @@ msgstr ""
msgid "The"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -8249,7 +8265,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr ""
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr ""
@@ -8300,7 +8316,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -8308,7 +8324,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr ""
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr ""
@@ -8988,7 +9004,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -9008,7 +9024,7 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9477,7 +9493,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9677,10 +9693,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr ""
+
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
msgstr ""
-#: components/AppContainer/AppContainer.jsx:221
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr ""
@@ -9718,7 +9738,7 @@ msgstr ""
msgid "approved"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -10082,7 +10102,7 @@ msgstr ""
msgid "{0}: {1}"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -10155,6 +10175,10 @@ msgstr ""
msgid "{pluralizedItemName} List"
msgstr ""
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
+
#: src/components/JobList/JobListCancelButton.jsx:96
#~ msgid "{zeroOrOneJobSelected, plural, one {Cancel job} other {Cancel jobs}}"
#~ msgstr ""
diff --git a/awx/ui_next/src/locales/fr/messages.po b/awx/ui_next/src/locales/fr/messages.po
index e9525fb657..0c6cc24200 100644
--- a/awx/ui_next/src/locales/fr/messages.po
+++ b/awx/ui_next/src/locales/fr/messages.po
@@ -167,8 +167,8 @@ msgstr "À propos de "
msgid "Access"
msgstr "Accès"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr "Expiration du jeton d'accès"
@@ -400,12 +400,12 @@ msgid "After number of occurrences"
msgstr "Après le nombre d'occurrences"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -590,6 +590,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr "Êtes-vous sûr de vouloir supprimer :"
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr "Voulez-vous vraiment quitter le flux de travail Creator sans enregistrer vos modifications ?"
@@ -656,8 +660,8 @@ msgstr "Août"
msgid "Authentication"
msgstr "Authentification"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr "Expiration du code d'autorisation"
@@ -683,7 +687,7 @@ msgstr "Paramètres AD Azure"
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -693,7 +697,7 @@ msgstr "Retour"
msgid "Back to Credentials"
msgstr "Retour à Références"
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr "Naviguer vers le tableau de bord"
@@ -740,7 +744,7 @@ msgstr "Retour aux horaires"
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -883,12 +887,14 @@ msgstr "Expiration du délai d’attente du cache (secondes)"
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -956,7 +962,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1119,7 +1125,7 @@ msgstr "Choisir une option d'email"
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr "Choisissez les rôles à appliquer aux ressources sélectionnées. Notez que tous les rôles sélectionnés seront appliqués à toutes les ressources sélectionnées."
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr "Choisissez les ressources qui recevront de nouveaux rôles. Vous pourrez sélectionner les rôles à postuler lors de l'étape suivante. Notez que les ressources choisies ici recevront tous les rôles choisis à l'étape suivante."
@@ -1240,11 +1246,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr "Jobs parallèles"
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr "Confirmer Effacer"
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr "Confirmer le mot de passe"
@@ -1304,7 +1319,7 @@ msgstr "Groupe de conteneurs non trouvé."
msgid "Content Loading"
msgstr "Chargement du contenu"
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr "Continuer"
@@ -2157,7 +2172,7 @@ msgstr "Canaux ou utilisateurs de destination"
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2362,8 +2377,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2691,7 +2706,7 @@ msgstr "Crypté"
msgid "End"
msgstr "Fin"
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2703,7 +2718,7 @@ msgstr "Date/Heure de fin"
msgid "End did not match an expected value"
msgstr "La fin ne correspondait pas à une valeur attendue"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2896,7 +2911,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2924,7 +2939,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3426,7 +3441,7 @@ msgstr "N'a pas réussi à dissocier une ou plusieurs instances."
msgid "Failed to disassociate one or more teams."
msgstr "N'a pas réussi à dissocier une ou plusieurs équipes."
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr "Impossible de récupérer les paramètres de configuration de connexion personnalisés. Les paramètres par défaut du système seront affichés à la place."
@@ -3436,7 +3451,7 @@ msgstr "Impossible de récupérer les paramètres de configuration de connexion
msgid "Failed to launch job."
msgstr "Echec du lancement du Job."
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr "Impossible de récupérer la configuration."
@@ -3963,8 +3978,8 @@ msgid "Hour"
msgstr "Heure"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4315,7 +4330,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr "Cible de lien invalide. Impossible d'établir un lien avec les dépendants ou les nœuds des ancêtres. Les cycles de graphiques ne sont pas pris en charge."
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr "Nom d’utilisateur et/ou mot de passe non valide. Veuillez réessayer."
@@ -4904,7 +4919,7 @@ msgstr "Fuseau horaire local"
msgid "Local time zone"
msgstr "Fuseau horaire local"
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr "Connexion"
@@ -4920,8 +4935,8 @@ msgstr "Journalisation"
msgid "Logging settings"
msgstr "Paramètres de journalisation"
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr "Déconnexion"
@@ -5187,7 +5202,7 @@ msgstr "Mois"
msgid "More information"
msgstr "Plus d'informations"
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr "Plus d'informations pour"
@@ -5252,7 +5267,7 @@ msgstr "Options à choix multiples."
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5412,7 +5427,7 @@ msgstr "Options à choix multiples."
msgid "Name"
msgstr "Nom"
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr "Navigation"
@@ -5441,7 +5456,7 @@ msgstr "Nouveau"
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr "Suivant"
@@ -5540,7 +5555,7 @@ msgstr "Aucune (éxecution unique)"
msgid "Normal User"
msgstr "Utilisateur normal"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr "Introuvable"
@@ -5696,7 +5711,7 @@ msgstr "Octobre"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5714,7 +5729,7 @@ msgstr "Désactivé"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5957,7 +5972,7 @@ msgstr "Transmettez des variables de ligne de commandes supplémentaires au play
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6068,8 +6083,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr "Veuillez ajouter {brandName} pour remplir cette liste"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6083,7 +6098,7 @@ msgstr "Veuillez entrer une URL valide"
msgid "Please enter a value."
msgstr "Entrez une valeur."
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6431,11 +6446,11 @@ msgstr "Redirection d'URIs."
msgid "Redirect uris"
msgstr "Redirection d'urs."
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6457,8 +6472,8 @@ msgstr ""
msgid "Refresh Token"
msgstr "Actualiser Jeton"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr "Actualiser l’expiration du jeton"
@@ -6843,7 +6858,7 @@ msgstr "Enregistrez et activez l'agrégation de journalisation avant de tester l
msgid "Save link changes"
msgstr "Enregistrer les changements de liens"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7298,8 +7313,8 @@ msgstr "Sélectionnez {0}"
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7432,6 +7447,7 @@ msgstr "Afficher tous les groupes"
msgid "Show changes"
msgstr "Afficher les modifications"
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7444,43 +7460,43 @@ msgstr "Afficher moins de détails"
msgid "Show only root groups"
msgstr "Afficher uniquement les groupes racines"
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr "Connectez-vous avec Azure AD"
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr "Connectez-vous à GitHub"
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr "Connectez-vous à GitHub Enterprise"
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr "Connectez-vous avec GitHub Enterprise Organizations"
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr "Connectez-vous avec GitHub Enterprise Teams"
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr "Connectez-vous avec GitHub Organizations"
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr "Connectez-vous avec GitHub Teams"
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr "Connectez-vous avec Google"
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr "Connectez-vous avec SAML"
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr "Connectez-vous avec SAML {samlIDP}"
@@ -7568,7 +7584,7 @@ msgstr "Certaines des étapes précédentes comportent des erreurs"
msgid "Something went wrong with the request to test this credential and metadata."
msgstr "Quelque chose s'est mal passé avec la demande de tester cet identifiant et ses métadonnées."
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr "Quelque chose a mal tourné..."
@@ -7797,9 +7813,9 @@ msgstr "État"
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7816,7 +7832,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7824,7 +7840,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -8152,7 +8168,7 @@ msgstr "Zone de texte"
msgid "The"
msgstr "Le"
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -8244,7 +8260,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr "Nombre de processus parallèles ou simultanés à utiliser lors de l'exécution du playbook. La saisie d'aucune valeur entraînera l'utilisation de la valeur par défaut du fichier de configuration ansible. Vous pourrez trouver plus d’informations."
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr "La page que vous avez demandée n'a pas été trouvée."
@@ -8295,7 +8311,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -8303,7 +8319,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr "Il y a eu un problème d'enregistrement. Veuillez réessayer."
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr "Il y a eu une erreur lors du chargement de ce contenu. Veuillez recharger la page."
@@ -8983,7 +8999,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -9003,7 +9019,7 @@ msgstr "Jetons d'utilisateur"
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9472,7 +9488,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9672,10 +9688,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
-msgstr "Vous serez déconnecté dans {itemsUnableToDisassociate} secondes pour cause d'inactivité."
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr "Vous serez déconnecté dans {itemsUnableToDisassociate} secondes pour cause d'inactivité."
-#: components/AppContainer/AppContainer.jsx:221
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
+msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr "Votre session est sur le point d'expirer"
@@ -9713,7 +9733,7 @@ msgstr ""
msgid "approved"
msgstr "approuvé"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -10069,7 +10089,7 @@ msgstr "{0} des sources avec des défaillances de synchronisation."
msgid "{0}: {1}"
msgstr "{0}: {1}"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -10125,3 +10145,7 @@ msgstr ""
#: components/PaginatedTable/PaginatedTable.jsx:76
msgid "{pluralizedItemName} List"
msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
diff --git a/awx/ui_next/src/locales/ja/messages.po b/awx/ui_next/src/locales/ja/messages.po
index 247b01d9a8..230fba0f9c 100644
--- a/awx/ui_next/src/locales/ja/messages.po
+++ b/awx/ui_next/src/locales/ja/messages.po
@@ -167,8 +167,8 @@ msgstr "情報"
msgid "Access"
msgstr "アクセス"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr "アクセストークンの有効期限"
@@ -400,12 +400,12 @@ msgid "After number of occurrences"
msgstr "指定した実行回数後"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -590,6 +590,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr "次を削除してもよろしいですか:"
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr "変更を保存せずにワークフロークリエーターを終了してもよろしいですか?"
@@ -656,8 +660,8 @@ msgstr "8 月"
msgid "Authentication"
msgstr "認証"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr "認証コードの有効期限"
@@ -683,7 +687,7 @@ msgstr "Azure AD の設定"
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -693,7 +697,7 @@ msgstr "戻る"
msgid "Back to Credentials"
msgstr "認証情報に戻る"
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr "ダッシュボードに戻る"
@@ -740,7 +744,7 @@ msgstr "スケジュールに戻る"
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -883,12 +887,14 @@ msgstr "キャッシュのタイムアウト (秒)"
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -956,7 +962,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1119,7 +1125,7 @@ msgstr "メールオプションの選択"
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr "選択したリソースに適用するロールを選択します。選択したすべてのロールが、選択したすべてのリソースに適用されることに注意してください。"
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr "新しいロールを受け取るリソースを選択します。次のステップで適用するロールを選択できます。ここで選択したリソースは、次のステップで選択したすべてのロールを受け取ることに注意してください。"
@@ -1240,11 +1246,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr "同時実行ジョブ"
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr "削除の確認"
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr "パスワードの確認"
@@ -1304,7 +1319,7 @@ msgstr "コンテナーグループが見つかりません。"
msgid "Content Loading"
msgstr "コンテンツの読み込み"
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr "続行"
@@ -2157,7 +2172,7 @@ msgstr "送信先チャネルまたはユーザー"
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2362,8 +2377,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2687,7 +2702,7 @@ msgstr "暗号化"
msgid "End"
msgstr "終了"
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2699,7 +2714,7 @@ msgstr "終了日時"
msgid "End did not match an expected value"
msgstr "終了が期待値と一致しませんでした"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2892,7 +2907,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2920,7 +2935,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3422,7 +3437,7 @@ msgstr "1 つ以上のインスタンスの関連付けを解除できません
msgid "Failed to disassociate one or more teams."
msgstr "1 つ以上のチームの関連付けを解除できませんでした。"
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr "カスタムログイン構成設定を取得できません。代わりに、システムのデフォルトが表示されます。"
@@ -3432,7 +3447,7 @@ msgstr "カスタムログイン構成設定を取得できません。代わり
msgid "Failed to launch job."
msgstr "ジョブを起動できませんでした。"
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr "構成を取得できませんでした。"
@@ -3959,8 +3974,8 @@ msgid "Hour"
msgstr "時間"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4311,7 +4326,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr "無効なリンクターゲットです。子ノードまたは祖先ノードにリンクできません。グラフサイクルはサポートされていません。"
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr "無効なユーザー名またはパスワードです。やり直してください。"
@@ -4900,7 +4915,7 @@ msgstr "ローカルタイムゾーン"
msgid "Local time zone"
msgstr "ローカルタイムゾーン"
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr "ログイン"
@@ -4916,8 +4931,8 @@ msgstr "ロギング"
msgid "Logging settings"
msgstr "ロギング設定"
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr "ログアウト"
@@ -5183,7 +5198,7 @@ msgstr "月"
msgid "More information"
msgstr "詳細情報"
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr "詳細情報: "
@@ -5248,7 +5263,7 @@ msgstr "複数の選択オプション"
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5408,7 +5423,7 @@ msgstr "複数の選択オプション"
msgid "Name"
msgstr "名前"
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr "ナビゲーション"
@@ -5437,7 +5452,7 @@ msgstr "新規"
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr "次へ"
@@ -5536,7 +5551,7 @@ msgstr "なし (1回実行)"
msgid "Normal User"
msgstr "標準ユーザー"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr "見つかりません"
@@ -5692,7 +5707,7 @@ msgstr "10 月"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5710,7 +5725,7 @@ msgstr "オフ"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5953,7 +5968,7 @@ msgstr "追加のコマンドライン変数を Playbook に渡します。こ
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6064,8 +6079,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr "{pluralizedItemName} を追加してこのリストに入力してください。"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6079,7 +6094,7 @@ msgstr "有効な URL を入力してください。"
msgid "Please enter a value."
msgstr "値を入力してください。"
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6427,11 +6442,11 @@ msgstr "リダイレクト URI"
msgid "Redirect uris"
msgstr "リダイレクト URI"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6453,8 +6468,8 @@ msgstr ""
msgid "Refresh Token"
msgstr "トークンの更新"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr "トークンの有効期限の更新"
@@ -6839,7 +6854,7 @@ msgstr "ログ集計機能をテストする前に、ログ集計を保存して
msgid "Save link changes"
msgstr "リンクの変更の保存"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7294,8 +7309,8 @@ msgstr "{0} の選択"
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7428,6 +7443,7 @@ msgstr "すべてのグループの表示"
msgid "Show changes"
msgstr "変更の表示"
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7440,43 +7456,43 @@ msgstr "簡易表示"
msgid "Show only root groups"
msgstr "root グループのみを表示"
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr "Azure AD でサインイン"
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr "GitHub でサインイン"
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr "GitHub Enterprise でサインイン"
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr "GitHub Enterprise 組織でサインイン"
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr "GitHub Enterprise チームでサインイン"
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr "GitHub 組織でサインイン"
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr "GitHub チームでサインイン"
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr "Google でサインイン"
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr "SAML でサインイン"
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr "SAML {samlIDP} でサインイン"
@@ -7564,7 +7580,7 @@ msgstr "前のステップのいくつかにエラーがあります"
msgid "Something went wrong with the request to test this credential and metadata."
msgstr "この認証情報およびメタデータをテストする要求で問題が発生しました。"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr "問題が発生しました..."
@@ -7793,9 +7809,9 @@ msgstr "ステータス"
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7812,7 +7828,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7820,7 +7836,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -8148,7 +8164,7 @@ msgstr "Textarea"
msgid "The"
msgstr "The"
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -8240,7 +8256,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr "Playbook の実行中に使用する並列または同時プロセスの数。いずれの値も入力しないと、Ansible 設定ファイルのデフォルト値が使用されます。より多くの情報を確認できます。"
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr "要求したページが見つかりませんでした。"
@@ -8291,7 +8307,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -8299,7 +8315,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr "サインインに問題がありました。もう一度やり直してください。"
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr "このコンテンツの読み込み中にエラーが発生しました。ページを再読み込みしてください。"
@@ -8979,7 +8995,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -8999,7 +9015,7 @@ msgstr "ユーザートークン"
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9468,7 +9484,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9668,10 +9684,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
-msgstr "非アクティブのため、{0} 秒でログアウトします。"
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr "非アクティブのため、{0} 秒でログアウトします。"
-#: components/AppContainer/AppContainer.jsx:221
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
+msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr "セッションの有効期限が近づいています"
@@ -9709,7 +9729,7 @@ msgstr ""
msgid "approved"
msgstr "承認"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -10065,7 +10085,7 @@ msgstr "{0} ソースが同期に失敗しました。"
msgid "{0}: {1}"
msgstr "{0}: {1}"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -10121,3 +10141,7 @@ msgstr ""
#: components/PaginatedTable/PaginatedTable.jsx:76
msgid "{pluralizedItemName} List"
msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
diff --git a/awx/ui_next/src/locales/nl/messages.po b/awx/ui_next/src/locales/nl/messages.po
index 90e07f5819..56f6130343 100644
--- a/awx/ui_next/src/locales/nl/messages.po
+++ b/awx/ui_next/src/locales/nl/messages.po
@@ -168,8 +168,8 @@ msgstr ""
msgid "Access"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr ""
@@ -401,12 +401,12 @@ msgid "After number of occurrences"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -591,6 +591,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr ""
@@ -657,8 +661,8 @@ msgstr ""
msgid "Authentication"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr ""
@@ -684,7 +688,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -694,7 +698,7 @@ msgstr ""
msgid "Back to Credentials"
msgstr ""
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr ""
@@ -741,7 +745,7 @@ msgstr ""
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -884,12 +888,14 @@ msgstr ""
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -957,7 +963,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1120,7 +1126,7 @@ msgstr ""
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr ""
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr ""
@@ -1241,11 +1247,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr ""
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr ""
@@ -1305,7 +1320,7 @@ msgstr ""
msgid "Content Loading"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr ""
@@ -2158,7 +2173,7 @@ msgstr ""
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2363,8 +2378,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2696,7 +2711,7 @@ msgstr ""
msgid "End"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2708,7 +2723,7 @@ msgstr ""
msgid "End did not match an expected value"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2901,7 +2916,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2929,7 +2944,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3431,7 +3446,7 @@ msgstr ""
msgid "Failed to disassociate one or more teams."
msgstr ""
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr ""
@@ -3441,7 +3456,7 @@ msgstr ""
msgid "Failed to launch job."
msgstr ""
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr ""
@@ -3968,8 +3983,8 @@ msgid "Hour"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4320,7 +4335,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr ""
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr ""
@@ -4909,7 +4924,7 @@ msgstr ""
msgid "Local time zone"
msgstr ""
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr ""
@@ -4925,8 +4940,8 @@ msgstr ""
msgid "Logging settings"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr ""
@@ -5192,7 +5207,7 @@ msgstr ""
msgid "More information"
msgstr ""
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr ""
@@ -5257,7 +5272,7 @@ msgstr ""
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5417,7 +5432,7 @@ msgstr ""
msgid "Name"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr ""
@@ -5446,7 +5461,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr ""
@@ -5545,7 +5560,7 @@ msgstr ""
msgid "Normal User"
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr ""
@@ -5701,7 +5716,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5719,7 +5734,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5962,7 +5977,7 @@ msgstr ""
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6073,8 +6088,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6088,7 +6103,7 @@ msgstr ""
msgid "Please enter a value."
msgstr ""
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6436,11 +6451,11 @@ msgstr ""
msgid "Redirect uris"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6462,8 +6477,8 @@ msgstr ""
msgid "Refresh Token"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr ""
@@ -6848,7 +6863,7 @@ msgstr ""
msgid "Save link changes"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7303,8 +7318,8 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7437,6 +7452,7 @@ msgstr ""
msgid "Show changes"
msgstr ""
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7449,43 +7465,43 @@ msgstr ""
msgid "Show only root groups"
msgstr ""
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr ""
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr ""
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr ""
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr ""
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr ""
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr ""
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr ""
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr ""
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr ""
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr ""
@@ -7573,7 +7589,7 @@ msgstr ""
msgid "Something went wrong with the request to test this credential and metadata."
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr ""
@@ -7802,9 +7818,9 @@ msgstr ""
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7821,7 +7837,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7829,7 +7845,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -8157,7 +8173,7 @@ msgstr ""
msgid "The"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -8249,7 +8265,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr ""
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr ""
@@ -8300,7 +8316,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -8308,7 +8324,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr ""
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr ""
@@ -8988,7 +9004,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -9008,7 +9024,7 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9477,7 +9493,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9677,10 +9693,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr ""
+
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
msgstr ""
-#: components/AppContainer/AppContainer.jsx:221
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr ""
@@ -9718,7 +9738,7 @@ msgstr ""
msgid "approved"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -10082,7 +10102,7 @@ msgstr ""
msgid "{0}: {1}"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -10155,6 +10175,10 @@ msgstr ""
msgid "{pluralizedItemName} List"
msgstr ""
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
+
#: src/components/JobList/JobListCancelButton.jsx:96
#~ msgid "{zeroOrOneJobSelected, plural, one {Cancel job} other {Cancel jobs}}"
#~ msgstr ""
diff --git a/awx/ui_next/src/locales/zh/messages.po b/awx/ui_next/src/locales/zh/messages.po
index 31232aff2e..77db8c64b9 100644
--- a/awx/ui_next/src/locales/zh/messages.po
+++ b/awx/ui_next/src/locales/zh/messages.po
@@ -167,8 +167,8 @@ msgstr "关于"
msgid "Access"
msgstr "访问"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr "访问令牌过期"
@@ -400,12 +400,12 @@ msgid "After number of occurrences"
msgstr "发生次数后"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -590,6 +590,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr "您确定要删除:"
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr "您确定要退出 Workflow Creator 而不保存您的更改吗?"
@@ -656,8 +660,8 @@ msgstr "8 月"
msgid "Authentication"
msgstr "身份验证"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr "授权代码过期"
@@ -683,7 +687,7 @@ msgstr "Azure AD 设置"
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -693,7 +697,7 @@ msgstr "返回"
msgid "Back to Credentials"
msgstr "返回到凭证"
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr "返回到仪表板"
@@ -740,7 +744,7 @@ msgstr "返回到调度"
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -883,12 +887,14 @@ msgstr "缓存超时(秒)"
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -956,7 +962,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1119,7 +1125,7 @@ msgstr "选择电子邮件选项"
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr "选择应用到所选资源的角色。请注意,所有选择的角色将应用到所有选择的资源。"
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr "选择将获得新角色的资源。您可以选择下一步中要应用的角色。请注意,此处选择的资源将接收下一步中选择的所有角色。"
@@ -1240,11 +1246,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr "并发作业"
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr "确认删除"
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr "确认密码"
@@ -1304,7 +1319,7 @@ msgstr "未找到容器组。"
msgid "Content Loading"
msgstr "内容加载"
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr "继续"
@@ -2157,7 +2172,7 @@ msgstr "目标频道或用户"
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2362,8 +2377,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2687,7 +2702,7 @@ msgstr "已加密"
msgid "End"
msgstr "结束"
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2699,7 +2714,7 @@ msgstr "结束日期/时间"
msgid "End did not match an expected value"
msgstr "结束与预期值不匹配"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2892,7 +2907,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2920,7 +2935,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3422,7 +3437,7 @@ msgstr "解除关联一个或多个实例失败。"
msgid "Failed to disassociate one or more teams."
msgstr "解除关联一个或多个团队失败。"
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr "获取自定义登录配置设置失败。系统默认设置会被显示。"
@@ -3432,7 +3447,7 @@ msgstr "获取自定义登录配置设置失败。系统默认设置会被显示
msgid "Failed to launch job."
msgstr "启动作业失败。"
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr "获取配置失败。"
@@ -3959,8 +3974,8 @@ msgid "Hour"
msgstr "小时"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4311,7 +4326,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr "无效的链路目标。无法连接到子节点或祖先节点。不支持图形周期。"
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr "无效的用户名或密码。请重试。"
@@ -4900,7 +4915,7 @@ msgstr "本地时区"
msgid "Local time zone"
msgstr "本地时区"
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr "登录"
@@ -4916,8 +4931,8 @@ msgstr "日志记录"
msgid "Logging settings"
msgstr "日志设置"
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr "退出"
@@ -5183,7 +5198,7 @@ msgstr "月"
msgid "More information"
msgstr "更多信息"
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr "更多信息"
@@ -5248,7 +5263,7 @@ msgstr "多项选择选项"
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5408,7 +5423,7 @@ msgstr "多项选择选项"
msgid "Name"
msgstr "名称"
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr "导航"
@@ -5437,7 +5452,7 @@ msgstr "新"
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr "下一"
@@ -5536,7 +5551,7 @@ msgstr "无(运行一次)"
msgid "Normal User"
msgstr "普通用户"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr "未找到"
@@ -5692,7 +5707,7 @@ msgstr "10 月"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5710,7 +5725,7 @@ msgstr "关"
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5953,7 +5968,7 @@ msgstr "向 playbook 传递额外的命令行变量。这是 ansible-playbook
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -6064,8 +6079,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr "请添加 {pluralizedItemName} 来填充此列表"
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -6079,7 +6094,7 @@ msgstr "请输入有效的 URL。"
msgid "Please enter a value."
msgstr "请输入一个值。"
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6427,11 +6442,11 @@ msgstr "重定向 URI"
msgid "Redirect uris"
msgstr "重定向 URI"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6453,8 +6468,8 @@ msgstr ""
msgid "Refresh Token"
msgstr "刷新令牌"
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr "刷新令牌过期"
@@ -6839,7 +6854,7 @@ msgstr "在测试日志聚合器前保存并启用日志聚合。"
msgid "Save link changes"
msgstr "保存链路更改"
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7294,8 +7309,8 @@ msgstr "选择 {0}"
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7428,6 +7443,7 @@ msgstr "显示所有组"
msgid "Show changes"
msgstr "显示更改"
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7440,43 +7456,43 @@ msgstr "显示更少"
msgid "Show only root groups"
msgstr "只显示 root 组"
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr "使用 Azure AD 登陆"
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr "使用 GitHub 登陆"
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr "使用 GitHub Enterprise 登录"
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr "使用 GitHub Enterprise Organizations 登录"
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr "使用 GitHub Enterprise Teams 登录"
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr "使用 GitHub Organizations 登录"
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr "使用 GitHub Teams 登录"
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr "使用 Google 登录"
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr "使用 SAML 登陆"
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr "使用 SAML {samlIDP} 登陆"
@@ -7564,7 +7580,7 @@ msgstr "前面的一些步骤有错误"
msgid "Something went wrong with the request to test this credential and metadata."
msgstr "请求测试此凭证和元数据时出错。"
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr "出现错误..."
@@ -7793,9 +7809,9 @@ msgstr "状态"
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7812,7 +7828,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7820,7 +7836,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -8148,7 +8164,7 @@ msgstr "文本区"
msgid "The"
msgstr "The"
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -8240,7 +8256,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr "执行 playbook 时使用的并行或同步进程数量。如果不输入值,则将使用 %s 配置文件 %s 中的默认值。您可以找到更多信息"
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr "您请求的页面无法找到。"
@@ -8291,7 +8307,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -8299,7 +8315,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr "登录时有问题。请重试。"
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr "加载此内容时出错。请重新加载页面。"
@@ -8979,7 +8995,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -8999,7 +9015,7 @@ msgstr "用户令牌"
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9468,7 +9484,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9668,10 +9684,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
-msgstr "因不活跃,您将在 {0} 秒内登出。"
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr "因不活跃,您将在 {0} 秒内登出。"
-#: components/AppContainer/AppContainer.jsx:221
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
+msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr "您的会话即将到期"
@@ -9709,7 +9729,7 @@ msgstr ""
msgid "approved"
msgstr "批准"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -10065,7 +10085,7 @@ msgstr "{0} 同步失败的源。"
msgid "{0}: {1}"
msgstr "{0}: {1}"
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -10121,3 +10141,7 @@ msgstr ""
#: components/PaginatedTable/PaginatedTable.jsx:76
msgid "{pluralizedItemName} List"
msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
diff --git a/awx/ui_next/src/locales/zu/messages.po b/awx/ui_next/src/locales/zu/messages.po
index b255c9943d..5e10dc53aa 100644
--- a/awx/ui_next/src/locales/zu/messages.po
+++ b/awx/ui_next/src/locales/zu/messages.po
@@ -164,8 +164,8 @@ msgstr ""
msgid "Access"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:78
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:80
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:79
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:81
msgid "Access Token Expiration"
msgstr ""
@@ -388,12 +388,12 @@ msgid "After number of occurrences"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:39
-msgid "Agree to end user license agreement"
-msgstr ""
+#~ msgid "Agree to end user license agreement"
+#~ msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:20
-msgid "Agree to the end user license agreement and click submit."
-msgstr ""
+#~ msgid "Agree to the end user license agreement and click submit."
+#~ msgstr ""
#: components/AlertModal/AlertModal.jsx:75
msgid "Alert modal"
@@ -552,6 +552,10 @@ msgstr ""
msgid "Are you sure you want to delete:"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:125
+msgid "Are you sure you want to disable local authentication? Doing so could impact users' ability to log in and the system administrator's ability to reverse this change."
+msgstr ""
+
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx:41
msgid "Are you sure you want to exit the Workflow Creator without saving your changes?"
msgstr ""
@@ -618,8 +622,8 @@ msgstr ""
msgid "Authentication"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:88
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:93
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:89
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:94
msgid "Authorization Code Expiration"
msgstr ""
@@ -645,7 +649,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:133
#: components/Schedule/shared/SchedulePromptableFields.jsx:136
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:91
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:72
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:70
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:141
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:144
msgid "Back"
@@ -655,7 +659,7 @@ msgstr ""
msgid "Back to Credentials"
msgstr ""
-#: components/ContentError/ContentError.jsx:45
+#: components/ContentError/ContentError.jsx:42
msgid "Back to Dashboard."
msgstr ""
@@ -702,7 +706,7 @@ msgstr ""
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:54
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:90
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:63
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:110
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:111
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:39
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:40
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:29
@@ -837,12 +841,14 @@ msgstr ""
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:107
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:63
#: screens/ManagementJob/ManagementJobList/LaunchManagementPrompt.jsx:66
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:82
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:80
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:92
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionModal.jsx:98
#: screens/Setting/shared/RevertAllAlert.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:32
#: screens/Setting/shared/RevertFormActionGroup.jsx:38
+#: screens/Setting/shared/SharedFields.jsx:116
+#: screens/Setting/shared/SharedFields.jsx:122
#: screens/Team/TeamRoles/TeamRolesList.jsx:217
#: screens/Team/TeamRoles/TeamRolesList.jsx:220
#: screens/Template/Survey/SurveyList.jsx:116
@@ -910,7 +916,7 @@ msgstr ""
msgid "Cancel selected jobs"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:79
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:77
msgid "Cancel subscription edit"
msgstr ""
@@ -1061,7 +1067,7 @@ msgstr ""
msgid "Choose roles to apply to the selected resources. Note that all selected roles will be applied to all selected resources."
msgstr ""
-#: components/AddRole/SelectResourceStep.jsx:79
+#: components/AddRole/SelectResourceStep.jsx:78
msgid "Choose the resources that will be receiving new roles. You'll be able to select the roles to apply in the next step. Note that the resources chosen here will receive all roles chosen in the next step."
msgstr ""
@@ -1166,11 +1172,20 @@ msgstr ""
msgid "Concurrent Jobs"
msgstr ""
+#: screens/Setting/shared/SharedFields.jsx:104
+#: screens/Setting/shared/SharedFields.jsx:110
+msgid "Confirm"
+msgstr ""
+
#: components/DeleteButton/DeleteButton.jsx:108
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:93
msgid "Confirm Delete"
msgstr ""
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:268
+msgid "Confirm Disable Local Authorization"
+msgstr ""
+
#: screens/User/shared/UserForm.jsx:91
msgid "Confirm Password"
msgstr ""
@@ -1230,7 +1245,7 @@ msgstr ""
msgid "Content Loading"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:233
+#: components/AppContainer/AppContainer.jsx:138
msgid "Continue"
msgstr ""
@@ -2058,7 +2073,7 @@ msgstr ""
#: screens/Setting/GoogleOAuth2/GoogleOAuth2Detail/GoogleOAuth2Detail.jsx:46
#: screens/Setting/Jobs/JobsDetail/JobsDetail.jsx:61
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:70
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:117
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:118
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:46
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:47
#: screens/Setting/Settings.jsx:45
@@ -2250,8 +2265,8 @@ msgstr ""
#: screens/Setting/LDAP/LDAPDetail/LDAPDetail.jsx:165
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:101
#: screens/Setting/Logging/LoggingDetail/LoggingDetail.jsx:105
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:148
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:152
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:149
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:153
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:80
#: screens/Setting/RADIUS/RADIUSDetail/RADIUSDetail.jsx:84
#: screens/Setting/SAML/SAMLDetail/SAMLDetail.jsx:81
@@ -2575,7 +2590,7 @@ msgstr ""
msgid "End"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:24
+#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:14
msgid "End User License Agreement"
msgstr ""
@@ -2587,7 +2602,7 @@ msgstr ""
msgid "End did not match an expected value"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:215
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:209
msgid "End user license agreement"
msgstr ""
@@ -2752,7 +2767,7 @@ msgstr ""
#: components/Schedule/shared/SchedulePromptableFields.jsx:74
#: components/TemplateList/TemplateList.jsx:278
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:137
-#: contexts/Config.jsx:64
+#: contexts/Config.jsx:67
#: screens/Application/ApplicationDetails/ApplicationDetails.jsx:135
#: screens/Application/ApplicationTokens/ApplicationTokenList.jsx:170
#: screens/Application/ApplicationsList/ApplicationsList.jsx:191
@@ -2780,7 +2795,7 @@ msgstr ""
#: screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx:169
#: screens/Inventory/shared/InventoryGroupsDeleteModal.jsx:146
#: screens/Inventory/shared/InventorySourceSyncButton.jsx:51
-#: screens/Login/Login.jsx:191
+#: screens/Login/Login.jsx:209
#: screens/ManagementJob/ManagementJobList/ManagementJobList.jsx:127
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:360
#: screens/NotificationTemplate/NotificationTemplateList/NotificationTemplateList.jsx:223
@@ -3282,7 +3297,7 @@ msgstr ""
msgid "Failed to disassociate one or more teams."
msgstr ""
-#: screens/Login/Login.jsx:195
+#: screens/Login/Login.jsx:213
msgid "Failed to fetch custom login configuration settings. System defaults will be shown instead."
msgstr ""
@@ -3292,7 +3307,7 @@ msgstr ""
msgid "Failed to launch job."
msgstr ""
-#: contexts/Config.jsx:68
+#: contexts/Config.jsx:71
msgid "Failed to retrieve configuration."
msgstr ""
@@ -3814,8 +3829,8 @@ msgid "Hour"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:40
-msgid "I agree to the End User License Agreement"
-msgstr ""
+#~ msgid "I agree to the End User License Agreement"
+#~ msgstr ""
#: components/JobList/JobList.jsx:177
#: components/Lookup/HostFilterLookup.jsx:82
@@ -4136,7 +4151,7 @@ msgstr ""
msgid "Invalid link target. Unable to link to children or ancestor nodes. Graph cycles are not supported."
msgstr ""
-#: screens/Login/Login.jsx:128
+#: screens/Login/Login.jsx:135
msgid "Invalid username or password. Please try again."
msgstr ""
@@ -4725,7 +4740,7 @@ msgstr ""
msgid "Local time zone"
msgstr ""
-#: screens/Login/Login.jsx:169
+#: screens/Login/Login.jsx:187
msgid "Log In"
msgstr ""
@@ -4741,8 +4756,8 @@ msgstr ""
msgid "Logging settings"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:176
-#: components/AppContainer/AppContainer.jsx:241
+#: components/AppContainer/AppContainer.jsx:81
+#: components/AppContainer/AppContainer.jsx:146
#: components/AppContainer/PageHeaderToolbar.jsx:166
msgid "Logout"
msgstr ""
@@ -5000,7 +5015,7 @@ msgstr ""
msgid "More information"
msgstr ""
-#: screens/Setting/shared/SharedFields.jsx:61
+#: screens/Setting/shared/SharedFields.jsx:63
msgid "More information for"
msgstr ""
@@ -5065,7 +5080,7 @@ msgstr ""
#: components/NotificationList/NotificationList.jsx:181
#: components/NotificationList/NotificationList.jsx:218
#: components/NotificationList/NotificationListItem.jsx:25
-#: components/OptionsList/OptionsList.jsx:72
+#: components/OptionsList/OptionsList.jsx:70
#: components/PaginatedDataList/PaginatedDataList.jsx:77
#: components/PaginatedDataList/PaginatedDataList.jsx:86
#: components/PaginatedTable/PaginatedTable.jsx:69
@@ -5225,7 +5240,7 @@ msgstr ""
msgid "Name"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:189
+#: components/AppContainer/AppContainer.jsx:94
msgid "Navigation"
msgstr ""
@@ -5254,7 +5269,7 @@ msgstr ""
#: components/LaunchPrompt/LaunchPrompt.jsx:135
#: components/Schedule/shared/SchedulePromptableFields.jsx:138
#: screens/Credential/shared/CredentialPlugins/CredentialPluginPrompt/CredentialPluginPrompt.jsx:67
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:61
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:59
#: screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx:120
msgid "Next"
msgstr ""
@@ -5353,7 +5368,7 @@ msgstr ""
msgid "Normal User"
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Not Found"
msgstr ""
@@ -5489,7 +5504,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:53
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:94
+#: screens/Setting/shared/SharedFields.jsx:144
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:53
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5507,7 +5522,7 @@ msgstr ""
#: components/Schedule/ScheduleToggle/ScheduleToggle.jsx:52
#: screens/Inventory/SmartInventoryHostDetail/SmartInventoryHostDetail.jsx:47
#: screens/Setting/shared/SettingDetail.jsx:85
-#: screens/Setting/shared/SharedFields.jsx:93
+#: screens/Setting/shared/SharedFields.jsx:143
#: screens/Template/JobTemplateDetail/JobTemplateDetail.jsx:223
#: screens/Template/Survey/SurveyToolbar.jsx:52
#: screens/Template/shared/JobTemplateForm.jsx:481
@@ -5745,7 +5760,7 @@ msgstr ""
#~ msgid "Pass extra command line variables to the playbook. This is the -e or --extra-vars command line parameter for ansible-playbook. Provide key/value pairs using either YAML or JSON. Refer to the documentation for example syntax."
#~ msgstr ""
-#: screens/Login/Login.jsx:179
+#: screens/Login/Login.jsx:197
#: screens/NotificationTemplate/shared/TypeInputsSubForm.jsx:73
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:112
#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionStep.jsx:223
@@ -5856,8 +5871,8 @@ msgid "Please add {pluralizedItemName} to populate this list"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/EulaStep.jsx:44
-msgid "Please agree to End User License Agreement before proceeding."
-msgstr ""
+#~ msgid "Please agree to End User License Agreement before proceeding."
+#~ msgstr ""
#: screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx:43
msgid "Please click the Start button to begin."
@@ -5871,7 +5886,7 @@ msgstr ""
msgid "Please enter a value."
msgstr ""
-#: screens/Login/Login.jsx:151
+#: screens/Login/Login.jsx:162
msgid "Please log in"
msgstr ""
@@ -6205,11 +6220,11 @@ msgstr ""
msgid "Redirect uris"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:266
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:259
msgid "Redirecting to dashboard"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:270
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:263
msgid "Redirecting to subscription detail"
msgstr ""
@@ -6227,8 +6242,8 @@ msgstr ""
msgid "Refresh Token"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:83
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:86
+#: screens/Setting/MiscSystem/MiscSystemDetail/MiscSystemDetail.jsx:84
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:87
msgid "Refresh Token Expiration"
msgstr ""
@@ -6609,7 +6624,7 @@ msgstr ""
msgid "Save link changes"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:261
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:254
msgid "Save successful!"
msgstr ""
@@ -7035,8 +7050,8 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:243
#: components/AddRole/AddResourceRole.jsx:260
#: components/AddRole/SelectRoleStep.jsx:27
-#: components/CheckboxListItem/CheckboxListItem.jsx:31
-#: components/OptionsList/OptionsList.jsx:51
+#: components/CheckboxListItem/CheckboxListItem.jsx:41
+#: components/OptionsList/OptionsList.jsx:49
#: components/Schedule/ScheduleList/ScheduleListItem.jsx:75
#: components/TemplateList/TemplateListItem.jsx:124
#: components/UserAndTeamAccessAdd/UserAndTeamAccessAdd.jsx:103
@@ -7169,6 +7184,7 @@ msgstr ""
msgid "Show changes"
msgstr ""
+#: components/LaunchPrompt/LaunchPrompt.jsx:110
#: components/Schedule/shared/SchedulePromptableFields.jsx:113
msgid "Show description"
msgstr ""
@@ -7181,43 +7197,43 @@ msgstr ""
msgid "Show only root groups"
msgstr ""
-#: screens/Login/Login.jsx:213
+#: screens/Login/Login.jsx:232
msgid "Sign in with Azure AD"
msgstr ""
-#: screens/Login/Login.jsx:226
+#: screens/Login/Login.jsx:246
msgid "Sign in with GitHub"
msgstr ""
-#: screens/Login/Login.jsx:265
+#: screens/Login/Login.jsx:288
msgid "Sign in with GitHub Enterprise"
msgstr ""
-#: screens/Login/Login.jsx:279
+#: screens/Login/Login.jsx:303
msgid "Sign in with GitHub Enterprise Organizations"
msgstr ""
-#: screens/Login/Login.jsx:294
+#: screens/Login/Login.jsx:319
msgid "Sign in with GitHub Enterprise Teams"
msgstr ""
-#: screens/Login/Login.jsx:239
+#: screens/Login/Login.jsx:260
msgid "Sign in with GitHub Organizations"
msgstr ""
-#: screens/Login/Login.jsx:252
+#: screens/Login/Login.jsx:274
msgid "Sign in with GitHub Teams"
msgstr ""
-#: screens/Login/Login.jsx:308
+#: screens/Login/Login.jsx:334
msgid "Sign in with Google"
msgstr ""
-#: screens/Login/Login.jsx:326
+#: screens/Login/Login.jsx:353
msgid "Sign in with SAML"
msgstr ""
-#: screens/Login/Login.jsx:325
+#: screens/Login/Login.jsx:352
msgid "Sign in with SAML {samlIDP}"
msgstr ""
@@ -7300,7 +7316,7 @@ msgstr ""
msgid "Something went wrong with the request to test this credential and metadata."
msgstr ""
-#: components/ContentError/ContentError.jsx:39
+#: components/ContentError/ContentError.jsx:36
msgid "Something went wrong..."
msgstr ""
@@ -7521,9 +7537,9 @@ msgstr ""
msgid "Stdout"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:38
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:51
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:218
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:37
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:49
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:212
msgid "Submit"
msgstr ""
@@ -7540,7 +7556,7 @@ msgstr ""
#: screens/Setting/SettingList.jsx:131
#: screens/Setting/Settings.jsx:106
#: screens/Setting/Subscription/SubscriptionDetail/SubscriptionDetail.jsx:78
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:201
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:195
msgid "Subscription"
msgstr ""
@@ -7548,7 +7564,7 @@ msgstr ""
msgid "Subscription Details"
msgstr ""
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:200
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:194
msgid "Subscription Management"
msgstr ""
@@ -7871,7 +7887,7 @@ msgstr ""
msgid "The"
msgstr ""
-#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:247
+#: screens/Setting/MiscSystem/MiscSystemEdit/MiscSystemEdit.jsx:248
msgid "The Execution Environment to be used when one has not been configured for a job template."
msgstr ""
@@ -7939,7 +7955,7 @@ msgstr ""
msgid "The number of parallel or simultaneous processes to use while executing the playbook. Inputting no value will use the default value from the ansible configuration file. You can find more information"
msgstr ""
-#: components/ContentError/ContentError.jsx:43
+#: components/ContentError/ContentError.jsx:40
#: screens/Job/Job.jsx:124
msgid "The page you requested could not be found."
msgstr ""
@@ -7982,7 +7998,7 @@ msgstr ""
msgid "There must be a value in at least one input"
msgstr ""
-#: screens/Login/Login.jsx:130
+#: screens/Login/Login.jsx:137
msgid "There was a problem logging in. Please try again."
msgstr ""
@@ -7990,7 +8006,7 @@ msgstr ""
#~ msgid "There was a problem signing in. Please try again."
#~ msgstr ""
-#: components/ContentError/ContentError.jsx:44
+#: components/ContentError/ContentError.jsx:41
msgid "There was an error loading this content. Please reload the page."
msgstr ""
@@ -8652,7 +8668,7 @@ msgid "User analytics"
msgstr ""
#: screens/Setting/Subscription/SubscriptionEdit/AnalyticsStep.jsx:45
-#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:208
+#: screens/Setting/Subscription/SubscriptionEdit/SubscriptionEdit.jsx:202
msgid "User and Insights analytics"
msgstr ""
@@ -8672,7 +8688,7 @@ msgstr ""
#: components/AddRole/AddResourceRole.jsx:139
#: components/ResourceAccessList/ResourceAccessList.jsx:127
#: components/ResourceAccessList/ResourceAccessList.jsx:180
-#: screens/Login/Login.jsx:182
+#: screens/Login/Login.jsx:200
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:78
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:180
#: screens/NotificationTemplate/NotificationTemplateDetail/NotificationTemplateDetail.jsx:230
@@ -9141,7 +9157,7 @@ msgid ""
"Please complete the steps below to activate your subscription."
msgstr ""
-#: screens/Login/Login.jsx:150
+#: screens/Login/Login.jsx:161
msgid "Welcome to {brandName}!"
msgstr ""
@@ -9331,10 +9347,14 @@ msgstr ""
#~ msgstr ""
#: components/AppContainer/AppContainer.jsx:245
-msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgid "You will be logged out in {0} seconds due to inactivity."
+#~ msgstr ""
+
+#: screens/Login/Login.jsx:169
+msgid "Your session has expired. Please log in to continue where you left off."
msgstr ""
-#: components/AppContainer/AppContainer.jsx:221
+#: components/AppContainer/AppContainer.jsx:126
msgid "Your session is about to expire"
msgstr ""
@@ -9372,7 +9392,7 @@ msgstr ""
msgid "approved"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "brand logo"
msgstr ""
@@ -9728,7 +9748,7 @@ msgstr ""
msgid "{0}: {1}"
msgstr ""
-#: components/AppContainer/AppContainer.jsx:150
+#: components/AppContainer/AppContainer.jsx:55
msgid "{brandName} logo"
msgstr ""
@@ -9784,3 +9804,7 @@ msgstr ""
#: components/PaginatedTable/PaginatedTable.jsx:76
msgid "{pluralizedItemName} List"
msgstr ""
+
+#: components/AppContainer/AppContainer.jsx:150
+msgid "{sessionCountdown, plural, one {You will be logged out in # second due to inactivity} other {You will be logged out in # seconds due to inactivity}}"
+msgstr ""
diff --git a/awx/ui_next/src/screens/Login/Login.jsx b/awx/ui_next/src/screens/Login/Login.jsx
index 024741ca11..d5f75d7bb5 100644
--- a/awx/ui_next/src/screens/Login/Login.jsx
+++ b/awx/ui_next/src/screens/Login/Login.jsx
@@ -6,6 +6,7 @@ import { Formik } from 'formik';
import styled from 'styled-components';
import sanitizeHtml from 'sanitize-html';
import {
+ Alert,
Brand,
LoginMainFooterLinksItem,
LoginForm,
@@ -28,6 +29,8 @@ import useRequest, { useDismissableError } from '../../util/useRequest';
import { AuthAPI, RootAPI } from '../../api';
import AlertModal from '../../components/AlertModal';
import ErrorDetail from '../../components/ErrorDetail';
+import { useSession } from '../../contexts/Session';
+import { SESSION_REDIRECT_URL } from '../../constants';
const loginLogoSrc = '/static/media/logo-login.svg';
@@ -38,6 +41,8 @@ const Login = styled(PFLogin)`
`;
function AWXLogin({ alt, isAuthenticated }) {
+ const { authRedirectTo, isSessionExpired, setAuthRedirectTo } = useSession();
+
const {
isLoading: isCustomLoginInfoLoading,
error: customLoginInfoError,
@@ -92,6 +97,7 @@ function AWXLogin({ alt, isAuthenticated }) {
useEffect(() => {
fetchCustomLoginInfo();
}, [fetchCustomLoginInfo]);
+
const {
isLoading: isAuthenticating,
error: authenticationError,
@@ -110,6 +116,7 @@ function AWXLogin({ alt, isAuthenticated }) {
const handleSubmit = async values => {
dismissAuthError();
await authenticate(values);
+ setAuthRedirectTo('/home');
};
if (isCustomLoginInfoLoading) {
@@ -120,7 +127,7 @@ function AWXLogin({ alt, isAuthenticated }) {
return null;
}
if (isAuthenticated(document.cookie)) {
- return ;
+ return ;
}
let helperText;
@@ -143,6 +150,10 @@ function AWXLogin({ alt, isAuthenticated }) {
/>
);
+ function setSessionRedirect() {
+ window.sessionStorage.setItem(SESSION_REDIRECT_URL, authRedirectTo);
+ }
+
return (
+ {isSessionExpired.current ? (
+
+ ) : null}
@@ -222,6 +241,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-github"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
@@ -235,6 +255,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-github-org"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
@@ -248,6 +269,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-github-team"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
@@ -261,6 +283,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-github-enterprise"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
@@ -274,6 +297,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-github-enterprise-org"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
@@ -318,6 +344,7 @@ function AWXLogin({ alt, isAuthenticated }) {
data-cy="social-auth-saml"
href={loginUrl}
key={authKey}
+ onClick={setSessionRedirect}
>
({
useConfig: () => React.useContext(MockConfigContext),
useAuthorizedPath: jest.fn(),
}));
+
+// ?
+const MockSessionContext = React.createContext({});
+jest.doMock('./contexts/Session', () => ({
+ __esModule: true,
+ SessionContext: MockSessionContext,
+ SessionProvider: MockSessionContext.Provider,
+ useSession: () => React.useContext(MockSessionContext),
+}));
diff --git a/awx/ui_next/testUtils/enzymeHelpers.jsx b/awx/ui_next/testUtils/enzymeHelpers.jsx
index 1184deb998..18deb63e0e 100644
--- a/awx/ui_next/testUtils/enzymeHelpers.jsx
+++ b/awx/ui_next/testUtils/enzymeHelpers.jsx
@@ -10,6 +10,7 @@ import { I18nProvider } from '@lingui/react';
import { i18n } from '@lingui/core';
import { en } from 'make-plural/plurals';
import english from '../src/locales/en/messages';
+import { SessionProvider } from '../src/contexts/Session';
import { ConfigProvider } from '../src/contexts/Config';
i18n.loadLocaleData({ en: { plurals: en } });
@@ -57,10 +58,14 @@ const defaultContexts = {
},
toJSON: () => '/router/',
},
+ session: {
+ isSessionExpired: false,
+ logout: () => {},
+ },
};
function wrapContexts(node, context) {
- const { config, router } = context;
+ const { config, router, session } = context;
class Wrap extends React.Component {
render() {
// eslint-disable-next-line react/no-this-in-sfc
@@ -69,17 +74,21 @@ function wrapContexts(node, context) {
if (router.history) {
return (
-
- {component}
-
+
+
+ {component}
+
+
);
}
return (
-
- {component}
-
+
+
+ {component}
+
+
);
}
@@ -122,6 +131,7 @@ export function mountWithContexts(node, options = {}) {
}).isRequired,
history: shape({}),
}),
+ session: shape({}),
...options.childContextTypes,
};
return mount(wrapContexts(node, context), { context, childContextTypes });