move help item to ui-shared (#4548)

This commit is contained in:
Erik Jan de Wit 2023-03-07 10:29:40 +01:00 committed by GitHub
parent 52c504e580
commit ab80b6224c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
168 changed files with 644 additions and 615 deletions

View file

@ -8,7 +8,7 @@ import { HashRouter as Router, Route, Routes } from "react-router-dom";
import { AlertProvider } from "./components/alert/Alerts";
import { PageBreadCrumbs } from "./components/bread-crumb/PageBreadCrumbs";
import { ErrorRenderer } from "./components/error/ErrorRenderer";
import { Help } from "./components/help-enabler/HelpHeader";
import { Help } from "ui-shared";
import { KeycloakSpinner } from "./components/keycloak-spinner/KeycloakSpinner";
import { AccessContextProvider, useAccess } from "./context/access/Access";
import { AdminClientContext } from "./context/auth/AdminClient";

View file

@ -15,7 +15,8 @@ import { HelpIcon } from "@patternfly/react-icons";
import { ReactNode, useState } from "react";
import { useTranslation } from "react-i18next";
import { Link } from "react-router-dom";
import { HelpHeader, useHelp } from "./components/help-enabler/HelpHeader";
import { HelpHeader } from "./components/help-enabler/HelpHeader";
import { useHelp } from "ui-shared";
import { useAdminClient } from "./context/auth/AdminClient";
import { useRealm } from "./context/realm-context/RealmContext";
import { useWhoAmI } from "./context/whoami/WhoAmI";

View file

@ -13,7 +13,7 @@ import { useEffect } from "react";
import { useForm } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import useToggle from "../../utils/useToggle";
@ -97,7 +97,7 @@ export const EditFlow = ({ execution, onRowChange }: EditFlowProps) => {
}
labelIcon={
<HelpItem
helpText="authentication-help:name"
helpText={t("authentication-help:name")}
fieldLabelId="name"
/>
}
@ -120,7 +120,7 @@ export const EditFlow = ({ execution, onRowChange }: EditFlowProps) => {
fieldId="kc-description"
labelIcon={
<HelpItem
helpText="authentication-help:description"
helpText={t("authentication-help:description")}
fieldLabelId="description"
/>
}

View file

@ -19,7 +19,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { DynamicComponents } from "../../components/dynamic/DynamicComponents";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { convertFormValuesToObject, convertToFormValues } from "../../util";
@ -141,7 +141,7 @@ export const ExecutionConfigModal = ({
isRequired
labelIcon={
<HelpItem
helpText="authentication-help:alias"
helpText={t("authentication-help:alias")}
fieldLabelId="authentication:alias"
/>
}

View file

@ -15,7 +15,7 @@ import { useEffect, useState } from "react";
import { Controller, useForm } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient, useFetch } from "../../../context/auth/AdminClient";
@ -99,7 +99,10 @@ export const AddSubFlowModal = ({
errors.name ? ValidatedOptions.error : ValidatedOptions.default
}
labelIcon={
<HelpItem helpText="authentication-help:name" fieldLabelId="name" />
<HelpItem
helpText={t("authentication-help:name")}
fieldLabelId="name"
/>
}
isRequired
>
@ -117,7 +120,7 @@ export const AddSubFlowModal = ({
fieldId="description"
labelIcon={
<HelpItem
helpText="authentication-help:description"
helpText={t("authentication-help:description")}
fieldLabelId="description"
/>
}
@ -133,7 +136,7 @@ export const AddSubFlowModal = ({
fieldId="flowType"
labelIcon={
<HelpItem
helpText="authentication-help:flowType"
helpText={t("authentication-help:flowType")}
fieldLabelId="authentication:flowType"
/>
}
@ -173,7 +176,7 @@ export const AddSubFlowModal = ({
label={t("flowType")}
labelIcon={
<HelpItem
helpText="authentication-help:flowType"
helpText={t("authentication-help:flowType")}
fieldLabelId="authentication:flowType"
/>
}

View file

@ -9,7 +9,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
const TYPES = ["basic-flow", "client-flow"] as const;
@ -23,7 +23,7 @@ export const FlowType = () => {
label={t("flowType")}
labelIcon={
<HelpItem
helpText="authentication-help:topLevelFlowType"
helpText={t("authentication-help:topLevelFlowType")}
fieldLabelId="authentication:flowType"
/>
}

View file

@ -3,7 +3,7 @@ import { FormGroup, ValidatedOptions } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
@ -24,7 +24,10 @@ export const NameDescription = () => {
errors.alias ? ValidatedOptions.error : ValidatedOptions.default
}
labelIcon={
<HelpItem helpText="authentication-help:name" fieldLabelId="name" />
<HelpItem
helpText={t("authentication-help:name")}
fieldLabelId="name"
/>
}
isRequired
>
@ -42,7 +45,7 @@ export const NameDescription = () => {
fieldId="kc-description"
labelIcon={
<HelpItem
helpText="authentication-help:description"
helpText={t("authentication-help:description")}
fieldLabelId="description"
/>
}

View file

@ -18,7 +18,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient } from "../../context/auth/AdminClient";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -95,7 +95,9 @@ export const CibaPolicy = ({ realm, realmUpdated }: CibaPolicyProps) => {
label={t("cibaBackchannelTokenDeliveryMode")}
labelIcon={
<HelpItem
helpText="authentication-help:cibaBackchannelTokenDeliveryMode"
helpText={t(
"authentication-help:cibaBackchannelTokenDeliveryMode"
)}
fieldLabelId="authentication:cibaBackchannelTokenDeliveryMode"
/>
}
@ -136,7 +138,7 @@ export const CibaPolicy = ({ realm, realmUpdated }: CibaPolicyProps) => {
label={t("cibaExpiresIn")}
labelIcon={
<HelpItem
helpText="authentication-help:cibaExpiresIn"
helpText={t("authentication-help:cibaExpiresIn")}
fieldLabelId="authentication:cibaExpiresIn"
/>
}
@ -180,7 +182,7 @@ export const CibaPolicy = ({ realm, realmUpdated }: CibaPolicyProps) => {
label={t("cibaInterval")}
labelIcon={
<HelpItem
helpText="authentication-help:cibaInterval"
helpText={t("authentication-help:cibaInterval")}
fieldLabelId="authentication:cibaInterval"
/>
}
@ -222,7 +224,7 @@ export const CibaPolicy = ({ realm, realmUpdated }: CibaPolicyProps) => {
label={t("cibaAuthRequestedUserHint")}
labelIcon={
<HelpItem
helpText="authentication-help:cibaAuthRequestedUserHint"
helpText={t("authentication-help:cibaAuthRequestedUserHint")}
fieldLabelId="authentication:cibaAuthRequestedUserHint"
/>
}

View file

@ -22,7 +22,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { TimeSelector } from "../../components/time-selector/TimeSelector";
import { useAdminClient } from "../../context/auth/AdminClient";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -103,7 +103,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
label={t("otpType")}
labelIcon={
<HelpItem
helpText="authentication-help:otpType"
helpText={t("authentication-help:otpType")}
fieldLabelId="authentication:otpType"
/>
}
@ -136,7 +136,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
label={t("otpHashAlgorithm")}
labelIcon={
<HelpItem
helpText="authentication-help:otpHashAlgorithm"
helpText={t("authentication-help:otpHashAlgorithm")}
fieldLabelId="authentication:otpHashAlgorithm"
/>
}
@ -175,7 +175,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
label={t("otpPolicyDigits")}
labelIcon={
<HelpItem
helpText="authentication-help:otpPolicyDigits"
helpText={t("authentication-help:otpPolicyDigits")}
fieldLabelId="authentication:otpPolicyDigits"
/>
}
@ -208,7 +208,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
label={t("lookAhead")}
labelIcon={
<HelpItem
helpText="authentication-help:lookAhead"
helpText={t("authentication-help:lookAhead")}
fieldLabelId="authentication:lookAhead"
/>
}
@ -252,7 +252,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
}
labelIcon={
<HelpItem
helpText="authentication-help:otpPolicyPeriod"
helpText={t("authentication-help:otpPolicyPeriod")}
fieldLabelId="authentication:otpPolicyPeriod"
/>
}
@ -295,7 +295,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
}
labelIcon={
<HelpItem
helpText="authentication-help:initialCounter"
helpText={t("authentication-help:initialCounter")}
fieldLabelId="authentication:initialCounter"
/>
}
@ -332,7 +332,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
label={t("supportedApplications")}
labelIcon={
<HelpItem
helpText="authentication-help:supportedApplications"
helpText={t("authentication-help:supportedApplications")}
fieldLabelId="authentication:supportedApplications"
/>
}
@ -352,7 +352,7 @@ export const OtpPolicy = ({ realm, realmUpdated }: OtpPolicyProps) => {
fieldId="otpPolicyCodeReusable"
labelIcon={
<HelpItem
helpText="authentication-help:otpPolicyCodeReusable"
helpText={t("authentication-help:otpPolicyCodeReusable")}
fieldLabelId="authentication:otpPolicyCodeReusable"
/>
}

View file

@ -12,7 +12,7 @@ import { MinusCircleIcon } from "@patternfly/react-icons";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import "./policy-row.css";
@ -44,7 +44,7 @@ export const PolicyRow = ({
}
labelIcon={
<HelpItem
helpText={`authentication-help:passwordPolicies.${id}`}
helpText={t(`authentication-help:passwordPolicies.${id}`)}
fieldLabelId={`authentication:${id}`}
/>
}

View file

@ -26,8 +26,7 @@ import { useTranslation } from "react-i18next";
import type RealmRepresentation from "@keycloak/keycloak-admin-client/lib/defs/realmRepresentation";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { useHelp } from "../../components/help-enabler/HelpHeader";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { useHelp, HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { MultiLineInput } from "../../components/multi-line-input/MultiLineInput";
import { TimeSelector } from "../../components/time-selector/TimeSelector";
@ -92,7 +91,7 @@ const WebauthnSelect = ({
label={t(label)}
labelIcon={
<HelpItem
helpText={`authentication-help:${label}`}
helpText={t(`authentication-help:${label}`)}
fieldLabelId={`authentication:${label}`}
/>
}
@ -219,7 +218,7 @@ export const WebauthnPolicy = ({
isRequired
labelIcon={
<HelpItem
helpText="authentication-help:webAuthnPolicyRpEntityName"
helpText={t("authentication-help:webAuthnPolicyRpEntityName")}
fieldLabelId="authentication:webAuthnPolicyRpEntityName"
/>
}
@ -242,7 +241,7 @@ export const WebauthnPolicy = ({
label={t("webAuthnPolicyRpId")}
labelIcon={
<HelpItem
helpText="authentication-help:webAuthnPolicyRpId"
helpText={t("authentication-help:webAuthnPolicyRpId")}
fieldLabelId="authentication:webAuthnPolicyRpId"
/>
}
@ -285,7 +284,7 @@ export const WebauthnPolicy = ({
validated={errors.webAuthnPolicyCreateTimeout ? "error" : "default"}
labelIcon={
<HelpItem
helpText="authentication-help:webAuthnPolicyCreateTimeout"
helpText={t("authentication-help:webAuthnPolicyCreateTimeout")}
fieldLabelId="authentication:webAuthnPolicyCreateTimeout"
/>
}
@ -314,7 +313,9 @@ export const WebauthnPolicy = ({
fieldId="webAuthnPolicyAvoidSameAuthenticatorRegister"
labelIcon={
<HelpItem
helpText="authentication-help:webAuthnPolicyAvoidSameAuthenticatorRegister"
helpText={t(
"authentication-help:webAuthnPolicyAvoidSameAuthenticatorRegister"
)}
fieldLabelId="authentication:webAuthnPolicyAvoidSameAuthenticatorRegister"
/>
}
@ -340,7 +341,9 @@ export const WebauthnPolicy = ({
fieldId="webAuthnPolicyAcceptableAaguids"
labelIcon={
<HelpItem
helpText="authentication-help:webAuthnPolicyAcceptableAaguids"
helpText={t(
"authentication-help:webAuthnPolicyAcceptableAaguids"
)}
fieldLabelId="authentication:webAuthnPolicyAcceptableAaguids"
/>
}

View file

@ -23,7 +23,7 @@ import {
ClientScopeDefaultOptionalType,
} from "../components/client-scope/ClientScopeTypes";
import { useConfirmDialog } from "../components/confirm-dialog/ConfirmDialog";
import { useHelp } from "../components/help-enabler/HelpHeader";
import { useHelp } from "ui-shared";
import { KeycloakSpinner } from "../components/keycloak-spinner/KeycloakSpinner";
import { RoleMapping, Row } from "../components/role-mapping/RoleMapping";
import {

View file

@ -20,7 +20,7 @@ import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { DynamicComponents } from "../../components/dynamic/DynamicComponents";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { ViewHeader } from "../../components/view-header/ViewHeader";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
@ -221,7 +221,7 @@ export default function MappingDetails() {
label={t("common:name")}
labelIcon={
<HelpItem
helpText="client-scopes-help:mapperName"
helpText={t("client-scopes-help:mapperName")}
fieldLabelId="name"
/>
}

View file

@ -21,7 +21,7 @@ import {
clientScopeTypesSelectOptions,
} from "../../components/client-scope/ClientScopeTypes";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -70,7 +70,10 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
<FormGroup
label={t("common:name")}
labelIcon={
<HelpItem helpText="client-scopes-help:name" fieldLabelId="name" />
<HelpItem
helpText={t("client-scopes-help:name")}
fieldLabelId="name"
/>
}
fieldId="kc-name"
validated={
@ -92,7 +95,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("common:description")}
labelIcon={
<HelpItem
helpText="client-scopes-help:description"
helpText={t("client-scopes-help:description")}
fieldLabelId="description"
/>
}
@ -118,7 +121,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("type")}
labelIcon={
<HelpItem
helpText="client-scopes-help:type"
helpText={t("client-scopes-help:type")}
fieldLabelId="client-scopes:type"
/>
}
@ -150,7 +153,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("protocol")}
labelIcon={
<HelpItem
helpText="client-scopes-help:protocol"
helpText={t("client-scopes-help:protocol")}
fieldLabelId="client-scopes:protocol"
/>
}
@ -192,7 +195,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("displayOnConsentScreen")}
labelIcon={
<HelpItem
helpText="client-scopes-help:displayOnConsentScreen"
helpText={t("client-scopes-help:displayOnConsentScreen")}
fieldLabelId="client-scopes:displayOnConsentScreen"
/>
}
@ -220,7 +223,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("consentScreenText")}
labelIcon={
<HelpItem
helpText="client-scopes-help:consentScreenText"
helpText={t("client-scopes-help:consentScreenText")}
fieldLabelId="client-scopes:consentScreenText"
/>
}
@ -241,7 +244,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("includeInTokenScope")}
labelIcon={
<HelpItem
helpText="client-scopes-help:includeInTokenScope"
helpText={t("client-scopes-help:includeInTokenScope")}
fieldLabelId="client-scopes:includeInTokenScope"
/>
}
@ -268,7 +271,7 @@ export const ScopeForm = ({ clientScope, save }: ScopeFormProps) => {
label={t("guiOrder")}
labelIcon={
<HelpItem
helpText="client-scopes-help:guiOrder"
helpText={t("client-scopes-help:guiOrder")}
fieldLabelId="client-scopes:guiOrder"
/>
}

View file

@ -1,9 +1,9 @@
import { FormGroup, Switch, ValidatedOptions } from "@patternfly/react-core";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "ui-shared";
import { FormAccess } from "../components/form-access/FormAccess";
import { HelpItem } from "../components/help-enabler/HelpItem";
import { KeycloakTextArea } from "../components/keycloak-text-area/KeycloakTextArea";
import { KeycloakTextInput } from "../components/keycloak-text-input/KeycloakTextInput";
import { FormFields } from "./ClientDetails";
@ -47,7 +47,10 @@ export const ClientDescription = ({
</FormGroup>
<FormGroup
labelIcon={
<HelpItem helpText="clients-help:clientName" fieldLabelId="name" />
<HelpItem
helpText={t("clients-help:clientName")}
fieldLabelId="name"
/>
}
label={t("common:name")}
fieldId="kc-name"
@ -57,7 +60,7 @@ export const ClientDescription = ({
<FormGroup
labelIcon={
<HelpItem
helpText="clients-help:description"
helpText={t("clients-help:description")}
fieldLabelId="description"
/>
}
@ -87,7 +90,7 @@ export const ClientDescription = ({
label={t("alwaysDisplayInUI")}
labelIcon={
<HelpItem
helpText="clients-help:alwaysDisplayInUI"
helpText={t("clients-help:alwaysDisplayInUI")}
fieldLabelId="clients:alwaysDisplayInUI"
/>
}

View file

@ -3,7 +3,7 @@ import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAccess } from "../../context/access/Access";
import { SaveReset } from "../advanced/SaveReset";
@ -37,7 +37,7 @@ export const AccessSettings = ({
fieldId="kc-admin-url"
labelIcon={
<HelpItem
helpText="clients-help:adminURL"
helpText={t("clients-help:adminURL")}
fieldLabelId="clients:adminURL"
/>
}

View file

@ -11,7 +11,7 @@ import { useTranslation } from "react-i18next";
import type ClientRepresentation from "@keycloak/keycloak-admin-client/lib/defs/clientRepresentation";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
@ -48,7 +48,7 @@ export const CapabilityConfig = ({
fieldId="kc-authentication"
labelIcon={
<HelpItem
helpText="clients-help:authentication"
helpText={t("clients-help:authentication")}
fieldLabelId="clients:authentication"
/>
}
@ -88,7 +88,7 @@ export const CapabilityConfig = ({
fieldId="kc-authorization"
labelIcon={
<HelpItem
helpText="clients-help:authorization"
helpText={t("clients-help:authorization")}
fieldLabelId="clients:authorization"
/>
}
@ -137,7 +137,7 @@ export const CapabilityConfig = ({
onChange={field.onChange}
/>
<HelpItem
helpText="clients-help:standardFlow"
helpText={t("clients-help:standardFlow")}
fieldLabelId="clients:standardFlow"
/>
</InputGroup>
@ -159,7 +159,7 @@ export const CapabilityConfig = ({
onChange={field.onChange}
/>
<HelpItem
helpText="clients-help:directAccess"
helpText={t("clients-help:directAccess")}
fieldLabelId="clients:directAccess"
/>
</InputGroup>
@ -181,7 +181,7 @@ export const CapabilityConfig = ({
onChange={field.onChange}
/>
<HelpItem
helpText="clients-help:implicitFlow"
helpText={t("clients-help:implicitFlow")}
fieldLabelId="clients:implicitFlow"
/>
</InputGroup>
@ -210,7 +210,7 @@ export const CapabilityConfig = ({
}
/>
<HelpItem
helpText="clients-help:serviceAccount"
helpText={t("clients-help:serviceAccount")}
fieldLabelId="clients:serviceAccount"
/>
</InputGroup>
@ -235,7 +235,9 @@ export const CapabilityConfig = ({
onChange={field.onChange}
/>
<HelpItem
helpText="clients-help:oauthDeviceAuthorizationGrant"
helpText={t(
"clients-help:oauthDeviceAuthorizationGrant"
)}
fieldLabelId="clients:oauthDeviceAuthorizationGrant"
/>
</InputGroup>
@ -261,7 +263,7 @@ export const CapabilityConfig = ({
isDisabled={clientAuthentication}
/>
<HelpItem
helpText="clients-help:oidcCibaGrant"
helpText={t("clients-help:oidcCibaGrant")}
fieldLabelId="clients:oidcCibaGrant"
/>
</InputGroup>
@ -277,7 +279,7 @@ export const CapabilityConfig = ({
<FormGroup
labelIcon={
<HelpItem
helpText="clients-help:encryptAssertions"
helpText={t("clients-help:encryptAssertions")}
fieldLabelId="clients:encryptAssertions"
/>
}
@ -307,7 +309,7 @@ export const CapabilityConfig = ({
<FormGroup
labelIcon={
<HelpItem
helpText="clients-help:clientSignature"
helpText={t("clients-help:clientSignature")}
fieldLabelId="clients:clientSignature"
/>
}

View file

@ -9,7 +9,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useLoginProviders } from "../../context/server-info/ServerInfoProvider";
import { ClientDescription } from "../ClientDescription";
import { getProtocolName } from "../utils";
@ -32,7 +32,7 @@ export const GeneralSettings = () => {
validated={errors.protocol ? "error" : "default"}
labelIcon={
<HelpItem
helpText="clients-help:clientType"
helpText={t("clients-help:clientType")}
fieldLabelId="clients:clientType"
/>
}

View file

@ -2,7 +2,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { MultiLineInput } from "../../components/multi-line-input/MultiLineInput";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -31,7 +31,7 @@ export const LoginSettings = ({
fieldId="kc-root-url"
labelIcon={
<HelpItem
helpText="clients-help:rootURL"
helpText={t("clients-help:rootURL")}
fieldLabelId="clients:rootUrl"
/>
}
@ -47,7 +47,7 @@ export const LoginSettings = ({
fieldId="kc-home-url"
labelIcon={
<HelpItem
helpText="clients-help:homeURL"
helpText={t("clients-help:homeURL")}
fieldLabelId="clients:homeURL"
/>
}
@ -63,7 +63,7 @@ export const LoginSettings = ({
fieldId="kc-redirect"
labelIcon={
<HelpItem
helpText="clients-help:validRedirectURIs"
helpText={t("clients-help:validRedirectURIs")}
fieldLabelId="clients:validRedirectUri"
/>
}
@ -80,7 +80,7 @@ export const LoginSettings = ({
fieldId="kc-postLogoutRedirect"
labelIcon={
<HelpItem
helpText="clients-help:validPostLogoutRedirectURIs"
helpText={t("clients-help:validPostLogoutRedirectURIs")}
fieldLabelId="clients:validPostLogoutRedirectUri"
/>
}
@ -102,7 +102,7 @@ export const LoginSettings = ({
fieldId="idpInitiatedSsoUrlName"
labelIcon={
<HelpItem
helpText="clients-help:idpInitiatedSsoUrlName"
helpText={t("clients-help:idpInitiatedSsoUrlName")}
fieldLabelId="clients:idpInitiatedSsoUrlName"
/>
}
@ -124,7 +124,7 @@ export const LoginSettings = ({
fieldId="idpInitiatedSsoRelayState"
labelIcon={
<HelpItem
helpText="clients-help:idpInitiatedSsoRelayState"
helpText={t("clients-help:idpInitiatedSsoRelayState")}
fieldLabelId="clients:idpInitiatedSsoRelayState"
/>
}
@ -140,7 +140,7 @@ export const LoginSettings = ({
fieldId="masterSamlProcessingUrl"
labelIcon={
<HelpItem
helpText="clients-help:masterSamlProcessingUrl"
helpText={t("clients-help:masterSamlProcessingUrl")}
fieldLabelId="clients:masterSamlProcessingUrl"
/>
}
@ -160,7 +160,7 @@ export const LoginSettings = ({
fieldId="kc-web-origins"
labelIcon={
<HelpItem
helpText="clients-help:webOrigins"
helpText={t("clients-help:webOrigins")}
fieldLabelId="clients:webOrigins"
/>
}

View file

@ -10,7 +10,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
import { convertAttributeNameToForm } from "../../util";
@ -35,7 +35,7 @@ export const LoginSettingsPanel = ({ access }: { access?: boolean }) => {
label={t("loginTheme")}
labelIcon={
<HelpItem
helpText="clients-help:loginTheme"
helpText={t("clients-help:loginTheme")}
fieldLabelId="clients:loginTheme"
/>
}
@ -78,7 +78,7 @@ export const LoginSettingsPanel = ({ access }: { access?: boolean }) => {
label={t("consentRequired")}
labelIcon={
<HelpItem
helpText="clients-help:consentRequired"
helpText={t("clients-help:consentRequired")}
fieldLabelId="clients:consentRequired"
/>
}
@ -105,7 +105,7 @@ export const LoginSettingsPanel = ({ access }: { access?: boolean }) => {
label={t("displayOnClient")}
labelIcon={
<HelpItem
helpText="clients-help:displayOnClient"
helpText={t("clients-help:displayOnClient")}
fieldLabelId="clients:displayOnClient"
/>
}
@ -135,7 +135,7 @@ export const LoginSettingsPanel = ({ access }: { access?: boolean }) => {
label={t("consentScreenText")}
labelIcon={
<HelpItem
helpText="clients-help:consentScreenText"
helpText={t("clients-help:consentScreenText")}
fieldLabelId="clients:consentScreenText"
/>
}

View file

@ -3,7 +3,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAccess } from "../../context/access/Access";
import { beerify, convertAttributeNameToForm } from "../../util";
@ -40,7 +40,7 @@ export const LogoutPanel = ({
label={t("frontchannelLogout")}
labelIcon={
<HelpItem
helpText="clients-help:frontchannelLogout"
helpText={t("clients-help:frontchannelLogout")}
fieldLabelId="clients:frontchannelLogout"
/>
}
@ -69,7 +69,7 @@ export const LogoutPanel = ({
fieldId="frontchannelLogoutUrl"
labelIcon={
<HelpItem
helpText="clients-help:frontchannelLogoutUrl"
helpText={t("clients-help:frontchannelLogoutUrl")}
fieldLabelId="clients:frontchannelLogoutUrl"
/>
}
@ -113,7 +113,7 @@ export const LogoutPanel = ({
fieldId="backchannelLogoutUrl"
labelIcon={
<HelpItem
helpText="clients-help:backchannelLogoutUrl"
helpText={t("clients-help:backchannelLogoutUrl")}
fieldLabelId="clients:backchannelLogoutUrl"
/>
}
@ -154,7 +154,7 @@ export const LogoutPanel = ({
label={t("backchannelLogoutSessionRequired")}
labelIcon={
<HelpItem
helpText="clients-help:backchannelLogoutSessionRequired"
helpText={t("clients-help:backchannelLogoutSessionRequired")}
fieldLabelId="clients:backchannelLogoutSessionRequired"
/>
}
@ -183,7 +183,9 @@ export const LogoutPanel = ({
label={t("backchannelLogoutRevokeOfflineSessions")}
labelIcon={
<HelpItem
helpText="clients-help:backchannelLogoutRevokeOfflineSessions"
helpText={t(
"clients-help:backchannelLogoutRevokeOfflineSessions"
)}
fieldLabelId="clients:backchannelLogoutRevokeOfflineSessions"
/>
}

View file

@ -10,7 +10,7 @@ import { Controller, Path, PathValue, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
@ -70,7 +70,7 @@ export const SamlConfig = () => {
fieldId="nameIdFormat"
labelIcon={
<HelpItem
helpText="clients-help:nameIdFormat"
helpText={t("clients-help:nameIdFormat")}
fieldLabelId="clients:nameIdFormat"
/>
}

View file

@ -9,7 +9,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
import { Toggle } from "./SamlConfig";
@ -79,7 +79,7 @@ export const SamlSignature = () => {
fieldId="signatureAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:signatureAlgorithm"
helpText={t("clients-help:signatureAlgorithm")}
fieldLabelId="clients:signatureAlgorithm"
/>
}
@ -119,7 +119,7 @@ export const SamlSignature = () => {
fieldId="signatureKeyName"
labelIcon={
<HelpItem
helpText="clients-help:signatureKeyName"
helpText={t("clients-help:signatureKeyName")}
fieldLabelId="clients:signatureKeyName"
/>
}
@ -159,7 +159,7 @@ export const SamlSignature = () => {
fieldId="canonicalization"
labelIcon={
<HelpItem
helpText="clients-help:canonicalization"
helpText={t("clients-help:canonicalization")}
fieldLabelId="clients:canonicalization"
/>
}

View file

@ -13,7 +13,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeyValueInput } from "../../components/key-value-form/KeyValueInput";
import { MultiLineInput } from "../../components/multi-line-input/MultiLineInput";
import { TimeSelector } from "../../components/time-selector/TimeSelector";
@ -62,7 +62,7 @@ export const AdvancedSettings = ({
fieldId="assertionLifespan"
labelIcon={
<HelpItem
helpText="clients-help:assertionLifespan"
helpText={t("clients-help:assertionLifespan")}
fieldLabelId="clients:assertionLifespan"
/>
}
@ -136,7 +136,7 @@ export const AdvancedSettings = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:oAuthMutual"
helpText={t("clients-help:oAuthMutual")}
fieldLabelId="clients:oAuthMutual"
/>
}
@ -165,7 +165,7 @@ export const AdvancedSettings = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:keyForCodeExchange"
helpText={t("clients-help:keyForCodeExchange")}
fieldLabelId="clients:keyForCodeExchange"
/>
}
@ -202,7 +202,7 @@ export const AdvancedSettings = ({
fieldId="pushedAuthorizationRequestRequired"
labelIcon={
<HelpItem
helpText="clients-help:pushedAuthorizationRequestRequired"
helpText={t("clients-help:pushedAuthorizationRequestRequired")}
fieldLabelId="clients:pushedAuthorizationRequestRequired"
/>
}
@ -230,7 +230,7 @@ export const AdvancedSettings = ({
fieldId="acrToLoAMapping"
labelIcon={
<HelpItem
helpText="clients-help:acrToLoAMapping"
helpText={t("clients-help:acrToLoAMapping")}
fieldLabelId="clients:acrToLoAMapping"
/>
}
@ -244,7 +244,7 @@ export const AdvancedSettings = ({
fieldId="defaultACRValues"
labelIcon={
<HelpItem
helpText="clients-help:defaultACRValues"
helpText={t("clients-help:defaultACRValues")}
fieldLabelId="clients:defaultACRValues"
/>
}

View file

@ -2,7 +2,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
@ -18,7 +18,7 @@ export const ApplicationUrls = () => {
fieldId="logoUrl"
labelIcon={
<HelpItem
helpText="clients-help:logoUrl"
helpText={t("clients-help:logoUrl")}
fieldLabelId="clients:logoUrl"
/>
}
@ -37,7 +37,7 @@ export const ApplicationUrls = () => {
fieldId="policyUrl"
labelIcon={
<HelpItem
helpText="clients-help:policyUrl"
helpText={t("clients-help:policyUrl")}
fieldLabelId="clients:policyUrl"
/>
}
@ -56,7 +56,7 @@ export const ApplicationUrls = () => {
fieldId="termsOfServiceUrl"
labelIcon={
<HelpItem
helpText="clients-help:termsOfServiceUrl"
helpText={t("clients-help:termsOfServiceUrl")}
fieldLabelId="clients:termsOfServiceUrl"
/>
}

View file

@ -12,7 +12,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
type AuthenticationOverridesProps = {
@ -68,7 +68,7 @@ export const AuthenticationOverrides = ({
fieldId="browserFlow"
labelIcon={
<HelpItem
helpText="clients-help:browserFlow"
helpText={t("clients-help:browserFlow")}
fieldLabelId="clients:browserFlow"
/>
}
@ -100,7 +100,7 @@ export const AuthenticationOverrides = ({
fieldId="directGrant"
labelIcon={
<HelpItem
helpText="clients-help:directGrant"
helpText={t("clients-help:directGrant")}
fieldLabelId="clients:directGrant"
/>
}

View file

@ -15,7 +15,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { ListEmptyState } from "../../components/list-empty-state/ListEmptyState";
import { KeycloakDataTable } from "../../components/table-toolbar/KeycloakDataTable";
import { TimeSelector } from "../../components/time-selector/TimeSelector";
@ -87,7 +87,7 @@ export const ClusteringPanel = ({
fieldId="kc-node-reregistration-timeout"
labelIcon={
<HelpItem
helpText="clients-help:nodeReRegistrationTimeout"
helpText={t("clients-help:nodeReRegistrationTimeout")}
fieldLabelId="clients:nodeReRegistrationTimeout"
/>
}

View file

@ -11,7 +11,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { MultiLineInput } from "../../components/multi-line-input/MultiLineInput";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
import { convertAttributeNameToForm, sortProviders } from "../../util";
@ -165,7 +165,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="accessTokenSignatureAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:accessTokenSignatureAlgorithm"
helpText={t("clients-help:accessTokenSignatureAlgorithm")}
fieldLabelId="clients:accessTokenSignatureAlgorithm"
/>
}
@ -198,7 +198,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="kc-id-token-signature"
labelIcon={
<HelpItem
helpText="clients-help:idTokenSignatureAlgorithm"
helpText={t("clients-help:idTokenSignatureAlgorithm")}
fieldLabelId="clients:idTokenSignatureAlgorithm"
/>
}
@ -231,7 +231,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="idTokenEncryptionKeyManagementAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:idTokenEncryptionKeyManagementAlgorithm"
helpText={t("clients-help:idTokenEncryptionKeyManagementAlgorithm")}
fieldLabelId="clients:idTokenEncryptionKeyManagementAlgorithm"
/>
}
@ -264,7 +264,9 @@ export const FineGrainOpenIdConnect = ({
fieldId="idTokenEncryptionContentEncryptionAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:idTokenEncryptionContentEncryptionAlgorithm"
helpText={t(
"clients-help:idTokenEncryptionContentEncryptionAlgorithm"
)}
fieldLabelId="clients:idTokenEncryptionContentEncryptionAlgorithm"
/>
}
@ -297,7 +299,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="userInfoSignedResponseAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:userInfoSignedResponseAlgorithm"
helpText={t("clients-help:userInfoSignedResponseAlgorithm")}
fieldLabelId="clients:userInfoSignedResponseAlgorithm"
/>
}
@ -330,7 +332,9 @@ export const FineGrainOpenIdConnect = ({
fieldId="userInfoResponseEncryptionKeyManagementAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:userInfoResponseEncryptionKeyManagementAlgorithm"
helpText={t(
"clients-help:userInfoResponseEncryptionKeyManagementAlgorithm"
)}
fieldLabelId="clients:userInfoResponseEncryptionKeyManagementAlgorithm"
/>
}
@ -363,7 +367,9 @@ export const FineGrainOpenIdConnect = ({
fieldId="userInfoResponseEncryptionContentEncryptionAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:userInfoResponseEncryptionContentEncryptionAlgorithm"
helpText={t(
"clients-help:userInfoResponseEncryptionContentEncryptionAlgorithm"
)}
fieldLabelId="clients:userInfoResponseEncryptionContentEncryptionAlgorithm"
/>
}
@ -396,7 +402,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="requestObjectSignatureAlgorithm"
labelIcon={
<HelpItem
helpText="clients-help:requestObjectSignatureAlgorithm"
helpText={t("clients-help:requestObjectSignatureAlgorithm")}
fieldLabelId="clients:requestObjectSignatureAlgorithm"
/>
}
@ -429,7 +435,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="requestObjectEncryption"
labelIcon={
<HelpItem
helpText="clients-help:requestObjectEncryption"
helpText={t("clients-help:requestObjectEncryption")}
fieldLabelId="clients:requestObjectEncryption"
/>
}
@ -462,7 +468,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="requestObjectEncoding"
labelIcon={
<HelpItem
helpText="clients-help:requestObjectEncoding"
helpText={t("clients-help:requestObjectEncoding")}
fieldLabelId="clients:requestObjectEncoding"
/>
}
@ -495,7 +501,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="requestObjectRequired"
labelIcon={
<HelpItem
helpText="clients-help:requestObjectRequired"
helpText={t("clients-help:requestObjectRequired")}
fieldLabelId="clients:requestObjectRequired"
/>
}
@ -528,7 +534,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="validRequestURIs"
labelIcon={
<HelpItem
helpText="clients-help:validRequestURIs"
helpText={t("clients-help:validRequestURIs")}
fieldLabelId="clients:validRequestURIs"
/>
}
@ -545,7 +551,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="authorizationSignedResponseAlg"
labelIcon={
<HelpItem
helpText="clients-help:authorizationSignedResponseAlg"
helpText={t("clients-help:authorizationSignedResponseAlg")}
fieldLabelId="clients:authorizationSignedResponseAlg"
/>
}
@ -578,7 +584,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="authorizationEncryptedResponseAlg"
labelIcon={
<HelpItem
helpText="clients-help:authorizationEncryptedResponseAlg"
helpText={t("clients-help:authorizationEncryptedResponseAlg")}
fieldLabelId="clients:authorizationEncryptedResponseAlg"
/>
}
@ -611,7 +617,7 @@ export const FineGrainOpenIdConnect = ({
fieldId="authorizationEncryptedResponseEnc"
labelIcon={
<HelpItem
helpText="clients-help:authorizationEncryptedResponseEnc"
helpText={t("clients-help:authorizationEncryptedResponseEnc")}
fieldLabelId="clients:authorizationEncryptedResponseEnc"
/>
}

View file

@ -3,7 +3,7 @@ import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { ApplicationUrls } from "./ApplicationUrls";
@ -26,7 +26,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="assertionConsumerServicePostBindingURL"
labelIcon={
<HelpItem
helpText="clients-help:assertionConsumerServicePostBindingURL"
helpText={t("clients-help:assertionConsumerServicePostBindingURL")}
fieldLabelId="clients:assertionConsumerServicePostBindingURL"
/>
}
@ -42,7 +42,9 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="assertionConsumerServiceRedirectBindingURL"
labelIcon={
<HelpItem
helpText="clients-help:assertionConsumerServiceRedirectBindingURL"
helpText={t(
"clients-help:assertionConsumerServiceRedirectBindingURL"
)}
fieldLabelId="clients:assertionConsumerServiceRedirectBindingURL"
/>
}
@ -58,7 +60,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="logoutServicePostBindingURL"
labelIcon={
<HelpItem
helpText="clients-help:logoutServicePostBindingURL"
helpText={t("clients-help:logoutServicePostBindingURL")}
fieldLabelId="clients:logoutServicePostBindingURL"
/>
}
@ -74,7 +76,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="logoutServiceRedirectBindingURL"
labelIcon={
<HelpItem
helpText="clients-help:logoutServiceRedirectBindingURL"
helpText={t("clients-help:logoutServiceRedirectBindingURL")}
fieldLabelId="clients:logoutServiceRedirectBindingURL"
/>
}
@ -90,7 +92,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="logoutServiceArtifactBindingUrl"
labelIcon={
<HelpItem
helpText="clients-help:logoutServiceArtifactBindingUrl"
helpText={t("clients-help:logoutServiceArtifactBindingUrl")}
fieldLabelId="clients:logoutServiceArtifactBindingUrl"
/>
}
@ -106,7 +108,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="artifactBindingUrl"
labelIcon={
<HelpItem
helpText="clients-help:artifactBindingUrl"
helpText={t("clients-help:artifactBindingUrl")}
fieldLabelId="clients:artifactBindingUrl"
/>
}
@ -122,7 +124,7 @@ export const FineGrainSamlEndpointConfig = ({
fieldId="artifactResolutionService"
labelIcon={
<HelpItem
helpText="clients-help:artifactResolutionService"
helpText={t("clients-help:artifactResolutionService")}
fieldLabelId="clients:artifactResolutionService"
/>
}

View file

@ -3,7 +3,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
@ -32,7 +32,9 @@ export const OpenIdConnectCompatibilityModes = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:excludeSessionStateFromAuthenticationResponse"
helpText={t(
"clients-help:excludeSessionStateFromAuthenticationResponse"
)}
fieldLabelId="clients:excludeSessionStateFromAuthenticationResponse"
/>
}
@ -61,7 +63,7 @@ export const OpenIdConnectCompatibilityModes = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:useRefreshTokens"
helpText={t("clients-help:useRefreshTokens")}
fieldLabelId="clients:useRefreshTokens"
/>
}
@ -90,7 +92,9 @@ export const OpenIdConnectCompatibilityModes = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:useRefreshTokenForClientCredentialsGrant"
helpText={t(
"clients-help:useRefreshTokenForClientCredentialsGrant"
)}
fieldLabelId="clients:useRefreshTokenForClientCredentialsGrant"
/>
}
@ -119,7 +123,7 @@ export const OpenIdConnectCompatibilityModes = ({
hasNoPaddingTop
labelIcon={
<HelpItem
helpText="clients-help:useLowerCaseBearerType"
helpText={t("clients-help:useLowerCaseBearerType")}
fieldLabelId="clients:useLowerCaseBearerType"
/>
}

View file

@ -13,7 +13,7 @@ import { Link } from "react-router-dom";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient } from "../../context/auth/AdminClient";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -82,7 +82,7 @@ export const RevocationPanel = ({
fieldId="kc-not-before"
labelIcon={
<HelpItem
helpText="clients-help:notBefore"
helpText={t("clients-help:notBefore")}
fieldLabelId="clients:notBefore"
/>
}

View file

@ -10,7 +10,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import {
TimeSelector,
Unit,
@ -52,7 +52,7 @@ export const TokenLifespan = ({
fieldId={id}
labelIcon={
<HelpItem
helpText={`clients-help:${id}`}
helpText={t(`clients-help:${id}`)}
fieldLabelId={`clients:${id}`}
/>
}

View file

@ -23,7 +23,7 @@ import type ScopeRepresentation from "@keycloak/keycloak-admin-client/lib/defs/s
import { ClientSelect } from "../../components/client/ClientSelect";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import {
keyValueToArray,
KeyValueType,
@ -209,7 +209,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
<UserSelect
name="user"
label="users"
helpText="clients-help:selectUser"
helpText={t("clients-help:selectUser")}
defaultValue={[]}
variant={SelectVariant.typeahead}
isRequired={roles?.length === 0}
@ -218,7 +218,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
label={t("roles")}
labelIcon={
<HelpItem
helpText="clients-help:roles"
helpText={t("clients-help:roles")}
fieldLabelId="clients:roles"
/>
}
@ -280,7 +280,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
fieldId="applyToResourceType"
labelIcon={
<HelpItem
helpText="clients-help:applyToResourceType"
helpText={t("clients-help:applyToResourceType")}
fieldLabelId="clients:applyToResourceType"
/>
}
@ -323,7 +323,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
isRequired
labelIcon={
<HelpItem
helpText="clients-help:resourceType"
helpText={t("clients-help:resourceType")}
fieldLabelId="clients:resourceType"
/>
}
@ -341,7 +341,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
label={t("authScopes")}
labelIcon={
<HelpItem
helpText="clients-help:scopesSelect"
helpText={t("clients-help:scopesSelect")}
fieldLabelId="clients:client"
/>
}

View file

@ -12,7 +12,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
@ -70,7 +70,7 @@ export const AuthorizationExport = () => {
label={t("authDetails")}
labelIcon={
<HelpItem
helpText="clients-help:authDetails"
helpText={t("clients-help:authDetails")}
fieldLabelId="clients:authDetails"
/>
}

View file

@ -2,7 +2,7 @@ import { FormGroup, Radio } from "@patternfly/react-core";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
const DECISION_STRATEGY = ["UNANIMOUS", "AFFIRMATIVE", "CONSENSUS"] as const;
@ -23,7 +23,7 @@ export const DecisionStrategySelect = ({
label={t("decisionStrategy")}
labelIcon={
<HelpItem
helpText={`clients-help:${helpLabel || "decisionStrategy"}`}
helpText={t(`clients-help:${helpLabel || "decisionStrategy"}`)}
fieldLabelId="clients:decisionStrategy"
/>
}

View file

@ -14,7 +14,7 @@ import {
import type ResourceServerRepresentation from "@keycloak/keycloak-admin-client/lib/defs/resourceServerRepresentation";
import { JsonFileUpload } from "../../components/json-file-upload/JsonFileUpload";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
type ImportDialogProps = {
onConfirm: (value: ResourceServerRepresentation) => void;
@ -67,7 +67,7 @@ export const ImportDialog = ({ onConfirm, closeDialog }: ImportDialogProps) => {
label={t("policyEnforcementMode")}
labelIcon={
<HelpItem
helpText="clients-help:policyEnforcementMode"
helpText={t("clients-help:policyEnforcementMode")}
fieldLabelId="clients:policyEnforcementMode"
/>
}
@ -89,7 +89,7 @@ export const ImportDialog = ({ onConfirm, closeDialog }: ImportDialogProps) => {
label={t("decisionStrategy")}
labelIcon={
<HelpItem
helpText="clients-help:decisionStrategy"
helpText={t("clients-help:decisionStrategy")}
fieldLabelId="clients:decisionStrategy"
/>
}

View file

@ -20,7 +20,7 @@ import { Link, useNavigate } from "react-router-dom";
import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
@ -215,7 +215,7 @@ export default function PermissionDetails() {
fieldId="name"
labelIcon={
<HelpItem
helpText="clients-help:permissionName"
helpText={t("clients-help:permissionName")}
fieldLabelId="name"
/>
}
@ -231,7 +231,7 @@ export default function PermissionDetails() {
fieldId="description"
labelIcon={
<HelpItem
helpText="clients-help:permissionDescription"
helpText={t("clients-help:permissionDescription")}
fieldLabelId="description"
/>
}
@ -254,7 +254,7 @@ export default function PermissionDetails() {
fieldId="applyToResourceTypeFlag"
labelIcon={
<HelpItem
helpText="clients-help:applyToResourceTypeFlag"
helpText={t("clients-help:applyToResourceTypeFlag")}
fieldLabelId="clients:applyToResourceTypeFlag"
/>
}
@ -275,7 +275,7 @@ export default function PermissionDetails() {
fieldId="name"
labelIcon={
<HelpItem
helpText="clients-help:resourceType"
helpText={t("clients-help:resourceType")}
fieldLabelId="resourceType"
/>
}
@ -294,7 +294,7 @@ export default function PermissionDetails() {
fieldId="resources"
labelIcon={
<HelpItem
helpText="clients-help:permissionResources"
helpText={t("clients-help:permissionResources")}
fieldLabelId="clients:resources"
/>
}
@ -324,7 +324,7 @@ export default function PermissionDetails() {
fieldId="scopes"
labelIcon={
<HelpItem
helpText="clients-help:permissionScopes"
helpText={t("clients-help:permissionScopes")}
fieldLabelId="clients:scopesSelect"
/>
}
@ -344,7 +344,7 @@ export default function PermissionDetails() {
fieldId="policies"
labelIcon={
<HelpItem
helpText="clients-help:permissionPolicies"
helpText={t("clients-help:permissionPolicies")}
fieldLabelId="clients:policies"
/>
}
@ -359,7 +359,7 @@ export default function PermissionDetails() {
label={t("decisionStrategy")}
labelIcon={
<HelpItem
helpText="clients-help:permissionDecisionStrategy"
helpText={t("clients-help:permissionDecisionStrategy")}
fieldLabelId="clients:decisionStrategy"
/>
}

View file

@ -21,7 +21,7 @@ import { Link, useNavigate } from "react-router-dom";
import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { KeyValueType } from "../../components/key-value-form/key-value-convert";
import { KeyValueInput } from "../../components/key-value-form/KeyValueInput";
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
@ -195,7 +195,7 @@ export default function ResourceDetails() {
fieldId="owner"
labelIcon={
<HelpItem
helpText="clients-help:owner"
helpText={t("clients-help:owner")}
fieldLabelId="clients:owner"
/>
}
@ -211,7 +211,7 @@ export default function ResourceDetails() {
fieldId="name"
labelIcon={
<HelpItem
helpText="clients-help:resourceName"
helpText={t("clients-help:resourceName")}
fieldLabelId="name"
/>
}
@ -236,7 +236,7 @@ export default function ResourceDetails() {
fieldId="displayName"
labelIcon={
<HelpItem
helpText="clients-help:displayName"
helpText={t("clients-help:displayName")}
fieldLabelId="name"
/>
}
@ -250,7 +250,10 @@ export default function ResourceDetails() {
label={t("type")}
fieldId="type"
labelIcon={
<HelpItem helpText="clients-help:type" fieldLabelId="type" />
<HelpItem
helpText={t("clients-help:type")}
fieldLabelId="type"
/>
}
>
<KeycloakTextInput id="type" {...register("type")} />
@ -260,7 +263,7 @@ export default function ResourceDetails() {
fieldId="uris"
labelIcon={
<HelpItem
helpText="clients-help:uris"
helpText={t("clients-help:uris")}
fieldLabelId="clients:uris"
/>
}
@ -278,7 +281,7 @@ export default function ResourceDetails() {
fieldId="iconUri"
labelIcon={
<HelpItem
helpText="clients-help:iconUri"
helpText={t("clients-help:iconUri")}
fieldLabelId="clients:iconUri"
/>
}
@ -294,7 +297,7 @@ export default function ResourceDetails() {
label={t("ownerManagedAccess")}
labelIcon={
<HelpItem
helpText="clients-help:ownerManagedAccess"
helpText={t("clients-help:ownerManagedAccess")}
fieldLabelId="clients:ownerManagedAccess"
/>
}
@ -322,7 +325,7 @@ export default function ResourceDetails() {
label={t("resourceAttribute")}
labelIcon={
<HelpItem
helpText="clients-help:resourceAttribute"
helpText={t("clients-help:resourceAttribute")}
fieldLabelId="clients:resourceAttribute"
/>
}

View file

@ -16,7 +16,7 @@ import { Link, useNavigate } from "react-router-dom";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { ViewHeader } from "../../components/view-header/ViewHeader";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
@ -134,7 +134,10 @@ export default function ScopeDetails() {
label={t("common:name")}
fieldId="name"
labelIcon={
<HelpItem helpText="clients-help:scopeName" fieldLabelId="name" />
<HelpItem
helpText={t("clients-help:scopeName")}
fieldLabelId="name"
/>
}
helperTextInvalid={t("common:required")}
validated={
@ -156,7 +159,7 @@ export default function ScopeDetails() {
fieldId="displayName"
labelIcon={
<HelpItem
helpText="clients-help:scopeDisplayName"
helpText={t("clients-help:scopeDisplayName")}
fieldLabelId="displayName"
/>
}
@ -168,7 +171,7 @@ export default function ScopeDetails() {
fieldId="iconUri"
labelIcon={
<HelpItem
helpText="clients-help:iconUri"
helpText={t("clients-help:iconUri")}
fieldLabelId="clients:iconUri"
/>
}

View file

@ -10,7 +10,7 @@ import {
import type ScopeRepresentation from "@keycloak/keycloak-admin-client/lib/defs/scopeRepresentation";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
type Scope = {
id: string;
@ -54,7 +54,7 @@ export const ScopePicker = ({ clientId }: { clientId: string }) => {
label={t("authorizationScopes")}
labelIcon={
<HelpItem
helpText="clients-help:scopes"
helpText={t("clients-help:scopes")}
fieldLabelId="clients:scopes"
/>
}

View file

@ -15,7 +15,7 @@ import type ResourceServerRepresentation from "@keycloak/keycloak-admin-client/l
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { SaveReset } from "../advanced/SaveReset";
import { ImportDialog } from "./ImportDialog";
import useToggle from "../../utils/useToggle";
@ -97,7 +97,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
fieldId="import"
labelIcon={
<HelpItem
helpText="clients-help:import"
helpText={t("clients-help:import")}
fieldLabelId="clients:import"
/>
}
@ -111,7 +111,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
label={t("policyEnforcementMode")}
labelIcon={
<HelpItem
helpText="clients-help:policyEnforcementMode"
helpText={t("clients-help:policyEnforcementMode")}
fieldLabelId="clients:policyEnforcementMode"
/>
}
@ -150,7 +150,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
fieldId="allowRemoteResourceManagement"
labelIcon={
<HelpItem
helpText="clients-help:allowRemoteResourceManagement"
helpText={t("clients-help:allowRemoteResourceManagement")}
fieldLabelId="clients:allowRemoteResourceManagement"
/>
}

View file

@ -1,7 +1,7 @@
import { FormGroup } from "@patternfly/react-core";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useParams } from "../../../utils/useParams";
import type { PolicyDetailsParams } from "../../routes/PolicyDetails";
import { DecisionStrategySelect } from "../DecisionStrategySelect";
@ -18,7 +18,7 @@ export const Aggregate = () => {
fieldId="policies"
labelIcon={
<HelpItem
helpText="clients-help:applyPolicy"
helpText={t("clients-help:applyPolicy")}
fieldLabelId="clients:policies"
/>
}

View file

@ -9,7 +9,7 @@ import {
import type { ClientQuery } from "@keycloak/keycloak-admin-client/lib/resources/clients";
import type ClientRepresentation from "@keycloak/keycloak-admin-client/lib/defs/clientRepresentation";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient, useFetch } from "../../../context/auth/AdminClient";
import { useTranslation } from "react-i18next";
@ -68,7 +68,7 @@ export const Client = () => {
label={t("clients")}
labelIcon={
<HelpItem
helpText="clients-help:policyClient"
helpText={t("clients-help:policyClient")}
fieldLabelId="clients:client"
/>
}

View file

@ -14,7 +14,7 @@ import {
import type ClientScopeRepresentation from "@keycloak/keycloak-admin-client/lib/defs/clientScopeRepresentation";
import { useAdminClient, useFetch } from "../../../context/auth/AdminClient";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { AddScopeDialog } from "../../scopes/AddScopeDialog";
import useLocaleSort, { mapByKey } from "../../../utils/useLocaleSort";
@ -59,7 +59,7 @@ export const ClientScope = () => {
label={t("clientScopes")}
labelIcon={
<HelpItem
helpText="clients-help:clientScopes"
helpText={t("clients-help:clientScopes")}
fieldLabelId="clients:clientScopes"
/>
}

View file

@ -13,7 +13,7 @@ import {
} from "@patternfly/react-table";
import type GroupRepresentation from "@keycloak/keycloak-admin-client/lib/defs/groupRepresentation";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient, useFetch } from "../../../context/auth/AdminClient";
import { GroupPickerDialog } from "../../../components/group/GroupPickerDialog";
import { KeycloakTextInput } from "../../../components/keycloak-text-input/KeycloakTextInput";
@ -67,7 +67,7 @@ export const Group = () => {
label={t("groupsClaim")}
labelIcon={
<HelpItem
helpText="clients-help:groupsClaim"
helpText={t("clients-help:groupsClaim")}
fieldLabelId="clients:groupsClaim"
/>
}
@ -84,7 +84,7 @@ export const Group = () => {
label={t("groups")}
labelIcon={
<HelpItem
helpText="clients-help:policyGroups"
helpText={t("clients-help:policyGroups")}
fieldLabelId="clients:groups"
/>
}

View file

@ -3,7 +3,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { FormGroup } from "@patternfly/react-core";
import { CodeEditor, Language } from "@patternfly/react-code-editor";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
export const JavaScript = () => {
const { t } = useTranslation("clients");
@ -14,7 +14,7 @@ export const JavaScript = () => {
label={t("code")}
labelIcon={
<HelpItem
helpText="clients-help:policyCode"
helpText={t("clients-help:policyCode")}
fieldLabelId="clients:code"
/>
}

View file

@ -2,7 +2,7 @@ import { useTranslation } from "react-i18next";
import { Controller, useFormContext } from "react-hook-form";
import { FormGroup, Radio } from "@patternfly/react-core";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
const LOGIC_TYPES = ["POSITIVE", "NEGATIVE"] as const;
@ -14,7 +14,10 @@ export const LogicSelector = () => {
<FormGroup
label={t("logic")}
labelIcon={
<HelpItem helpText="clients-help:logic" fieldLabelId="clients:logic" />
<HelpItem
helpText={t("clients-help:logic")}
fieldLabelId="clients:logic"
/>
}
fieldId="logic"
hasNoPaddingTop

View file

@ -2,7 +2,7 @@ import { useTranslation } from "react-i18next";
import { useFormContext } from "react-hook-form";
import { FormGroup, ValidatedOptions } from "@patternfly/react-core";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../../components/keycloak-text-input/KeycloakTextInput";
import { KeycloakTextArea } from "../../../components/keycloak-text-area/KeycloakTextArea";
@ -29,7 +29,7 @@ export const NameDescription = ({ prefix }: NameDescriptionProps) => {
isRequired
labelIcon={
<HelpItem
helpText={`clients-help:${prefix}-name`}
helpText={t(`clients-help:${prefix}-name`)}
fieldLabelId="name"
/>
}
@ -48,7 +48,7 @@ export const NameDescription = ({ prefix }: NameDescriptionProps) => {
fieldId="kc-description"
labelIcon={
<HelpItem
helpText={`clients-help:${prefix}-description`}
helpText={t(`clients-help:${prefix}-description`)}
fieldLabelId="description"
/>
}

View file

@ -2,7 +2,7 @@ import { useTranslation } from "react-i18next";
import { useFormContext } from "react-hook-form";
import { FormGroup } from "@patternfly/react-core";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../../components/keycloak-text-input/KeycloakTextInput";
export const Regex = () => {
@ -22,7 +22,7 @@ export const Regex = () => {
isRequired
labelIcon={
<HelpItem
helpText="clients-help:targetClaim"
helpText={t("clients-help:targetClaim")}
fieldLabelId="clients:targetClaim"
/>
}
@ -39,7 +39,7 @@ export const Regex = () => {
fieldId="pattern"
labelIcon={
<HelpItem
helpText="clients-help:regexPattern"
helpText={t("clients-help:regexPattern")}
fieldLabelId="clients:regexPattern"
/>
}

View file

@ -14,7 +14,7 @@ import {
import { Row, ServiceRole } from "../../../components/role-mapping/RoleMapping";
import type { RequiredIdValue } from "./ClientScope";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient, useFetch } from "../../../context/auth/AdminClient";
import { AddRoleMappingModal } from "../../../components/role-mapping/AddRoleMappingModal";
@ -63,7 +63,7 @@ export const Role = () => {
label={t("roles")}
labelIcon={
<HelpItem
helpText="clients-help:policyRoles"
helpText={t("clients-help:policyRoles")}
fieldLabelId="clients:roles"
/>
}

View file

@ -14,7 +14,7 @@ import {
ValidatedOptions,
} from "@patternfly/react-core";
import { HelpItem } from "../../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
const DATE_TIME_FORMAT = /(\d\d\d\d-\d\d-\d\d)? (\d\d?):(\d\d?)/;
const padDateSegment = (value: number) => value.toString().padStart(2, "0");
@ -134,7 +134,7 @@ const FromTo = ({ name, ...rest }: NumberControlProps) => {
fieldId={name}
labelIcon={
<HelpItem
helpText={`clients-help:${name}`}
helpText={t(`clients-help:${name}`)}
fieldLabelId={`clients:${name}`}
/>
}
@ -166,7 +166,7 @@ export const Time = () => {
fieldId="repeat"
labelIcon={
<HelpItem
helpText="clients-help:repeat"
helpText={t("clients-help:repeat")}
fieldLabelId="clients:repeat"
/>
}
@ -209,7 +209,7 @@ export const Time = () => {
fieldId="notBefore"
labelIcon={
<HelpItem
helpText="clients-help:startTime"
helpText={t("clients-help:startTime")}
fieldLabelId="clients:startTime"
/>
}
@ -226,7 +226,7 @@ export const Time = () => {
fieldId="notOnOrAfter"
labelIcon={
<HelpItem
helpText="clients-help:expireTime"
helpText={t("clients-help:expireTime")}
fieldLabelId="clients:expireTime"
/>
}

View file

@ -1,11 +1,15 @@
import { useTranslation } from "react-i18next";
import { UserSelect } from "../../../components/users/UserSelect";
export const User = () => (
export const User = () => {
const { t } = useTranslation();
return (
<UserSelect
name="users"
label="users"
helpText="clients-help:policyUsers"
helpText={t("clients-help:policyUsers")}
defaultValue={[]}
isRequired
/>
);
);
};

View file

@ -25,7 +25,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { ClientSecret } from "./ClientSecret";
import { SignedJWT } from "./SignedJWT";
@ -150,7 +150,7 @@ export const Credentials = ({ client, save, refresh }: CredentialsProps) => {
fieldId="kc-client-authenticator-type"
labelIcon={
<HelpItem
helpText="clients-help:client-authenticator-type"
helpText={t("clients-help:client-authenticator-type")}
fieldLabelId="clients:clientAuthenticator"
/>
}
@ -223,7 +223,7 @@ export const Credentials = ({ client, save, refresh }: CredentialsProps) => {
fieldId="kc-access-token"
labelIcon={
<HelpItem
helpText="clients-help:registration-access-token"
helpText={t("clients-help:registration-access-token")}
fieldLabelId="clients:registrationAccessToken"
/>
}

View file

@ -9,7 +9,7 @@ import {
} from "@patternfly/react-core";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { convertAttributeNameToForm, sortProviders } from "../../util";
import { FormFields } from "../ClientDetails";
@ -27,7 +27,7 @@ export const SignedJWT = () => {
fieldId="kc-signature-algorithm"
labelIcon={
<HelpItem
helpText="clients-help:signature-algorithm"
helpText={t("clients-help:signature-algorithm")}
fieldLabelId="clients:signatureAlgorithm"
/>
}

View file

@ -1,7 +1,7 @@
import { useTranslation } from "react-i18next";
import { Controller, useFormContext } from "react-hook-form";
import { FormGroup, Switch, ValidatedOptions } from "@patternfly/react-core";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { beerify, convertAttributeNameToForm } from "../../util";
import { FormFields } from "../ClientDetails";
@ -19,7 +19,7 @@ export const X509 = () => {
label={t("allowRegexComparison")}
labelIcon={
<HelpItem
helpText="clients-help:allowRegexComparison"
helpText={t("clients-help:allowRegexComparison")}
fieldLabelId="clients:allowRegexComparison"
/>
}
@ -49,7 +49,7 @@ export const X509 = () => {
fieldId="kc-subject"
labelIcon={
<HelpItem
helpText="clients-help:subject"
helpText={t("clients-help:subject")}
fieldLabelId="clients:subject"
/>
}

View file

@ -116,7 +116,7 @@ export default function ImportForm() {
id="realm-file"
language={Language.json}
extension=".json,.xml"
helpText="common-help:helpFileUploadClient"
helpText={t("common-help:helpFileUploadClient")}
onChange={handleFileChange}
/>
<ClientDescription hasConfigureAccess />

View file

@ -13,7 +13,7 @@ import {
import type ClientInitialAccessPresentation from "@keycloak/keycloak-admin-client/lib/defs/clientInitialAccessPresentation";
import { FormAccess } from "../../components/form-access/FormAccess";
import { ViewHeader } from "../../components/view-header/ViewHeader";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { TimeSelector } from "../../components/time-selector/TimeSelector";
import { Link, useNavigate } from "react-router-dom";
import { useRealm } from "../../context/realm-context/RealmContext";
@ -76,7 +76,7 @@ export default function CreateInitialAccessToken() {
fieldId="expiration"
labelIcon={
<HelpItem
helpText="clients-help:expiration"
helpText={t("clients-help:expiration")}
fieldLabelId="clients:expiration"
/>
}
@ -104,7 +104,7 @@ export default function CreateInitialAccessToken() {
fieldId="count"
labelIcon={
<HelpItem
helpText="clients-help:count"
helpText={t("clients-help:count")}
fieldLabelId="clients:count"
/>
}

View file

@ -3,7 +3,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useId } from "react";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
type CertificateProps = Omit<CertificateDisplayProps, "id"> & {
@ -41,7 +41,7 @@ export const Certificate = ({ keyInfo, plain = false }: CertificateProps) => {
fieldId={id}
labelIcon={
<HelpItem
helpText="clients-help:certificate"
helpText={t("clients-help:certificate")}
fieldLabelId={`clients:${id}`}
/>
}

View file

@ -21,7 +21,7 @@ import {
} from "@patternfly/react-core";
import type KeyStoreConfig from "@keycloak/keycloak-admin-client/lib/defs/keystoreConfig";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { StoreSettings } from "./StoreSettings";
import { FileUpload } from "../../components/json-file-upload/patternfly/FileUpload";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
@ -77,7 +77,7 @@ export const KeyForm = ({
label={t("archiveFormat")}
labelIcon={
<HelpItem
helpText="clients-help:archiveFormat"
helpText={t("clients-help:archiveFormat")}
fieldLabelId="clients:archiveFormat"
/>
}
@ -116,7 +116,7 @@ export const KeyForm = ({
label={t("importFile")}
labelIcon={
<HelpItem
helpText="clients-help:importFile"
helpText={t("clients-help:importFile")}
fieldLabelId="clients:importFile"
/>
}

View file

@ -14,7 +14,7 @@ import {
Text,
TextContent,
} from "@patternfly/react-core";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { StoreSettings } from "./StoreSettings";
import { FileUpload } from "../../components/json-file-upload/patternfly/FileUpload";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
@ -96,7 +96,7 @@ export const ImportKeyDialog = ({
label={t("archiveFormat")}
labelIcon={
<HelpItem
helpText="clients-help:archiveFormat"
helpText={t("clients-help:archiveFormat")}
fieldLabelId="clients:archiveFormat"
/>
}

View file

@ -21,7 +21,7 @@ import type KeyStoreConfig from "@keycloak/keycloak-admin-client/lib/defs/keysto
import { Controller, useFormContext, useWatch } from "react-hook-form";
import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { convertAttributeNameToForm } from "../../util";
@ -144,7 +144,7 @@ export const Keys = ({ clientId, save, hasConfigureAccess }: KeysProps) => {
fieldId="useJwksUrl"
labelIcon={
<HelpItem
helpText="clients-help:useJwksUrl"
helpText={t("clients-help:useJwksUrl")}
fieldLabelId="clients:useJwksUrl"
/>
}
@ -177,7 +177,7 @@ export const Keys = ({ clientId, save, hasConfigureAccess }: KeysProps) => {
fieldId="jwksUrl"
labelIcon={
<HelpItem
helpText="clients-help:jwksUrl"
helpText={t("clients-help:jwksUrl")}
fieldLabelId="clients:jwksUrl"
/>
}

View file

@ -20,7 +20,7 @@ import type CertificateRepresentation from "@keycloak/keycloak-admin-client/lib/
import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { FormPanel } from "../../components/scroll-form/FormPanel";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { convertAttributeNameToForm } from "../../util";
@ -91,7 +91,7 @@ const KeySection = ({
<FormGroup
labelIcon={
<HelpItem
helpText={`clients-help:${key}`}
helpText={t(`clients-help:${key}`)}
fieldLabelId={`clients:${key}`}
/>
}

View file

@ -23,7 +23,7 @@ import {
import type CertificateRepresentation from "@keycloak/keycloak-admin-client/lib/defs/certificateRepresentation";
import type KeyStoreConfig from "@keycloak/keycloak-admin-client/lib/defs/keystoreConfig";
import type { KeyTypes } from "./SamlKeys";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient } from "../../context/auth/AdminClient";
import { useAlerts } from "../../components/alert/Alerts";
import { KeyForm } from "./GenerateKeyDialog";
@ -187,7 +187,7 @@ export const SamlKeysDialog = ({
fieldId="certificate"
labelIcon={
<HelpItem
helpText="clients-help:certificate"
helpText={t("clients-help:certificate")}
fieldLabelId="clients:certificate"
/>
}

View file

@ -3,7 +3,7 @@ import { useFormContext } from "react-hook-form";
import { FormGroup } from "@patternfly/react-core";
import type KeyStoreConfig from "@keycloak/keycloak-admin-client/lib/defs/keystoreConfig";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { PasswordInput } from "../../components/password-input/PasswordInput";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
@ -28,7 +28,7 @@ export const StoreSettings = ({
isRequired
labelIcon={
<HelpItem
helpText="clients-help:keyAlias"
helpText={t("clients-help:keyAlias")}
fieldLabelId="clients:keyAlias"
/>
}
@ -49,7 +49,7 @@ export const StoreSettings = ({
isRequired
labelIcon={
<HelpItem
helpText="clients-help:keyPassword"
helpText={t("clients-help:keyPassword")}
fieldLabelId="clients:keyPassword"
/>
}
@ -70,7 +70,7 @@ export const StoreSettings = ({
fieldId="realmCertificateAlias"
labelIcon={
<HelpItem
helpText="clients-help:realmCertificateAlias"
helpText={t("clients-help:realmCertificateAlias")}
fieldLabelId="clients:realmCertificateAlias"
/>
}
@ -88,7 +88,7 @@ export const StoreSettings = ({
isRequired
labelIcon={
<HelpItem
helpText="clients-help:storePassword"
helpText={t("clients-help:storePassword")}
fieldLabelId="clients:storePassword"
/>
}

View file

@ -1,6 +1,6 @@
import { Tab, TabTitleText } from "@patternfly/react-core";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import {
RoutableTabs,
useRoutableTab,
@ -34,7 +34,7 @@ export const ClientRegistration = () => {
{t("anonymousAccessPolicies")}{" "}
<HelpItem
fieldLabelId=""
helpText="clients-help:anonymousAccessPolicies"
helpText={t("clients-help:anonymousAccessPolicies")}
noVerticalAlign={false}
unWrap
/>
@ -51,7 +51,7 @@ export const ClientRegistration = () => {
{t("authenticatedAccessPolicies")}{" "}
<HelpItem
fieldLabelId=""
helpText="clients-help:authenticatedAccessPolicies"
helpText={t("clients-help:authenticatedAccessPolicies")}
noVerticalAlign={false}
unWrap
/>

View file

@ -17,7 +17,7 @@ import { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { DynamicComponents } from "../../components/dynamic/DynamicComponents";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { ViewHeader } from "../../components/view-header/ViewHeader";
@ -163,7 +163,7 @@ export default function DetailProvider() {
}
labelIcon={
<HelpItem
helpText="clients-help:clientPolicyName"
helpText={t("clients-help:clientPolicyName")}
fieldLabelId="kc-name"
/>
}

View file

@ -10,7 +10,7 @@ import {
import type ClientRepresentation from "@keycloak/keycloak-admin-client/lib/defs/clientRepresentation";
import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { useAdminClient } from "../../context/auth/AdminClient";
import { useAlerts } from "../../components/alert/Alerts";
import { RoleMapping, Row } from "../../components/role-mapping/RoleMapping";
@ -88,7 +88,7 @@ export const DedicatedScope = ({
label={t("fullScopeAllowed")}
labelIcon={
<HelpItem
helpText="clients-help:fullScopeAllowed"
helpText={t("clients-help:fullScopeAllowed")}
fieldLabelId="clients:fullScopeAllowed"
/>
}

View file

@ -26,8 +26,7 @@ import { useEffect, useRef, useState } from "react";
import { FormProvider, useForm } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { useHelp } from "../../components/help-enabler/HelpHeader";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { useHelp, HelpItem } from "ui-shared";
import { KeycloakDataTable } from "../../components/table-toolbar/KeycloakDataTable";
import { UserSelect } from "../../components/users/UserSelect";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
@ -235,7 +234,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
fieldId="scopeParameter"
labelIcon={
<HelpItem
helpText="clients-help:scopeParameter"
helpText={t("clients-help:scopeParameter")}
fieldLabelId="clients:scopeParameter"
/>
}
@ -278,7 +277,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
<UserSelect
name="user"
label="users"
helpText="clients-help:user"
helpText={t("clients-help:user")}
defaultValue=""
variant={SelectVariant.typeahead}
isRequired
@ -363,7 +362,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
{t("effectiveProtocolMappers")}{" "}
<HelpItem
fieldLabelId="clients:effectiveProtocolMappers"
helpText="clients-help:effectiveProtocolMappers"
helpText={t("clients-help:effectiveProtocolMappers")}
noVerticalAlign={false}
unWrap
/>
@ -380,7 +379,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
{t("effectiveRoleScopeMappings")}{" "}
<HelpItem
fieldLabelId="clients:effectiveRoleScopeMappings"
helpText="clients-help:effectiveRoleScopeMappings"
helpText={t("clients-help:effectiveRoleScopeMappings")}
noVerticalAlign={false}
unWrap
/>
@ -397,7 +396,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
{t("generatedAccessToken")}{" "}
<HelpItem
fieldLabelId="clients:generatedAccessToken"
helpText="clients-help:generatedAccessToken"
helpText={t("clients-help:generatedAccessToken")}
noVerticalAlign={false}
unWrap
/>
@ -414,7 +413,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
{t("generatedIdToken")}{" "}
<HelpItem
fieldLabelId="clients:generatedIdToken"
helpText="clients-help:generatedIdToken"
helpText={t("clients-help:generatedIdToken")}
noVerticalAlign={false}
unWrap
/>
@ -431,7 +430,7 @@ export const EvaluateScopes = ({ clientId, protocol }: EvaluateScopesProps) => {
{t("generatedUserInfo")}{" "}
<HelpItem
fieldLabelId="clients:generatedUserInfo"
helpText="clients-help:generatedUserInfo"
helpText={t("clients-help:generatedUserInfo")}
noVerticalAlign={false}
unWrap
/>

View file

@ -4,8 +4,7 @@ import { PropsWithChildren, useCallback, useMemo, useState } from "react";
import { useTranslation } from "react-i18next";
import { generateId } from "../../util";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
import useSetTimeout from "../../utils/useSetTimeout";
import { AlertPanel } from "./AlertPanel";

View file

@ -12,7 +12,7 @@ import type ClientRepresentation from "@keycloak/keycloak-admin-client/lib/defs/
import type { ClientQuery } from "@keycloak/keycloak-admin-client/lib/resources/clients";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import type { ComponentProps } from "../dynamic/components";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
type ClientSelectProps = ComponentProps & {
namespace: string;

View file

@ -17,8 +17,7 @@ import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
import { addTrailingSlash, prettyPrintJSON } from "../../util";
import { getAuthorizationHeaders } from "../../utils/getAuthorizationHeaders";
import { ConfirmDialogModal } from "../confirm-dialog/ConfirmDialog";
import { useHelp } from "../help-enabler/HelpHeader";
import { HelpItem } from "../help-enabler/HelpItem";
import { useHelp, HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../keycloak-text-area/KeycloakTextArea";
type DownloadDialogProps = {

View file

@ -2,7 +2,7 @@ import { FormGroup, Switch } from "@patternfly/react-core";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -3,7 +3,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { FileUpload } from "../json-file-upload/patternfly/FileUpload";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -11,7 +11,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { GroupPickerDialog } from "../group/GroupPickerDialog";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -8,7 +8,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -13,7 +13,7 @@ import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { generateId } from "../../util";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeyValueType } from "../key-value-form/key-value-convert";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -8,7 +8,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -2,7 +2,7 @@ import { useTranslation } from "react-i18next";
import { FormGroup } from "@patternfly/react-core";
import type { ComponentProps } from "./components";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { MultiLineInput } from "../multi-line-input/MultiLineInput";
import { convertToName } from "./DynamicComponents";

View file

@ -2,7 +2,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { PasswordInput } from "../password-input/PasswordInput";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -9,7 +9,7 @@ import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import useToggle from "../../utils/useToggle";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { AddRoleMappingModal } from "../role-mapping/AddRoleMappingModal";
import { Row, ServiceRole } from "../role-mapping/RoleMapping";
import type { ComponentProps } from "./components";

View file

@ -3,7 +3,7 @@ import { FormGroup } from "@patternfly/react-core";
import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -2,7 +2,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../keycloak-text-input/KeycloakTextInput";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -2,7 +2,7 @@ import { FormGroup } from "@patternfly/react-core";
import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextArea } from "../keycloak-text-area/KeycloakTextArea";
import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents";

View file

@ -9,42 +9,14 @@ import {
TextContent,
} from "@patternfly/react-core";
import { ExternalLinkAltIcon, HelpIcon } from "@patternfly/react-icons";
import { PropsWithChildren, useState } from "react";
import { useState } from "react";
import { useTranslation } from "react-i18next";
import helpUrls from "../../help-urls";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { useStoredState } from "../../utils/useStoredState";
import { useHelp } from "ui-shared";
import "./help-header.css";
type HelpContextProps = {
enabled: boolean;
toggleHelp: () => void;
};
export const HelpContext = createNamedContext<HelpContextProps | undefined>(
"HelpContext",
undefined
);
export const useHelp = () => useRequiredContext(HelpContext);
export const Help = ({ children }: PropsWithChildren) => {
const [enabled, setHelp] = useStoredState(localStorage, "helpEnabled", true);
function toggleHelp() {
setHelp(!enabled);
}
return (
<HelpContext.Provider value={{ enabled, toggleHelp }}>
{children}
</HelpContext.Provider>
);
};
export const HelpHeader = () => {
const [open, setOpen] = useState(false);
const help = useHelp();

View file

@ -25,7 +25,7 @@ import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { useRealm } from "../../context/realm-context/RealmContext";
import { toPermissionDetails } from "../../clients/routes/PermissionDetails";
import { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import useLocaleSort from "../../utils/useLocaleSort";
import { useConfirmDialog } from "../confirm-dialog/ConfirmDialog";
@ -138,7 +138,7 @@ export const PermissionsTab = ({ id, type }: PermissionsTabProps) => {
fieldId="permissionsEnabled"
labelIcon={
<HelpItem
helpText="clients-help:permissionsEnabled"
helpText={t("clients-help:permissionsEnabled")}
fieldLabelId="clients:permissionsEnabled"
/>
}

View file

@ -11,7 +11,7 @@ import { toRealmSettings } from "../../realm-settings/routes/RealmSettings";
import { emptyFormatter, upperCaseFormatter } from "../../util";
import { useAlerts } from "../alert/Alerts";
import { useConfirmDialog } from "../confirm-dialog/ConfirmDialog";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakSpinner } from "../keycloak-spinner/KeycloakSpinner";
import { ListEmptyState } from "../list-empty-state/ListEmptyState";
import { KeycloakDataTable } from "../table-toolbar/KeycloakDataTable";
@ -69,7 +69,7 @@ export const RolesList = ({
{role.name}{" "}
</Link>
<HelpItem
helpText={`${messageBundle}:defaultRole`}
helpText={t(`${messageBundle}:defaultRole`)}
fieldLabelId="defaultRole"
/>
</>

View file

@ -26,7 +26,7 @@ import {
import { useTranslation } from "react-i18next";
import { useFetch } from "../../context/auth/AdminClient";
import { useStoredState } from "../../utils/useStoredState";
import { useStoredState } from "ui-shared";
import { KeycloakSpinner } from "../keycloak-spinner/KeycloakSpinner";
import { ListEmptyState } from "../list-empty-state/ListEmptyState";
import { PaginatingTableToolbar } from "./PaginatingTableToolbar";

View file

@ -14,7 +14,7 @@ import type { UserQuery } from "@keycloak/keycloak-admin-client/lib/resources/us
import type { ComponentProps } from "../dynamic/components";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { HelpItem } from "../help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import useToggle from "../../utils/useToggle";
type UserSelectProps = ComponentProps & {

View file

@ -24,8 +24,7 @@ import {
} from "react";
import { useTranslation } from "react-i18next";
import { FormattedLink } from "../external-link/FormattedLink";
import { useHelp } from "../help-enabler/HelpHeader";
import { HelpItem } from "../help-enabler/HelpItem";
import { useHelp, HelpItem } from "ui-shared";
import "../../help-urls";
export type ViewHeaderProps = {

View file

@ -3,8 +3,7 @@ import type RealmRepresentation from "@keycloak/keycloak-admin-client/lib/defs/r
import { sortBy } from "lodash-es";
import { PropsWithChildren, useCallback, useMemo, useState } from "react";
import { createNamedContext } from "../utils/createNamedContext";
import useRequiredContext from "../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
import { useAdminClient, useFetch } from "./auth/AdminClient";
type RealmsContextProps = {

View file

@ -1,9 +1,11 @@
import RealmRepresentation from "@keycloak/keycloak-admin-client/lib/defs/realmRepresentation";
import { PropsWithChildren, useEffect, useMemo } from "react";
import { createNamedContext } from "../utils/createNamedContext";
import useRequiredContext from "../utils/useRequiredContext";
import { useStoredState } from "../utils/useStoredState";
import {
createNamedContext,
useRequiredContext,
useStoredState,
} from "ui-shared";
import { useRealm } from "./realm-context/RealmContext";
import { useRealms } from "./RealmsContext";

View file

@ -2,8 +2,7 @@ import type { AccessType } from "@keycloak/keycloak-admin-client/lib/defs/whoAmI
import { PropsWithChildren, useEffect, useState } from "react";
import { useRealm } from "../../context/realm-context/RealmContext";
import { useWhoAmI } from "../../context/whoami/WhoAmI";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
type AccessContextProps = {
hasAccess: (...types: AccessType[]) => boolean;

View file

@ -4,8 +4,7 @@ import { DependencyList, useEffect } from "react";
import { useErrorHandler } from "react-error-boundary";
import environment from "../../environment";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
export type AdminClientProps = {
keycloak: Keycloak;

View file

@ -3,8 +3,7 @@ import { useMatch } from "react-router-dom";
import { DashboardRouteWithRealm } from "../../dashboard/routes/Dashboard";
import environment from "../../environment";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
import { useAdminClient } from "../auth/AdminClient";
type RealmContextType = {

View file

@ -2,8 +2,7 @@ import type { ServerInfoRepresentation } from "@keycloak/keycloak-admin-client/l
import { PropsWithChildren, useState } from "react";
import { sortProviders } from "../../util";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
import { useAdminClient, useFetch } from "../auth/AdminClient";
export const ServerInfoContext = createNamedContext<

View file

@ -4,8 +4,7 @@ import { PropsWithChildren, useState } from "react";
import environment from "../../environment";
import i18n, { DEFAULT_LOCALE } from "../../i18n";
import { createNamedContext } from "../../utils/createNamedContext";
import useRequiredContext from "../../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
import { useAdminClient, useFetch } from "../auth/AdminClient";
export class WhoAmI {

View file

@ -29,7 +29,7 @@ import {
import { useRealm } from "../context/realm-context/RealmContext";
import { useServerInfo } from "../context/server-info/ServerInfoProvider";
import { toUpperCase } from "../util";
import { HelpItem } from "../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import environment from "../environment";
import { KeycloakSpinner } from "../components/keycloak-spinner/KeycloakSpinner";
import useLocaleSort from "../utils/useLocaleSort";
@ -207,7 +207,7 @@ const Dashboard = () => {
{t("enabledFeatures")}{" "}
<HelpItem
fieldLabelId="dashboard:enabledFeatures"
helpText="dashboard:infoEnabledFeatures"
helpText={t("dashboard:infoEnabledFeatures")}
/>
</DescriptionListTerm>
<DescriptionListDescription>
@ -233,7 +233,7 @@ const Dashboard = () => {
{t("disabledFeatures")}{" "}
<HelpItem
fieldLabelId="dashboard:disabledFeatures"
helpText="dashboard:infoDisabledFeatures"
helpText={t("dashboard:infoDisabledFeatures")}
/>
</DescriptionListTerm>
<DescriptionListDescription>

View file

@ -12,7 +12,7 @@ import {
import { useServerInfo } from "../context/server-info/ServerInfoProvider";
import { TableToolbar } from "../components/table-toolbar/TableToolbar";
import { isDefined } from "../utils/isDefined";
import { isDefined } from "ui-shared";
export const ProviderInfo = () => {
const { t } = useTranslation("dashboard");

View file

@ -1,7 +1,6 @@
import type GroupRepresentation from "@keycloak/keycloak-admin-client/lib/defs/groupRepresentation";
import { PropsWithChildren, useState } from "react";
import { createNamedContext } from "../utils/createNamedContext";
import useRequiredContext from "../utils/useRequiredContext";
import { createNamedContext, useRequiredContext } from "ui-shared";
type SubGroupsProps = {
subGroups: GroupRepresentation[];

View file

@ -11,7 +11,7 @@ import { useState } from "react";
import { Controller, UseFormReturn } from "react-hook-form";
import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem";
import { HelpItem } from "ui-shared";
import { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import type { IdPMapperRepresentationWithAttributes } from "./AddMapper";
@ -51,7 +51,7 @@ export const AddMapperForm = ({
label={t("common:name")}
labelIcon={
<HelpItem
helpText="identity-providers-help:addIdpMapperName"
helpText={t("identity-providers-help:addIdpMapperName")}
fieldLabelId="name"
/>
}
@ -76,7 +76,7 @@ export const AddMapperForm = ({
isRequired
labelIcon={
<HelpItem
helpText="identity-providers-help:syncModeOverride"
helpText={t("identity-providers-help:syncModeOverride")}
fieldLabelId="identity-providers:syncModeOverride"
/>
}

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