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 { AlertProvider } from "./components/alert/Alerts";
import { PageBreadCrumbs } from "./components/bread-crumb/PageBreadCrumbs"; import { PageBreadCrumbs } from "./components/bread-crumb/PageBreadCrumbs";
import { ErrorRenderer } from "./components/error/ErrorRenderer"; 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 { KeycloakSpinner } from "./components/keycloak-spinner/KeycloakSpinner";
import { AccessContextProvider, useAccess } from "./context/access/Access"; import { AccessContextProvider, useAccess } from "./context/access/Access";
import { AdminClientContext } from "./context/auth/AdminClient"; import { AdminClientContext } from "./context/auth/AdminClient";

View file

@ -15,7 +15,8 @@ import { HelpIcon } from "@patternfly/react-icons";
import { ReactNode, useState } from "react"; import { ReactNode, useState } from "react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { Link } from "react-router-dom"; 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 { useAdminClient } from "./context/auth/AdminClient";
import { useRealm } from "./context/realm-context/RealmContext"; import { useRealm } from "./context/realm-context/RealmContext";
import { useWhoAmI } from "./context/whoami/WhoAmI"; import { useWhoAmI } from "./context/whoami/WhoAmI";

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -23,7 +23,7 @@ import {
ClientScopeDefaultOptionalType, ClientScopeDefaultOptionalType,
} from "../components/client-scope/ClientScopeTypes"; } from "../components/client-scope/ClientScopeTypes";
import { useConfirmDialog } from "../components/confirm-dialog/ConfirmDialog"; 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 { KeycloakSpinner } from "../components/keycloak-spinner/KeycloakSpinner";
import { RoleMapping, Row } from "../components/role-mapping/RoleMapping"; import { RoleMapping, Row } from "../components/role-mapping/RoleMapping";
import { import {

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -10,7 +10,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form"; import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { HelpItem } from "../../components/help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
import { import {
TimeSelector, TimeSelector,
Unit, Unit,
@ -52,7 +52,7 @@ export const TokenLifespan = ({
fieldId={id} fieldId={id}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText={`clients-help:${id}`} helpText={t(`clients-help:${id}`)}
fieldLabelId={`clients:${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 { ClientSelect } from "../../components/client/ClientSelect";
import { FormAccess } from "../../components/form-access/FormAccess"; import { FormAccess } from "../../components/form-access/FormAccess";
import { HelpItem } from "../../components/help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
import { import {
keyValueToArray, keyValueToArray,
KeyValueType, KeyValueType,
@ -209,7 +209,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
<UserSelect <UserSelect
name="user" name="user"
label="users" label="users"
helpText="clients-help:selectUser" helpText={t("clients-help:selectUser")}
defaultValue={[]} defaultValue={[]}
variant={SelectVariant.typeahead} variant={SelectVariant.typeahead}
isRequired={roles?.length === 0} isRequired={roles?.length === 0}
@ -218,7 +218,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
label={t("roles")} label={t("roles")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:roles" helpText={t("clients-help:roles")}
fieldLabelId="clients:roles" fieldLabelId="clients:roles"
/> />
} }
@ -280,7 +280,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
fieldId="applyToResourceType" fieldId="applyToResourceType"
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:applyToResourceType" helpText={t("clients-help:applyToResourceType")}
fieldLabelId="clients:applyToResourceType" fieldLabelId="clients:applyToResourceType"
/> />
} }
@ -323,7 +323,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
isRequired isRequired
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:resourceType" helpText={t("clients-help:resourceType")}
fieldLabelId="clients:resourceType" fieldLabelId="clients:resourceType"
/> />
} }
@ -341,7 +341,7 @@ export const AuthorizationEvaluate = ({ client }: Props) => {
label={t("authScopes")} label={t("authScopes")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:scopesSelect" helpText={t("clients-help:scopesSelect")}
fieldLabelId="clients:client" fieldLabelId="clients:client"
/> />
} }

View file

@ -12,7 +12,7 @@ import { useTranslation } from "react-i18next";
import { useAlerts } from "../../components/alert/Alerts"; import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess"; 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 { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea"; import { KeycloakTextArea } from "../../components/keycloak-text-area/KeycloakTextArea";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
@ -70,7 +70,7 @@ export const AuthorizationExport = () => {
label={t("authDetails")} label={t("authDetails")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:authDetails" helpText={t("clients-help:authDetails")}
fieldLabelId="clients: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 { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next"; 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; const DECISION_STRATEGY = ["UNANIMOUS", "AFFIRMATIVE", "CONSENSUS"] as const;
@ -23,7 +23,7 @@ export const DecisionStrategySelect = ({
label={t("decisionStrategy")} label={t("decisionStrategy")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText={`clients-help:${helpLabel || "decisionStrategy"}`} helpText={t(`clients-help:${helpLabel || "decisionStrategy"}`)}
fieldLabelId="clients:decisionStrategy" fieldLabelId="clients:decisionStrategy"
/> />
} }

View file

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

View file

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

View file

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

View file

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

View file

@ -10,7 +10,7 @@ import {
import type ScopeRepresentation from "@keycloak/keycloak-admin-client/lib/defs/scopeRepresentation"; import type ScopeRepresentation from "@keycloak/keycloak-admin-client/lib/defs/scopeRepresentation";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { HelpItem } from "../../components/help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
type Scope = { type Scope = {
id: string; id: string;
@ -54,7 +54,7 @@ export const ScopePicker = ({ clientId }: { clientId: string }) => {
label={t("authorizationScopes")} label={t("authorizationScopes")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:scopes" helpText={t("clients-help:scopes")}
fieldLabelId="clients: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 { KeycloakSpinner } from "../../components/keycloak-spinner/KeycloakSpinner";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { FormAccess } from "../../components/form-access/FormAccess"; 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 { SaveReset } from "../advanced/SaveReset";
import { ImportDialog } from "./ImportDialog"; import { ImportDialog } from "./ImportDialog";
import useToggle from "../../utils/useToggle"; import useToggle from "../../utils/useToggle";
@ -97,7 +97,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
fieldId="import" fieldId="import"
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:import" helpText={t("clients-help:import")}
fieldLabelId="clients:import" fieldLabelId="clients:import"
/> />
} }
@ -111,7 +111,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
label={t("policyEnforcementMode")} label={t("policyEnforcementMode")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:policyEnforcementMode" helpText={t("clients-help:policyEnforcementMode")}
fieldLabelId="clients:policyEnforcementMode" fieldLabelId="clients:policyEnforcementMode"
/> />
} }
@ -150,7 +150,7 @@ export const AuthorizationSettings = ({ clientId }: { clientId: string }) => {
fieldId="allowRemoteResourceManagement" fieldId="allowRemoteResourceManagement"
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:allowRemoteResourceManagement" helpText={t("clients-help:allowRemoteResourceManagement")}
fieldLabelId="clients:allowRemoteResourceManagement" fieldLabelId="clients:allowRemoteResourceManagement"
/> />
} }

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -14,7 +14,7 @@ import {
Text, Text,
TextContent, TextContent,
} from "@patternfly/react-core"; } from "@patternfly/react-core";
import { HelpItem } from "../../components/help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
import { StoreSettings } from "./StoreSettings"; import { StoreSettings } from "./StoreSettings";
import { FileUpload } from "../../components/json-file-upload/patternfly/FileUpload"; import { FileUpload } from "../../components/json-file-upload/patternfly/FileUpload";
import { useServerInfo } from "../../context/server-info/ServerInfoProvider"; import { useServerInfo } from "../../context/server-info/ServerInfoProvider";
@ -96,7 +96,7 @@ export const ImportKeyDialog = ({
label={t("archiveFormat")} label={t("archiveFormat")}
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:archiveFormat" helpText={t("clients-help:archiveFormat")}
fieldLabelId="clients: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 { Controller, useFormContext, useWatch } from "react-hook-form";
import { useAlerts } from "../../components/alert/Alerts"; import { useAlerts } from "../../components/alert/Alerts";
import { FormAccess } from "../../components/form-access/FormAccess"; 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 { KeycloakTextInput } from "../../components/keycloak-text-input/KeycloakTextInput";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { convertAttributeNameToForm } from "../../util"; import { convertAttributeNameToForm } from "../../util";
@ -144,7 +144,7 @@ export const Keys = ({ clientId, save, hasConfigureAccess }: KeysProps) => {
fieldId="useJwksUrl" fieldId="useJwksUrl"
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:useJwksUrl" helpText={t("clients-help:useJwksUrl")}
fieldLabelId="clients:useJwksUrl" fieldLabelId="clients:useJwksUrl"
/> />
} }
@ -177,7 +177,7 @@ export const Keys = ({ clientId, save, hasConfigureAccess }: KeysProps) => {
fieldId="jwksUrl" fieldId="jwksUrl"
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText="clients-help:jwksUrl" helpText={t("clients-help:jwksUrl")}
fieldLabelId="clients: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 { useAlerts } from "../../components/alert/Alerts";
import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog"; import { useConfirmDialog } from "../../components/confirm-dialog/ConfirmDialog";
import { FormAccess } from "../../components/form-access/FormAccess"; 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 { FormPanel } from "../../components/scroll-form/FormPanel";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { convertAttributeNameToForm } from "../../util"; import { convertAttributeNameToForm } from "../../util";
@ -91,7 +91,7 @@ const KeySection = ({
<FormGroup <FormGroup
labelIcon={ labelIcon={
<HelpItem <HelpItem
helpText={`clients-help:${key}`} helpText={t(`clients-help:${key}`)}
fieldLabelId={`clients:${key}`} fieldLabelId={`clients:${key}`}
/> />
} }

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -4,8 +4,7 @@ import { PropsWithChildren, useCallback, useMemo, useState } from "react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { generateId } from "../../util"; import { generateId } from "../../util";
import { createNamedContext } from "../../utils/createNamedContext"; import { createNamedContext, useRequiredContext } from "ui-shared";
import useRequiredContext from "../../utils/useRequiredContext";
import useSetTimeout from "../../utils/useSetTimeout"; import useSetTimeout from "../../utils/useSetTimeout";
import { AlertPanel } from "./AlertPanel"; 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 type { ClientQuery } from "@keycloak/keycloak-admin-client/lib/resources/clients";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import type { ComponentProps } from "../dynamic/components"; import type { ComponentProps } from "../dynamic/components";
import { HelpItem } from "../help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
type ClientSelectProps = ComponentProps & { type ClientSelectProps = ComponentProps & {
namespace: string; namespace: string;

View file

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

View file

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

View file

@ -3,7 +3,7 @@ import { useState } from "react";
import { Controller, useFormContext } from "react-hook-form"; import { Controller, useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next"; 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 { FileUpload } from "../json-file-upload/patternfly/FileUpload";
import type { ComponentProps } from "./components"; import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents"; import { convertToName } from "./DynamicComponents";

View file

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

View file

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

View file

@ -13,7 +13,7 @@ import { useFormContext } from "react-hook-form";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { generateId } from "../../util"; 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 { KeyValueType } from "../key-value-form/key-value-convert";
import type { ComponentProps } from "./components"; import type { ComponentProps } from "./components";
import { convertToName } from "./DynamicComponents"; import { convertToName } from "./DynamicComponents";

View file

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

View file

@ -2,7 +2,7 @@ import { useTranslation } from "react-i18next";
import { FormGroup } from "@patternfly/react-core"; import { FormGroup } from "@patternfly/react-core";
import type { ComponentProps } from "./components"; 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 { MultiLineInput } from "../multi-line-input/MultiLineInput";
import { convertToName } from "./DynamicComponents"; import { convertToName } from "./DynamicComponents";

View file

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

View file

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

View file

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

View file

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

View file

@ -9,42 +9,14 @@ import {
TextContent, TextContent,
} from "@patternfly/react-core"; } from "@patternfly/react-core";
import { ExternalLinkAltIcon, HelpIcon } from "@patternfly/react-icons"; import { ExternalLinkAltIcon, HelpIcon } from "@patternfly/react-icons";
import { PropsWithChildren, useState } from "react"; import { useState } from "react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import helpUrls from "../../help-urls"; import helpUrls from "../../help-urls";
import { createNamedContext } from "../../utils/createNamedContext"; import { useHelp } from "ui-shared";
import useRequiredContext from "../../utils/useRequiredContext";
import { useStoredState } from "../../utils/useStoredState";
import "./help-header.css"; 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 = () => { export const HelpHeader = () => {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
const help = useHelp(); const help = useHelp();

View file

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

View file

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

View file

@ -26,7 +26,7 @@ import {
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { useFetch } from "../../context/auth/AdminClient"; import { useFetch } from "../../context/auth/AdminClient";
import { useStoredState } from "../../utils/useStoredState"; import { useStoredState } from "ui-shared";
import { KeycloakSpinner } from "../keycloak-spinner/KeycloakSpinner"; import { KeycloakSpinner } from "../keycloak-spinner/KeycloakSpinner";
import { ListEmptyState } from "../list-empty-state/ListEmptyState"; import { ListEmptyState } from "../list-empty-state/ListEmptyState";
import { PaginatingTableToolbar } from "./PaginatingTableToolbar"; 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 type { ComponentProps } from "../dynamic/components";
import { useAdminClient, useFetch } from "../../context/auth/AdminClient"; import { useAdminClient, useFetch } from "../../context/auth/AdminClient";
import { HelpItem } from "../help-enabler/HelpItem"; import { HelpItem } from "ui-shared";
import useToggle from "../../utils/useToggle"; import useToggle from "../../utils/useToggle";
type UserSelectProps = ComponentProps & { type UserSelectProps = ComponentProps & {

View file

@ -24,8 +24,7 @@ import {
} from "react"; } from "react";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { FormattedLink } from "../external-link/FormattedLink"; import { FormattedLink } from "../external-link/FormattedLink";
import { useHelp } from "../help-enabler/HelpHeader"; import { useHelp, HelpItem } from "ui-shared";
import { HelpItem } from "../help-enabler/HelpItem";
import "../../help-urls"; import "../../help-urls";
export type ViewHeaderProps = { 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 { sortBy } from "lodash-es";
import { PropsWithChildren, useCallback, useMemo, useState } from "react"; import { PropsWithChildren, useCallback, useMemo, useState } from "react";
import { createNamedContext } from "../utils/createNamedContext"; import { createNamedContext, useRequiredContext } from "ui-shared";
import useRequiredContext from "../utils/useRequiredContext";
import { useAdminClient, useFetch } from "./auth/AdminClient"; import { useAdminClient, useFetch } from "./auth/AdminClient";
type RealmsContextProps = { type RealmsContextProps = {

View file

@ -1,9 +1,11 @@
import RealmRepresentation from "@keycloak/keycloak-admin-client/lib/defs/realmRepresentation"; import RealmRepresentation from "@keycloak/keycloak-admin-client/lib/defs/realmRepresentation";
import { PropsWithChildren, useEffect, useMemo } from "react"; import { PropsWithChildren, useEffect, useMemo } from "react";
import { createNamedContext } from "../utils/createNamedContext"; import {
import useRequiredContext from "../utils/useRequiredContext"; createNamedContext,
import { useStoredState } from "../utils/useStoredState"; useRequiredContext,
useStoredState,
} from "ui-shared";
import { useRealm } from "./realm-context/RealmContext"; import { useRealm } from "./realm-context/RealmContext";
import { useRealms } from "./RealmsContext"; 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 { PropsWithChildren, useEffect, useState } from "react";
import { useRealm } from "../../context/realm-context/RealmContext"; import { useRealm } from "../../context/realm-context/RealmContext";
import { useWhoAmI } from "../../context/whoami/WhoAmI"; import { useWhoAmI } from "../../context/whoami/WhoAmI";
import { createNamedContext } from "../../utils/createNamedContext"; import { createNamedContext, useRequiredContext } from "ui-shared";
import useRequiredContext from "../../utils/useRequiredContext";
type AccessContextProps = { type AccessContextProps = {
hasAccess: (...types: AccessType[]) => boolean; hasAccess: (...types: AccessType[]) => boolean;

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

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