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

theme.keycloak.v2.admin.resources.assets.NewAttributeSettings-ded9dcf6.js.map Maven / Gradle / Ivy

There is a newer version: 25.0.1
Show newest version
{"version":3,"file":"NewAttributeSettings-ded9dcf6.js","sources":["../../src/realm-settings/user-profile/attribute/AttributeAnnotations.tsx","../../src/realm-settings/user-profile/attribute/AttributeGeneralSettings.tsx","../../src/realm-settings/user-profile/attribute/AttributePermission.tsx","../../src/realm-settings/user-profile/attribute/ValidatorSelect.tsx","../../src/realm-settings/user-profile/attribute/AddValidatorDialog.tsx","../../src/realm-settings/user-profile/attribute/AttributeValidations.tsx","../../src/realm-settings/NewAttributeSettings.tsx"],"sourcesContent":["import { useTranslation } from \"react-i18next\";\nimport { FormGroup, Grid, GridItem } from \"@patternfly/react-core\";\n\nimport { FormAccess } from \"../../../components/form/FormAccess\";\nimport { KeyValueInput } from \"../../../components/key-value-form/KeyValueInput\";\n\nimport \"../../realm-settings-section.css\";\n\nexport const AttributeAnnotations = () => {\n  const { t } = useTranslation(\"realm-settings\");\n\n  return (\n    \n      \n        \n          \n            \n          \n        \n      \n    \n  );\n};\n","import type ClientScopeRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/clientScopeRepresentation\";\nimport type UserProfileConfig from \"@keycloak/keycloak-admin-client/lib/defs/userProfileConfig\";\nimport {\n  Divider,\n  FormGroup,\n  Radio,\n  Select,\n  SelectOption,\n  SelectVariant,\n  Switch,\n} from \"@patternfly/react-core\";\nimport { isEqual } from \"lodash-es\";\nimport { useState } from \"react\";\nimport { Controller, useFormContext, useWatch } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { HelpItem } from \"ui-shared\";\n\nimport { adminClient } from \"../../../admin-client\";\nimport { FormAccess } from \"../../../components/form/FormAccess\";\nimport { KeycloakSpinner } from \"../../../components/keycloak-spinner/KeycloakSpinner\";\nimport { KeycloakTextInput } from \"../../../components/keycloak-text-input/KeycloakTextInput\";\nimport { useFetch } from \"../../../utils/useFetch\";\nimport { useParams } from \"../../../utils/useParams\";\nimport { USERNAME_EMAIL } from \"../../NewAttributeSettings\";\nimport type { AttributeParams } from \"../../routes/Attribute\";\n\nimport \"../../realm-settings-section.css\";\n\nconst REQUIRED_FOR = [\n  { label: \"requiredForLabel.both\", value: [\"admin\", \"user\"] },\n  { label: \"requiredForLabel.users\", value: [\"user\"] },\n  { label: \"requiredForLabel.admins\", value: [\"admin\"] },\n] as const;\n\nexport const AttributeGeneralSettings = () => {\n  const { t } = useTranslation(\"realm-settings\");\n  const form = useFormContext();\n  const [clientScopes, setClientScopes] =\n    useState();\n  const [config, setConfig] = useState();\n  const [selectEnabledWhenOpen, setSelectEnabledWhenOpen] = useState(false);\n  const [selectRequiredForOpen, setSelectRequiredForOpen] = useState(false);\n  const [isAttributeGroupDropdownOpen, setIsAttributeGroupDropdownOpen] =\n    useState(false);\n  const { attributeName } = useParams();\n  const editMode = attributeName ? true : false;\n\n  const selectedScopes = useWatch({\n    control: form.control,\n    name: \"selector.scopes\",\n    defaultValue: [],\n  });\n\n  const requiredScopes = useWatch({\n    control: form.control,\n    name: \"required.scopes\",\n    defaultValue: [],\n  });\n\n  const required = useWatch({\n    control: form.control,\n    name: \"isRequired\",\n    defaultValue: false,\n  });\n\n  useFetch(() => adminClient.clientScopes.find(), setClientScopes, []);\n  useFetch(() => adminClient.users.getProfile(), setConfig, []);\n\n  if (!clientScopes) {\n    return ;\n  }\n  return (\n    \n      \n        }\n        fieldId=\"kc-attribute-name\"\n        isRequired\n        validated={form.formState.errors.name ? \"error\" : \"default\"}\n        helperTextInvalid={t(\"validateName\")}\n      >\n        \n      \n      \n        }\n        fieldId=\"kc-attribute-display-name\"\n      >\n        \n      \n      \n        }\n        fieldId=\"kc-attribute-group\"\n      >\n         (\n            \n                setIsAttributeGroupDropdownOpen(!isAttributeGroupDropdownOpen)\n              }\n              isOpen={isAttributeGroupDropdownOpen}\n              onSelect={(_, value) => {\n                field.onChange(value.toString());\n                setIsAttributeGroupDropdownOpen(false);\n              }}\n              selections={[field.value || t(\"common:none\")]}\n              variant={SelectVariant.single}\n            >\n              {[\n                \n                  {t(\"common:none\")}\n                ,\n                ...(config?.groups?.map((group) => (\n                  \n                    {group.name}\n                  \n                )) || []),\n              ]}\n            \n          )}\n        >\n      \n      {!USERNAME_EMAIL.includes(attributeName) && (\n        <>\n          \n          \n             {\n                if (value) {\n                  form.setValue(\n                    \"selector.scopes\",\n                    clientScopes.map((s) => s.name)\n                  );\n                } else {\n                  form.setValue(\"selector.scopes\", []);\n                }\n              }}\n              className=\"pf-u-mb-md\"\n            />\n             {\n                if (value) {\n                  form.setValue(\"selector.scopes\", []);\n                } else {\n                  form.setValue(\n                    \"selector.scopes\",\n                    clientScopes.map((s) => s.name)\n                  );\n                }\n              }}\n              className=\"pf-u-mb-md\"\n            />\n          \n          \n             s.name)}\n              render={({ field }) => (\n                 setSelectEnabledWhenOpen(isOpen)}\n                  selections={field.value}\n                  onSelect={(_, selectedValue) => {\n                    const option = selectedValue.toString();\n                    let changedValue = [\"\"];\n                    if (field.value) {\n                      changedValue = field.value.includes(option)\n                        ? field.value.filter((item: string) => item !== option)\n                        : [...field.value, option];\n                    } else {\n                      changedValue = [option];\n                    }\n\n                    field.onChange(changedValue);\n                  }}\n                  onClear={(selectedValues) => {\n                    selectedValues.stopPropagation();\n                    field.onChange([]);\n                  }}\n                  isOpen={selectEnabledWhenOpen}\n                  isDisabled={selectedScopes.length === clientScopes.length}\n                  aria-labelledby={\"scope\"}\n                >\n                  {clientScopes.map((option) => (\n                    \n                  ))}\n                \n              )}\n            />\n          \n\n          \n          \n            }\n            fieldId=\"kc-required\"\n            hasNoPaddingTop\n          >\n             (\n                \n              )}\n            />\n          \n          {required && (\n            <>\n              \n                 (\n                    
\n {REQUIRED_FOR.map((option) => (\n {\n field.onChange(option.value);\n }}\n label={t(option.label)}\n className=\"kc-requiredFor-option\"\n />\n ))}\n
\n )}\n />\n \n \n {\n if (value) {\n form.setValue(\n \"required.scopes\",\n clientScopes.map((s) => s.name)\n );\n } else {\n form.setValue(\"required.scopes\", []);\n }\n }}\n className=\"pf-u-mb-md\"\n />\n {\n if (value) {\n form.setValue(\"required.scopes\", []);\n } else {\n form.setValue(\n \"required.scopes\",\n clientScopes.map((s) => s.name)\n );\n }\n }}\n className=\"pf-u-mb-md\"\n />\n \n \n (\n setSelectRequiredForOpen(isOpen)}\n selections={field.value}\n onSelect={(_, selectedValue) => {\n const option = selectedValue.toString();\n let changedValue = [\"\"];\n if (field.value) {\n changedValue = field.value.includes(option)\n ? field.value.filter(\n (item: string) => item !== option\n )\n : [...field.value, option];\n } else {\n changedValue = [option];\n }\n field.onChange(changedValue);\n }}\n onClear={(selectedValues) => {\n selectedValues.stopPropagation();\n field.onChange([]);\n }}\n isOpen={selectRequiredForOpen}\n isDisabled={requiredScopes.length === clientScopes.length}\n aria-labelledby={\"scope\"}\n >\n {clientScopes.map((option) => (\n \n ))}\n \n )}\n />\n \n \n )}\n \n )}\n
\n );\n};\n","import { Checkbox, FormGroup, Grid, GridItem } from \"@patternfly/react-core\";\nimport { Controller, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { FormAccess } from \"../../../components/form/FormAccess\";\nimport { HelpItem } from \"ui-shared\";\n\nimport \"../../realm-settings-section.css\";\n\nconst Permissions = ({ name }: { name: string }) => {\n const { t } = useTranslation(\"realm-settings\");\n const { control } = useFormContext();\n\n return (\n \n (\n <>\n \n {\n const option = \"user\";\n const changedValue = field.value.includes(option)\n ? field.value.filter((item: string) => item !== option)\n : [...field.value, option];\n\n field.onChange(changedValue);\n }}\n />\n \n \n {\n const option = \"admin\";\n const changedValue = field.value.includes(option)\n ? field.value.filter((item: string) => item !== option)\n : [...field.value, option];\n\n field.onChange(changedValue);\n }}\n />\n \n \n )}\n />\n \n );\n};\n\nexport const AttributePermission = () => {\n const { t } = useTranslation(\"realm-settings\");\n\n return (\n \n \n }\n fieldId=\"kc-who-can-edit\"\n >\n \n \n \n }\n fieldId=\"kc-who-can-view\"\n >\n \n \n \n );\n};\n","import ComponentTypeRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/componentTypeRepresentation\";\nimport { FormGroup, Select, SelectOption } from \"@patternfly/react-core\";\nimport { useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { useServerInfo } from \"../../../context/server-info/ServerInfoProvider\";\nimport useToggle from \"../../../utils/useToggle\";\n\ntype ValidatorSelectProps = {\n selectedValidators: string[];\n onChange: (validator: ComponentTypeRepresentation) => void;\n};\n\nexport const ValidatorSelect = ({\n selectedValidators,\n onChange,\n}: ValidatorSelectProps) => {\n const { t } = useTranslation(\"realm-settings\");\n const allValidator: ComponentTypeRepresentation[] =\n useServerInfo().componentTypes?.[\"org.keycloak.validate.Validator\"] || [];\n const validators = useMemo(\n () => allValidator.filter(({ id }) => !selectedValidators.includes(id)),\n [selectedValidators]\n );\n const [open, toggle] = useToggle();\n const [value, setValue] = useState();\n\n return (\n \n {\n const option = value as ComponentTypeRepresentation;\n onChange(option);\n setValue(option);\n toggle();\n }}\n selections={value?.id}\n variant=\"single\"\n aria-label={t(\"selectOne\")}\n isOpen={open}\n placeholderText={t(\"common:choose\")}\n menuAppendTo=\"parent\"\n maxHeight={300}\n >\n {validators.map((option) => (\n \n {option.id}\n \n ))}\n \n \n );\n};\n","import ComponentRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/componentRepresentation\";\nimport ComponentTypeRepresentation from \"@keycloak/keycloak-admin-client/lib/defs/componentTypeRepresentation\";\nimport { Button, Form, Modal, ModalVariant } from \"@patternfly/react-core\";\nimport { useState } from \"react\";\nimport { FormProvider, useForm } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DynamicComponents } from \"../../../components/dynamic/DynamicComponents\";\nimport { useServerInfo } from \"../../../context/server-info/ServerInfoProvider\";\nimport type { IndexedValidations } from \"../../NewAttributeSettings\";\nimport { ValidatorSelect } from \"./ValidatorSelect\";\n\nexport type AddValidatorDialogProps = {\n selectedValidators: IndexedValidations[];\n toggleDialog: () => void;\n onConfirm: (newValidator: ComponentRepresentation) => void;\n};\n\nexport const AddValidatorDialog = ({\n selectedValidators,\n toggleDialog,\n onConfirm,\n}: AddValidatorDialogProps) => {\n const { t } = useTranslation(\"realm-settings\");\n const [selectedValidator, setSelectedValidator] =\n useState();\n\n const allSelected =\n useServerInfo().componentTypes?.[\"org.keycloak.validate.Validator\"]\n .length === selectedValidators.length;\n const form = useForm();\n const { handleSubmit } = form;\n\n const save = (newValidator: ComponentTypeRepresentation) => {\n onConfirm({ ...newValidator, id: selectedValidator?.id });\n toggleDialog();\n };\n\n return (\n \n {t(\"common:save\")}\n ,\n \n {t(\"common:cancel\")}\n ,\n ]}\n >\n {allSelected ? (\n t(\"emptyValidators\")\n ) : (\n
\n validator.key\n )}\n onChange={setSelectedValidator}\n />\n {selectedValidator && (\n \n \n \n )}\n \n )}\n \n );\n};\n","import {\n Button,\n ButtonVariant,\n Divider,\n Text,\n TextVariants,\n} from \"@patternfly/react-core\";\nimport { PlusCircleIcon } from \"@patternfly/react-icons\";\nimport {\n TableComposable,\n Tbody,\n Td,\n Th,\n Thead,\n Tr,\n} from \"@patternfly/react-table\";\nimport { useEffect, useState } from \"react\";\nimport { useFormContext, useWatch } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useConfirmDialog } from \"../../../components/confirm-dialog/ConfirmDialog\";\nimport { DefaultValue } from \"../../../components/key-value-form/KeyValueInput\";\nimport useToggle from \"../../../utils/useToggle\";\nimport type { IndexedValidations } from \"../../NewAttributeSettings\";\nimport { AddValidatorDialog } from \"../attribute/AddValidatorDialog\";\n\nimport \"../../realm-settings-section.css\";\n\nexport const AttributeValidations = () => {\n const { t } = useTranslation(\"realm-settings\");\n const [addValidatorModalOpen, toggleModal] = useToggle();\n const [validatorToDelete, setValidatorToDelete] = useState();\n const { setValue, control, register, getValues } = useFormContext();\n\n const validators: IndexedValidations[] = useWatch({\n name: \"validations\",\n control,\n defaultValue: [],\n });\n\n useEffect(() => {\n register(\"validations\");\n }, [register]);\n\n const [toggleDeleteDialog, DeleteConfirm] = useConfirmDialog({\n titleKey: t(\"deleteValidatorConfirmTitle\"),\n messageKey: t(\"deleteValidatorConfirmMsg\", {\n validatorName: validatorToDelete,\n }),\n continueButtonLabel: \"common:delete\",\n continueButtonVariant: ButtonVariant.danger,\n onConfirm: async () => {\n const updatedValidators = validators.filter(\n (validator) => validator.key !== validatorToDelete\n );\n\n setValue(\"validations\", [...updatedValidators]);\n },\n });\n\n return (\n <>\n {addValidatorModalOpen && (\n {\n const annotations: DefaultValue[] = getValues(\"annotations\");\n if (\n newValidator.id === \"options\" &&\n !annotations.find((a) => a.key === \"inputType\")\n ) {\n setValue(\"annotations\", [\n ...annotations,\n { key: \"inputType\", value: \"select\" },\n ]);\n }\n setValue(\"validations\", [\n ...validators,\n { key: newValidator.id, value: newValidator.config },\n ]);\n }}\n toggleDialog={toggleModal}\n />\n )}\n \n
\n toggleModal()}\n variant=\"link\"\n data-testid=\"addValidator\"\n className=\"kc--attributes-validations--add-validation-button\"\n icon={}\n >\n {t(\"realm-settings:addValidator\")}\n \n \n {validators.length !== 0 ? (\n \n \n \n {t(\"validatorColNames.colName\")}\n {t(\"validatorColNames.colConfig\")}\n \n \n \n \n {validators.map((validator) => (\n \n \n {validator.key}\n \n \n {JSON.stringify(validator.value)}\n \n \n {\n toggleDeleteDialog();\n setValidatorToDelete(validator.key);\n }}\n >\n {t(\"common:delete\")}\n \n \n \n ))}\n \n \n ) : (\n \n {t(\"realm-settings:emptyValidators\")}\n \n )}\n
\n \n );\n};\n","import type UserProfileConfig from \"@keycloak/keycloak-admin-client/lib/defs/userProfileConfig\";\nimport type { UserProfileAttribute } from \"@keycloak/keycloak-admin-client/lib/defs/userProfileConfig\";\nimport {\n AlertVariant,\n Button,\n Form,\n PageSection,\n} from \"@patternfly/react-core\";\nimport { flatten } from \"flat\";\nimport { useState } from \"react\";\nimport { FormProvider, useForm, useFormContext } from \"react-hook-form\";\nimport { useTranslation } from \"react-i18next\";\nimport { Link, useNavigate } from \"react-router-dom\";\n\nimport { adminClient } from \"../admin-client\";\nimport { useAlerts } from \"../components/alert/Alerts\";\nimport { FixedButtonsGroup } from \"../components/form/FixedButtonGroup\";\nimport { ScrollForm } from \"../components/scroll-form/ScrollForm\";\nimport { ViewHeader } from \"../components/view-header/ViewHeader\";\nimport { convertToFormValues } from \"../util\";\nimport { useFetch } from \"../utils/useFetch\";\nimport { useParams } from \"../utils/useParams\";\nimport type { AttributeParams } from \"./routes/Attribute\";\nimport { toUserProfile } from \"./routes/UserProfile\";\nimport { UserProfileProvider } from \"./user-profile/UserProfileContext\";\nimport { AttributeAnnotations } from \"./user-profile/attribute/AttributeAnnotations\";\nimport { AttributeGeneralSettings } from \"./user-profile/attribute/AttributeGeneralSettings\";\nimport { AttributePermission } from \"./user-profile/attribute/AttributePermission\";\nimport { AttributeValidations } from \"./user-profile/attribute/AttributeValidations\";\n\nimport \"./realm-settings-section.css\";\n\ntype IndexedAnnotations = {\n key: string;\n value?: Record;\n};\n\nexport type IndexedValidations = {\n key: string;\n value?: Record;\n};\n\ntype UserProfileAttributeType = Omit<\n UserProfileAttribute,\n \"validations\" | \"annotations\"\n> &\n Attribute &\n Permission & {\n validations: IndexedValidations[];\n annotations: IndexedAnnotations[];\n };\n\ntype Attribute = {\n roles: string[];\n scopes: string[];\n isRequired: boolean;\n};\n\ntype Permission = {\n view: PermissionView[];\n edit: PermissionEdit[];\n};\n\ntype PermissionView = [\n {\n adminView: boolean;\n userView: boolean;\n }\n];\n\ntype PermissionEdit = [\n {\n adminEdit: boolean;\n userEdit: boolean;\n }\n];\n\nexport const USERNAME_EMAIL = [\"username\", \"email\"];\n\nconst CreateAttributeFormContent = ({\n save,\n}: {\n save: (profileConfig: UserProfileConfig) => void;\n}) => {\n const { t } = useTranslation(\"realm-settings\");\n const form = useFormContext();\n const { realm, attributeName } = useParams();\n const editMode = attributeName ? true : false;\n\n return (\n \n },\n { title: t(\"permission\"), panel: },\n { title: t(\"validations\"), panel: },\n { title: t(\"annotations\"), panel: },\n ]}\n />\n
\n \n \n {editMode ? t(\"common:save\") : t(\"common:create\")}\n \n \n {t(\"common:cancel\")}\n \n \n
\n
\n );\n};\n\nexport default function NewAttributeSettings() {\n const { realm, attributeName } = useParams();\n const form = useForm();\n const { t } = useTranslation(\"realm-settings\");\n const navigate = useNavigate();\n const { addAlert, addError } = useAlerts();\n const [config, setConfig] = useState(null);\n const editMode = attributeName ? true : false;\n\n useFetch(\n () => adminClient.users.getProfile(),\n (config) => {\n setConfig(config);\n const {\n annotations,\n validations,\n permissions,\n selector,\n required,\n ...values\n } =\n config.attributes!.find(\n (attribute) => attribute.name === attributeName\n ) || {};\n convertToFormValues(values, form.setValue);\n Object.entries(\n flatten({ permissions, selector, required }, { safe: true })\n ).map(([key, value]) => form.setValue(key as any, value));\n form.setValue(\n \"annotations\",\n Object.entries(annotations || {}).map(([key, value]) => ({\n key,\n value,\n }))\n );\n form.setValue(\n \"validations\",\n Object.entries(validations || {}).map(([key, value]) => ({\n key,\n value,\n }))\n );\n form.setValue(\"isRequired\", required !== undefined);\n },\n []\n );\n\n const save = async (profileConfig: UserProfileAttributeType) => {\n const validations = profileConfig.validations.reduce(\n (prevValidations, currentValidations) => {\n prevValidations[currentValidations.key] =\n currentValidations.value?.length === 0\n ? {}\n : currentValidations.value;\n return prevValidations;\n },\n {} as Record\n );\n\n const annotations = profileConfig.annotations.reduce(\n (obj, item) => Object.assign(obj, { [item.key]: item.value }),\n {}\n );\n\n const patchAttributes = () =>\n config?.attributes!.map((attribute) => {\n if (attribute.name !== attributeName) {\n return attribute;\n }\n\n delete attribute.required;\n return Object.assign(\n {\n ...attribute,\n name: attributeName,\n displayName: profileConfig.displayName!,\n selector: profileConfig.selector,\n permissions: profileConfig.permissions!,\n annotations,\n validations,\n },\n profileConfig.isRequired\n ? { required: profileConfig.required }\n : undefined,\n profileConfig.group ? { group: profileConfig.group } : { group: null }\n );\n });\n\n const addAttribute = () =>\n config?.attributes!.concat([\n Object.assign(\n {\n name: profileConfig.name,\n displayName: profileConfig.displayName!,\n required: profileConfig.isRequired\n ? profileConfig.required\n : undefined,\n selector: profileConfig.selector,\n permissions: profileConfig.permissions!,\n annotations,\n validations,\n },\n profileConfig.isRequired\n ? { required: profileConfig.required }\n : undefined,\n profileConfig.group ? { group: profileConfig.group } : undefined\n ),\n ] as UserProfileAttribute);\n\n const updatedAttributes = editMode ? patchAttributes() : addAttribute();\n\n try {\n await adminClient.users.updateProfile({\n ...config,\n attributes: updatedAttributes as UserProfileAttribute[],\n realm,\n });\n\n navigate(toUserProfile({ realm, tab: \"attributes\" }));\n\n addAlert(\n t(\"realm-settings:createAttributeSuccess\"),\n AlertVariant.success\n );\n } catch (error) {\n addError(\"realm-settings:createAttributeError\", error);\n }\n };\n\n return (\n \n \n \n form.handleSubmit(save)()} />\n \n \n );\n}\n"],"names":["AttributeAnnotations","useTranslation","jsx","FormAccess","FormGroup","Grid","GridItem","KeyValueInput","REQUIRED_FOR","AttributeGeneralSettings","form","useFormContext","clientScopes","setClientScopes","useState","config","setConfig","selectEnabledWhenOpen","setSelectEnabledWhenOpen","selectRequiredForOpen","setSelectRequiredForOpen","isAttributeGroupDropdownOpen","setIsAttributeGroupDropdownOpen","attributeName","useParams","editMode","selectedScopes","useWatch","requiredScopes","required","useFetch","adminClient","jsxs","HelpItem","KeycloakTextInput","Controller","field","Select","_","value","SelectVariant","SelectOption","group","USERNAME_EMAIL","Fragment","Divider","Radio","s","isOpen","selectedValue","option","changedValue","item","selectedValues","Switch","isEqual","KeycloakSpinner","Permissions","name","t","control","Checkbox","AttributePermission","ValidatorSelect","selectedValidators","onChange","allValidator","useServerInfo","validators","useMemo","id","open","toggle","useToggle","setValue","AddValidatorDialog","toggleDialog","onConfirm","selectedValidator","setSelectedValidator","allSelected","useForm","handleSubmit","save","newValidator","Modal","ModalVariant","Button","Form","validator","FormProvider","DynamicComponents","AttributeValidations","addValidatorModalOpen","toggleModal","validatorToDelete","setValidatorToDelete","register","getValues","useEffect","toggleDeleteDialog","DeleteConfirm","useConfirmDialog","ButtonVariant","updatedValidators","annotations","a","PlusCircleIcon","TableComposable","Thead","Tr","Th","Tbody","Td","Text","TextVariants","CreateAttributeFormContent","realm","UserProfileProvider","ScrollForm","FixedButtonsGroup","Link","toUserProfile","NewAttributeSettings","navigate","useNavigate","addAlert","addError","useAlerts","validations","permissions","selector","values","attribute","convertToFormValues","flatten","key","profileConfig","prevValidations","currentValidations","obj","updatedAttributes","AlertVariant","error","ViewHeader","PageSection"],"mappings":"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"}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy