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

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

There is a newer version: 25.0.1
Show newest version
{"version":3,"file":"DynamicComponents-f1c9e7ec.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/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 \"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(\"dynamic\");\n  const { control } = useFormContext();\n\n  return (\n    \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  );\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 \"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(\"dynamic\");\n  const { control } = useFormContext();\n  const [filename, setFilename] = useState(\"\");\n  const [isLoading, setIsLoading] = useState(false);\n\n  return (\n    \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} 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 \"ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const GroupComponent = ({ name, label, helpText }: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\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          >\n            \n              \n                {field.value && (\n                   field.onChange(undefined)}>\n                    {field.value}\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","import {\n  FormGroup,\n  Select,\n  SelectOption,\n  SelectVariant,\n} from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const ListComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  options,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { control } = useFormContext();\n  const [open, setOpen] = useState(false);\n\n  return (\n    \n      }\n      fieldId={name!}\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            ))}\n          \n        )}\n      />\n    \n  );\n};\n","import {\n  ActionList,\n  ActionListItem,\n  Button,\n  Flex,\n  FlexItem,\n  FormGroup,\n  TextInput,\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 \"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 = ({ name, label, helpText }: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\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    if (!values.length) {\n      values.push({ key: \"\", value: \"\" });\n    }\n    setMap(values.map((value) => ({ ...value, id: generateId() })));\n  }, [register, getValues]);\n\n  const update = (val = map) => {\n    // eslint-disable-next-line @typescript-eslint/no-unused-vars\n    setValue(fieldName, JSON.stringify(val.map(({ id, ...entry }) => entry)));\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 (\n    \n      }\n      fieldId={name!}\n    >\n      \n        \n          \n            {t(\"common:key\")}\n          \n          \n            {t(\"common: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={() =>\n              setMap([...map, { key: \"\", value: \"\", id: generateId() }])\n            }\n          >\n            {t(\"common:addAttribute\")}\n          \n        \n      \n    \n  );\n};\n","import {\n  FormGroup,\n  Select,\n  SelectOption,\n  SelectVariant,\n} from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { HelpItem } from \"ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const MultiValuedListComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  options,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { control } = useFormContext();\n  const [open, setOpen] = useState(false);\n\n  return (\n    \n      }\n      fieldId={name!}\n    >\n       (\n           setOpen(isOpen)}\n            selections={field.value}\n            onSelect={(_, v) => {\n              const option = v.toString();\n              if (field.value.includes(option)) {\n                field.onChange(\n                  field.value.filter((item: string) => item !== option)\n                );\n              } else {\n                field.onChange([...field.value, option]);\n              }\n            }}\n            onClear={(event) => {\n              event.stopPropagation();\n              field.onChange([]);\n            }}\n            isOpen={open}\n            aria-label={t(label!)}\n          >\n            {options?.map((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 \"ui-shared\";\nimport { MultiLineInput } from \"../multi-line-input/MultiLineInput\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const MultiValuedStringComponent = ({\n  name,\n  label,\n  defaultValue,\n  helpText,\n  stringify,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const fieldName = convertToName(name!);\n\n  return (\n    \n      }\n      fieldId={name!}\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 { HelpItem } from \"ui-shared\";\nimport { PasswordInput } from \"../password-input/PasswordInput\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const PasswordComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { register } = useFormContext();\n\n  return (\n    \n      }\n      fieldId={name!}\n    >\n      \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 { HelpItem } from \"ui-shared\";\nimport { AddRoleMappingModal } from \"../role-mapping/AddRoleMappingModal\";\nimport { Row, ServiceRole } from \"../role-mapping/RoleMapping\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\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  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\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      }\n      validated={errors[fieldName] ? \"error\" : \"default\"}\n      helperTextInvalid={t(\"common:required\")}\n      fieldId={name!}\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    \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 \"ui-shared\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const ScriptComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { control } = useFormContext();\n\n  return (\n    {helpText}}\n          fieldLabelId={`dynamic:${label}`}\n        />\n      }\n      fieldId={name!}\n    >\n       (\n          \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 { HelpItem } from \"ui-shared\";\nimport { KeycloakTextInput } from \"../keycloak-text-input/KeycloakTextInput\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const StringComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { register } = useFormContext();\n\n  return (\n    \n      }\n      fieldId={name!}\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 { HelpItem } from \"ui-shared\";\nimport { KeycloakTextArea } from \"../keycloak-text-area/KeycloakTextArea\";\nimport type { ComponentProps } from \"./components\";\nimport { convertToName } from \"./DynamicComponents\";\n\nexport const TextComponent = ({\n  name,\n  label,\n  helpText,\n  defaultValue,\n  isDisabled = false,\n}: ComponentProps) => {\n  const { t } = useTranslation(\"dynamic\");\n  const { register } = useFormContext();\n\n  return (\n    \n      }\n      fieldId={name!}\n    >\n      \n    \n  );\n};\n","import type { ConfigPropertyRepresentation } from \"@keycloak/keycloak-admin-client/lib/defs/authenticatorConfigInfoRepresentation\";\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\";\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  \"MultivaluedString\",\n  \"File\",\n  \"Password\",\n] as const;\n\nexport type Components = (typeof ComponentTypes)[number];\n\nexport const COMPONENTS: {\n  [index in Components]: (props: ComponentProps) => JSX.Element;\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  MultivaluedList: MultiValuedListComponent,\n  MultivaluedString: MultiValuedStringComponent,\n  File: FileComponent,\n  Password: PasswordComponent,\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","value","ClientSelectComponent","props","ClientSelect","FileComponent","filename","setFilename","useState","isLoading","setIsLoading","FileUpload","_","file","GroupComponent","open","setOpen","groups","setGroups","jsxs","Fragment","GroupPickerDialog","InputGroup","ChipGroup","Chip","Button","ListComponent","options","Select","toggle","SelectVariant","option","SelectOption","MapComponent","getValues","setValue","register","map","setMap","fieldName","useEffect","values","generateId","update","val","id","entry","updateKey","index","key","updateEntry","updateValue","remove","Flex","FlexItem","attribute","TextInput","MinusCircleIcon","ActionList","ActionListItem","PlusCircleIcon","MultiValuedListComponent","isOpen","v","item","event","MultiValuedStringComponent","stringify","MultiLineInput","PasswordComponent","PasswordInput","parseValue","parseRow","RoleComponent","openModal","toggleModal","useToggle","errors","Split","AddRoleMappingModal","rows","SplitItem","ServiceRole","ScriptComponent","CodeEditor","Language","StringComponent","KeycloakTextInput","TextComponent","KeycloakTextArea","COMPONENTS","isValidComponentType","DynamicComponents","properties","rest","property","componentType","Component","convertAttributeNameToForm"],"mappings":"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"}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy