@rjsf/mui 5.3.1 → 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.
- package/dist/mui.cjs.development.js +57 -42
- package/dist/mui.cjs.development.js.map +1 -1
- package/dist/mui.cjs.production.min.js +1 -1
- package/dist/mui.cjs.production.min.js.map +1 -1
- package/dist/mui.esm.js +58 -43
- package/dist/mui.esm.js.map +1 -1
- package/dist/mui.umd.development.js +57 -42
- package/dist/mui.umd.development.js.map +1 -1
- package/dist/mui.umd.production.min.js +1 -1
- package/dist/mui.umd.production.min.js.map +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mui.cjs.production.min.js","sources":["../src/AddButton/AddButton.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.ts","../src/Theme/Theme.tsx","../src/MuiForm/MuiForm.tsx"],"sourcesContent":["import AddIcon from '@mui/icons-material/Add';\nimport IconButton from '@mui/material/IconButton';\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 ...props\n}: IconButtonProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <IconButton title={translateString(TranslatableString.AddItemButton)} {...props} color='primary'>\n <AddIcon />\n </IconButton>\n );\n}\n","import { CSSProperties } from 'react';\nimport Box from '@mui/material/Box';\nimport Grid from '@mui/material/Grid';\nimport Paper from '@mui/material/Paper';\nimport { ArrayFieldTemplateItemType, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 btnStyle: CSSProperties = {\n flex: 1,\n paddingLeft: 6,\n paddingRight: 6,\n fontWeight: 'bold',\n minWidth: 0,\n };\n return (\n <Grid container={true} alignItems='center'>\n <Grid item={true} xs style={{ overflow: 'auto' }}>\n <Box mb={2}>\n <Paper elevation={2}>\n <Box p={2}>{children}</Box>\n </Paper>\n </Box>\n </Grid>\n {hasToolbar && (\n <Grid item={true}>\n {(hasMoveUp || hasMoveDown) && (\n <MoveUpButton\n style={btnStyle}\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 style={btnStyle}\n disabled={disabled || readonly || !hasMoveDown}\n onClick={onReorderClick(index, index + 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasCopy && (\n <CopyButton\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onCopyIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasRemove && (\n <RemoveButton\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onDropIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </Grid>\n )}\n </Grid>\n );\n}\n","import Box from '@mui/material/Box';\nimport Grid from '@mui/material/Grid';\nimport Paper from '@mui/material/Paper';\nimport {\n getTemplate,\n getUiOptions,\n ArrayFieldTemplateProps,\n ArrayFieldTemplateItemType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\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 { canAdd, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, schema, title } =\n props;\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 <Paper elevation={2}>\n <Box p={2}>\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 <Grid container={true} key={`array-item-list-${idSchema.$id}`}>\n {items &&\n items.map(({ key, ...itemProps }: ArrayFieldTemplateItemType<T, S, F>) => (\n <ArrayFieldItemTemplate key={key} {...itemProps} />\n ))}\n {canAdd && (\n <Grid container justifyContent='flex-end'>\n <Grid item={true}>\n <Box mt={2}>\n <AddButton\n className='array-item-add'\n onClick={onAddClick}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Box>\n </Grid>\n </Grid>\n )}\n </Grid>\n </Box>\n </Paper>\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nconst TYPES_THAT_SHRINK_LABEL = ['date', 'datetime-local', 'file', 'time'];\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 name, // remove this from textFieldProps\n placeholder,\n required,\n readonly,\n disabled,\n type,\n label,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n rawErrors = [],\n formContext,\n registry,\n InputLabelProps,\n ...textFieldProps\n } = props;\n const inputProps = getInputProps<T, S, F>(schema, type, options);\n // Now we need to pull out the step, min, max into an inner `inputProps` for material-ui\n const { step, min, max, ...rest } = inputProps;\n const otherProps = {\n inputProps: {\n step,\n min,\n max,\n ...(schema.examples ? { list: examplesId<T>(id) } : undefined),\n },\n ...rest,\n };\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n\n const { schemaUtils } = registry;\n const displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);\n const DisplayInputLabelProps = TYPES_THAT_SHRINK_LABEL.includes(type)\n ? {\n ...InputLabelProps,\n shrink: true,\n }\n : InputLabelProps;\n\n return (\n <>\n <TextField\n id={id}\n name={id}\n placeholder={placeholder}\n label={displayLabel ? label || schema.title : false}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n {...otherProps}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n InputLabelProps={DisplayInputLabelProps}\n {...(textFieldProps as TextFieldProps)}\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: any) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n","import Typography from '@mui/material/Typography';\nimport { 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 (\n <Typography id={id} variant='subtitle2' style={{ marginTop: '5px' }}>\n {description}\n </Typography>\n );\n }\n\n return null;\n}\n","import ErrorIcon from '@mui/icons-material/Error';\nimport Box from '@mui/material/Box';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport ListItemIcon from '@mui/material/ListItemIcon';\nimport ListItemText from '@mui/material/ListItemText';\nimport Paper from '@mui/material/Paper';\nimport Typography from '@mui/material/Typography';\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 <Paper elevation={2}>\n <Box mb={2} p={2}>\n <Typography variant='h6'>{translateString(TranslatableString.ErrorsLabel)}</Typography>\n <List dense={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i}>\n <ListItemIcon>\n <ErrorIcon color='error' />\n </ListItemIcon>\n <ListItemText primary={error.stack} />\n </ListItem>\n );\n })}\n </List>\n </Box>\n </Paper>\n );\n}\n","import IconButton, { IconButtonProps as MuiIconButtonProps } from '@mui/material/IconButton';\nimport ArrowDownwardIcon from '@mui/icons-material/ArrowDownward';\nimport ArrowUpwardIcon from '@mui/icons-material/ArrowUpward';\nimport CopyIcon from '@mui/icons-material/ContentCopy';\nimport RemoveIcon from '@mui/icons-material/Remove';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nexport default function MuiIconButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: IconButtonProps<T, S, F>) {\n const { icon, color, uiSchema, registry, ...otherProps } = props;\n return (\n <IconButton {...otherProps} size='small' color={color as MuiIconButtonProps['color']}>\n {icon}\n </IconButton>\n );\n}\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 (\n <MuiIconButton\n title={translateString(TranslatableString.CopyButton)}\n {...props}\n icon={<CopyIcon fontSize='small' />}\n />\n );\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 (\n <MuiIconButton\n title={translateString(TranslatableString.MoveDownButton)}\n {...props}\n icon={<ArrowDownwardIcon fontSize='small' />}\n />\n );\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 (\n <MuiIconButton\n title={translateString(TranslatableString.MoveUpButton)}\n {...props}\n icon={<ArrowUpwardIcon fontSize='small' />}\n />\n );\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const { iconType, ...otherProps } = props;\n const {\n registry: { translateString },\n } = otherProps;\n return (\n <MuiIconButton\n title={translateString(TranslatableString.RemoveButton)}\n {...otherProps}\n color='error'\n icon={<RemoveIcon fontSize={iconType === 'default' ? undefined : 'small'} />}\n />\n );\n}\n","import ListItem from '@mui/material/ListItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport List from '@mui/material/List';\nimport { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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>(props: FieldErrorProps<T, S, F>) {\n const { errors = [], idSchema } = props;\n if (errors.length === 0) {\n return null;\n }\n const id = errorId<T>(idSchema);\n\n return (\n <List dense={true} disablePadding={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i} disableGutters={true}>\n <FormHelperText id={id}>{error}</FormHelperText>\n </ListItem>\n );\n })}\n </List>\n );\n}\n","import FormHelperText from '@mui/material/FormHelperText';\nimport { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } 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 return null;\n }\n const id = helpId<T>(idSchema);\n return <FormHelperText id={id}>{help}</FormHelperText>;\n}\n","import FormControl from '@mui/material/FormControl';\nimport Typography from '@mui/material/Typography';\nimport {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\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 disabled,\n displayLabel,\n hidden,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n rawErrors = [],\n errors,\n help,\n rawDescription,\n schema,\n uiSchema,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions\n );\n\n if (hidden) {\n return <div style={{ display: 'none' }}>{children}</div>;\n }\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n onDropPropertyClick={onDropPropertyClick}\n onKeyChange={onKeyChange}\n readonly={readonly}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n >\n <FormControl fullWidth={true} error={rawErrors.length ? true : false} required={required}>\n {children}\n {displayLabel && rawDescription ? (\n <Typography variant='caption' color='textSecondary'>\n {rawDescription}\n </Typography>\n ) : null}\n {errors}\n {help}\n </FormControl>\n </WrapIfAdditionalTemplate>\n );\n}\n","import Grid from '@mui/material/Grid';\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 title,\n properties,\n required,\n disabled,\n readonly,\n uiSchema,\n idSchema,\n schema,\n formData,\n onAddClick,\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 {(uiOptions.title || 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 {(uiOptions.description || description) && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(idSchema)}\n description={uiOptions.description || description!}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Grid container={true} spacing={2} style={{ marginTop: '10px' }}>\n {properties.map((element, index) =>\n // Remove the <Grid> if the inner element is hidden as the <Grid>\n // itself would otherwise still take up space.\n element.hidden ? (\n element.content\n ) : (\n <Grid item={true} xs={12} key={index} style={{ marginBottom: '10px' }}>\n {element.content}\n </Grid>\n )\n )}\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid container justifyContent='flex-end'>\n <Grid item={true}>\n <AddButton\n className='object-property-expand'\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\n )}\n </Grid>\n </>\n );\n}\n","import Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\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 <Box marginTop={3}>\n <Button type='submit' variant='contained' color='primary' {...submitButtonProps}>\n {submitText}\n </Button>\n </Box>\n );\n}\n","import Box from '@mui/material/Box';\nimport Divider from '@mui/material/Divider';\nimport Typography from '@mui/material/Typography';\nimport { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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}: TitleFieldProps<T, S, F>) {\n return (\n <Box id={id} mb={1} mt={1}>\n <Typography variant='h5'>{title}</Typography>\n <Divider />\n </Box>\n );\n}\n","import { CSSProperties, FocusEvent } from 'react';\nimport FormControl from '@mui/material/FormControl';\nimport Grid from '@mui/material/Grid';\nimport InputLabel from '@mui/material/InputLabel';\nimport Input from '@mui/material/OutlinedInput';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\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 additional = ADDITIONAL_PROPERTY_FLAG in schema;\n const btnStyle: CSSProperties = {\n flex: 1,\n paddingLeft: 6,\n paddingRight: 6,\n fontWeight: 'bold',\n };\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 <Grid container key={`${id}-key`} alignItems='center' spacing={2} className={classNames} style={style}>\n <Grid item xs>\n <FormControl fullWidth={true} required={required}>\n <InputLabel>{keyLabel}</InputLabel>\n <Input\n defaultValue={label}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? handleBlur : undefined}\n type='text'\n />\n </FormControl>\n </Grid>\n <Grid item={true} xs>\n {children}\n </Grid>\n <Grid item={true}>\n <RemoveButton\n iconType='default'\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\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 { FocusEvent } from 'react';\nimport Checkbox from '@mui/material/Checkbox';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport {\n ariaDescribedByIds,\n schemaRequiresTrueValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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 { schema, id, value, disabled, readonly, label, autofocus, onChange, onBlur, onFocus } = props;\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\n const _onChange = (_: any, checked: boolean) => onChange(checked);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLButtonElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLButtonElement>) => onFocus(id, value);\n\n return (\n <FormControlLabel\n control={\n <Checkbox\n id={id}\n name={id}\n checked={typeof value === 'undefined' ? false : Boolean(value)}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n }\n label={label || ''}\n />\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport Checkbox from '@mui/material/Checkbox';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport FormGroup from '@mui/material/FormGroup';\nimport FormLabel from '@mui/material/FormLabel';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n WidgetProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\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>({\n schema,\n label,\n id,\n disabled,\n options,\n value,\n autofocus,\n readonly,\n required,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const checkboxesValues = Array.isArray(value) ? value : [value];\n\n const _onChange =\n (index: number) =>\n ({ target: { checked } }: ChangeEvent<HTMLInputElement>) => {\n if (checked) {\n onChange(enumOptionsSelectValue(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue(index, checkboxesValues, enumOptions));\n }\n };\n\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLButtonElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLButtonElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n\n return (\n <>\n <FormLabel required={required} htmlFor={id}>\n {label || schema.title}\n </FormLabel>\n <FormGroup id={id} row={!!inline}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index: number) => {\n const checked = enumOptionsIsSelected<S>(option.value, checkboxesValues);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const checkbox = (\n <Checkbox\n id={optionId(id, index)}\n name={id}\n checked={checked}\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 return <FormControlLabel control={checkbox} key={index} label={option.label} />;\n })}\n </FormGroup>\n </>\n );\n}\n","import { FocusEvent } from 'react';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport FormLabel from '@mui/material/FormLabel';\nimport Radio from '@mui/material/Radio';\nimport RadioGroup from '@mui/material/RadioGroup';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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 id,\n schema,\n options,\n value,\n required,\n disabled,\n readonly,\n label,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue } = options;\n\n const _onChange = (_: any, value: any) => onChange(enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n\n const row = options ? options.inline : false;\n const selectedIndex = enumOptionsIndexForValue<S>(value, enumOptions);\n\n return (\n <>\n <FormLabel required={required} htmlFor={id}>\n {label || schema.title}\n </FormLabel>\n <RadioGroup\n id={id}\n name={id}\n value={selectedIndex}\n row={row as boolean}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n >\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const radio = (\n <FormControlLabel\n control={<Radio name={id} id={optionId(id, index)} color='primary' />}\n label={option.label}\n value={String(index)}\n key={index}\n disabled={disabled || itemDisabled || readonly}\n />\n );\n\n return radio;\n })}\n </RadioGroup>\n </>\n );\n}\n","import { FocusEvent } from 'react';\nimport FormLabel from '@mui/material/FormLabel';\nimport Slider from '@mui/material/Slider';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps, rangeSpec } from '@rjsf/utils';\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 { value, readonly, disabled, onBlur, onFocus, options, schema, onChange, required, label, id } = props;\n const sliderProps = { value, label, id, name: id, ...rangeSpec<S>(schema) };\n\n const _onChange = (_: any, value?: number | number[]) => {\n onChange(value ?? options.emptyValue);\n };\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n\n return (\n <>\n <FormLabel required={required} htmlFor={id}>\n {label || schema.title}\n </FormLabel>\n <Slider\n disabled={disabled || readonly}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n valueLabelDisplay='auto'\n {...sliderProps}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n </>\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport MenuItem from '@mui/material/MenuItem';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({\n schema,\n id,\n name, // remove this from textFieldProps\n options,\n label,\n required,\n disabled,\n placeholder,\n readonly,\n value,\n multiple,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n rawErrors = [],\n registry,\n uiSchema,\n hideError,\n formContext,\n ...textFieldProps\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue: optEmptyVal } = options;\n\n multiple = typeof multiple === 'undefined' ? false : !!multiple;\n\n const emptyValue = multiple ? [] : '';\n const isEmpty = typeof value === 'undefined' || (multiple && value.length < 1) || (!multiple && value === emptyValue);\n\n const _onChange = ({ target: { value } }: ChangeEvent<{ value: string }>) =>\n onChange(enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n return (\n <TextField\n id={id}\n name={id}\n label={label || schema.title}\n value={isEmpty ? emptyValue : selectedIndexes}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n placeholder={placeholder}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldProps as TextFieldProps)}\n select // Apply this and the following props after the potential overrides defined in textFieldProps\n InputLabelProps={{\n ...textFieldProps.InputLabelProps,\n shrink: !isEmpty,\n }}\n SelectProps={{\n ...textFieldProps.SelectProps,\n multiple,\n }}\n aria-describedby={ariaDescribedByIds<T>(id)}\n >\n {Array.isArray(enumOptions) &&\n enumOptions.map(({ value, label }, i: number) => {\n const disabled: boolean = Array.isArray(enumDisabled) && enumDisabled.indexOf(value) !== -1;\n return (\n <MenuItem key={i} value={String(i)} disabled={disabled}>\n {label}\n </MenuItem>\n );\n })}\n </TextField>\n );\n}\n","import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps, getTemplate } from '@rjsf/utils';\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 { options, registry } = props;\n const BaseInputTemplate = getTemplate<'BaseInputTemplate', T, S, F>('BaseInputTemplate', registry, options);\n\n let rows: string | number = 5;\n if (typeof options.rows === 'string' || typeof options.rows === 'number') {\n rows = options.rows;\n }\n\n return <BaseInputTemplate {...props} multiline rows={rows} />;\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';\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 };\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","props","_objectWithoutPropertiesLoose","_excluded","_jsx","jsx","IconButton","_extends","title","translateString","TranslatableString","AddItemButton","color","children","AddIcon","ArrayFieldItemTemplate","disabled","hasToolbar","hasCopy","hasMoveDown","hasMoveUp","hasRemove","index","onCopyIndexClick","onDropIndexClick","onReorderClick","readonly","uiSchema","_registry$templates$B","templates","ButtonTemplates","CopyButton","MoveDownButton","MoveUpButton","RemoveButton","btnStyle","flex","paddingLeft","paddingRight","fontWeight","minWidth","_jsxs","Grid","container","alignItems","item","xs","style","overflow","Box","mb","Paper","elevation","p","jsxs","onClick","ArrayFieldTemplate","canAdd","idSchema","items","onAddClick","required","schema","uiOptions","getUiOptions","ArrayFieldDescriptionTemplate","getTemplate","ArrayFieldTitleTemplate","description","map","key","itemProps","justifyContent","mt","className","$id","TYPES_THAT_SHRINK_LABEL","BaseInputTemplate","id","placeholder","type","label","value","onChange","onChangeOverride","onBlur","onFocus","autofocus","options","_props$rawErrors","rawErrors","InputLabelProps","textFieldProps","inputProps","getInputProps","step","min","max","rest","_excluded2","otherProps","examples","list","examplesId","undefined","displayLabel","schemaUtils","getDisplayLabel","DisplayInputLabelProps","includes","shrink","_Fragment","TextField","name","autoFocus","error","length","target","emptyValue","_ref2","_ref3","ariaDescribedByIds","Array","isArray","concat","example","DescriptionField","Typography","variant","marginTop","ErrorList","errors","ErrorsLabel","List","dense","i","ListItem","ListItemIcon","ErrorIcon","ListItemText","primary","stack","MuiIconButton","icon","size","CopyIcon","fontSize","ArrowDownwardIcon","ArrowUpwardIcon","iconType","RemoveIcon","FieldErrorTemplate","_props$errors","errorId","disablePadding","disableGutters","FormHelperText","FieldHelpTemplate","help","helpId","FieldTemplate","classNames","hidden","onDropPropertyClick","onKeyChange","rawDescription","WrapIfAdditionalTemplate","display","FormControl","fullWidth","ObjectFieldTemplate","properties","formData","TitleFieldTemplate","DescriptionFieldTemplate","titleId","descriptionId","spacing","element","content","marginBottom","canExpand","SubmitButton","_getSubmitButtonOptio","getSubmitButtonOptions","_getSubmitButtonOptio2","norender","Button","submitText","TitleField","Divider","keyLabel","KeyLabel","ADDITIONAL_PROPERTY_FLAG","InputLabel","Input","defaultValue","generateTemplates","ErrorListTemplate","Templates","CheckboxWidget","schemaRequiresTrueValue","FormControlLabel","control","Checkbox","checked","Boolean","_","CheckboxesWidget","enumOptions","enumDisabled","inline","checkboxesValues","_onChange","enumOptionsSelectValue","enumOptionsDeselectValue","_onBlur","enumOptionsValueForIndex","_onFocus","_ref4","FormLabel","htmlFor","FormGroup","row","option","enumOptionsIsSelected","itemDisabled","indexOf","checkbox","optionId","RadioWidget","selectedIndex","enumOptionsIndexForValue","RadioGroup","Radio","String","RangeWidget","sliderProps","rangeSpec","Slider","valueLabelDisplay","SelectWidget","multiple","_ref$rawErrors","optEmptyVal","isEmpty","selectedIndexes","select","SelectProps","_ref5","MenuItem","TextareaWidget","rows","multiline","generateWidgets","Widgets","generateTheme","widgets","Theme","generateForm","withTheme","MuiForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mui.cjs.production.min.js","sources":["../src/AddButton/AddButton.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.ts","../src/Theme/Theme.tsx","../src/MuiForm/MuiForm.tsx"],"sourcesContent":["import AddIcon from '@mui/icons-material/Add';\nimport IconButton from '@mui/material/IconButton';\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 ...props\n}: IconButtonProps<T, S, F>) {\n const { translateString } = registry;\n return (\n <IconButton title={translateString(TranslatableString.AddItemButton)} {...props} color='primary'>\n <AddIcon />\n </IconButton>\n );\n}\n","import { CSSProperties } from 'react';\nimport Box from '@mui/material/Box';\nimport Grid from '@mui/material/Grid';\nimport Paper from '@mui/material/Paper';\nimport { ArrayFieldTemplateItemType, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 btnStyle: CSSProperties = {\n flex: 1,\n paddingLeft: 6,\n paddingRight: 6,\n fontWeight: 'bold',\n minWidth: 0,\n };\n return (\n <Grid container={true} alignItems='center'>\n <Grid item={true} xs style={{ overflow: 'auto' }}>\n <Box mb={2}>\n <Paper elevation={2}>\n <Box p={2}>{children}</Box>\n </Paper>\n </Box>\n </Grid>\n {hasToolbar && (\n <Grid item={true}>\n {(hasMoveUp || hasMoveDown) && (\n <MoveUpButton\n style={btnStyle}\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 style={btnStyle}\n disabled={disabled || readonly || !hasMoveDown}\n onClick={onReorderClick(index, index + 1)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasCopy && (\n <CopyButton\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onCopyIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {hasRemove && (\n <RemoveButton\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onDropIndexClick(index)}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n </Grid>\n )}\n </Grid>\n );\n}\n","import Box from '@mui/material/Box';\nimport Grid from '@mui/material/Grid';\nimport Paper from '@mui/material/Paper';\nimport {\n getTemplate,\n getUiOptions,\n ArrayFieldTemplateProps,\n ArrayFieldTemplateItemType,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\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 { canAdd, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, schema, title } =\n props;\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 <Paper elevation={2}>\n <Box p={2}>\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 <Grid container={true} key={`array-item-list-${idSchema.$id}`}>\n {items &&\n items.map(({ key, ...itemProps }: ArrayFieldTemplateItemType<T, S, F>) => (\n <ArrayFieldItemTemplate key={key} {...itemProps} />\n ))}\n {canAdd && (\n <Grid container justifyContent='flex-end'>\n <Grid item={true}>\n <Box mt={2}>\n <AddButton\n className='array-item-add'\n onClick={onAddClick}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Box>\n </Grid>\n </Grid>\n )}\n </Grid>\n </Box>\n </Paper>\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nconst TYPES_THAT_SHRINK_LABEL = ['date', 'datetime-local', 'file', 'time'];\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 name, // remove this from textFieldProps\n placeholder,\n required,\n readonly,\n disabled,\n type,\n label,\n hideLabel,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n rawErrors = [],\n formContext,\n registry,\n InputLabelProps,\n ...textFieldProps\n } = props;\n const inputProps = getInputProps<T, S, F>(schema, type, options);\n // Now we need to pull out the step, min, max into an inner `inputProps` for material-ui\n const { step, min, max, ...rest } = inputProps;\n const otherProps = {\n inputProps: {\n step,\n min,\n max,\n ...(schema.examples ? { list: examplesId<T>(id) } : undefined),\n },\n ...rest,\n };\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n const DisplayInputLabelProps = TYPES_THAT_SHRINK_LABEL.includes(type)\n ? {\n ...InputLabelProps,\n shrink: true,\n }\n : InputLabelProps;\n\n return (\n <>\n <TextField\n id={id}\n name={id}\n placeholder={placeholder}\n label={labelValue(label || undefined, hideLabel, false)}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n {...otherProps}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n InputLabelProps={DisplayInputLabelProps}\n {...(textFieldProps as TextFieldProps)}\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: any) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n","import Typography from '@mui/material/Typography';\nimport { 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 (\n <Typography id={id} variant='subtitle2' style={{ marginTop: '5px' }}>\n {description}\n </Typography>\n );\n }\n\n return null;\n}\n","import ErrorIcon from '@mui/icons-material/Error';\nimport Box from '@mui/material/Box';\nimport List from '@mui/material/List';\nimport ListItem from '@mui/material/ListItem';\nimport ListItemIcon from '@mui/material/ListItemIcon';\nimport ListItemText from '@mui/material/ListItemText';\nimport Paper from '@mui/material/Paper';\nimport Typography from '@mui/material/Typography';\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 <Paper elevation={2}>\n <Box mb={2} p={2}>\n <Typography variant='h6'>{translateString(TranslatableString.ErrorsLabel)}</Typography>\n <List dense={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i}>\n <ListItemIcon>\n <ErrorIcon color='error' />\n </ListItemIcon>\n <ListItemText primary={error.stack} />\n </ListItem>\n );\n })}\n </List>\n </Box>\n </Paper>\n );\n}\n","import IconButton, { IconButtonProps as MuiIconButtonProps } from '@mui/material/IconButton';\nimport ArrowDownwardIcon from '@mui/icons-material/ArrowDownward';\nimport ArrowUpwardIcon from '@mui/icons-material/ArrowUpward';\nimport CopyIcon from '@mui/icons-material/ContentCopy';\nimport RemoveIcon from '@mui/icons-material/Remove';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nexport default function MuiIconButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>(props: IconButtonProps<T, S, F>) {\n const { icon, color, uiSchema, registry, ...otherProps } = props;\n return (\n <IconButton {...otherProps} size='small' color={color as MuiIconButtonProps['color']}>\n {icon}\n </IconButton>\n );\n}\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 (\n <MuiIconButton\n title={translateString(TranslatableString.CopyButton)}\n {...props}\n icon={<CopyIcon fontSize='small' />}\n />\n );\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 (\n <MuiIconButton\n title={translateString(TranslatableString.MoveDownButton)}\n {...props}\n icon={<ArrowDownwardIcon fontSize='small' />}\n />\n );\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 (\n <MuiIconButton\n title={translateString(TranslatableString.MoveUpButton)}\n {...props}\n icon={<ArrowUpwardIcon fontSize='small' />}\n />\n );\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>\n) {\n const { iconType, ...otherProps } = props;\n const {\n registry: { translateString },\n } = otherProps;\n return (\n <MuiIconButton\n title={translateString(TranslatableString.RemoveButton)}\n {...otherProps}\n color='error'\n icon={<RemoveIcon fontSize={iconType === 'default' ? undefined : 'small'} />}\n />\n );\n}\n","import ListItem from '@mui/material/ListItem';\nimport FormHelperText from '@mui/material/FormHelperText';\nimport List from '@mui/material/List';\nimport { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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>(props: FieldErrorProps<T, S, F>) {\n const { errors = [], idSchema } = props;\n if (errors.length === 0) {\n return null;\n }\n const id = errorId<T>(idSchema);\n\n return (\n <List dense={true} disablePadding={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i} disableGutters={true}>\n <FormHelperText id={id}>{error}</FormHelperText>\n </ListItem>\n );\n })}\n </List>\n );\n}\n","import FormHelperText from '@mui/material/FormHelperText';\nimport { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } 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 return null;\n }\n const id = helpId<T>(idSchema);\n return <FormHelperText id={id}>{help}</FormHelperText>;\n}\n","import FormControl from '@mui/material/FormControl';\nimport Typography from '@mui/material/Typography';\nimport {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\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 disabled,\n displayLabel,\n hidden,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n rawErrors = [],\n errors,\n help,\n rawDescription,\n schema,\n uiSchema,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions\n );\n\n if (hidden) {\n return <div style={{ display: 'none' }}>{children}</div>;\n }\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n onDropPropertyClick={onDropPropertyClick}\n onKeyChange={onKeyChange}\n readonly={readonly}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n >\n <FormControl fullWidth={true} error={rawErrors.length ? true : false} required={required}>\n {children}\n {displayLabel && rawDescription ? (\n <Typography variant='caption' color='textSecondary'>\n {rawDescription}\n </Typography>\n ) : null}\n {errors}\n {help}\n </FormControl>\n </WrapIfAdditionalTemplate>\n );\n}\n","import Grid from '@mui/material/Grid';\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 title,\n properties,\n required,\n disabled,\n readonly,\n uiSchema,\n idSchema,\n schema,\n formData,\n onAddClick,\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 <Grid container={true} spacing={2} style={{ marginTop: '10px' }}>\n {properties.map((element, index) =>\n // Remove the <Grid> if the inner element is hidden as the <Grid>\n // itself would otherwise still take up space.\n element.hidden ? (\n element.content\n ) : (\n <Grid item={true} xs={12} key={index} style={{ marginBottom: '10px' }}>\n {element.content}\n </Grid>\n )\n )}\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid container justifyContent='flex-end'>\n <Grid item={true}>\n <AddButton\n className='object-property-expand'\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\n )}\n </Grid>\n </>\n );\n}\n","import Box from '@mui/material/Box';\nimport Button from '@mui/material/Button';\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 <Box marginTop={3}>\n <Button type='submit' variant='contained' color='primary' {...submitButtonProps}>\n {submitText}\n </Button>\n </Box>\n );\n}\n","import Box from '@mui/material/Box';\nimport Divider from '@mui/material/Divider';\nimport Typography from '@mui/material/Typography';\nimport { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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}: TitleFieldProps<T, S, F>) {\n return (\n <Box id={id} mb={1} mt={1}>\n <Typography variant='h5'>{title}</Typography>\n <Divider />\n </Box>\n );\n}\n","import { CSSProperties, FocusEvent } from 'react';\nimport FormControl from '@mui/material/FormControl';\nimport Grid from '@mui/material/Grid';\nimport InputLabel from '@mui/material/InputLabel';\nimport Input from '@mui/material/OutlinedInput';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\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 additional = ADDITIONAL_PROPERTY_FLAG in schema;\n const btnStyle: CSSProperties = {\n flex: 1,\n paddingLeft: 6,\n paddingRight: 6,\n fontWeight: 'bold',\n };\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 <Grid container key={`${id}-key`} alignItems='center' spacing={2} className={classNames} style={style}>\n <Grid item xs>\n <FormControl fullWidth={true} required={required}>\n <InputLabel>{keyLabel}</InputLabel>\n <Input\n defaultValue={label}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? handleBlur : undefined}\n type='text'\n />\n </FormControl>\n </Grid>\n <Grid item={true} xs>\n {children}\n </Grid>\n <Grid item={true}>\n <RemoveButton\n iconType='default'\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\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 { FocusEvent } from 'react';\nimport Checkbox from '@mui/material/Checkbox';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport {\n ariaDescribedByIds,\n descriptionId,\n getTemplate,\n labelValue,\n schemaRequiresTrueValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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 schema,\n id,\n value,\n disabled,\n readonly,\n label = '',\n hideLabel,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n registry,\n options,\n uiSchema,\n } = props;\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\n const _onChange = (_: any, checked: boolean) => onChange(checked);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLButtonElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLButtonElement>) => onFocus(id, value);\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 <FormControlLabel\n control={\n <Checkbox\n id={id}\n name={id}\n checked={typeof value === 'undefined' ? false : Boolean(value)}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n }\n label={labelValue(label, hideLabel, false)}\n />\n </>\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport Checkbox from '@mui/material/Checkbox';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport FormGroup from '@mui/material/FormGroup';\nimport FormLabel from '@mui/material/FormLabel';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n enumOptionsValueForIndex,\n labelValue,\n optionId,\n FormContextType,\n WidgetProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\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>({\n label,\n hideLabel,\n id,\n disabled,\n options,\n value,\n autofocus,\n readonly,\n required,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const checkboxesValues = Array.isArray(value) ? value : [value];\n\n const _onChange =\n (index: number) =>\n ({ target: { checked } }: ChangeEvent<HTMLInputElement>) => {\n if (checked) {\n onChange(enumOptionsSelectValue(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue(index, checkboxesValues, enumOptions));\n }\n };\n\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLButtonElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLButtonElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n\n return (\n <>\n {labelValue(\n <FormLabel required={required} htmlFor={id}>\n {label || undefined}\n </FormLabel>,\n hideLabel\n )}\n <FormGroup id={id} row={!!inline}>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index: number) => {\n const checked = enumOptionsIsSelected<S>(option.value, checkboxesValues);\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const checkbox = (\n <Checkbox\n id={optionId(id, index)}\n name={id}\n checked={checked}\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 return <FormControlLabel control={checkbox} key={index} label={option.label} />;\n })}\n </FormGroup>\n </>\n );\n}\n","import { FocusEvent } from 'react';\nimport FormControlLabel from '@mui/material/FormControlLabel';\nimport FormLabel from '@mui/material/FormLabel';\nimport Radio from '@mui/material/Radio';\nimport RadioGroup from '@mui/material/RadioGroup';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n labelValue,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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 id,\n options,\n value,\n required,\n disabled,\n readonly,\n label,\n hideLabel,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue } = options;\n\n const _onChange = (_: any, value: any) => onChange(enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, emptyValue));\n\n const row = options ? options.inline : false;\n const selectedIndex = enumOptionsIndexForValue<S>(value, enumOptions) ?? null;\n\n return (\n <>\n {labelValue(\n <FormLabel required={required} htmlFor={id}>\n {label || undefined}\n </FormLabel>,\n hideLabel\n )}\n <RadioGroup\n id={id}\n name={id}\n value={selectedIndex}\n row={row as boolean}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n >\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const radio = (\n <FormControlLabel\n control={<Radio name={id} id={optionId(id, index)} color='primary' />}\n label={option.label}\n value={String(index)}\n key={index}\n disabled={disabled || itemDisabled || readonly}\n />\n );\n\n return radio;\n })}\n </RadioGroup>\n </>\n );\n}\n","import { FocusEvent } from 'react';\nimport FormLabel from '@mui/material/FormLabel';\nimport Slider from '@mui/material/Slider';\nimport {\n ariaDescribedByIds,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n rangeSpec,\n} from '@rjsf/utils';\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 { value, readonly, disabled, onBlur, onFocus, options, schema, onChange, required, label, hideLabel, id } =\n props;\n const sliderProps = { value, label, id, name: id, ...rangeSpec<S>(schema) };\n\n const _onChange = (_: any, value?: number | number[]) => {\n onChange(value ?? options.emptyValue);\n };\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n\n return (\n <>\n {labelValue(\n <FormLabel required={required} htmlFor={id}>\n {label || undefined}\n </FormLabel>,\n hideLabel\n )}\n <Slider\n disabled={disabled || readonly}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n valueLabelDisplay='auto'\n {...sliderProps}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n </>\n );\n}\n","import { ChangeEvent, FocusEvent } from 'react';\nimport MenuItem from '@mui/material/MenuItem';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\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<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any\n>({\n schema,\n id,\n name, // remove this from textFieldProps\n options,\n label,\n hideLabel,\n required,\n disabled,\n placeholder,\n readonly,\n value,\n multiple,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n rawErrors = [],\n registry,\n uiSchema,\n hideError,\n formContext,\n ...textFieldProps\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue: optEmptyVal } = options;\n\n multiple = typeof multiple === 'undefined' ? false : !!multiple;\n\n const emptyValue = multiple ? [] : '';\n const isEmpty = typeof value === 'undefined' || (multiple && value.length < 1) || (!multiple && value === emptyValue);\n\n const _onChange = ({ target: { value } }: ChangeEvent<{ value: string }>) =>\n onChange(enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n return (\n <TextField\n id={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n value={isEmpty ? emptyValue : selectedIndexes}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n placeholder={placeholder}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldProps as TextFieldProps)}\n select // Apply this and the following props after the potential overrides defined in textFieldProps\n InputLabelProps={{\n ...textFieldProps.InputLabelProps,\n shrink: !isEmpty,\n }}\n SelectProps={{\n ...textFieldProps.SelectProps,\n multiple,\n }}\n aria-describedby={ariaDescribedByIds<T>(id)}\n >\n {Array.isArray(enumOptions) &&\n enumOptions.map(({ value, label }, i: number) => {\n const disabled: boolean = Array.isArray(enumDisabled) && enumDisabled.indexOf(value) !== -1;\n return (\n <MenuItem key={i} value={String(i)} disabled={disabled}>\n {label}\n </MenuItem>\n );\n })}\n </TextField>\n );\n}\n","import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps, getTemplate } from '@rjsf/utils';\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 { options, registry } = props;\n const BaseInputTemplate = getTemplate<'BaseInputTemplate', T, S, F>('BaseInputTemplate', registry, options);\n\n let rows: string | number = 5;\n if (typeof options.rows === 'string' || typeof options.rows === 'number') {\n rows = options.rows;\n }\n\n return <BaseInputTemplate {...props} multiline rows={rows} />;\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';\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 };\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","props","_objectWithoutPropertiesLoose","_excluded","_jsx","jsx","IconButton","_extends","title","translateString","TranslatableString","AddItemButton","color","children","AddIcon","ArrayFieldItemTemplate","disabled","hasToolbar","hasCopy","hasMoveDown","hasMoveUp","hasRemove","index","onCopyIndexClick","onDropIndexClick","onReorderClick","readonly","uiSchema","_registry$templates$B","templates","ButtonTemplates","CopyButton","MoveDownButton","MoveUpButton","RemoveButton","btnStyle","flex","paddingLeft","paddingRight","fontWeight","minWidth","_jsxs","Grid","container","alignItems","item","xs","style","overflow","Box","mb","Paper","elevation","p","jsxs","onClick","ArrayFieldTemplate","canAdd","idSchema","items","onAddClick","required","schema","uiOptions","getUiOptions","ArrayFieldDescriptionTemplate","getTemplate","ArrayFieldTitleTemplate","description","map","key","itemProps","justifyContent","mt","className","$id","TYPES_THAT_SHRINK_LABEL","BaseInputTemplate","id","placeholder","type","label","hideLabel","value","onChange","onChangeOverride","onBlur","onFocus","autofocus","options","_props$rawErrors","rawErrors","InputLabelProps","textFieldProps","inputProps","getInputProps","step","min","max","rest","_excluded2","otherProps","examples","list","examplesId","undefined","DisplayInputLabelProps","includes","shrink","_Fragment","TextField","name","labelValue","autoFocus","error","length","target","emptyValue","_ref2","_ref3","ariaDescribedByIds","Array","isArray","concat","example","DescriptionField","Typography","variant","marginTop","ErrorList","errors","ErrorsLabel","List","dense","i","ListItem","ListItemIcon","ErrorIcon","ListItemText","primary","stack","MuiIconButton","icon","size","CopyIcon","fontSize","ArrowDownwardIcon","ArrowUpwardIcon","iconType","RemoveIcon","FieldErrorTemplate","_props$errors","errorId","disablePadding","disableGutters","FormHelperText","FieldHelpTemplate","help","helpId","FieldTemplate","classNames","displayLabel","hidden","onDropPropertyClick","onKeyChange","rawDescription","WrapIfAdditionalTemplate","display","FormControl","fullWidth","ObjectFieldTemplate","properties","formData","TitleFieldTemplate","DescriptionFieldTemplate","titleId","descriptionId","spacing","element","content","marginBottom","canExpand","SubmitButton","_getSubmitButtonOptio","getSubmitButtonOptions","_getSubmitButtonOptio2","norender","Button","submitText","TitleField","Divider","keyLabel","KeyLabel","ADDITIONAL_PROPERTY_FLAG","InputLabel","Input","defaultValue","generateTemplates","ErrorListTemplate","Templates","CheckboxWidget","_options$description","_props$label","schemaRequiresTrueValue","FormControlLabel","control","Checkbox","checked","Boolean","_","CheckboxesWidget","enumOptions","enumDisabled","inline","checkboxesValues","_onChange","enumOptionsSelectValue","enumOptionsDeselectValue","_onBlur","enumOptionsValueForIndex","_onFocus","_ref4","FormLabel","htmlFor","FormGroup","row","option","enumOptionsIsSelected","itemDisabled","indexOf","checkbox","optionId","RadioWidget","_enumOptionsIndexForV","selectedIndex","enumOptionsIndexForValue","RadioGroup","Radio","String","RangeWidget","sliderProps","rangeSpec","Slider","valueLabelDisplay","SelectWidget","multiple","_ref$rawErrors","optEmptyVal","isEmpty","selectedIndexes","select","SelectProps","_ref5","MenuItem","TextareaWidget","rows","multiline","generateWidgets","Widgets","generateTheme","widgets","Theme","generateForm","withTheme","MuiForm"],"mappings":"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"}
|
package/dist/mui.esm.js
CHANGED
|
@@ -2,7 +2,7 @@ import { withTheme } from '@rjsf/core';
|
|
|
2
2
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
3
3
|
import AddIcon from '@mui/icons-material/Add';
|
|
4
4
|
import IconButton from '@mui/material/IconButton';
|
|
5
|
-
import { TranslatableString, getUiOptions, getTemplate, getInputProps, examplesId, ariaDescribedByIds, errorId, helpId, titleId, descriptionId, canExpand, getSubmitButtonOptions, ADDITIONAL_PROPERTY_FLAG, schemaRequiresTrueValue, enumOptionsIsSelected, optionId, enumOptionsSelectValue, enumOptionsDeselectValue, enumOptionsValueForIndex, enumOptionsIndexForValue, rangeSpec } from '@rjsf/utils';
|
|
5
|
+
import { TranslatableString, getUiOptions, getTemplate, getInputProps, examplesId, labelValue, ariaDescribedByIds, errorId, helpId, titleId, descriptionId, canExpand, getSubmitButtonOptions, ADDITIONAL_PROPERTY_FLAG, schemaRequiresTrueValue, enumOptionsIsSelected, optionId, enumOptionsSelectValue, enumOptionsDeselectValue, enumOptionsValueForIndex, enumOptionsIndexForValue, rangeSpec } from '@rjsf/utils';
|
|
6
6
|
import Box from '@mui/material/Box';
|
|
7
7
|
import Grid from '@mui/material/Grid';
|
|
8
8
|
import Paper from '@mui/material/Paper';
|
|
@@ -223,7 +223,7 @@ function ArrayFieldTemplate(props) {
|
|
|
223
223
|
});
|
|
224
224
|
}
|
|
225
225
|
|
|
226
|
-
var _excluded$2 = ["id", "name", "placeholder", "required", "readonly", "disabled", "type", "label", "value", "onChange", "onChangeOverride", "onBlur", "onFocus", "autofocus", "options", "schema", "uiSchema", "rawErrors", "formContext", "registry", "InputLabelProps"],
|
|
226
|
+
var _excluded$2 = ["id", "name", "placeholder", "required", "readonly", "disabled", "type", "label", "hideLabel", "value", "onChange", "onChangeOverride", "onBlur", "onFocus", "autofocus", "options", "schema", "uiSchema", "rawErrors", "formContext", "registry", "InputLabelProps"],
|
|
227
227
|
_excluded2$1 = ["step", "min", "max"];
|
|
228
228
|
var TYPES_THAT_SHRINK_LABEL = ['date', 'datetime-local', 'file', 'time'];
|
|
229
229
|
/** The `BaseInputTemplate` is the template to use to render the basic `<input>` component for the `core` theme.
|
|
@@ -240,6 +240,7 @@ function BaseInputTemplate(props) {
|
|
|
240
240
|
disabled = props.disabled,
|
|
241
241
|
type = props.type,
|
|
242
242
|
label = props.label,
|
|
243
|
+
hideLabel = props.hideLabel,
|
|
243
244
|
value = props.value,
|
|
244
245
|
onChange = props.onChange,
|
|
245
246
|
onChangeOverride = props.onChangeOverride,
|
|
@@ -248,10 +249,8 @@ function BaseInputTemplate(props) {
|
|
|
248
249
|
autofocus = props.autofocus,
|
|
249
250
|
options = props.options,
|
|
250
251
|
schema = props.schema,
|
|
251
|
-
uiSchema = props.uiSchema,
|
|
252
252
|
_props$rawErrors = props.rawErrors,
|
|
253
253
|
rawErrors = _props$rawErrors === void 0 ? [] : _props$rawErrors,
|
|
254
|
-
registry = props.registry,
|
|
255
254
|
InputLabelProps = props.InputLabelProps,
|
|
256
255
|
textFieldProps = _objectWithoutPropertiesLoose(props, _excluded$2);
|
|
257
256
|
var inputProps = getInputProps(schema, type, options);
|
|
@@ -281,8 +280,6 @@ function BaseInputTemplate(props) {
|
|
|
281
280
|
var value = _ref3.target.value;
|
|
282
281
|
return onFocus(id, value);
|
|
283
282
|
};
|
|
284
|
-
var schemaUtils = registry.schemaUtils;
|
|
285
|
-
var displayLabel = schemaUtils.getDisplayLabel(schema, uiSchema);
|
|
286
283
|
var DisplayInputLabelProps = TYPES_THAT_SHRINK_LABEL.includes(type) ? _extends({}, InputLabelProps, {
|
|
287
284
|
shrink: true
|
|
288
285
|
}) : InputLabelProps;
|
|
@@ -291,7 +288,7 @@ function BaseInputTemplate(props) {
|
|
|
291
288
|
id: id,
|
|
292
289
|
name: id,
|
|
293
290
|
placeholder: placeholder,
|
|
294
|
-
label:
|
|
291
|
+
label: labelValue(label || undefined, hideLabel, false),
|
|
295
292
|
autoFocus: autofocus,
|
|
296
293
|
required: required,
|
|
297
294
|
disabled: disabled || readonly
|
|
@@ -556,16 +553,16 @@ function ObjectFieldTemplate(props) {
|
|
|
556
553
|
// Button templates are not overridden in the uiSchema
|
|
557
554
|
var AddButton = registry.templates.ButtonTemplates.AddButton;
|
|
558
555
|
return jsxs(Fragment, {
|
|
559
|
-
children: [
|
|
556
|
+
children: [title && jsx(TitleFieldTemplate, {
|
|
560
557
|
id: titleId(idSchema),
|
|
561
558
|
title: title,
|
|
562
559
|
required: required,
|
|
563
560
|
schema: schema,
|
|
564
561
|
uiSchema: uiSchema,
|
|
565
562
|
registry: registry
|
|
566
|
-
}),
|
|
563
|
+
}), description && jsx(DescriptionFieldTemplate, {
|
|
567
564
|
id: descriptionId(idSchema),
|
|
568
|
-
description:
|
|
565
|
+
description: description,
|
|
569
566
|
schema: schema,
|
|
570
567
|
uiSchema: uiSchema,
|
|
571
568
|
registry: registry
|
|
@@ -762,16 +759,23 @@ var Templates = /*#__PURE__*/generateTemplates();
|
|
|
762
759
|
* @param props - The `WidgetProps` for this component
|
|
763
760
|
*/
|
|
764
761
|
function CheckboxWidget(props) {
|
|
762
|
+
var _options$description;
|
|
765
763
|
var schema = props.schema,
|
|
766
764
|
id = props.id,
|
|
767
765
|
value = props.value,
|
|
768
766
|
disabled = props.disabled,
|
|
769
767
|
readonly = props.readonly,
|
|
770
|
-
label = props.label,
|
|
768
|
+
_props$label = props.label,
|
|
769
|
+
label = _props$label === void 0 ? '' : _props$label,
|
|
770
|
+
hideLabel = props.hideLabel,
|
|
771
771
|
autofocus = props.autofocus,
|
|
772
772
|
onChange = props.onChange,
|
|
773
773
|
onBlur = props.onBlur,
|
|
774
|
-
onFocus = props.onFocus
|
|
774
|
+
onFocus = props.onFocus,
|
|
775
|
+
registry = props.registry,
|
|
776
|
+
options = props.options,
|
|
777
|
+
uiSchema = props.uiSchema;
|
|
778
|
+
var DescriptionFieldTemplate = getTemplate('DescriptionFieldTemplate', registry, options);
|
|
775
779
|
// Because an unchecked checkbox will cause html5 validation to fail, only add
|
|
776
780
|
// the "required" attribute if the field value must be "true", due to the
|
|
777
781
|
// "const" or "enum" keywords
|
|
@@ -787,20 +791,29 @@ function CheckboxWidget(props) {
|
|
|
787
791
|
var value = _ref2.target.value;
|
|
788
792
|
return onFocus(id, value);
|
|
789
793
|
};
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
794
|
+
var description = (_options$description = options.description) != null ? _options$description : schema.description;
|
|
795
|
+
return jsxs(Fragment, {
|
|
796
|
+
children: [!hideLabel && !!description && jsx(DescriptionFieldTemplate, {
|
|
797
|
+
id: descriptionId(id),
|
|
798
|
+
description: description,
|
|
799
|
+
schema: schema,
|
|
800
|
+
uiSchema: uiSchema,
|
|
801
|
+
registry: registry
|
|
802
|
+
}), jsx(FormControlLabel, {
|
|
803
|
+
control: jsx(Checkbox, {
|
|
804
|
+
id: id,
|
|
805
|
+
name: id,
|
|
806
|
+
checked: typeof value === 'undefined' ? false : Boolean(value),
|
|
807
|
+
required: required,
|
|
808
|
+
disabled: disabled || readonly,
|
|
809
|
+
autoFocus: autofocus,
|
|
810
|
+
onChange: _onChange,
|
|
811
|
+
onBlur: _onBlur,
|
|
812
|
+
onFocus: _onFocus,
|
|
813
|
+
"aria-describedby": ariaDescribedByIds(id)
|
|
814
|
+
}),
|
|
815
|
+
label: labelValue(label, hideLabel, false)
|
|
816
|
+
})]
|
|
804
817
|
});
|
|
805
818
|
}
|
|
806
819
|
|
|
@@ -810,8 +823,8 @@ function CheckboxWidget(props) {
|
|
|
810
823
|
* @param props - The `WidgetProps` for this component
|
|
811
824
|
*/
|
|
812
825
|
function CheckboxesWidget(_ref) {
|
|
813
|
-
var
|
|
814
|
-
|
|
826
|
+
var label = _ref.label,
|
|
827
|
+
hideLabel = _ref.hideLabel,
|
|
815
828
|
id = _ref.id,
|
|
816
829
|
disabled = _ref.disabled,
|
|
817
830
|
options = _ref.options,
|
|
@@ -846,11 +859,11 @@ function CheckboxesWidget(_ref) {
|
|
|
846
859
|
return onFocus(id, enumOptionsValueForIndex(value, enumOptions, emptyValue));
|
|
847
860
|
};
|
|
848
861
|
return jsxs(Fragment, {
|
|
849
|
-
children: [jsx(FormLabel, {
|
|
862
|
+
children: [labelValue(jsx(FormLabel, {
|
|
850
863
|
required: required,
|
|
851
864
|
htmlFor: id,
|
|
852
|
-
children: label ||
|
|
853
|
-
}), jsx(FormGroup, {
|
|
865
|
+
children: label || undefined
|
|
866
|
+
}), hideLabel), jsx(FormGroup, {
|
|
854
867
|
id: id,
|
|
855
868
|
row: !!inline,
|
|
856
869
|
children: Array.isArray(enumOptions) && enumOptions.map(function (option, index) {
|
|
@@ -882,14 +895,15 @@ function CheckboxesWidget(_ref) {
|
|
|
882
895
|
* @param props - The `WidgetProps` for this component
|
|
883
896
|
*/
|
|
884
897
|
function RadioWidget(_ref) {
|
|
898
|
+
var _enumOptionsIndexForV;
|
|
885
899
|
var id = _ref.id,
|
|
886
|
-
schema = _ref.schema,
|
|
887
900
|
options = _ref.options,
|
|
888
901
|
value = _ref.value,
|
|
889
902
|
required = _ref.required,
|
|
890
903
|
disabled = _ref.disabled,
|
|
891
904
|
readonly = _ref.readonly,
|
|
892
905
|
label = _ref.label,
|
|
906
|
+
hideLabel = _ref.hideLabel,
|
|
893
907
|
onChange = _ref.onChange,
|
|
894
908
|
onBlur = _ref.onBlur,
|
|
895
909
|
onFocus = _ref.onFocus;
|
|
@@ -908,13 +922,13 @@ function RadioWidget(_ref) {
|
|
|
908
922
|
return onFocus(id, enumOptionsValueForIndex(value, enumOptions, emptyValue));
|
|
909
923
|
};
|
|
910
924
|
var row = options ? options.inline : false;
|
|
911
|
-
var selectedIndex = enumOptionsIndexForValue(value, enumOptions);
|
|
925
|
+
var selectedIndex = (_enumOptionsIndexForV = enumOptionsIndexForValue(value, enumOptions)) != null ? _enumOptionsIndexForV : null;
|
|
912
926
|
return jsxs(Fragment, {
|
|
913
|
-
children: [jsx(FormLabel, {
|
|
927
|
+
children: [labelValue(jsx(FormLabel, {
|
|
914
928
|
required: required,
|
|
915
929
|
htmlFor: id,
|
|
916
|
-
children: label ||
|
|
917
|
-
}), jsx(RadioGroup, {
|
|
930
|
+
children: label || undefined
|
|
931
|
+
}), hideLabel), jsx(RadioGroup, {
|
|
918
932
|
id: id,
|
|
919
933
|
name: id,
|
|
920
934
|
value: selectedIndex,
|
|
@@ -957,6 +971,7 @@ function RangeWidget(props) {
|
|
|
957
971
|
onChange = props.onChange,
|
|
958
972
|
required = props.required,
|
|
959
973
|
label = props.label,
|
|
974
|
+
hideLabel = props.hideLabel,
|
|
960
975
|
id = props.id;
|
|
961
976
|
var sliderProps = _extends({
|
|
962
977
|
value: value,
|
|
@@ -976,11 +991,11 @@ function RangeWidget(props) {
|
|
|
976
991
|
return onFocus(id, value);
|
|
977
992
|
};
|
|
978
993
|
return jsxs(Fragment, {
|
|
979
|
-
children: [jsx(FormLabel, {
|
|
994
|
+
children: [labelValue(jsx(FormLabel, {
|
|
980
995
|
required: required,
|
|
981
996
|
htmlFor: id,
|
|
982
|
-
children: label ||
|
|
983
|
-
}), jsx(Slider, _extends({
|
|
997
|
+
children: label || undefined
|
|
998
|
+
}), hideLabel), jsx(Slider, _extends({
|
|
984
999
|
disabled: disabled || readonly,
|
|
985
1000
|
onChange: _onChange,
|
|
986
1001
|
onBlur: _onBlur,
|
|
@@ -992,17 +1007,17 @@ function RangeWidget(props) {
|
|
|
992
1007
|
});
|
|
993
1008
|
}
|
|
994
1009
|
|
|
995
|
-
var _excluded = ["schema", "id", "name", "options", "label", "required", "disabled", "placeholder", "readonly", "value", "multiple", "autofocus", "onChange", "onBlur", "onFocus", "rawErrors", "registry", "uiSchema", "hideError", "formContext"];
|
|
1010
|
+
var _excluded = ["schema", "id", "name", "options", "label", "hideLabel", "required", "disabled", "placeholder", "readonly", "value", "multiple", "autofocus", "onChange", "onBlur", "onFocus", "rawErrors", "registry", "uiSchema", "hideError", "formContext"];
|
|
996
1011
|
/** The `SelectWidget` is a widget for rendering dropdowns.
|
|
997
1012
|
* It is typically used with string properties constrained with enum options.
|
|
998
1013
|
*
|
|
999
1014
|
* @param props - The `WidgetProps` for this component
|
|
1000
1015
|
*/
|
|
1001
1016
|
function SelectWidget(_ref) {
|
|
1002
|
-
var
|
|
1003
|
-
id = _ref.id,
|
|
1017
|
+
var id = _ref.id,
|
|
1004
1018
|
options = _ref.options,
|
|
1005
1019
|
label = _ref.label,
|
|
1020
|
+
hideLabel = _ref.hideLabel,
|
|
1006
1021
|
required = _ref.required,
|
|
1007
1022
|
disabled = _ref.disabled,
|
|
1008
1023
|
placeholder = _ref.placeholder,
|
|
@@ -1038,7 +1053,7 @@ function SelectWidget(_ref) {
|
|
|
1038
1053
|
return jsx(TextField, _extends({
|
|
1039
1054
|
id: id,
|
|
1040
1055
|
name: id,
|
|
1041
|
-
label: label ||
|
|
1056
|
+
label: labelValue(label || undefined, hideLabel, false),
|
|
1042
1057
|
value: isEmpty ? emptyValue : selectedIndexes,
|
|
1043
1058
|
required: required,
|
|
1044
1059
|
disabled: disabled || readonly,
|