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

theme.keycloak.v2.admin.resources.assets.DynamicComponents-CIZcko9u.js.map Maven / Gradle / Ivy

There is a newer version: 26.0.7
Show newest version
{"version":3,"file":"DynamicComponents-CIZcko9u.js","sources":["../../src/components/dynamic/BooleanComponent.tsx","../../src/components/dynamic/ClientSelectComponent.tsx","../../src/components/dynamic/FileComponent.tsx","../../src/components/dynamic/GroupComponent.tsx","../../src/components/dynamic/ListComponent.tsx","../../src/components/dynamic/MapComponent.tsx","../../src/components/dynamic/MultivaluedListComponent.tsx","../../src/components/dynamic/MultivaluedStringComponent.tsx","../../src/components/dynamic/PasswordComponent.tsx","../../src/components/dynamic/RoleComponent.tsx","../../src/components/dynamic/ScriptComponent.tsx","../../src/components/dynamic/StringComponent.tsx","../../src/components/dynamic/TextComponent.tsx","../../src/components/dynamic/UrlComponent.tsx","../../src/components/dynamic/UserProfileAttributeListComponent.tsx","../../src/components/dynamic/components.ts","../../src/components/dynamic/DynamicComponents.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 \"@keycloak/keycloak-ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const BooleanComponent = ({\n  name,\n  label,\n  helpText,\n  isDisabled = false,\n  defaultValue,\n  isNew = true,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n\n  return (\n    }\n    >\n       (\n           field.onChange(\"\" + value)}\n            data-testid={name}\n            aria-label={t(label!)}\n          />\n        )}\n      />\n    \n  );\n};\n","import type { ComponentProps } from \"./components\";\nimport { ClientSelect } from \"../client/ClientSelect\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const ClientSelectComponent = (props: ComponentProps) => {\n  return ;\n};\n","import { FormGroup } from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { FileUpload } from \"../json-file-upload/patternfly/FileUpload\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const FileComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n  const [filename, setFilename] = useState(\"\");\n  const [isLoading, setIsLoading] = useState(false);\n\n  return (\n    }\n      fieldId={name!}\n    >\n       (\n           setFilename(file.name)}\n            onReadStarted={() => setIsLoading(true)}\n            onReadFinished={() => setIsLoading(false)}\n            onClearClick={() => {\n              field.onChange(\"\");\n              setFilename(\"\");\n            }}\n            isLoading={isLoading}\n            allowEditingUploadedText={false}\n            onChange={(value, filename) => {\n              field.onChange(value);\n              setFilename(filename);\n            }}\n          />\n        )}\n      />\n    \n  );\n};\n","import GroupRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/groupRepresentation\";\nimport {\n  Button,\n  Chip,\n  ChipGroup,\n  FormGroup,\n  InputGroup,\n  InputGroupItem,\n} from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { GroupPickerDialog } from \"../group/GroupPickerDialog\";\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const GroupComponent = ({\n  name,\n  label,\n  helpText,\n  required,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const [open, setOpen] = useState(false);\n  const [groups, setGroups] = useState();\n  const { control } = useFormContext();\n\n  return (\n     (\n        <>\n          {open && (\n             {\n                field.onChange(groups?.[0].path);\n                setGroups(groups);\n                setOpen(false);\n              }}\n              onClose={() => setOpen(false)}\n              filterGroups={groups}\n            />\n          )}\n\n          \n            }\n            fieldId={name!}\n            isRequired={required}\n          >\n            \n              \n                \n                  {field.value && (\n                     field.onChange(undefined)}>\n                      {field.value}\n                    \n                  )}\n                \n              \n              \n                 setOpen(!open)}\n                  variant=\"secondary\"\n                  data-testid=\"join-groups-button\"\n                >\n                  {t(\"selectGroup\")}\n                \n              \n            \n          \n        \n      )}\n    />\n  );\n};\n","import {\n  HelpItem,\n  KeycloakSelect,\n  SelectVariant,\n} from \"@keycloak/keycloak-ui-shared\";\nimport { FormGroup, SelectOption } from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nexport const ListComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  options,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n  const [open, setOpen] = useState(false);\n\n  return (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n       (\n           setOpen(toggle)}\n            onSelect={(value) => {\n              field.onChange(value as string);\n              setOpen(false);\n            }}\n            selections={field.value}\n            variant={SelectVariant.single}\n            aria-label={t(label!)}\n            isOpen={open}\n          >\n            {options?.map((option) => (\n              \n                {option}\n              \n            ))}\n          \n        )}\n      />\n    \n  );\n};\n","import {\n  ActionList,\n  ActionListItem,\n  Button,\n  EmptyState,\n  EmptyStateBody,\n  Flex,\n  FlexItem,\n  FormGroup,\n  TextInput,\n  EmptyStateFooter,\n} from \"@patternfly/react-core\";\nimport { MinusCircleIcon, PlusCircleIcon } from \"@patternfly/react-icons\";\nimport { useEffect, useState } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { generateId } from \"../../util\";\n\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { KeyValueType } from \"../key-value-form/key-value-convert\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\ntype IdKeyValueType = KeyValueType & {\n  id: number;\n};\n\nexport const MapComponent = ({\n  name,\n  label,\n  helpText,\n  required,\n  isDisabled,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n\n  const { getValues, setValue, register } = useFormContext();\n  const [map, setMap] = useState([]);\n  const fieldName = convertToName(name!);\n\n  useEffect(() => {\n    register(fieldName);\n    const values: KeyValueType[] = JSON.parse(getValues(fieldName) || \"[]\");\n    setMap(values.map((value) => ({ ...value, id: generateId() })));\n  }, []);\n\n  const appendNew = () =>\n    setMap([...map, { key: \"\", value: \"\", id: generateId() }]);\n\n  const update = (val = map) => {\n    setValue(\n      fieldName,\n      JSON.stringify(\n        // eslint-disable-next-line @typescript-eslint/no-unused-vars\n        val.filter((e) => e.key !== \"\").map(({ id, ...entry }) => entry),\n      ),\n    );\n  };\n\n  const updateKey = (index: number, key: string) => {\n    updateEntry(index, { ...map[index], key });\n  };\n\n  const updateValue = (index: number, value: string) => {\n    updateEntry(index, { ...map[index], value });\n  };\n\n  const updateEntry = (index: number, entry: IdKeyValueType) =>\n    setMap([...map.slice(0, index), entry, ...map.slice(index + 1)]);\n\n  const remove = (index: number) => {\n    const value = [...map.slice(0, index), ...map.slice(index + 1)];\n    setMap(value);\n    update(value);\n  };\n\n  return map.length !== 0 ? (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n      \n        \n          \n            {t(\"key\")}\n          \n          \n            {t(\"value\")}\n          \n        \n        {map.map((attribute, index) => (\n          \n            \n               updateKey(index, value)}\n                onBlur={() => update()}\n              />\n            \n            \n               updateValue(index, value)}\n                onBlur={() => update()}\n              />\n            \n            \n               remove(index)}\n                data-testid={`${fieldName}.${index}.remove`}\n              >\n                \n              \n            \n          \n        ))}\n      \n      \n        \n          }\n            onClick={() => appendNew()}\n          >\n            {t(\"addAttribute\", { label })}\n          \n        \n      \n    \n  ) : (\n    \n      {t(\"missingAttributes\", { label })}\n      \n        }\n          size=\"sm\"\n          onClick={appendNew}\n          isDisabled={isDisabled}\n        >\n          {t(\"addAttribute\", { label })}\n        \n      \n    \n  );\n};\n","import {\n  HelpItem,\n  KeycloakSelect,\n  SelectVariant,\n} from \"@keycloak/keycloak-ui-shared\";\nimport { FormGroup, SelectOption } from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nfunction stringToMultiline(value?: string): string[] {\n  return typeof value === \"string\" && value.length > 0 ? value.split(\"##\") : [];\n}\n\nfunction toStringValue(formValue: string[]): string {\n  return formValue.join(\"##\");\n}\n\nexport const MultiValuedListComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  options,\n  isDisabled = false,\n  stringify,\n  required,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n  const [open, setOpen] = useState(false);\n\n  return (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n       (\n           setOpen(isOpen)}\n            selections={\n              stringify ? stringToMultiline(field.value) : field.value\n            }\n            onSelect={(v) => {\n              const option = v.toString();\n              const values = stringify\n                ? stringToMultiline(field.value)\n                : field.value;\n              let newValue;\n              if (values.includes(option)) {\n                newValue = values.filter((item: string) => item !== option);\n              } else {\n                newValue = [...values, option];\n              }\n              field.onChange(stringify ? toStringValue(newValue) : newValue);\n            }}\n            onClear={() => {\n              field.onChange(stringify ? \"\" : []);\n            }}\n            isOpen={open}\n            aria-label={t(label!)}\n          >\n            {options?.map((option) => (\n              \n                {option}\n              \n            ))}\n          \n        )}\n      />\n    \n  );\n};\n","import { useTranslation } from \"react-i18next\";\nimport { FormGroup } from \"@patternfly/react-core\";\n\nimport type { ComponentProps } from \"./components\";\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { MultiLineInput } from \"../multi-line-input/MultiLineInput\";\nimport { convertToName } from \"./DynamicComponents\";\n\nfunction convertDefaultValue(formValue?: any): string[] {\n  return formValue && Array.isArray(formValue) ? formValue : [formValue];\n}\n\nexport const MultiValuedStringComponent = ({\n  name,\n  label,\n  defaultValue,\n  helpText,\n  stringify,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const fieldName = convertToName(name!);\n\n  return (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n      \n    \n  );\n};\n","import { useTranslation } from \"react-i18next\";\nimport { PasswordControl } from \"@keycloak/keycloak-ui-shared\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nexport const PasswordComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n\n  return (\n    \n  );\n};\n","import {\n  Button,\n  Chip,\n  FormGroup,\n  Split,\n  SplitItem,\n} from \"@patternfly/react-core\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport useToggle from \"../../utils/useToggle\";\nimport { FormErrorText, HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { AddRoleMappingModal } from \"../role-mapping/AddRoleMappingModal\";\nimport { Row, ServiceRole } from \"../role-mapping/RoleMapping\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nconst parseValue = (value: any) =>\n  value?.includes(\".\") ? value.split(\".\") : [\"\", value || \"\"];\n\nconst parseRow = (value: Row) =>\n  value.client?.clientId\n    ? `${value.client.clientId}.${value.role.name}`\n    : value.role.name;\n\nexport const RoleComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n\n  const [openModal, toggleModal] = useToggle();\n  const {\n    control,\n    formState: { errors },\n  } = useFormContext();\n\n  const fieldName = convertToName(name!);\n\n  return (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n       (\n          \n            {openModal && (\n               field.onChange(parseRow(rows[0]))}\n                onClose={toggleModal}\n                isRadio\n              />\n            )}\n\n            {field.value !== \"\" && (\n              \n                 field.onChange(\"\")}>\n                  \n                \n              \n            )}\n            \n              \n                {t(\"selectRole.label\")}\n              \n            \n          \n        )}\n      />\n      {errors[fieldName] && }\n    \n  );\n};\n","import { CodeEditor, Language } from \"@patternfly/react-code-editor\";\nimport { FormGroup } from \"@patternfly/react-core\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const ScriptComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n\n  return (\n    {helpText}}\n          fieldLabelId={`${label}`}\n        />\n      }\n      fieldId={name!}\n      isRequired={required}\n    >\n       (\n          \n        )}\n      />\n    \n  );\n};\n","import { FormGroup, TextInput } from \"@patternfly/react-core\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\n\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nexport const StringComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n  required,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { register } = useFormContext();\n\n  return (\n    }\n      fieldId={name!}\n      isRequired={required}\n    >\n      \n    \n  );\n};\n","import { FormGroup } from \"@patternfly/react-core\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { KeycloakTextArea, HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nexport const TextComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  required,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation();\n  const { register } = useFormContext();\n\n  return (\n    }\n      fieldId={name!}\n      required={required}\n    >\n      \n    \n  );\n};\n","import { FormGroup } from \"@patternfly/react-core\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { useFormContext, useWatch } from \"react-hook-form\";\nimport type { ComponentProps } from \"./components\";\nimport { FormattedLink } from \"../external-link/FormattedLink\";\n\nimport \"./url-component.css\";\n\nexport const UrlComponent = ({ name, label, helpText }: ComponentProps) => {\n  const { t } = useTranslation();\n  const { control } = useFormContext();\n  const { value } = useWatch({\n    control,\n    name: name!,\n    defaultValue: \"\",\n  });\n\n  return (\n    }\n      className=\"keycloak__identity-providers__url_component\"\n    >\n      \n    \n  );\n};\n","import type { UserProfileConfig } from \"@keycloak/keycloak-admin-client/lib/defs/userProfileMetadata\";\nimport { FormGroup } from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { FormErrorText, HelpItem } from \"@keycloak/keycloak-ui-shared\";\nimport { useAdminClient } from \"../../admin-client\";\nimport { useFetch } from \"../../utils/useFetch\";\nimport { KeySelect } from \"../key-value-form/KeySelect\";\nimport { convertToName } from \"./DynamicComponents\";\nimport type { ComponentProps } from \"./components\";\n\nexport const UserProfileAttributeListComponent = ({\n  name,\n  label,\n  helpText,\n  required = false,\n}: ComponentProps) => {\n  const { adminClient } = useAdminClient();\n\n  const { t } = useTranslation();\n  const {\n    formState: { errors },\n  } = useFormContext();\n\n  const [config, setConfig] = useState();\n  const convertedName = convertToName(name!);\n\n  useFetch(\n    () => adminClient.users.getProfile(),\n    (cfg) => setConfig(cfg),\n    [],\n  );\n\n  const convert = (config?: UserProfileConfig) => {\n    if (!config?.attributes) return [];\n\n    return config.attributes.map((option) => ({\n      key: option.name!,\n      label: option.name!,\n    }));\n  };\n\n  if (!config) return null;\n\n  return (\n    }\n      fieldId={convertedName!}\n    >\n      \n      {errors[convertedName!] && }\n    \n  );\n};\n","import type { ConfigPropertyRepresentation } from \"@keycloak/keycloak-admin-client/lib/defs/authenticatorConfigInfoRepresentation\";\nimport { FunctionComponent } from \"react\";\n\nimport { BooleanComponent } from \"./BooleanComponent\";\nimport { ClientSelectComponent } from \"./ClientSelectComponent\";\nimport { FileComponent } from \"./FileComponent\";\nimport { GroupComponent } from \"./GroupComponent\";\nimport { ListComponent } from \"./ListComponent\";\nimport { MapComponent } from \"./MapComponent\";\nimport { MultiValuedListComponent } from \"./MultivaluedListComponent\";\nimport { MultiValuedStringComponent } from \"./MultivaluedStringComponent\";\nimport { PasswordComponent } from \"./PasswordComponent\";\nimport { RoleComponent } from \"./RoleComponent\";\nimport { ScriptComponent } from \"./ScriptComponent\";\nimport { StringComponent } from \"./StringComponent\";\nimport { TextComponent } from \"./TextComponent\";\nimport { UrlComponent } from \"./UrlComponent\";\nimport { UserProfileAttributeListComponent } from \"./UserProfileAttributeListComponent\";\n\nexport type ComponentProps = Omit & {\n  isDisabled?: boolean;\n  isNew?: boolean;\n  stringify?: boolean;\n};\n\nconst ComponentTypes = [\n  \"String\",\n  \"Text\",\n  \"boolean\",\n  \"List\",\n  \"Role\",\n  \"Script\",\n  \"Map\",\n  \"Group\",\n  \"MultivaluedList\",\n  \"ClientList\",\n  \"UserProfileAttributeList\",\n  \"MultivaluedString\",\n  \"File\",\n  \"Password\",\n  \"Url\",\n] as const;\n\nexport type Components = (typeof ComponentTypes)[number];\n\nexport const COMPONENTS: {\n  [index in Components]: FunctionComponent;\n} = {\n  String: StringComponent,\n  Text: TextComponent,\n  boolean: BooleanComponent,\n  List: ListComponent,\n  Role: RoleComponent,\n  Script: ScriptComponent,\n  Map: MapComponent,\n  Group: GroupComponent,\n  ClientList: ClientSelectComponent,\n  UserProfileAttributeList: UserProfileAttributeListComponent,\n  MultivaluedList: MultiValuedListComponent,\n  MultivaluedString: MultiValuedStringComponent,\n  File: FileComponent,\n  Password: PasswordComponent,\n  Url: UrlComponent,\n} as const;\n\nexport const isValidComponentType = (value: string): value is Components =>\n  value in COMPONENTS;\n","import type { ConfigPropertyRepresentation } from \"@keycloak/keycloak-admin-client/lib/defs/authenticatorConfigInfoRepresentation\";\n\nimport { COMPONENTS, isValidComponentType } from \"./components\";\nimport { convertAttributeNameToForm } from \"../../util\";\n\ntype DynamicComponentProps = {\n  properties: ConfigPropertyRepresentation[];\n  stringify?: boolean;\n  isNew?: boolean;\n};\n\nexport const DynamicComponents = ({\n  properties,\n  ...rest\n}: DynamicComponentProps) => (\n  <>\n    {properties.map((property) => {\n      const componentType = property.type!;\n      if (isValidComponentType(componentType)) {\n        const Component = COMPONENTS[componentType];\n        return ;\n      } else {\n        console.warn(`There is no editor registered for ${componentType}`);\n      }\n    })}\n  \n);\n\nexport const convertToName = (name: string): string =>\n  convertAttributeNameToForm(`config.${name}`);\n"],"names":["BooleanComponent","name","label","helpText","isDisabled","defaultValue","isNew","t","useTranslation","control","useFormContext","jsx","FormGroup","HelpItem","Controller","convertToName","field","Switch","_event","value","ClientSelectComponent","props","ClientSelect","FileComponent","filename","setFilename","useState","isLoading","setIsLoading","FileUpload","_","file","GroupComponent","required","open","setOpen","groups","setGroups","jsxs","Fragment","GroupPickerDialog","InputGroup","InputGroupItem","ChipGroup","Chip","Button","ListComponent","options","KeycloakSelect","toggle","SelectVariant","option","SelectOption","MapComponent","getValues","setValue","register","map","setMap","fieldName","useEffect","values","generateId","appendNew","update","val","e","id","entry","updateKey","index","key","updateEntry","updateValue","remove","Flex","FlexItem","attribute","TextInput","MinusCircleIcon","ActionList","ActionListItem","PlusCircleIcon","EmptyState","EmptyStateBody","EmptyStateFooter","stringToMultiline","toStringValue","formValue","MultiValuedListComponent","stringify","isOpen","v","newValue","item","convertDefaultValue","MultiValuedStringComponent","MultiLineInput","PasswordComponent","PasswordControl","parseValue","parseRow","RoleComponent","openModal","toggleModal","useToggle","errors","Split","AddRoleMappingModal","rows","SplitItem","ServiceRole","FormErrorText","ScriptComponent","CodeEditor","Language","StringComponent","TextComponent","KeycloakTextArea","UrlComponent","useWatch","FormattedLink","UserProfileAttributeListComponent","adminClient","useAdminClient","config","setConfig","convertedName","useFetch","cfg","convert","KeySelect","COMPONENTS","isValidComponentType","DynamicComponents","properties","rest","property","componentType","Component","convertAttributeNameToForm"],"mappings":"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"}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy