@rjsf/semantic-ui 5.3.0 → 5.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-ui.cjs.production.min.js","sources":["../src/AddButton/AddButton.tsx","../src/util.tsx","../src/ArrayFieldItemTemplate/ArrayFieldItemTemplate.tsx","../src/ArrayFieldTemplate/ArrayFieldTemplate.tsx","../src/BaseInputTemplate/BaseInputTemplate.tsx","../src/DescriptionField/DescriptionField.tsx","../src/ErrorList/ErrorList.tsx","../src/IconButton/IconButton.tsx","../src/FieldErrorTemplate/FieldErrorTemplate.tsx","../src/FieldHelpTemplate/FieldHelpTemplate.tsx","../src/FieldTemplate/FieldTemplate.tsx","../src/ObjectFieldTemplate/ObjectFieldTemplate.tsx","../src/SubmitButton/SubmitButton.tsx","../src/TitleField/TitleField.tsx","../src/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx","../src/Templates/Templates.ts","../src/CheckboxWidget/CheckboxWidget.tsx","../src/CheckboxesWidget/CheckboxesWidget.tsx","../src/RadioWidget/RadioWidget.tsx","../src/RangeWidget/RangeWidget.tsx","../src/SelectWidget/SelectWidget.tsx","../src/TextareaWidget/TextareaWidget.tsx","../src/Widgets/Widgets.tsx","../src/Theme/Theme.ts","../src/SemanticUIForm/SemanticUIForm.ts"],"sourcesContent":["import { Button, Icon, ButtonProps } from 'semantic-ui-react';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\n/** The `AddButton` renders a button that represent the `Add` action on a form\n */\nexport default function AddButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n uiSchema,\n registry,\n color,\n ...props\n}: IconButtonProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <Button\n title={translateString(TranslatableString.AddItemButton)}\n color={color as ButtonProps['color']}\n {...props}\n icon\n size='tiny'\n >\n <Icon name='plus' />\n </Button>\n );\n}\n","import { ElementType } from 'react';\nimport {\n UiSchema,\n GenericObjectType,\n getUiOptions,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n UIOptionsType,\n} from '@rjsf/utils';\n\nexport type SemanticPropsTypes<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any> = {\n formContext?: F;\n uiSchema?: UiSchema<T, S, F>;\n options?: UIOptionsType<T, S, F>;\n defaultSchemaProps?: GenericObjectType;\n defaultContextProps?: GenericObjectType;\n};\n\nexport type SemanticErrorPropsType<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n> = {\n formContext?: F;\n uiSchema?: UiSchema<T, S, F>;\n options?: UIOptionsType<T, S, F>;\n defaultProps?: GenericObjectType;\n};\n\nexport type WrapProps = GenericObjectType & {\n wrap: boolean;\n component?: ElementType;\n};\n\n/**\n * Extract props meant for semantic UI components from props that are\n * passed to Widgets, Templates and Fields.\n * @param {Object} params\n * @param {Object?} params.formContext\n * @param {Object?} params.uiSchema\n * @param {Object?} params.options\n * @param {Object?} params.defaultSchemaProps\n * @param {Object?} params.defaultContextProps\n * @returns {any}\n */\nexport function getSemanticProps<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n formContext = {} as F,\n uiSchema = {},\n options = {},\n defaultSchemaProps = { fluid: true, inverted: false },\n defaultContextProps = {},\n}: SemanticPropsTypes<T, S, F>) {\n const formContextProps = formContext.semantic;\n const schemaProps = getUiOptions<T, S, F>(uiSchema).semantic;\n const optionProps = options.semantic;\n // formContext props should overide other props\n return Object.assign(\n {},\n { ...defaultSchemaProps },\n { ...defaultContextProps },\n schemaProps,\n optionProps,\n formContextProps\n );\n}\n\n/**\n * Extract error props meant for semantic UI components from props that are\n * passed to Widgets, Templates and Fields.\n * @param {Object} params\n * @param {Object?} params.formContext\n * @param {Object?} params.uiSchema\n * @param {Object?} params.defaultProps\n * @returns {any}\n */\nexport function getSemanticErrorProps<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({\n formContext = {} as F,\n uiSchema = {},\n options = {},\n defaultProps = { size: 'small', pointing: 'above' },\n}: SemanticErrorPropsType<T, S, F>) {\n const formContextProps = formContext.semantic && formContext.semantic.errorOptions;\n const semanticOptions: GenericObjectType = getUiOptions<T, S, F>(uiSchema).semantic as GenericObjectType;\n const schemaProps = semanticOptions && semanticOptions.errorOptions;\n const optionProps = options.semantic && (options.semantic as GenericObjectType).errorOptions;\n\n return Object.assign({}, { ...defaultProps }, schemaProps, optionProps, formContextProps);\n}\n\n/**\n * Combine multiple strings containing class names into a single string,\n * removing duplicates. E.g.\n * cleanClassNames('bar', 'baz bar', 'x y ', undefined)\n * // 'bar baz x y'\n * @param {Array} classNameArr\n * @param {Array} omit\n * @returns {string}\n */\nexport function cleanClassNames(classNameArr: Array<string | undefined>, omit: string[] = []) {\n // Split each arg on whitespace, and add it to an array. Skip false-y args\n // like \"\" and undefined.\n const classList = classNameArr\n .filter(Boolean)\n .reduce<string[]>((previous, current) => previous.concat(current!.trim().split(/\\s+/)), []);\n\n // Remove any class names from omit, and make the rest unique before\n // returning them as a string\n return [...new Set(classList.filter((cn) => !omit.includes(cn)))].join(' ');\n}\n\n/**\n *\n * @param {boolean} wrap\n * @param Component\n * @param {Object} props\n * @returns {*}\n * @constructor\n */\nexport function MaybeWrap({ wrap, component: Component = 'div', ...props }: WrapProps) {\n return wrap ? <Component {...props} /> : props.children;\n}\n","import {\n ArrayFieldTemplateItemType,\n FormContextType,\n GenericObjectType,\n RJSFSchema,\n StrictRJSFSchema,\n getUiOptions,\n} from '@rjsf/utils';\nimport { Button, Grid, Segment } from 'semantic-ui-react';\n\nimport { MaybeWrap } from '../util';\n\nconst gridStyle = (vertical: boolean) => ({\n display: 'grid',\n gridTemplateColumns: `1fr ${vertical ? 65 : 150}px`,\n});\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldTemplateItemType` props for the component\n */\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ArrayFieldTemplateItemType<T, S, F>) {\n const {\n children,\n disabled,\n hasToolbar,\n hasCopy,\n hasMoveDown,\n hasMoveUp,\n hasRemove,\n index,\n onCopyIndexClick,\n onDropIndexClick,\n onReorderClick,\n readonly,\n uiSchema,\n registry,\n } = props;\n const { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } = registry.templates.ButtonTemplates;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n // Pull the semantic props out of the uiOptions that were put in via the ArrayFieldTemplate\n const { horizontalButtons = true, wrapItem = false } = uiOptions.semantic as GenericObjectType;\n return (\n <div className='array-item'>\n <MaybeWrap wrap={wrapItem} component={Segment}>\n <Grid style={{ ...gridStyle(!horizontalButtons), alignItems: 'center' }}>\n <Grid.Column width={16} verticalAlign='middle'>\n {children}\n </Grid.Column>\n {hasToolbar && (\n <Grid.Column>\n {(hasMoveUp || hasMoveDown || hasRemove) && (\n <Button.Group size='mini' vertical={!horizontalButtons}>\n {(hasMoveUp || hasMoveDown) && (\n <MoveUpButton\n className='array-item-move-up'\n disabled={disabled || readonly || !hasMoveUp}\n onClick={onReorderClick(index, index - 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {(hasMoveUp || hasMoveDown) && (\n <MoveDownButton\n className='array-item-move-down'\n disabled={disabled || readonly || !hasMoveDown}\n onClick={onReorderClick(index, index + 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasCopy && (\n <CopyButton\n className='array-item-copy'\n disabled={disabled || readonly}\n onClick={onCopyIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasRemove && (\n <RemoveButton\n className='array-item-remove'\n disabled={disabled || readonly}\n onClick={onDropIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </Button.Group>\n )}\n </Grid.Column>\n )}\n </Grid>\n </MaybeWrap>\n </div>\n );\n}\n","import {\n getTemplate,\n getUiOptions,\n isFixedItems,\n ArrayFieldTemplateProps,\n ArrayFieldTemplateItemType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n UI_OPTIONS_KEY,\n} from '@rjsf/utils';\n\nimport { cleanClassNames, getSemanticProps } from '../util';\n\n/** The `ArrayFieldTemplate` component is the template used to render all items in an array.\n *\n * @param props - The `ArrayFieldTemplateItemType` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n uiSchema,\n idSchema,\n canAdd,\n className,\n // classNames, This is not part of the type, so it is likely never passed in\n disabled,\n formContext,\n items,\n onAddClick,\n // options, This is not part of the type, so it is likely never passed in\n readonly,\n required,\n schema,\n title,\n registry,\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n defaultSchemaProps: { horizontalButtons: true, wrapItem: false },\n });\n const { horizontalButtons, wrapItem } = semanticProps;\n const semantic = { horizontalButtons, wrapItem };\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldDescriptionTemplate = getTemplate<'ArrayFieldDescriptionTemplate', T, S, F>(\n 'ArrayFieldDescriptionTemplate',\n registry,\n uiOptions\n );\n const ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate', T, S, F>(\n 'ArrayFieldItemTemplate',\n registry,\n uiOptions\n );\n const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <div className={cleanClassNames([className, isFixedItems<S>(schema) ? '' : 'sortable-form-fields'])}>\n <ArrayFieldTitleTemplate\n idSchema={idSchema}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n required={required}\n registry={registry}\n />\n <ArrayFieldDescriptionTemplate\n idSchema={idSchema}\n description={uiOptions.description || schema.description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n <div key={`array-item-list-${idSchema.$id}`}>\n <div className='row array-item-list'>\n {items &&\n items.map(({ key, uiSchema: itemUiSchema = {}, ...props }: ArrayFieldTemplateItemType<T, S, F>) => {\n // Merge in the semantic props from the ArrayFieldTemplate into each of the items\n const mergedUiSchema = {\n ...itemUiSchema,\n [UI_OPTIONS_KEY]: {\n ...itemUiSchema[UI_OPTIONS_KEY],\n semantic,\n },\n };\n return <ArrayFieldItemTemplate key={key} {...props} uiSchema={mergedUiSchema} />;\n })}\n </div>\n {canAdd && (\n <div\n style={{\n marginTop: '1rem',\n position: 'relative',\n textAlign: 'right',\n }}\n >\n <AddButton onClick={onAddClick} disabled={disabled || readonly} uiSchema={uiSchema} registry={registry} />\n </div>\n )}\n </div>\n </div>\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\n/** The `BaseInputTemplate` is the template to use to render the basic `<input>` component for the `core` theme.\n * It is used as the template for rendering many of the <input> based widgets that differ by `type` and callbacks only.\n * It can be customized/overridden for other themes or individual implementations as needed.\n *\n * @param props - The `WidgetProps` for this template\n */\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: BaseInputTemplateProps<T, S, F>) {\n const {\n id,\n placeholder,\n label,\n value,\n required,\n readonly,\n disabled,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n formContext,\n type,\n registry,\n rawErrors = [],\n } = props;\n const inputProps = getInputProps<T, S, F>(schema, type, options);\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n options,\n });\n const { schemaUtils } = registry;\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n const displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);\n\n return (\n <>\n <Form.Input\n key={id}\n id={id}\n name={id}\n placeholder={placeholder}\n {...inputProps}\n label={displayLabel ? label || schema.title : false}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n list={schema.examples ? examplesId<T>(id) : undefined}\n {...semanticProps}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id, !!schema.examples)}\n />\n {Array.isArray(schema.examples) && (\n <datalist id={examplesId<T>(id)}>\n {(schema.examples as string[])\n .concat(schema.default && !schema.examples.includes(schema.default) ? ([schema.default] as string[]) : [])\n .map((example) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n","import { DescriptionFieldProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\n/** The `DescriptionField` is the template to use to render the description of a field\n *\n * @param props - The `DescriptionFieldProps` for this component\n */\nexport default function DescriptionField<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: DescriptionFieldProps<T, S, F>) {\n const { id, description } = props;\n if (!description) {\n return null;\n }\n return (\n <p id={id} className='sui-description'>\n {description}\n </p>\n );\n}\n","import { Message } from 'semantic-ui-react';\nimport { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\n/** The `ErrorList` component is the template that renders the all the errors associated with the fields in the `Form`\n *\n * @param props - The `ErrorListProps` for this component\n */\nexport default function ErrorList<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n errors,\n registry,\n}: ErrorListProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <Message negative>\n <Message.Header>{translateString(TranslatableString.ErrorsLabel)}</Message.Header>\n <Message.List>\n {errors.map((error, index) => (\n <Message.Item key={`error-${index}`}>{error.stack}</Message.Item>\n ))}\n </Message.List>\n </Message>\n );\n}\n","import { Button, ButtonProps } from 'semantic-ui-react';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nfunction IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const { icon, iconType, color, className, uiSchema, registry, ...otherProps } = props;\n return (\n <Button\n icon={icon}\n size={iconType as ButtonProps['size']}\n color={color as ButtonProps['color']}\n className={className}\n {...otherProps}\n />\n );\n}\n\nexport default IconButton;\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.CopyButton)} {...props} icon='copy' />;\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveDownButton)} {...props} icon='angle down' />;\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveUpButton)} {...props} icon='angle up' />;\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.RemoveButton)} {...props} icon='trash' />;\n}\n","import { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { nanoid } from 'nanoid';\nimport { Label, List } from 'semantic-ui-react';\n\nimport { getSemanticErrorProps } from '../util';\n\nconst DEFAULT_OPTIONS = {\n options: {\n pointing: 'above',\n size: 'small',\n },\n};\n\n/** The `FieldErrorTemplate` component renders the errors local to the particular field\n *\n * @param props - The `FieldErrorProps` for the errors being rendered\n */\nexport default function FieldErrorTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({ errors, idSchema, uiSchema, registry }: FieldErrorProps<T, S, F>) {\n const { formContext } = registry;\n const options = getSemanticErrorProps<T, S, F>({\n formContext,\n uiSchema,\n defaultProps: DEFAULT_OPTIONS,\n });\n const { pointing, size } = options;\n if (errors && errors.length > 0) {\n const id = errorId<T>(idSchema);\n return (\n <Label id={id} color='red' pointing={pointing || 'above'} size={size || 'small'} basic>\n <List bulleted>\n {errors.map((error) => (\n <List.Item key={nanoid()}>{error}</List.Item>\n ))}\n </List>\n </Label>\n );\n }\n return null;\n}\n","import { Message } from 'semantic-ui-react';\nimport { FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema, helpId } from '@rjsf/utils';\n\n/** The `FieldHelpTemplate` component renders any help desired for a field\n *\n * @param props - The `FieldHelpProps` to be rendered\n */\nexport default function FieldHelpTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: FieldHelpProps<T, S, F>) {\n const { idSchema, help } = props;\n if (help) {\n const id = helpId<T>(idSchema);\n return <Message size='mini' info id={id} content={help} />;\n }\n return null;\n}\n","import {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n descriptionId,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps, MaybeWrap } from '../util';\n\n/** The `FieldTemplate` component is the template used by `SchemaField` to render any field. It renders the field\n * content, (label, description, children, errors and help) inside of a `WrapIfAdditional` component.\n *\n * @param props - The `FieldTemplateProps` for this component\n */\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: FieldTemplateProps<T, S, F>) {\n const {\n id,\n children,\n classNames,\n style,\n displayLabel,\n label,\n errors,\n help,\n hidden,\n rawDescription,\n registry,\n schema,\n uiSchema,\n ...otherProps\n } = props;\n const semanticProps = getSemanticProps<T, S, F>(otherProps);\n const { wrapLabel, wrapContent } = semanticProps;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions\n );\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions\n );\n\n if (hidden) {\n return <div style={{ display: 'none' }}>{children}</div>;\n }\n\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n id={id}\n label={label}\n registry={registry}\n schema={schema}\n uiSchema={uiSchema}\n {...otherProps}\n >\n <Form.Group key={id} widths='equal' grouped>\n <MaybeWrap wrap={wrapContent} className='sui-field-content'>\n {children}\n {displayLabel && rawDescription && (\n <MaybeWrap wrap={wrapLabel} className='sui-field-label'>\n {rawDescription && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(id)}\n description={rawDescription}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </MaybeWrap>\n )}\n {help}\n {errors}\n </MaybeWrap>\n </Form.Group>\n </WrapIfAdditionalTemplate>\n );\n}\n","import { Grid } from 'semantic-ui-react';\nimport {\n FormContextType,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n canExpand,\n descriptionId,\n getTemplate,\n getUiOptions,\n titleId,\n} from '@rjsf/utils';\n\n/** The `ObjectFieldTemplate` is the template to use to render all the inner properties of an object along with the\n * title and description if available. If the object is expandable, then an `AddButton` is also rendered after all\n * the properties.\n *\n * @param props - The `ObjectFieldTemplateProps` for this component\n */\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ObjectFieldTemplateProps<T, S, F>) {\n const {\n description,\n onAddClick,\n title,\n properties,\n disabled,\n readonly,\n required,\n uiSchema,\n schema,\n formData,\n idSchema,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, uiOptions);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n const fieldTitle = uiOptions.title || title;\n const fieldDescription = uiOptions.description || description;\n return (\n <>\n {fieldTitle && (\n <TitleFieldTemplate\n id={titleId<T>(idSchema)}\n title={fieldTitle}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {fieldDescription && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(idSchema)}\n description={fieldDescription}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {properties.map((prop) => prop.content)}\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid.Column width={16} verticalAlign='middle'>\n <Grid.Row>\n <div\n style={{\n marginTop: '1rem',\n position: 'relative',\n textAlign: 'right',\n }}\n >\n <AddButton\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </div>\n </Grid.Row>\n </Grid.Column>\n )}\n </>\n );\n}\n","import { Button } from 'semantic-ui-react';\nimport { getSubmitButtonOptions, FormContextType, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\n/** The `SubmitButton` renders a button that represent the `Submit` action on a form\n */\nexport default function SubmitButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({ uiSchema }: SubmitButtonProps<T, S, F>) {\n const { submitText, norender, props: submitButtonProps = {} } = getSubmitButtonOptions<T, S, F>(uiSchema);\n if (norender) {\n return null;\n }\n return (\n <Button type='submit' primary {...submitButtonProps}>\n {submitText}\n </Button>\n );\n}\n","import { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Header } from 'semantic-ui-react';\n\nimport { getSemanticProps } from '../util';\n\nconst DEFAULT_OPTIONS = {\n inverted: false,\n dividing: true,\n};\n\n/** The `TitleField` is the template to use to render the title of a field\n *\n * @param props - The `TitleFieldProps` for this component\n */\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n title,\n uiSchema,\n}: TitleFieldProps<T, S, F>) {\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n defaultSchemaProps: DEFAULT_OPTIONS,\n });\n if (!title) {\n return null;\n }\n return (\n <Header id={id} {...semanticProps} as='h5'>\n {title}\n </Header>\n );\n}\n","import { FocusEvent } from 'react';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\nimport { Form, Grid } from 'semantic-ui-react';\n\n/** The `WrapIfAdditional` component is used by the `FieldTemplate` to rename, or remove properties that are\n * part of an `additionalProperties` part of a schema.\n *\n * @param props - The `WrapIfAdditionalProps` for this component\n */\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WrapIfAdditionalTemplateProps<T, S, F>) {\n const {\n children,\n classNames,\n style,\n disabled,\n id,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n } = props;\n const { templates, translateString } = registry;\n // Button templates are not overridden in the uiSchema\n const { RemoveButton } = templates.ButtonTemplates;\n const keyLabel = translateString(TranslatableString.KeyLabel, [label]);\n const { readonlyAsDisabled = true, wrapperStyle } = registry.formContext;\n\n const additional = ADDITIONAL_PROPERTY_FLAG in schema;\n\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n const handleBlur = ({ target }: FocusEvent<HTMLInputElement>) => onKeyChange(target.value);\n\n return (\n <div className={classNames} style={style} key={`${id}-key`}>\n <Grid columns='equal'>\n <Grid.Row>\n <Grid.Column className='form-additional'>\n <Form.Group widths='equal' grouped>\n <Form.Input\n className='form-group'\n hasFeedback\n fluid\n htmlFor={`${id}`}\n label={keyLabel}\n required={required}\n defaultValue={label}\n disabled={disabled || (readonlyAsDisabled && readonly)}\n id={`${id}`}\n name={`${id}`}\n onBlur={!readonly ? handleBlur : undefined}\n style={wrapperStyle}\n type='text'\n ></Form.Input>\n </Form.Group>\n </Grid.Column>\n <Grid.Column className='form-additional' verticalAlign='middle'>\n {children}\n </Grid.Column>\n <Grid.Column>\n <RemoveButton\n iconType='mini'\n className='array-item-remove'\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid.Column>\n </Grid.Row>\n </Grid>\n </div>\n );\n}\n","import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\n\nimport AddButton from '../AddButton';\nimport ArrayFieldItemTemplate from '../ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from '../ArrayFieldTemplate';\nimport BaseInputTemplate from '../BaseInputTemplate';\nimport DescriptionField from '../DescriptionField';\nimport ErrorList from '../ErrorList';\nimport { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } from '../IconButton';\nimport FieldErrorTemplate from '../FieldErrorTemplate';\nimport FieldHelpTemplate from '../FieldHelpTemplate';\nimport FieldTemplate from '../FieldTemplate';\nimport ObjectFieldTemplate from '../ObjectFieldTemplate';\nimport SubmitButton from '../SubmitButton';\nimport TitleField from '../TitleField';\nimport WrapIfAdditionalTemplate from '../WrapIfAdditionalTemplate';\n\nexport function generateTemplates<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): Partial<TemplatesType<T, S, F>> {\n return {\n ArrayFieldItemTemplate,\n ArrayFieldTemplate,\n BaseInputTemplate,\n ButtonTemplates: {\n AddButton,\n CopyButton,\n MoveDownButton,\n MoveUpButton,\n RemoveButton,\n SubmitButton,\n },\n DescriptionFieldTemplate: DescriptionField,\n ErrorListTemplate: ErrorList,\n FieldErrorTemplate,\n FieldHelpTemplate,\n FieldTemplate,\n ObjectFieldTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n };\n}\n\nexport default generateTemplates();\n","import { FormEvent } from 'react';\nimport {\n ariaDescribedByIds,\n schemaRequiresTrueValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Form, CheckboxProps } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `CheckBoxWidget` is a widget for rendering boolean properties.\n * It is typically used to represent a boolean.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n value,\n disabled,\n readonly,\n label,\n autofocus,\n onChange,\n onBlur,\n options,\n onFocus,\n formContext,\n schema,\n uiSchema,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n options,\n formContext,\n uiSchema,\n defaultSchemaProps: {\n inverted: 'false',\n },\n });\n // Because an unchecked checkbox will cause html5 validation to fail, only add\n // the \"required\" attribute if the field value must be \"true\", due to the\n // \"const\" or \"enum\" keywords\n const required = schemaRequiresTrueValue<S>(schema);\n const _onChange = (_: FormEvent<HTMLInputElement>, data: CheckboxProps) => onChange && onChange(data.checked);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n const checked = value == 'true' || value == true;\n return (\n <Form.Checkbox\n id={id}\n name={id}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n {...semanticProps}\n checked={typeof value === 'undefined' ? false : checked}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n required={required}\n label={label || ''}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Form } from 'semantic-ui-react';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n getTemplate,\n optionId,\n titleId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { getSemanticProps } from '../util';\n\n/** The `CheckboxesWidget` is a widget for rendering checkbox groups.\n * It is typically used to represent an array of enums.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n disabled,\n options,\n value,\n autofocus,\n readonly,\n onChange,\n onBlur,\n onFocus,\n formContext,\n schema,\n uiSchema,\n rawErrors = [],\n registry,\n } = props;\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, options);\n const { enumOptions, enumDisabled, inline } = options;\n const checkboxesValues = Array.isArray(value) ? value : [value];\n const { title } = schema;\n const semanticProps = getSemanticProps<T, S, F>({\n options,\n formContext,\n uiSchema,\n defaultSchemaProps: {\n inverted: 'false',\n },\n });\n const _onChange =\n (index: number) =>\n ({ target: { checked } }: ChangeEvent<HTMLInputElement>) => {\n // eslint-disable-next-line no-shadow\n if (checked) {\n onChange(enumOptionsSelectValue<S>(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue<S>(index, checkboxesValues, enumOptions));\n }\n };\n\n const _onBlur = () => onBlur(id, value);\n const _onFocus = () => onFocus(id, value);\n const inlineOption = inline ? { inline: true } : { grouped: true };\n return (\n <>\n {title && (\n <TitleFieldTemplate id={titleId<T>(id)} title={title} schema={schema} uiSchema={uiSchema} registry={registry} />\n )}\n <Form.Group id={id} name={id} {...inlineOption}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const checked = enumOptionsIsSelected<S>(option.value, checkboxesValues);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n return (\n <Form.Checkbox\n id={optionId(id, index)}\n name={id}\n key={index}\n label={option.label}\n {...semanticProps}\n checked={checked}\n error={rawErrors.length > 0}\n disabled={disabled || itemDisabled || readonly}\n autoFocus={autofocus && index === 0}\n onChange={_onChange(index)}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n })}\n </Form.Group>\n </>\n );\n}\n","import { FormEvent } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIsSelected,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { CheckboxProps, Form, Radio } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `RadioWidget` is a widget for rendering a radio group.\n * It is typically used with a string property constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n id,\n value,\n required,\n disabled,\n readonly,\n onChange,\n onBlur,\n onFocus,\n options,\n formContext,\n uiSchema,\n rawErrors = [],\n } = props;\n const { enumOptions, enumDisabled, emptyValue } = options;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n uiSchema,\n });\n const _onChange = (_: FormEvent<HTMLInputElement>, { value: eventValue }: CheckboxProps) => {\n return onChange(enumOptionsValueForIndex<S>(eventValue!, enumOptions, emptyValue));\n };\n\n const _onBlur = () => onBlur(id, value);\n const _onFocus = () => onFocus(id, value);\n const inlineOption = options.inline ? { inline: true } : { grouped: true };\n return (\n <Form.Group {...inlineOption}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const checked = enumOptionsIsSelected<S>(option.value, value);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n return (\n <Form.Field\n required={required}\n control={Radio}\n id={optionId(id, index)}\n name={id}\n {...semanticProps}\n onFocus={_onFocus}\n onBlur={_onBlur}\n onChange={_onChange}\n label={option.label}\n value={String(index)}\n error={rawErrors.length > 0}\n key={index}\n checked={checked}\n disabled={disabled || itemDisabled || readonly}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n })}\n </Form.Group>\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Input } from 'semantic-ui-react';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps, rangeSpec } from '@rjsf/utils';\nimport { getSemanticProps } from '../util';\n\n/** The `RangeWidget` component uses the `BaseInputTemplate` changing the type to `range` and wrapping the result\n * in a div, with the value along side it.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n id,\n value,\n required,\n readonly,\n disabled,\n onChange,\n onBlur,\n onFocus,\n options,\n schema,\n uiSchema,\n formContext,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n uiSchema,\n defaultSchemaProps: {\n fluid: true,\n },\n });\n\n // eslint-disable-next-line no-shadow\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange && onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n\n return (\n <>\n <Input\n id={id}\n key={id}\n name={id}\n type='range'\n required={required}\n disabled={disabled || readonly}\n {...rangeSpec<S>(schema)}\n {...semanticProps}\n value={value || ''}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n <span>{value}</span>\n </>\n );\n}\n","import { FocusEvent, SyntheticEvent } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n EnumOptionsType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n UIOptionsType,\n} from '@rjsf/utils';\nimport map from 'lodash/map';\nimport { Form, DropdownProps } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/**\n * Returns and creates an array format required for semantic drop down\n * @param {array} enumOptions- array of items for the dropdown\n * @param {array} enumDisabled - array of enum option values to disable\n * @returns {*}\n */\nfunction createDefaultValueOptionsForDropDown<S extends StrictRJSFSchema = RJSFSchema>(\n enumOptions?: EnumOptionsType<S>[],\n enumDisabled?: UIOptionsType['enumDisabled']\n) {\n const disabledOptions = enumDisabled || [];\n const options = map(enumOptions, ({ label, value }, index) => ({\n disabled: disabledOptions.indexOf(value) !== -1,\n key: label,\n text: label,\n value: String(index),\n }));\n return options;\n}\n\n/** The `SelectWidget` is a widget for rendering dropdowns.\n * It is typically used with string properties constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function SelectWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n schema,\n uiSchema,\n formContext,\n id,\n options,\n label,\n required,\n disabled,\n readonly,\n value,\n multiple,\n placeholder,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n options,\n defaultSchemaProps: {\n inverted: 'false',\n selection: true,\n fluid: true,\n scrolling: true,\n upward: false,\n },\n });\n const { enumDisabled, enumOptions, emptyValue: optEmptyVal } = options;\n const emptyValue = multiple ? [] : '';\n const dropdownOptions = createDefaultValueOptionsForDropDown<S>(enumOptions, enumDisabled);\n const _onChange = (_: SyntheticEvent<HTMLElement>, { value }: DropdownProps) =>\n onChange(enumOptionsValueForIndex<S>(value as string[], enumOptions, optEmptyVal));\n // eslint-disable-next-line no-shadow\n const _onBlur = (_: FocusEvent<HTMLElement>, { target: { value } }: DropdownProps) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onFocus = (_: FocusEvent<HTMLElement>, { target: { value } }: DropdownProps) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n return (\n <Form.Dropdown\n key={id}\n id={id}\n name={id}\n label={label || schema.title}\n multiple={typeof multiple === 'undefined' ? false : multiple}\n value={typeof value === 'undefined' ? emptyValue : selectedIndexes}\n error={rawErrors.length > 0}\n disabled={disabled}\n placeholder={placeholder}\n {...semanticProps}\n required={required}\n autoFocus={autofocus}\n readOnly={readonly}\n options={dropdownOptions}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n}\n","import { ChangeEvent } from 'react';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `TextareaWidget` is a widget for rendering input fields as textarea.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n placeholder,\n value,\n required,\n disabled,\n autofocus,\n label,\n readonly,\n onBlur,\n onFocus,\n onChange,\n options,\n schema,\n uiSchema,\n formContext,\n registry,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n defaultSchemaProps: { inverted: 'false' },\n });\n const { schemaUtils } = registry;\n // eslint-disable-next-line no-shadow\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLTextAreaElement>) =>\n onChange && onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n const displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);\n return (\n <Form.TextArea\n id={id}\n key={id}\n name={id}\n label={displayLabel ? label || schema.title : false}\n placeholder={placeholder}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n {...semanticProps}\n value={value || ''}\n error={rawErrors.length > 0}\n rows={options.rows || 5}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n}\n","import { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport CheckboxWidget from '../CheckboxWidget/CheckboxWidget';\nimport CheckboxesWidget from '../CheckboxesWidget/CheckboxesWidget';\nimport RadioWidget from '../RadioWidget/RadioWidget';\nimport RangeWidget from '../RangeWidget/RangeWidget';\nimport SelectWidget from '../SelectWidget/SelectWidget';\nimport TextareaWidget from '../TextareaWidget/TextareaWidget';\n\nexport function generateWidgets<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): RegistryWidgetsType<T, S, F> {\n return {\n CheckboxWidget,\n CheckboxesWidget,\n RadioWidget,\n RangeWidget,\n SelectWidget,\n TextareaWidget,\n };\n}\n\nexport default generateWidgets();\n","import { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { ThemeProps } from '@rjsf/core';\nimport { Form as SuiForm } from 'semantic-ui-react';\n\nimport { generateTemplates } from '../Templates';\nimport { generateWidgets } from '../Widgets';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n _internalFormWrapper: SuiForm,\n };\n}\n\nexport default generateTheme();\n","import { ComponentType } from 'react';\nimport { withTheme, FormProps } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTheme } from '../Theme';\n\nexport function generateForm<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): ComponentType<FormProps<T, S, F>> {\n return withTheme<T, S, F>(generateTheme<T, S, F>());\n}\n\nexport default generateForm();\n"],"names":["AddButton","_ref","registry","color","props","_objectWithoutPropertiesLoose","_excluded","_jsx","jsx","Button","_extends","title","translateString","TranslatableString","AddItemButton","icon","size","children","Icon","name","getSemanticProps","_ref$formContext","formContext","_ref$uiSchema","uiSchema","_ref$options","options","_ref$defaultSchemaPro","defaultSchemaProps","fluid","inverted","_ref$defaultContextPr","defaultContextProps","formContextProps","semantic","schemaProps","getUiOptions","optionProps","Object","assign","cleanClassNames","classNameArr","omit","classList","filter","Boolean","reduce","previous","current","concat","trim","split","Set","cn","includes","join","MaybeWrap","_ref3","wrap","_ref3$component","component","Component","ArrayFieldItemTemplate","vertical","disabled","hasToolbar","hasCopy","hasMoveDown","hasMoveUp","hasRemove","index","onCopyIndexClick","onDropIndexClick","onReorderClick","readonly","_registry$templates$B","templates","ButtonTemplates","CopyButton","MoveDownButton","MoveUpButton","RemoveButton","_uiOptions$semantic","_uiOptions$semantic$h","horizontalButtons","_uiOptions$semantic$w","wrapItem","className","Segment","_jsxs","jsxs","Grid","style","display","gridTemplateColumns","alignItems","Column","width","verticalAlign","Group","onClick","ArrayFieldTemplate","idSchema","canAdd","items","onAddClick","required","schema","semanticProps","uiOptions","ArrayFieldDescriptionTemplate","getTemplate","ArrayFieldTitleTemplate","isFixedItems","description","map","_extends2","key","itemUiSchema","mergedUiSchema","UI_OPTIONS_KEY","marginTop","position","textAlign","$id","BaseInputTemplate","id","placeholder","label","value","onChange","onChangeOverride","onBlur","onFocus","autofocus","_props$rawErrors","rawErrors","inputProps","getInputProps","type","displayLabel","schemaUtils","getDisplayLabel","_Fragment","Form","Input","autoFocus","list","examples","examplesId","undefined","error","length","target","emptyValue","ariaDescribedByIds","Array","isArray","example","DescriptionField","ErrorList","errors","Message","negative","Header","ErrorsLabel","List","Item","stack","IconButton","iconType","otherProps","DEFAULT_OPTIONS","pointing","FieldErrorTemplate","_ref2","_ref2$formContext","_ref2$uiSchema","_ref2$options","_ref2$defaultProps","defaultProps","errorOptions","semanticOptions","getSemanticErrorProps","errorId","Label","basic","bulleted","nanoid","FieldHelpTemplate","help","helpId","info","content","FieldTemplate","classNames","hidden","rawDescription","wrapLabel","wrapContent","WrapIfAdditionalTemplate","DescriptionFieldTemplate","widths","grouped","descriptionId","ObjectFieldTemplate","properties","formData","TitleFieldTemplate","fieldTitle","fieldDescription","titleId","prop","canExpand","Row","SubmitButton","_getSubmitButtonOptio","getSubmitButtonOptions","_getSubmitButtonOptio2","norender","primary","submitText","dividing","TitleField","as","onDropPropertyClick","onKeyChange","keyLabel","KeyLabel","_registry$formContext","_registry$formContext2","readonlyAsDisabled","ADDITIONAL_PROPERTY_FLAG","columns","hasFeedback","htmlFor","defaultValue","wrapperStyle","generateTemplates","ErrorListTemplate","Templates","CheckboxWidget","schemaRequiresTrueValue","Checkbox","checked","_","data","CheckboxesWidget","enumOptions","enumDisabled","inline","checkboxesValues","_onChange","enumOptionsSelectValue","enumOptionsDeselectValue","_onBlur","_onFocus","inlineOption","option","enumOptionsIsSelected","itemDisabled","indexOf","optionId","RadioWidget","enumOptionsValueForIndex","_createElement","Field","control","Radio","String","RangeWidget","rangeSpec","SelectWidget","multiple","selection","scrolling","upward","optEmptyVal","dropdownOptions","disabledOptions","text","createDefaultValueOptionsForDropDown","selectedIndexes","enumOptionsIndexForValue","Dropdown","readOnly","_ref4","TextareaWidget","TextArea","rows","generateWidgets","Widgets","generateTheme","widgets","_internalFormWrapper","SuiForm","Theme","generateForm","withTheme","SemanticUIForm"],"mappings":"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"}
1
+ {"version":3,"file":"semantic-ui.cjs.production.min.js","sources":["../src/AddButton/AddButton.tsx","../src/util.tsx","../src/ArrayFieldItemTemplate/ArrayFieldItemTemplate.tsx","../src/ArrayFieldTemplate/ArrayFieldTemplate.tsx","../src/BaseInputTemplate/BaseInputTemplate.tsx","../src/DescriptionField/DescriptionField.tsx","../src/ErrorList/ErrorList.tsx","../src/IconButton/IconButton.tsx","../src/FieldErrorTemplate/FieldErrorTemplate.tsx","../src/FieldHelpTemplate/FieldHelpTemplate.tsx","../src/FieldTemplate/FieldTemplate.tsx","../src/ObjectFieldTemplate/ObjectFieldTemplate.tsx","../src/SubmitButton/SubmitButton.tsx","../src/TitleField/TitleField.tsx","../src/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx","../src/Templates/Templates.ts","../src/CheckboxWidget/CheckboxWidget.tsx","../src/CheckboxesWidget/CheckboxesWidget.tsx","../src/RadioWidget/RadioWidget.tsx","../src/RangeWidget/RangeWidget.tsx","../src/SelectWidget/SelectWidget.tsx","../src/TextareaWidget/TextareaWidget.tsx","../src/Widgets/Widgets.tsx","../src/Theme/Theme.ts","../src/SemanticUIForm/SemanticUIForm.ts"],"sourcesContent":["import { Button, Icon, ButtonProps } from 'semantic-ui-react';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\n/** The `AddButton` renders a button that represent the `Add` action on a form\n */\nexport default function AddButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n uiSchema,\n registry,\n color,\n ...props\n}: IconButtonProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <Button\n title={translateString(TranslatableString.AddItemButton)}\n color={color as ButtonProps['color']}\n {...props}\n icon\n size='tiny'\n >\n <Icon name='plus' />\n </Button>\n );\n}\n","import { ElementType } from 'react';\nimport {\n UiSchema,\n GenericObjectType,\n getUiOptions,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n UIOptionsType,\n} from '@rjsf/utils';\n\nexport type SemanticPropsTypes<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any> = {\n formContext?: F;\n uiSchema?: UiSchema<T, S, F>;\n options?: UIOptionsType<T, S, F>;\n defaultSchemaProps?: GenericObjectType;\n defaultContextProps?: GenericObjectType;\n};\n\nexport type SemanticErrorPropsType<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n> = {\n formContext?: F;\n uiSchema?: UiSchema<T, S, F>;\n options?: UIOptionsType<T, S, F>;\n defaultProps?: GenericObjectType;\n};\n\nexport type WrapProps = GenericObjectType & {\n wrap: boolean;\n component?: ElementType;\n};\n\n/**\n * Extract props meant for semantic UI components from props that are\n * passed to Widgets, Templates and Fields.\n * @param {Object} params\n * @param {Object?} params.formContext\n * @param {Object?} params.uiSchema\n * @param {Object?} params.options\n * @param {Object?} params.defaultSchemaProps\n * @param {Object?} params.defaultContextProps\n * @returns {any}\n */\nexport function getSemanticProps<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n formContext = {} as F,\n uiSchema = {},\n options = {},\n defaultSchemaProps = { fluid: true, inverted: false },\n defaultContextProps = {},\n}: SemanticPropsTypes<T, S, F>) {\n const formContextProps = formContext.semantic;\n const schemaProps = getUiOptions<T, S, F>(uiSchema).semantic;\n const optionProps = options.semantic;\n // formContext props should overide other props\n return Object.assign(\n {},\n { ...defaultSchemaProps },\n { ...defaultContextProps },\n schemaProps,\n optionProps,\n formContextProps\n );\n}\n\n/**\n * Extract error props meant for semantic UI components from props that are\n * passed to Widgets, Templates and Fields.\n * @param {Object} params\n * @param {Object?} params.formContext\n * @param {Object?} params.uiSchema\n * @param {Object?} params.defaultProps\n * @returns {any}\n */\nexport function getSemanticErrorProps<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({\n formContext = {} as F,\n uiSchema = {},\n options = {},\n defaultProps = { size: 'small', pointing: 'above' },\n}: SemanticErrorPropsType<T, S, F>) {\n const formContextProps = formContext.semantic && formContext.semantic.errorOptions;\n const semanticOptions: GenericObjectType = getUiOptions<T, S, F>(uiSchema).semantic as GenericObjectType;\n const schemaProps = semanticOptions && semanticOptions.errorOptions;\n const optionProps = options.semantic && (options.semantic as GenericObjectType).errorOptions;\n\n return Object.assign({}, { ...defaultProps }, schemaProps, optionProps, formContextProps);\n}\n\n/**\n * Combine multiple strings containing class names into a single string,\n * removing duplicates. E.g.\n * cleanClassNames('bar', 'baz bar', 'x y ', undefined)\n * // 'bar baz x y'\n * @param {Array} classNameArr\n * @param {Array} omit\n * @returns {string}\n */\nexport function cleanClassNames(classNameArr: Array<string | undefined>, omit: string[] = []) {\n // Split each arg on whitespace, and add it to an array. Skip false-y args\n // like \"\" and undefined.\n const classList = classNameArr\n .filter(Boolean)\n .reduce<string[]>((previous, current) => previous.concat(current!.trim().split(/\\s+/)), []);\n\n // Remove any class names from omit, and make the rest unique before\n // returning them as a string\n return [...new Set(classList.filter((cn) => !omit.includes(cn)))].join(' ');\n}\n\n/**\n *\n * @param {boolean} wrap\n * @param Component\n * @param {Object} props\n * @returns {*}\n * @constructor\n */\nexport function MaybeWrap({ wrap, component: Component = 'div', ...props }: WrapProps) {\n return wrap ? <Component {...props} /> : props.children;\n}\n","import {\n ArrayFieldTemplateItemType,\n FormContextType,\n GenericObjectType,\n RJSFSchema,\n StrictRJSFSchema,\n getUiOptions,\n} from '@rjsf/utils';\nimport { Button, Grid, Segment } from 'semantic-ui-react';\n\nimport { MaybeWrap } from '../util';\n\nconst gridStyle = (vertical: boolean) => ({\n display: 'grid',\n gridTemplateColumns: `1fr ${vertical ? 65 : 150}px`,\n});\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldTemplateItemType` props for the component\n */\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ArrayFieldTemplateItemType<T, S, F>) {\n const {\n children,\n disabled,\n hasToolbar,\n hasCopy,\n hasMoveDown,\n hasMoveUp,\n hasRemove,\n index,\n onCopyIndexClick,\n onDropIndexClick,\n onReorderClick,\n readonly,\n uiSchema,\n registry,\n } = props;\n const { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } = registry.templates.ButtonTemplates;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n // Pull the semantic props out of the uiOptions that were put in via the ArrayFieldTemplate\n const { horizontalButtons = true, wrapItem = false } = uiOptions.semantic as GenericObjectType;\n return (\n <div className='array-item'>\n <MaybeWrap wrap={wrapItem} component={Segment}>\n <Grid style={{ ...gridStyle(!horizontalButtons), alignItems: 'center' }}>\n <Grid.Column width={16} verticalAlign='middle'>\n {children}\n </Grid.Column>\n {hasToolbar && (\n <Grid.Column>\n {(hasMoveUp || hasMoveDown || hasRemove) && (\n <Button.Group size='mini' vertical={!horizontalButtons}>\n {(hasMoveUp || hasMoveDown) && (\n <MoveUpButton\n className='array-item-move-up'\n disabled={disabled || readonly || !hasMoveUp}\n onClick={onReorderClick(index, index - 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {(hasMoveUp || hasMoveDown) && (\n <MoveDownButton\n className='array-item-move-down'\n disabled={disabled || readonly || !hasMoveDown}\n onClick={onReorderClick(index, index + 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasCopy && (\n <CopyButton\n className='array-item-copy'\n disabled={disabled || readonly}\n onClick={onCopyIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasRemove && (\n <RemoveButton\n className='array-item-remove'\n disabled={disabled || readonly}\n onClick={onDropIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </Button.Group>\n )}\n </Grid.Column>\n )}\n </Grid>\n </MaybeWrap>\n </div>\n );\n}\n","import {\n getTemplate,\n getUiOptions,\n isFixedItems,\n ArrayFieldTemplateProps,\n ArrayFieldTemplateItemType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n UI_OPTIONS_KEY,\n} from '@rjsf/utils';\n\nimport { cleanClassNames, getSemanticProps } from '../util';\n\n/** The `ArrayFieldTemplate` component is the template used to render all items in an array.\n *\n * @param props - The `ArrayFieldTemplateItemType` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n uiSchema,\n idSchema,\n canAdd,\n className,\n // classNames, This is not part of the type, so it is likely never passed in\n disabled,\n formContext,\n items,\n onAddClick,\n // options, This is not part of the type, so it is likely never passed in\n readonly,\n required,\n schema,\n title,\n registry,\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n defaultSchemaProps: { horizontalButtons: true, wrapItem: false },\n });\n const { horizontalButtons, wrapItem } = semanticProps;\n const semantic = { horizontalButtons, wrapItem };\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldDescriptionTemplate = getTemplate<'ArrayFieldDescriptionTemplate', T, S, F>(\n 'ArrayFieldDescriptionTemplate',\n registry,\n uiOptions\n );\n const ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate', T, S, F>(\n 'ArrayFieldItemTemplate',\n registry,\n uiOptions\n );\n const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <div className={cleanClassNames([className, isFixedItems<S>(schema) ? '' : 'sortable-form-fields'])}>\n <ArrayFieldTitleTemplate\n idSchema={idSchema}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n required={required}\n registry={registry}\n />\n <ArrayFieldDescriptionTemplate\n idSchema={idSchema}\n description={uiOptions.description || schema.description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n <div key={`array-item-list-${idSchema.$id}`}>\n <div className='row array-item-list'>\n {items &&\n items.map(({ key, uiSchema: itemUiSchema = {}, ...props }: ArrayFieldTemplateItemType<T, S, F>) => {\n // Merge in the semantic props from the ArrayFieldTemplate into each of the items\n const mergedUiSchema = {\n ...itemUiSchema,\n [UI_OPTIONS_KEY]: {\n ...itemUiSchema[UI_OPTIONS_KEY],\n semantic,\n },\n };\n return <ArrayFieldItemTemplate key={key} {...props} uiSchema={mergedUiSchema} />;\n })}\n </div>\n {canAdd && (\n <div\n style={{\n marginTop: '1rem',\n position: 'relative',\n textAlign: 'right',\n }}\n >\n <AddButton onClick={onAddClick} disabled={disabled || readonly} uiSchema={uiSchema} registry={registry} />\n </div>\n )}\n </div>\n </div>\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\n/** The `BaseInputTemplate` is the template to use to render the basic `<input>` component for the `core` theme.\n * It is used as the template for rendering many of the <input> based widgets that differ by `type` and callbacks only.\n * It can be customized/overridden for other themes or individual implementations as needed.\n *\n * @param props - The `WidgetProps` for this template\n */\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: BaseInputTemplateProps<T, S, F>) {\n const {\n id,\n placeholder,\n label,\n hideLabel,\n value,\n required,\n readonly,\n disabled,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n formContext,\n type,\n rawErrors = [],\n } = props;\n const inputProps = getInputProps<T, S, F>(schema, type, options);\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n options,\n });\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n\n return (\n <>\n <Form.Input\n key={id}\n id={id}\n name={id}\n placeholder={placeholder}\n {...inputProps}\n label={labelValue(label || undefined, hideLabel, false)}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n list={schema.examples ? examplesId<T>(id) : undefined}\n {...semanticProps}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id, !!schema.examples)}\n />\n {Array.isArray(schema.examples) && (\n <datalist id={examplesId<T>(id)}>\n {(schema.examples as string[])\n .concat(schema.default && !schema.examples.includes(schema.default) ? ([schema.default] as string[]) : [])\n .map((example) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n","import { DescriptionFieldProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\n/** The `DescriptionField` is the template to use to render the description of a field\n *\n * @param props - The `DescriptionFieldProps` for this component\n */\nexport default function DescriptionField<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: DescriptionFieldProps<T, S, F>) {\n const { id, description } = props;\n if (!description) {\n return null;\n }\n return (\n <p id={id} className='sui-description'>\n {description}\n </p>\n );\n}\n","import { Message } from 'semantic-ui-react';\nimport { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\n/** The `ErrorList` component is the template that renders the all the errors associated with the fields in the `Form`\n *\n * @param props - The `ErrorListProps` for this component\n */\nexport default function ErrorList<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n errors,\n registry,\n}: ErrorListProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <Message negative>\n <Message.Header>{translateString(TranslatableString.ErrorsLabel)}</Message.Header>\n <Message.List>\n {errors.map((error, index) => (\n <Message.Item key={`error-${index}`}>{error.stack}</Message.Item>\n ))}\n </Message.List>\n </Message>\n );\n}\n","import { Button, ButtonProps } from 'semantic-ui-react';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nfunction IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const { icon, iconType, color, className, uiSchema, registry, ...otherProps } = props;\n return (\n <Button\n icon={icon}\n size={iconType as ButtonProps['size']}\n color={color as ButtonProps['color']}\n className={className}\n {...otherProps}\n />\n );\n}\n\nexport default IconButton;\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.CopyButton)} {...props} icon='copy' />;\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveDownButton)} {...props} icon='angle down' />;\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveUpButton)} {...props} icon='angle up' />;\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.RemoveButton)} {...props} icon='trash' />;\n}\n","import { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { nanoid } from 'nanoid';\nimport { Label, List } from 'semantic-ui-react';\n\nimport { getSemanticErrorProps } from '../util';\n\nconst DEFAULT_OPTIONS = {\n options: {\n pointing: 'above',\n size: 'small',\n },\n};\n\n/** The `FieldErrorTemplate` component renders the errors local to the particular field\n *\n * @param props - The `FieldErrorProps` for the errors being rendered\n */\nexport default function FieldErrorTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({ errors, idSchema, uiSchema, registry }: FieldErrorProps<T, S, F>) {\n const { formContext } = registry;\n const options = getSemanticErrorProps<T, S, F>({\n formContext,\n uiSchema,\n defaultProps: DEFAULT_OPTIONS,\n });\n const { pointing, size } = options;\n if (errors && errors.length > 0) {\n const id = errorId<T>(idSchema);\n return (\n <Label id={id} color='red' pointing={pointing || 'above'} size={size || 'small'} basic>\n <List bulleted>\n {errors.map((error) => (\n <List.Item key={nanoid()}>{error}</List.Item>\n ))}\n </List>\n </Label>\n );\n }\n return null;\n}\n","import { Message } from 'semantic-ui-react';\nimport { FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema, helpId } from '@rjsf/utils';\n\n/** The `FieldHelpTemplate` component renders any help desired for a field\n *\n * @param props - The `FieldHelpProps` to be rendered\n */\nexport default function FieldHelpTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: FieldHelpProps<T, S, F>) {\n const { idSchema, help } = props;\n if (help) {\n const id = helpId<T>(idSchema);\n return <Message size='mini' info id={id} content={help} />;\n }\n return null;\n}\n","import {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n descriptionId,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps, MaybeWrap } from '../util';\n\n/** The `FieldTemplate` component is the template used by `SchemaField` to render any field. It renders the field\n * content, (label, description, children, errors and help) inside of a `WrapIfAdditional` component.\n *\n * @param props - The `FieldTemplateProps` for this component\n */\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: FieldTemplateProps<T, S, F>) {\n const {\n id,\n children,\n classNames,\n style,\n displayLabel,\n label,\n errors,\n help,\n hidden,\n rawDescription,\n registry,\n schema,\n uiSchema,\n ...otherProps\n } = props;\n const semanticProps = getSemanticProps<T, S, F>(otherProps);\n const { wrapLabel, wrapContent } = semanticProps;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions\n );\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions\n );\n\n if (hidden) {\n return <div style={{ display: 'none' }}>{children}</div>;\n }\n\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n id={id}\n label={label}\n registry={registry}\n schema={schema}\n uiSchema={uiSchema}\n {...otherProps}\n >\n <Form.Group key={id} widths='equal' grouped>\n <MaybeWrap wrap={wrapContent} className='sui-field-content'>\n {children}\n {displayLabel && rawDescription && (\n <MaybeWrap wrap={wrapLabel} className='sui-field-label'>\n {rawDescription && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(id)}\n description={rawDescription}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </MaybeWrap>\n )}\n {help}\n {errors}\n </MaybeWrap>\n </Form.Group>\n </WrapIfAdditionalTemplate>\n );\n}\n","import { Grid } from 'semantic-ui-react';\nimport {\n FormContextType,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n canExpand,\n descriptionId,\n getTemplate,\n getUiOptions,\n titleId,\n} from '@rjsf/utils';\n\n/** The `ObjectFieldTemplate` is the template to use to render all the inner properties of an object along with the\n * title and description if available. If the object is expandable, then an `AddButton` is also rendered after all\n * the properties.\n *\n * @param props - The `ObjectFieldTemplateProps` for this component\n */\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: ObjectFieldTemplateProps<T, S, F>) {\n const {\n description,\n onAddClick,\n title,\n properties,\n disabled,\n readonly,\n required,\n uiSchema,\n schema,\n formData,\n idSchema,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, uiOptions);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <>\n {title && (\n <TitleFieldTemplate\n id={titleId<T>(idSchema)}\n title={title}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {description && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(idSchema)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {properties.map((prop) => prop.content)}\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid.Column width={16} verticalAlign='middle'>\n <Grid.Row>\n <div\n style={{\n marginTop: '1rem',\n position: 'relative',\n textAlign: 'right',\n }}\n >\n <AddButton\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </div>\n </Grid.Row>\n </Grid.Column>\n )}\n </>\n );\n}\n","import { Button } from 'semantic-ui-react';\nimport { getSubmitButtonOptions, FormContextType, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\n/** The `SubmitButton` renders a button that represent the `Submit` action on a form\n */\nexport default function SubmitButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({ uiSchema }: SubmitButtonProps<T, S, F>) {\n const { submitText, norender, props: submitButtonProps = {} } = getSubmitButtonOptions<T, S, F>(uiSchema);\n if (norender) {\n return null;\n }\n return (\n <Button type='submit' primary {...submitButtonProps}>\n {submitText}\n </Button>\n );\n}\n","import { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Header } from 'semantic-ui-react';\n\nimport { getSemanticProps } from '../util';\n\nconst DEFAULT_OPTIONS = {\n inverted: false,\n dividing: true,\n};\n\n/** The `TitleField` is the template to use to render the title of a field\n *\n * @param props - The `TitleFieldProps` for this component\n */\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n title,\n uiSchema,\n}: TitleFieldProps<T, S, F>) {\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n defaultSchemaProps: DEFAULT_OPTIONS,\n });\n if (!title) {\n return null;\n }\n return (\n <Header id={id} {...semanticProps} as='h5'>\n {title}\n </Header>\n );\n}\n","import { FocusEvent } from 'react';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\nimport { Form, Grid } from 'semantic-ui-react';\n\n/** The `WrapIfAdditional` component is used by the `FieldTemplate` to rename, or remove properties that are\n * part of an `additionalProperties` part of a schema.\n *\n * @param props - The `WrapIfAdditionalProps` for this component\n */\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WrapIfAdditionalTemplateProps<T, S, F>) {\n const {\n children,\n classNames,\n style,\n disabled,\n id,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n } = props;\n const { templates, translateString } = registry;\n // Button templates are not overridden in the uiSchema\n const { RemoveButton } = templates.ButtonTemplates;\n const keyLabel = translateString(TranslatableString.KeyLabel, [label]);\n const { readonlyAsDisabled = true, wrapperStyle } = registry.formContext;\n\n const additional = ADDITIONAL_PROPERTY_FLAG in schema;\n\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n const handleBlur = ({ target }: FocusEvent<HTMLInputElement>) => onKeyChange(target.value);\n\n return (\n <div className={classNames} style={style} key={`${id}-key`}>\n <Grid columns='equal'>\n <Grid.Row>\n <Grid.Column className='form-additional'>\n <Form.Group widths='equal' grouped>\n <Form.Input\n className='form-group'\n hasFeedback\n fluid\n htmlFor={`${id}`}\n label={keyLabel}\n required={required}\n defaultValue={label}\n disabled={disabled || (readonlyAsDisabled && readonly)}\n id={`${id}`}\n name={`${id}`}\n onBlur={!readonly ? handleBlur : undefined}\n style={wrapperStyle}\n type='text'\n ></Form.Input>\n </Form.Group>\n </Grid.Column>\n <Grid.Column className='form-additional' verticalAlign='middle'>\n {children}\n </Grid.Column>\n <Grid.Column>\n <RemoveButton\n iconType='mini'\n className='array-item-remove'\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid.Column>\n </Grid.Row>\n </Grid>\n </div>\n );\n}\n","import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\n\nimport AddButton from '../AddButton';\nimport ArrayFieldItemTemplate from '../ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from '../ArrayFieldTemplate';\nimport BaseInputTemplate from '../BaseInputTemplate';\nimport DescriptionField from '../DescriptionField';\nimport ErrorList from '../ErrorList';\nimport { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } from '../IconButton';\nimport FieldErrorTemplate from '../FieldErrorTemplate';\nimport FieldHelpTemplate from '../FieldHelpTemplate';\nimport FieldTemplate from '../FieldTemplate';\nimport ObjectFieldTemplate from '../ObjectFieldTemplate';\nimport SubmitButton from '../SubmitButton';\nimport TitleField from '../TitleField';\nimport WrapIfAdditionalTemplate from '../WrapIfAdditionalTemplate';\n\nexport function generateTemplates<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): Partial<TemplatesType<T, S, F>> {\n return {\n ArrayFieldItemTemplate,\n ArrayFieldTemplate,\n BaseInputTemplate,\n ButtonTemplates: {\n AddButton,\n CopyButton,\n MoveDownButton,\n MoveUpButton,\n RemoveButton,\n SubmitButton,\n },\n DescriptionFieldTemplate: DescriptionField,\n ErrorListTemplate: ErrorList,\n FieldErrorTemplate,\n FieldHelpTemplate,\n FieldTemplate,\n ObjectFieldTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n };\n}\n\nexport default generateTemplates();\n","import { FormEvent } from 'react';\nimport {\n ariaDescribedByIds,\n descriptionId,\n getTemplate,\n labelValue,\n schemaRequiresTrueValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Form, CheckboxProps } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `CheckBoxWidget` is a widget for rendering boolean properties.\n * It is typically used to represent a boolean.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n value,\n disabled,\n readonly,\n label = '',\n hideLabel,\n autofocus,\n onChange,\n onBlur,\n options,\n onFocus,\n formContext,\n schema,\n uiSchema,\n rawErrors = [],\n registry,\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n options,\n formContext,\n uiSchema,\n defaultSchemaProps: {\n inverted: 'false',\n },\n });\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n options\n );\n // Because an unchecked checkbox will cause html5 validation to fail, only add\n // the \"required\" attribute if the field value must be \"true\", due to the\n // \"const\" or \"enum\" keywords\n const required = schemaRequiresTrueValue<S>(schema);\n const _onChange = (_: FormEvent<HTMLInputElement>, data: CheckboxProps) => onChange && onChange(data.checked);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n const checked = value == 'true' || value == true;\n const description = options.description ?? schema.description;\n\n return (\n <>\n {!hideLabel && !!description && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(id)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Form.Checkbox\n id={id}\n name={id}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n {...semanticProps}\n checked={typeof value === 'undefined' ? false : checked}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n required={required}\n label={labelValue(label, hideLabel, false)}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n </>\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Form } from 'semantic-ui-react';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n getTemplate,\n optionId,\n titleId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { getSemanticProps } from '../util';\n\n/** The `CheckboxesWidget` is a widget for rendering checkbox groups.\n * It is typically used to represent an array of enums.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n disabled,\n options,\n value,\n autofocus,\n readonly,\n label,\n hideLabel,\n onChange,\n onBlur,\n onFocus,\n formContext,\n schema,\n uiSchema,\n rawErrors = [],\n registry,\n } = props;\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, options);\n const { enumOptions, enumDisabled, inline } = options;\n const checkboxesValues = Array.isArray(value) ? value : [value];\n const semanticProps = getSemanticProps<T, S, F>({\n options,\n formContext,\n uiSchema,\n defaultSchemaProps: {\n inverted: 'false',\n },\n });\n const _onChange =\n (index: number) =>\n ({ target: { checked } }: ChangeEvent<HTMLInputElement>) => {\n // eslint-disable-next-line no-shadow\n if (checked) {\n onChange(enumOptionsSelectValue<S>(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue<S>(index, checkboxesValues, enumOptions));\n }\n };\n\n const _onBlur = () => onBlur(id, value);\n const _onFocus = () => onFocus(id, value);\n const inlineOption = inline ? { inline: true } : { grouped: true };\n return (\n <>\n {!hideLabel && !!label && (\n <TitleFieldTemplate id={titleId<T>(id)} title={label} schema={schema} uiSchema={uiSchema} registry={registry} />\n )}\n <Form.Group id={id} name={id} {...inlineOption}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const checked = enumOptionsIsSelected<S>(option.value, checkboxesValues);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n return (\n <Form.Checkbox\n id={optionId(id, index)}\n name={id}\n key={index}\n label={option.label}\n {...semanticProps}\n checked={checked}\n error={rawErrors.length > 0}\n disabled={disabled || itemDisabled || readonly}\n autoFocus={autofocus && index === 0}\n onChange={_onChange(index)}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n })}\n </Form.Group>\n </>\n );\n}\n","import { FormEvent } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIsSelected,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { CheckboxProps, Form, Radio } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `RadioWidget` is a widget for rendering a radio group.\n * It is typically used with a string property constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n id,\n value,\n required,\n disabled,\n readonly,\n onChange,\n onBlur,\n onFocus,\n options,\n formContext,\n uiSchema,\n rawErrors = [],\n } = props;\n const { enumOptions, enumDisabled, emptyValue } = options;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n uiSchema,\n });\n const _onChange = (_: FormEvent<HTMLInputElement>, { value: eventValue }: CheckboxProps) => {\n return onChange(enumOptionsValueForIndex<S>(eventValue!, enumOptions, emptyValue));\n };\n\n const _onBlur = () => onBlur(id, value);\n const _onFocus = () => onFocus(id, value);\n const inlineOption = options.inline ? { inline: true } : { grouped: true };\n return (\n <Form.Group {...inlineOption}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const checked = enumOptionsIsSelected<S>(option.value, value);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n return (\n <Form.Field\n required={required}\n control={Radio}\n id={optionId(id, index)}\n name={id}\n {...semanticProps}\n onFocus={_onFocus}\n onBlur={_onBlur}\n onChange={_onChange}\n label={option.label}\n value={String(index)}\n error={rawErrors.length > 0}\n key={index}\n checked={checked}\n disabled={disabled || itemDisabled || readonly}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n })}\n </Form.Group>\n );\n}\n","import { ChangeEvent } from 'react';\nimport { Input } from 'semantic-ui-react';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps, rangeSpec } from '@rjsf/utils';\nimport { getSemanticProps } from '../util';\n\n/** The `RangeWidget` component uses the `BaseInputTemplate` changing the type to `range` and wrapping the result\n * in a div, with the value along side it.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n id,\n value,\n required,\n readonly,\n disabled,\n onChange,\n onBlur,\n onFocus,\n options,\n schema,\n uiSchema,\n formContext,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n uiSchema,\n defaultSchemaProps: {\n fluid: true,\n },\n });\n\n // eslint-disable-next-line no-shadow\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange && onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n\n return (\n <>\n <Input\n id={id}\n key={id}\n name={id}\n type='range'\n required={required}\n disabled={disabled || readonly}\n {...rangeSpec<S>(schema)}\n {...semanticProps}\n value={value || ''}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n <span>{value}</span>\n </>\n );\n}\n","import { FocusEvent, SyntheticEvent } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n labelValue,\n EnumOptionsType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n UIOptionsType,\n} from '@rjsf/utils';\nimport map from 'lodash/map';\nimport { Form, DropdownProps } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/**\n * Returns and creates an array format required for semantic drop down\n * @param {array} enumOptions- array of items for the dropdown\n * @param {array} enumDisabled - array of enum option values to disable\n * @returns {*}\n */\nfunction createDefaultValueOptionsForDropDown<S extends StrictRJSFSchema = RJSFSchema>(\n enumOptions?: EnumOptionsType<S>[],\n enumDisabled?: UIOptionsType['enumDisabled']\n) {\n const disabledOptions = enumDisabled || [];\n const options = map(enumOptions, ({ label, value }, index) => ({\n disabled: disabledOptions.indexOf(value) !== -1,\n key: label,\n text: label,\n value: String(index),\n }));\n return options;\n}\n\n/** The `SelectWidget` is a widget for rendering dropdowns.\n * It is typically used with string properties constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function SelectWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>\n) {\n const {\n uiSchema,\n formContext,\n id,\n options,\n label,\n hideLabel,\n required,\n disabled,\n readonly,\n value,\n multiple,\n placeholder,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n uiSchema,\n formContext,\n options,\n defaultSchemaProps: {\n inverted: 'false',\n selection: true,\n fluid: true,\n scrolling: true,\n upward: false,\n },\n });\n const { enumDisabled, enumOptions, emptyValue: optEmptyVal } = options;\n const emptyValue = multiple ? [] : '';\n const dropdownOptions = createDefaultValueOptionsForDropDown<S>(enumOptions, enumDisabled);\n const _onChange = (_: SyntheticEvent<HTMLElement>, { value }: DropdownProps) =>\n onChange(enumOptionsValueForIndex<S>(value as string[], enumOptions, optEmptyVal));\n // eslint-disable-next-line no-shadow\n const _onBlur = (_: FocusEvent<HTMLElement>, { target: { value } }: DropdownProps) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onFocus = (_: FocusEvent<HTMLElement>, { target: { value } }: DropdownProps) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n return (\n <Form.Dropdown\n key={id}\n id={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n multiple={typeof multiple === 'undefined' ? false : multiple}\n value={typeof value === 'undefined' ? emptyValue : selectedIndexes}\n error={rawErrors.length > 0}\n disabled={disabled}\n placeholder={placeholder}\n {...semanticProps}\n required={required}\n autoFocus={autofocus}\n readOnly={readonly}\n options={dropdownOptions}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n}\n","import { ChangeEvent } from 'react';\nimport {\n ariaDescribedByIds,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Form } from 'semantic-ui-react';\nimport { getSemanticProps } from '../util';\n\n/** The `TextareaWidget` is a widget for rendering input fields as textarea.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n placeholder,\n value,\n required,\n disabled,\n autofocus,\n label,\n hideLabel,\n readonly,\n onBlur,\n onFocus,\n onChange,\n options,\n formContext,\n rawErrors = [],\n } = props;\n const semanticProps = getSemanticProps<T, S, F>({\n formContext,\n options,\n defaultSchemaProps: { inverted: 'false' },\n });\n // eslint-disable-next-line no-shadow\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLTextAreaElement>) =>\n onChange && onChange(value === '' ? options.emptyValue : value);\n const _onBlur = () => onBlur && onBlur(id, value);\n const _onFocus = () => onFocus && onFocus(id, value);\n return (\n <Form.TextArea\n id={id}\n key={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n placeholder={placeholder}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n {...semanticProps}\n value={value || ''}\n error={rawErrors.length > 0}\n rows={options.rows || 5}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n}\n","import { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport CheckboxWidget from '../CheckboxWidget/CheckboxWidget';\nimport CheckboxesWidget from '../CheckboxesWidget/CheckboxesWidget';\nimport RadioWidget from '../RadioWidget/RadioWidget';\nimport RangeWidget from '../RangeWidget/RangeWidget';\nimport SelectWidget from '../SelectWidget/SelectWidget';\nimport TextareaWidget from '../TextareaWidget/TextareaWidget';\n\nexport function generateWidgets<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): RegistryWidgetsType<T, S, F> {\n return {\n CheckboxWidget,\n CheckboxesWidget,\n RadioWidget,\n RangeWidget,\n SelectWidget,\n TextareaWidget,\n };\n}\n\nexport default generateWidgets();\n","import { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { ThemeProps } from '@rjsf/core';\nimport { Form as SuiForm } from 'semantic-ui-react';\n\nimport { generateTemplates } from '../Templates';\nimport { generateWidgets } from '../Widgets';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n _internalFormWrapper: SuiForm,\n };\n}\n\nexport default generateTheme();\n","import { ComponentType } from 'react';\nimport { withTheme, FormProps } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTheme } from '../Theme';\n\nexport function generateForm<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(): ComponentType<FormProps<T, S, F>> {\n return withTheme<T, S, F>(generateTheme<T, S, F>());\n}\n\nexport default generateForm();\n"],"names":["AddButton","_ref","registry","color","props","_objectWithoutPropertiesLoose","_excluded","_jsx","jsx","Button","_extends","title","translateString","TranslatableString","AddItemButton","icon","size","children","Icon","name","getSemanticProps","_ref$formContext","formContext","_ref$uiSchema","uiSchema","_ref$options","options","_ref$defaultSchemaPro","defaultSchemaProps","fluid","inverted","_ref$defaultContextPr","defaultContextProps","formContextProps","semantic","schemaProps","getUiOptions","optionProps","Object","assign","cleanClassNames","classNameArr","omit","classList","filter","Boolean","reduce","previous","current","concat","trim","split","Set","cn","includes","join","MaybeWrap","_ref3","wrap","_ref3$component","component","Component","ArrayFieldItemTemplate","vertical","disabled","hasToolbar","hasCopy","hasMoveDown","hasMoveUp","hasRemove","index","onCopyIndexClick","onDropIndexClick","onReorderClick","readonly","_registry$templates$B","templates","ButtonTemplates","CopyButton","MoveDownButton","MoveUpButton","RemoveButton","_uiOptions$semantic","_uiOptions$semantic$h","horizontalButtons","_uiOptions$semantic$w","wrapItem","className","Segment","_jsxs","jsxs","Grid","style","display","gridTemplateColumns","alignItems","Column","width","verticalAlign","Group","onClick","ArrayFieldTemplate","idSchema","canAdd","items","onAddClick","required","schema","semanticProps","uiOptions","ArrayFieldDescriptionTemplate","getTemplate","ArrayFieldTitleTemplate","isFixedItems","description","map","_extends2","key","itemUiSchema","mergedUiSchema","UI_OPTIONS_KEY","marginTop","position","textAlign","$id","BaseInputTemplate","id","placeholder","label","hideLabel","value","onChange","onChangeOverride","onBlur","onFocus","autofocus","_props$rawErrors","rawErrors","inputProps","getInputProps","type","_Fragment","Form","Input","labelValue","undefined","autoFocus","list","examples","examplesId","error","length","target","emptyValue","ariaDescribedByIds","Array","isArray","example","DescriptionField","ErrorList","errors","Message","negative","Header","ErrorsLabel","List","Item","stack","IconButton","iconType","otherProps","DEFAULT_OPTIONS","pointing","FieldErrorTemplate","_ref2","_ref2$formContext","_ref2$uiSchema","_ref2$options","_ref2$defaultProps","defaultProps","errorOptions","semanticOptions","getSemanticErrorProps","errorId","Label","basic","bulleted","nanoid","FieldHelpTemplate","help","helpId","info","content","FieldTemplate","classNames","displayLabel","hidden","rawDescription","wrapLabel","wrapContent","WrapIfAdditionalTemplate","DescriptionFieldTemplate","widths","grouped","descriptionId","ObjectFieldTemplate","properties","formData","TitleFieldTemplate","titleId","prop","canExpand","Row","SubmitButton","_getSubmitButtonOptio","getSubmitButtonOptions","_getSubmitButtonOptio2","norender","primary","submitText","dividing","TitleField","as","onDropPropertyClick","onKeyChange","keyLabel","KeyLabel","_registry$formContext","_registry$formContext2","readonlyAsDisabled","ADDITIONAL_PROPERTY_FLAG","columns","hasFeedback","htmlFor","defaultValue","wrapperStyle","generateTemplates","ErrorListTemplate","Templates","CheckboxWidget","_options$description","_props$label","schemaRequiresTrueValue","checked","Checkbox","_","data","CheckboxesWidget","enumOptions","enumDisabled","inline","checkboxesValues","_onChange","enumOptionsSelectValue","enumOptionsDeselectValue","_onBlur","_onFocus","inlineOption","option","enumOptionsIsSelected","itemDisabled","indexOf","optionId","RadioWidget","enumOptionsValueForIndex","_createElement","Field","control","Radio","String","RangeWidget","rangeSpec","SelectWidget","multiple","selection","scrolling","upward","optEmptyVal","dropdownOptions","disabledOptions","text","createDefaultValueOptionsForDropDown","selectedIndexes","enumOptionsIndexForValue","Dropdown","readOnly","_ref4","TextareaWidget","TextArea","rows","generateWidgets","Widgets","generateTheme","widgets","_internalFormWrapper","SuiForm","Theme","generateForm","withTheme","SemanticUIForm"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { withTheme } from '@rjsf/core';
2
2
  import { Button, Icon, Segment, Grid, Form, Message, Label, List, Header, Radio, Input } from 'semantic-ui-react';
3
3
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
4
- import { TranslatableString, getUiOptions, getTemplate, isFixedItems, UI_OPTIONS_KEY, getInputProps, examplesId, ariaDescribedByIds, errorId, helpId, descriptionId, titleId, canExpand, getSubmitButtonOptions, ADDITIONAL_PROPERTY_FLAG, schemaRequiresTrueValue, enumOptionsIsSelected, optionId, enumOptionsSelectValue, enumOptionsDeselectValue, enumOptionsValueForIndex, rangeSpec, enumOptionsIndexForValue } from '@rjsf/utils';
4
+ import { TranslatableString, getUiOptions, getTemplate, isFixedItems, UI_OPTIONS_KEY, getInputProps, labelValue, examplesId, ariaDescribedByIds, errorId, helpId, descriptionId, titleId, canExpand, getSubmitButtonOptions, ADDITIONAL_PROPERTY_FLAG, schemaRequiresTrueValue, enumOptionsIsSelected, optionId, enumOptionsSelectValue, enumOptionsDeselectValue, enumOptionsValueForIndex, rangeSpec, enumOptionsIndexForValue } from '@rjsf/utils';
5
5
  import { nanoid } from 'nanoid';
6
6
  import { createElement } from 'react';
7
7
  import map from 'lodash-es/map';
@@ -336,6 +336,7 @@ function BaseInputTemplate(props) {
336
336
  var id = props.id,
337
337
  placeholder = props.placeholder,
338
338
  label = props.label,
339
+ hideLabel = props.hideLabel,
339
340
  value = props.value,
340
341
  required = props.required,
341
342
  readonly = props.readonly,
@@ -350,7 +351,6 @@ function BaseInputTemplate(props) {
350
351
  uiSchema = props.uiSchema,
351
352
  formContext = props.formContext,
352
353
  type = props.type,
353
- registry = props.registry,
354
354
  _props$rawErrors = props.rawErrors,
355
355
  rawErrors = _props$rawErrors === void 0 ? [] : _props$rawErrors;
356
356
  var inputProps = getInputProps(schema, type, options);
@@ -359,7 +359,6 @@ function BaseInputTemplate(props) {
359
359
  formContext: formContext,
360
360
  options: options
361
361
  });
362
- var schemaUtils = registry.schemaUtils;
363
362
  var _onChange = function _onChange(_ref) {
364
363
  var value = _ref.target.value;
365
364
  return onChange(value === '' ? options.emptyValue : value);
@@ -370,14 +369,13 @@ function BaseInputTemplate(props) {
370
369
  var _onFocus = function _onFocus() {
371
370
  return onFocus && onFocus(id, value);
372
371
  };
373
- var displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);
374
372
  return jsxs(Fragment, {
375
373
  children: [jsx(Form.Input, _extends({
376
374
  id: id,
377
375
  name: id,
378
376
  placeholder: placeholder
379
377
  }, inputProps, {
380
- label: displayLabel ? label || schema.title : false,
378
+ label: labelValue(label || undefined, hideLabel, false),
381
379
  required: required,
382
380
  autoFocus: autofocus,
383
381
  disabled: disabled || readonly,
@@ -639,19 +637,17 @@ function ObjectFieldTemplate(props) {
639
637
  var DescriptionFieldTemplate = getTemplate('DescriptionFieldTemplate', registry, uiOptions);
640
638
  // Button templates are not overridden in the uiSchema
641
639
  var AddButton = registry.templates.ButtonTemplates.AddButton;
642
- var fieldTitle = uiOptions.title || title;
643
- var fieldDescription = uiOptions.description || description;
644
640
  return jsxs(Fragment, {
645
- children: [fieldTitle && jsx(TitleFieldTemplate, {
641
+ children: [title && jsx(TitleFieldTemplate, {
646
642
  id: titleId(idSchema),
647
- title: fieldTitle,
643
+ title: title,
648
644
  required: required,
649
645
  schema: schema,
650
646
  uiSchema: uiSchema,
651
647
  registry: registry
652
- }), fieldDescription && jsx(DescriptionFieldTemplate, {
648
+ }), description && jsx(DescriptionFieldTemplate, {
653
649
  id: descriptionId(idSchema),
654
- description: fieldDescription,
650
+ description: description,
655
651
  schema: schema,
656
652
  uiSchema: uiSchema,
657
653
  registry: registry
@@ -843,11 +839,14 @@ var Templates = /*#__PURE__*/generateTemplates();
843
839
  * @param props - The `WidgetProps` for this component
844
840
  */
845
841
  function CheckboxWidget(props) {
842
+ var _options$description;
846
843
  var id = props.id,
847
844
  value = props.value,
848
845
  disabled = props.disabled,
849
846
  readonly = props.readonly,
850
- label = props.label,
847
+ _props$label = props.label,
848
+ label = _props$label === void 0 ? '' : _props$label,
849
+ hideLabel = props.hideLabel,
851
850
  autofocus = props.autofocus,
852
851
  onChange = props.onChange,
853
852
  onBlur = props.onBlur,
@@ -857,7 +856,8 @@ function CheckboxWidget(props) {
857
856
  schema = props.schema,
858
857
  uiSchema = props.uiSchema,
859
858
  _props$rawErrors = props.rawErrors,
860
- rawErrors = _props$rawErrors === void 0 ? [] : _props$rawErrors;
859
+ rawErrors = _props$rawErrors === void 0 ? [] : _props$rawErrors,
860
+ registry = props.registry;
861
861
  var semanticProps = getSemanticProps({
862
862
  options: options,
863
863
  formContext: formContext,
@@ -866,6 +866,7 @@ function CheckboxWidget(props) {
866
866
  inverted: 'false'
867
867
  }
868
868
  });
869
+ var DescriptionFieldTemplate = getTemplate('DescriptionFieldTemplate', registry, options);
869
870
  // Because an unchecked checkbox will cause html5 validation to fail, only add
870
871
  // the "required" attribute if the field value must be "true", due to the
871
872
  // "const" or "enum" keywords
@@ -880,21 +881,30 @@ function CheckboxWidget(props) {
880
881
  return onFocus && onFocus(id, value);
881
882
  };
882
883
  var checked = value == 'true' || value == true;
883
- return jsx(Form.Checkbox, _extends({
884
- id: id,
885
- name: id,
886
- disabled: disabled || readonly,
887
- autoFocus: autofocus
888
- }, semanticProps, {
889
- checked: typeof value === 'undefined' ? false : checked,
890
- error: rawErrors.length > 0,
891
- onChange: _onChange,
892
- onBlur: _onBlur,
893
- onFocus: _onFocus,
894
- required: required,
895
- label: label || '',
896
- "aria-describedby": ariaDescribedByIds(id)
897
- }));
884
+ var description = (_options$description = options.description) != null ? _options$description : schema.description;
885
+ return jsxs(Fragment, {
886
+ children: [!hideLabel && !!description && jsx(DescriptionFieldTemplate, {
887
+ id: descriptionId(id),
888
+ description: description,
889
+ schema: schema,
890
+ uiSchema: uiSchema,
891
+ registry: registry
892
+ }), jsx(Form.Checkbox, _extends({
893
+ id: id,
894
+ name: id,
895
+ disabled: disabled || readonly,
896
+ autoFocus: autofocus
897
+ }, semanticProps, {
898
+ checked: typeof value === 'undefined' ? false : checked,
899
+ error: rawErrors.length > 0,
900
+ onChange: _onChange,
901
+ onBlur: _onBlur,
902
+ onFocus: _onFocus,
903
+ required: required,
904
+ label: labelValue(label, hideLabel, false),
905
+ "aria-describedby": ariaDescribedByIds(id)
906
+ }))]
907
+ });
898
908
  }
899
909
 
900
910
  /** The `CheckboxesWidget` is a widget for rendering checkbox groups.
@@ -909,6 +919,8 @@ function CheckboxesWidget(props) {
909
919
  value = props.value,
910
920
  autofocus = props.autofocus,
911
921
  readonly = props.readonly,
922
+ label = props.label,
923
+ hideLabel = props.hideLabel,
912
924
  onChange = props.onChange,
913
925
  onBlur = props.onBlur,
914
926
  onFocus = props.onFocus,
@@ -923,7 +935,6 @@ function CheckboxesWidget(props) {
923
935
  enumDisabled = options.enumDisabled,
924
936
  inline = options.inline;
925
937
  var checkboxesValues = Array.isArray(value) ? value : [value];
926
- var title = schema.title;
927
938
  var semanticProps = getSemanticProps({
928
939
  options: options,
929
940
  formContext: formContext,
@@ -955,9 +966,9 @@ function CheckboxesWidget(props) {
955
966
  grouped: true
956
967
  };
957
968
  return jsxs(Fragment, {
958
- children: [title && jsx(TitleFieldTemplate, {
969
+ children: [!hideLabel && !!label && jsx(TitleFieldTemplate, {
959
970
  id: titleId(id),
960
- title: title,
971
+ title: label,
961
972
  schema: schema,
962
973
  uiSchema: uiSchema,
963
974
  registry: registry
@@ -1139,12 +1150,12 @@ function createDefaultValueOptionsForDropDown(enumOptions, enumDisabled) {
1139
1150
  * @param props - The `WidgetProps` for this component
1140
1151
  */
1141
1152
  function SelectWidget(props) {
1142
- var schema = props.schema,
1143
- uiSchema = props.uiSchema,
1153
+ var uiSchema = props.uiSchema,
1144
1154
  formContext = props.formContext,
1145
1155
  id = props.id,
1146
1156
  options = props.options,
1147
1157
  label = props.label,
1158
+ hideLabel = props.hideLabel,
1148
1159
  required = props.required,
1149
1160
  disabled = props.disabled,
1150
1161
  readonly = props.readonly,
@@ -1191,7 +1202,7 @@ function SelectWidget(props) {
1191
1202
  return jsx(Form.Dropdown, _extends({
1192
1203
  id: id,
1193
1204
  name: id,
1194
- label: label || schema.title,
1205
+ label: labelValue(label || undefined, hideLabel, false),
1195
1206
  multiple: typeof multiple === 'undefined' ? false : multiple,
1196
1207
  value: typeof value === 'undefined' ? emptyValue : selectedIndexes,
1197
1208
  error: rawErrors.length > 0,
@@ -1221,15 +1232,13 @@ function TextareaWidget(props) {
1221
1232
  disabled = props.disabled,
1222
1233
  autofocus = props.autofocus,
1223
1234
  label = props.label,
1235
+ hideLabel = props.hideLabel,
1224
1236
  readonly = props.readonly,
1225
1237
  onBlur = props.onBlur,
1226
1238
  onFocus = props.onFocus,
1227
1239
  onChange = props.onChange,
1228
1240
  options = props.options,
1229
- schema = props.schema,
1230
- uiSchema = props.uiSchema,
1231
1241
  formContext = props.formContext,
1232
- registry = props.registry,
1233
1242
  _props$rawErrors = props.rawErrors,
1234
1243
  rawErrors = _props$rawErrors === void 0 ? [] : _props$rawErrors;
1235
1244
  var semanticProps = getSemanticProps({
@@ -1239,7 +1248,6 @@ function TextareaWidget(props) {
1239
1248
  inverted: 'false'
1240
1249
  }
1241
1250
  });
1242
- var schemaUtils = registry.schemaUtils;
1243
1251
  // eslint-disable-next-line no-shadow
1244
1252
  var _onChange = function _onChange(_ref) {
1245
1253
  var value = _ref.target.value;
@@ -1251,11 +1259,10 @@ function TextareaWidget(props) {
1251
1259
  var _onFocus = function _onFocus() {
1252
1260
  return onFocus && onFocus(id, value);
1253
1261
  };
1254
- var displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);
1255
1262
  return jsx(Form.TextArea, _extends({
1256
1263
  id: id,
1257
1264
  name: id,
1258
- label: displayLabel ? label || schema.title : false,
1265
+ label: labelValue(label || undefined, hideLabel, false),
1259
1266
  placeholder: placeholder,
1260
1267
  autoFocus: autofocus,
1261
1268
  required: required,