All Downloads are FREE. Search and download functionalities are using the official Maven repository.

theme.keycloak.v2.admin.resources.assets.CustomProviderSettings-31963767.js.map Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
{"version":3,"file":"CustomProviderSettings-31963767.js","sources":["../../src/user-federation/custom/SyncSettings.tsx","../../src/user-federation/custom/CustomProviderSettings.tsx"],"sourcesContent":["import { FormGroup, Switch } from \"@patternfly/react-core\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"ui-shared\";\nimport { KeycloakTextInput } from \"../../components/keycloak-text-input/KeycloakTextInput\";\n\nexport const SyncSettings = () => {\n  const { t } = useTranslation(\"user-federation\");\n  const { control, register, watch } = useFormContext();\n  const watchPeriodicSync = watch(\"config.fullSyncPeriod\", \"-1\");\n  const watchChangedSync = watch(\"config.changedSyncPeriod\", \"-1\");\n\n  return (\n    <>\n      \n        }\n        fieldId=\"kc-periodic-full-sync\"\n        hasNoPaddingTop\n      >\n         (\n             {\n                field.onChange(value ? \"604800\" : \"-1\");\n              }}\n              isChecked={field.value !== \"-1\"}\n              label={t(\"common:on\")}\n              labelOff={t(\"common:off\")}\n              aria-label={t(\"periodicFullSync\")}\n            />\n          )}\n        />\n      \n      {watchPeriodicSync !== \"-1\" && (\n        \n          }\n          fieldId=\"kc-full-sync-period\"\n        >\n          \n        \n      )}\n      \n        }\n        fieldId=\"kc-periodic-changed-users-sync\"\n        hasNoPaddingTop\n      >\n         (\n             {\n                field.onChange(value ? \"86400\" : \"-1\");\n              }}\n              isChecked={field.value !== \"-1\"}\n              label={t(\"common:on\")}\n              labelOff={t(\"common:off\")}\n              aria-label={t(\"periodicChangedUsersSync\")}\n            />\n          )}\n        />\n      \n      {watchChangedSync !== \"-1\" && (\n        \n          }\n          fieldId=\"kc-changed-users-sync-period\"\n          hasNoPaddingTop\n        >\n          \n        \n      )}\n    \n  );\n};\n","import type ComponentRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/componentRepresentation\";\nimport {\n  ActionGroup,\n  AlertVariant,\n  Button,\n  FormGroup,\n  PageSection,\n} from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { HelpItem } from \"ui-shared\";\n\nimport { useAlerts } from \"../../components/alert/Alerts\";\nimport { DynamicComponents } from \"../../components/dynamic/DynamicComponents\";\nimport { FormAccess } from \"../../components/form/FormAccess\";\nimport { KeycloakTextInput } from \"../../components/keycloak-text-input/KeycloakTextInput\";\nimport { useRealm } from \"../../context/realm-context/RealmContext\";\nimport { useServerInfo } from \"../../context/server-info/ServerInfoProvider\";\nimport { convertFormValuesToObject, convertToFormValues } from \"../../util\";\nimport { useFetch } from \"../../utils/useFetch\";\nimport { useParams } from \"../../utils/useParams\";\nimport type { CustomUserFederationRouteParams } from \"../routes/CustomUserFederation\";\nimport { toUserFederation } from \"../routes/UserFederation\";\nimport { ExtendedHeader } from \"../shared/ExtendedHeader\";\nimport { SettingsCache } from \"../shared/SettingsCache\";\nimport { SyncSettings } from \"./SyncSettings\";\n\nimport { adminClient } from \"../../admin-client\";\nimport \"./custom-provider-settings.css\";\n\nexport default function CustomProviderSettings() {\n  const { t } = useTranslation(\"user-federation\");\n  const { id, providerId } = useParams();\n  const navigate = useNavigate();\n  const form = useForm({\n    mode: \"onChange\",\n  });\n  const {\n    register,\n    reset,\n    setValue,\n    handleSubmit,\n    formState: { errors, isDirty },\n  } = form;\n\n  const { addAlert, addError } = useAlerts();\n  const { realm: realmName } = useRealm();\n  const [parentId, setParentId] = useState(\"\");\n\n  const provider = (\n    useServerInfo().componentTypes?.[\n      \"org.keycloak.storage.UserStorageProvider\"\n    ] || []\n  ).find((p) => p.id === providerId);\n\n  useFetch(\n    async () => {\n      if (id) {\n        return await adminClient.components.findOne({ id });\n      }\n      return undefined;\n    },\n    (fetchedComponent) => {\n      if (fetchedComponent) {\n        convertToFormValues(fetchedComponent, setValue);\n      } else if (id) {\n        throw new Error(t(\"common:notFound\"));\n      }\n    },\n    []\n  );\n\n  useFetch(\n    () =>\n      adminClient.realms.findOne({\n        realm: realmName,\n      }),\n    (realm) => setParentId(realm?.id!),\n    []\n  );\n\n  const save = async (component: ComponentRepresentation) => {\n    const saveComponent = convertFormValuesToObject({\n      ...component,\n      config: Object.fromEntries(\n        Object.entries(component.config || {}).map(([key, value]) => [\n          key,\n          Array.isArray(value) ? value : [value],\n        ])\n      ),\n      providerId,\n      providerType: \"org.keycloak.storage.UserStorageProvider\",\n      parentId,\n    });\n\n    try {\n      if (!id) {\n        await adminClient.components.create(saveComponent);\n        navigate(toUserFederation({ realm: realmName }));\n      } else {\n        await adminClient.components.update({ id }, saveComponent);\n      }\n      reset({ ...component });\n      addAlert(t(!id ? \"createSuccess\" : \"saveSuccess\"), AlertVariant.success);\n    } catch (error) {\n      addError(`user-federation:${!id ? \"createError\" : \"saveError\"}`, error);\n    }\n  };\n\n  return (\n    \n       handleSubmit(save)()} />\n      \n        \n          \n            }\n            helperTextInvalid={t(\"validateName\")}\n            validated={errors.name ? \"error\" : \"default\"}\n            fieldId=\"kc-ui-display-name\"\n            isRequired\n          >\n            \n          \n          \n            \n            {provider?.metadata.synchronizable && }\n          \n          \n          \n            \n              {t(\"common:save\")}\n            \n             (\n                \n              )}\n              data-testid=\"custom-cancel\"\n            >\n              {t(\"common:cancel\")}\n            \n          \n        \n      \n    \n  );\n}\n"],"names":["SyncSettings","t","useTranslation","control","register","watch","useFormContext","watchPeriodicSync","watchChangedSync","jsxs","Fragment","jsx","FormGroup","HelpItem","Controller","field","Switch","value","KeycloakTextInput","CustomProviderSettings","id","providerId","useParams","navigate","useNavigate","form","useForm","reset","setValue","handleSubmit","errors","isDirty","addAlert","addError","useAlerts","realmName","useRealm","parentId","setParentId","useState","provider","useServerInfo","p","useFetch","adminClient","fetchedComponent","convertToFormValues","realm","save","component","saveComponent","convertFormValuesToObject","key","toUserFederation","AlertVariant","error","FormProvider","ExtendedHeader","PageSection","FormAccess","DynamicComponents","SettingsCache","ActionGroup","Button","props","Link"],"mappings":"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"}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy