@rjsf/mui 6.1.1 → 6.2.3
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/index.cjs +33 -2
- package/dist/index.cjs.map +3 -3
- package/dist/mui.esm.js +33 -2
- package/dist/mui.esm.js.map +3 -3
- package/dist/mui.umd.js +34 -6
- package/lib/BaseInputTemplate/BaseInputTemplate.js +13 -1
- package/lib/BaseInputTemplate/BaseInputTemplate.js.map +1 -1
- package/lib/IconButton/IconButton.d.ts +1 -0
- package/lib/IconButton/IconButton.js +6 -0
- package/lib/IconButton/IconButton.js.map +1 -1
- package/lib/Templates/Templates.js +2 -1
- package/lib/Templates/Templates.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/src/BaseInputTemplate/BaseInputTemplate.tsx +21 -1
- package/src/IconButton/IconButton.tsx +17 -0
- package/src/Templates/Templates.ts +2 -1
package/dist/index.cjs
CHANGED
|
@@ -162,7 +162,9 @@ function ArrayFieldTemplate(props) {
|
|
|
162
162
|
}
|
|
163
163
|
|
|
164
164
|
// src/BaseInputTemplate/BaseInputTemplate.tsx
|
|
165
|
+
var import_react = require("react");
|
|
165
166
|
var import_TextField = __toESM(require("@mui/material/TextField"), 1);
|
|
167
|
+
var import_InputAdornment = __toESM(require("@mui/material/InputAdornment"), 1);
|
|
166
168
|
var import_utils4 = require("@rjsf/utils");
|
|
167
169
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
168
170
|
var TYPES_THAT_SHRINK_LABEL = ["date", "datetime-local", "file", "time"];
|
|
@@ -195,6 +197,7 @@ function BaseInputTemplate(props) {
|
|
|
195
197
|
InputLabelProps,
|
|
196
198
|
...textFieldProps
|
|
197
199
|
} = props;
|
|
200
|
+
const { ClearButton: ClearButton2 } = registry.templates.ButtonTemplates;
|
|
198
201
|
const inputProps = (0, import_utils4.getInputProps)(schema, type, options);
|
|
199
202
|
const { step, min, max, accept, ...rest } = inputProps;
|
|
200
203
|
const htmlInputProps = { step, min, max, accept, ...schema.examples ? { list: (0, import_utils4.examplesId)(id) } : void 0 };
|
|
@@ -205,6 +208,14 @@ function BaseInputTemplate(props) {
|
|
|
205
208
|
...InputLabelProps,
|
|
206
209
|
shrink: true
|
|
207
210
|
} : InputLabelProps;
|
|
211
|
+
const _onClear = (0, import_react.useCallback)(
|
|
212
|
+
(e) => {
|
|
213
|
+
e.preventDefault();
|
|
214
|
+
e.stopPropagation();
|
|
215
|
+
onChange(options.emptyValue ?? "");
|
|
216
|
+
},
|
|
217
|
+
[onChange, options.emptyValue]
|
|
218
|
+
);
|
|
208
219
|
return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
|
|
209
220
|
/* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
210
221
|
import_TextField.default,
|
|
@@ -224,7 +235,11 @@ function BaseInputTemplate(props) {
|
|
|
224
235
|
onBlur: _onBlur,
|
|
225
236
|
onFocus: _onFocus,
|
|
226
237
|
...textFieldProps,
|
|
227
|
-
"aria-describedby": (0, import_utils4.ariaDescribedByIds)(id, !!schema.examples)
|
|
238
|
+
"aria-describedby": (0, import_utils4.ariaDescribedByIds)(id, !!schema.examples),
|
|
239
|
+
InputProps: {
|
|
240
|
+
...textFieldProps.InputProps,
|
|
241
|
+
endAdornment: options.allowClearTextInputs && value && !readonly && !disabled ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_InputAdornment.default, { position: "end", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(ClearButton2, { registry, onClick: _onClear }) }) : void 0
|
|
242
|
+
}
|
|
228
243
|
}
|
|
229
244
|
),
|
|
230
245
|
Array.isArray(schema.examples) && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("datalist", { id: (0, import_utils4.examplesId)(id), children: schema.examples.concat(schema.default && !schema.examples.includes(schema.default) ? [schema.default] : []).map((example) => {
|
|
@@ -278,6 +293,7 @@ var import_ArrowDownward = __toESM(require("@mui/icons-material/ArrowDownward"),
|
|
|
278
293
|
var import_ArrowUpward = __toESM(require("@mui/icons-material/ArrowUpward"), 1);
|
|
279
294
|
var import_ContentCopy = __toESM(require("@mui/icons-material/ContentCopy"), 1);
|
|
280
295
|
var import_Remove = __toESM(require("@mui/icons-material/Remove"), 1);
|
|
296
|
+
var import_Clear = __toESM(require("@mui/icons-material/Clear"), 1);
|
|
281
297
|
var import_utils6 = require("@rjsf/utils");
|
|
282
298
|
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
283
299
|
function MuiIconButton(props) {
|
|
@@ -338,6 +354,20 @@ function RemoveButton(props) {
|
|
|
338
354
|
}
|
|
339
355
|
);
|
|
340
356
|
}
|
|
357
|
+
function ClearButton(props) {
|
|
358
|
+
const { iconType, ...otherProps } = props;
|
|
359
|
+
const {
|
|
360
|
+
registry: { translateString }
|
|
361
|
+
} = otherProps;
|
|
362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
363
|
+
MuiIconButton,
|
|
364
|
+
{
|
|
365
|
+
title: translateString(import_utils6.TranslatableString.ClearButton),
|
|
366
|
+
...otherProps,
|
|
367
|
+
icon: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_Clear.default, { fontSize: iconType === "default" ? void 0 : "small" })
|
|
368
|
+
}
|
|
369
|
+
);
|
|
370
|
+
}
|
|
341
371
|
|
|
342
372
|
// src/FieldErrorTemplate/FieldErrorTemplate.tsx
|
|
343
373
|
var import_ListItem2 = __toESM(require("@mui/material/ListItem"), 1);
|
|
@@ -682,7 +712,8 @@ function generateTemplates() {
|
|
|
682
712
|
MoveDownButton,
|
|
683
713
|
MoveUpButton,
|
|
684
714
|
RemoveButton,
|
|
685
|
-
SubmitButton
|
|
715
|
+
SubmitButton,
|
|
716
|
+
ClearButton
|
|
686
717
|
},
|
|
687
718
|
DescriptionFieldTemplate: DescriptionField,
|
|
688
719
|
ErrorListTemplate: ErrorList,
|
package/dist/index.cjs.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/index.ts", "../src/MuiForm/MuiForm.tsx", "../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/GridTemplate/GridTemplate.tsx", "../src/MultiSchemaFieldTemplate/MultiSchemaFieldTemplate.tsx", "../src/ObjectFieldTemplate/ObjectFieldTemplate.tsx", "../src/OptionalDataControlsTemplate/OptionalDataControlsTemplate.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"],
|
|
4
|
-
"sourcesContent": ["import MuiForm from './MuiForm/MuiForm';\n\nexport { default as Form, generateForm } from './MuiForm';\nexport { default as Templates, generateTemplates } from './Templates';\nexport { default as Theme, generateTheme } from './Theme';\nexport { default as Widgets, generateWidgets } from './Widgets';\n\nexport default MuiForm;\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", "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 {\n ArrayFieldItemTemplateProps,\n FormContextType,\n getUiOptions,\n getTemplate,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldItemTemplateProps` props for the component\n */\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldItemTemplateProps<T, S, F>) {\n const { children, buttonsProps, hasDescription, hasToolbar, uiSchema, registry } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldItemButtonsTemplate = getTemplate<'ArrayFieldItemButtonsTemplate', T, S, F>(\n 'ArrayFieldItemButtonsTemplate',\n registry,\n uiOptions,\n );\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 size={{ xs: 8, sm: 9, md: 10, lg: 11, xl: 11.25 }} 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 sx={{ mt: hasDescription ? -5 : -1.5 }}>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} style={btnStyle} />\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 FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n buttonId,\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 `ArrayFieldTemplateProps` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n canAdd,\n disabled,\n fieldPathId,\n uiSchema,\n items,\n optionalDataControl,\n onAddClick,\n readonly,\n registry,\n required,\n schema,\n 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 ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions,\n );\n const showOptionalDataControlInTitle = !readonly && !disabled;\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 fieldPathId={fieldPathId}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n required={required}\n registry={registry}\n optionalDataControl={showOptionalDataControlInTitle ? optionalDataControl : undefined}\n />\n <ArrayFieldDescriptionTemplate\n fieldPathId={fieldPathId}\n description={uiOptions.description || schema.description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {items}\n {canAdd && (\n <Grid container justifyContent='flex-end'>\n <Grid>\n <Box mt={2}>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-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 </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 htmlName,\n placeholder,\n required,\n readonly,\n disabled,\n type,\n label,\n hideLabel,\n hideError,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n rawErrors = [],\n errorSchema,\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, accept, ...rest } = inputProps;\n const htmlInputProps = { step, min, max, accept, ...(schema.examples ? { list: examplesId(id) } : undefined) };\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.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={htmlName || id}\n placeholder={placeholder}\n label={labelValue(label || undefined, hideLabel, undefined)}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n slotProps={{ htmlInput: htmlInputProps, inputLabel: DisplayInputLabelProps }}\n {...rest}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldProps as TextFieldProps)}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n {Array.isArray(schema.examples) && (\n <datalist id={examplesId(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';\nimport { RichDescription } from '@rjsf/core';\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, registry, uiSchema } = props;\n if (description) {\n return (\n <Typography id={id} variant='subtitle2' style={{ marginTop: '5px' }}>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\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 = [], fieldPathId } = props;\n if (errors.length === 0) {\n return null;\n }\n const id = errorId(fieldPathId);\n\n return (\n <List id={id} dense={true} disablePadding={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i} disableGutters={true}>\n <FormHelperText component='div' id={`${id}-${i}`}>\n {error}\n </FormHelperText>\n </ListItem>\n );\n })}\n </List>\n );\n}\n", "import { RichHelp } from '@rjsf/core';\nimport { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport FormHelperText from '@mui/material/FormHelperText';\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 { fieldPathId, help, uiSchema, registry } = props;\n if (!help) {\n return null;\n }\n\n return (\n <FormHelperText component='div' id={helpId(fieldPathId)} style={{ marginTop: '5px' }}>\n <RichHelp help={help} registry={registry} uiSchema={uiSchema} />\n </FormHelperText>\n );\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 onKeyRename,\n onKeyRenameBlur,\n onRemoveProperty,\n readonly,\n required,\n rawErrors = [],\n errors,\n help,\n description,\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\n const isCheckbox = uiOptions.widget === 'checkbox';\n\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n displayLabel={displayLabel}\n rawDescription={rawDescription}\n onKeyRename={onKeyRename}\n onKeyRenameBlur={onKeyRenameBlur}\n onRemoveProperty={onRemoveProperty}\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 && !isCheckbox && rawDescription ? (\n <Typography variant='caption' color='textSecondary'>\n {description}\n </Typography>\n ) : null}\n {errors}\n {help}\n </FormControl>\n </WrapIfAdditionalTemplate>\n );\n}\n", "import Grid from '@mui/material/Grid';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for mui, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Grid`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the mui grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, ...rest } = props;\n return (\n <Grid container={!column} {...rest}>\n {children}\n </Grid>\n );\n}\n", "import Box from '@mui/material/Box';\nimport { FormContextType, MultiSchemaFieldTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport FormControl from '@mui/material/FormControl';\n\nexport default function MultiSchemaFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: MultiSchemaFieldTemplateProps<T, S, F>) {\n const { optionSchemaField, selector } = props;\n\n return (\n <Box sx={{ mb: 2 }}>\n <FormControl fullWidth sx={{ mb: 2 }}>\n {selector}\n </FormControl>\n {optionSchemaField}\n </Box>\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 buttonId,\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 fieldPathId,\n schema,\n formData,\n optionalDataControl,\n onAddProperty,\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 const showOptionalDataControlInTitle = !readonly && !disabled;\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(fieldPathId)}\n title={title}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n optionalDataControl={showOptionalDataControlInTitle ? optionalDataControl : undefined}\n />\n )}\n {description && (\n <DescriptionFieldTemplate\n id={descriptionId(fieldPathId)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Grid container spacing={2} style={{ marginTop: '10px' }}>\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\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 size={{ xs: 12 }} key={index} style={{ marginBottom: '10px' }}>\n {element.content}\n </Grid>\n ),\n )}\n </Grid>\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid container justifyContent='flex-end'>\n <Grid>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-object-property-expand'\n onClick={onAddProperty}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\n )}\n </>\n );\n}\n", "import { FormContextType, OptionalDataControlsTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport IconButton, { RemoveButton } from '../IconButton';\nimport AddIcon from '@mui/icons-material/Add';\n\n/** The OptionalDataControlsTemplate renders one of three different states. If\n * there is an `onAddClick()` function, it renders the \"Add\" button. If there is\n * an `onRemoveClick()` function, it renders the \"Remove\" button. Otherwise it\n * renders the \"No data found\" section. All of them use the `label` as either\n * the `title` of buttons or simply outputting it.\n *\n * @param props - The `OptionalDataControlsTemplateProps` for the template\n */\nexport default function OptionalDataControlsTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: OptionalDataControlsTemplateProps<T, S, F>) {\n const { id, registry, label, onAddClick, onRemoveClick } = props;\n if (onAddClick) {\n return (\n <IconButton\n id={id}\n registry={registry}\n className='rjsf-add-optional-data'\n onClick={onAddClick}\n title={label}\n icon={<AddIcon fontSize='small' />}\n />\n );\n } else if (onRemoveClick) {\n return (\n <RemoveButton\n id={id}\n registry={registry}\n className='rjsf-remove-optional-data'\n onClick={onRemoveClick}\n title={label}\n />\n );\n }\n return <em id={id}>{label}</em>;\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 Grid from '@mui/material/Grid';\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 optionalDataControl,\n}: TitleFieldProps<T, S, F>) {\n let heading = <Typography variant='h5'>{title}</Typography>;\n if (optionalDataControl) {\n heading = (\n <Grid container={true} spacing={0}>\n <Grid size='grow'>{heading}</Grid>\n <Grid justifyContent='flex-end'>{optionalDataControl}</Grid>\n </Grid>\n );\n }\n return (\n <Box id={id} mb={1} mt={1}>\n {heading}\n <Divider />\n </Box>\n );\n}\n", "import { CSSProperties } from 'react';\nimport Grid from '@mui/material/Grid';\nimport TextField from '@mui/material/TextField';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n buttonId,\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 displayLabel,\n onKeyRenameBlur,\n onRemoveProperty,\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 return (\n <Grid container key={`${id}-key`} alignItems='flex-start' spacing={2} className={classNames} style={style}>\n <Grid size={5.5}>\n <TextField\n fullWidth={true}\n required={required}\n label={displayLabel ? keyLabel : undefined}\n defaultValue={label}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? onKeyRenameBlur : undefined}\n type='text'\n />\n </Grid>\n <Grid size={5.5}>{children}</Grid>\n <Grid sx={{ mt: 1.5 }}>\n <RemoveButton\n id={buttonId(id, 'remove')}\n className='rjsf-object-property-remove'\n iconType='default'\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onRemoveProperty}\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 GridTemplate from '../GridTemplate';\nimport MultiSchemaFieldTemplate from '../MultiSchemaFieldTemplate';\nimport ObjectFieldTemplate from '../ObjectFieldTemplate';\nimport OptionalDataControlsTemplate from '../OptionalDataControlsTemplate';\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 GridTemplate,\n MultiSchemaFieldTemplate,\n ObjectFieldTemplate,\n OptionalDataControlsTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n };\n}\n\nexport default generateTemplates();\n", "import 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 htmlName,\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: React.FocusEventHandler<HTMLButtonElement> = () => onBlur(id, value);\n const _onFocus: React.FocusEventHandler<HTMLButtonElement> = () => onFocus(id, value);\n const description = options.description ?? schema.description;\n\n return (\n <>\n {!hideLabel && description && (\n <DescriptionFieldTemplate\n id={descriptionId(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={htmlName || 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(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 htmlName,\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 }: FocusEvent<HTMLButtonElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n const _onFocus = ({ target }: FocusEvent<HTMLButtonElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.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={htmlName || 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(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 htmlName,\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 }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.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={htmlName || id}\n value={selectedIndex}\n row={row as boolean}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds(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={htmlName || 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 }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.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(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 htmlName,\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 errorSchema,\n rawErrors = [],\n registry,\n uiSchema,\n hideError,\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 }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, optEmptyVal));\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n const { InputLabelProps, SelectProps, autocomplete, ...textFieldRemainingProps } = textFieldProps;\n const showPlaceholderOption = !multiple && schema.default === undefined;\n\n return (\n <TextField\n id={id}\n name={htmlName || id}\n label={labelValue(label || undefined, hideLabel, undefined)}\n value={!isEmpty && typeof selectedIndexes !== 'undefined' ? selectedIndexes : emptyValue}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n autoComplete={autocomplete}\n placeholder={placeholder}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldRemainingProps as TextFieldProps)}\n select // Apply this and the following props after the potential overrides defined in textFieldProps\n InputLabelProps={{\n ...InputLabelProps,\n shrink: !isEmpty,\n }}\n SelectProps={{\n ...SelectProps,\n multiple,\n }}\n aria-describedby={ariaDescribedByIds(id)}\n >\n {showPlaceholderOption && <MenuItem value=''>{placeholder}</MenuItem>}\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"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["import_core", "IconButton", "AddIcon", "import_utils", "import_jsx_runtime", "Grid", "Box", "Paper", "import_Box", "import_Grid", "import_Paper", "import_utils", "import_jsx_runtime", "AddButton", "Paper", "Box", "Grid", "import_utils", "import_jsx_runtime", "value", "TextField", "import_jsx_runtime", "Typography", "import_Box", "import_Paper", "import_Typography", "import_utils", "import_jsx_runtime", "Paper", "Box", "Typography", "List", "ListItem", "ListItemIcon", "ErrorIcon", "ListItemText", "import_IconButton", "import_utils", "import_jsx_runtime", "IconButton", "CopyIcon", "ArrowDownwardIcon", "ArrowUpwardIcon", "RemoveIcon", "import_ListItem", "import_List", "import_utils", "import_jsx_runtime", "List", "ListItem", "FormHelperText", "import_core", "import_utils", "import_FormHelperText", "import_jsx_runtime", "FormHelperText", "import_Typography", "import_utils", "import_jsx_runtime", "WrapIfAdditionalTemplate", "FormControl", "Typography", "import_Grid", "import_jsx_runtime", "Grid", "import_Box", "import_FormControl", "import_jsx_runtime", "Box", "FormControl", "import_Grid", "import_utils", "import_jsx_runtime", "AddButton", "Grid", "import_Add", "import_jsx_runtime", "AddIcon", "import_Box", "import_utils", "import_jsx_runtime", "Box", "Button", "import_Box", "import_Grid", "import_Typography", "import_jsx_runtime", "Typography", "Grid", "Box", "Divider", "import_Grid", "import_TextField", "import_utils", "import_jsx_runtime", "RemoveButton", "Grid", "TextField", "import_utils", "import_jsx_runtime", "FormControlLabel", "Checkbox", "import_Checkbox", "import_FormControlLabel", "import_utils", "import_jsx_runtime", "FormLabel", "FormGroup", "Checkbox", "FormControlLabel", "import_FormControlLabel", "import_FormLabel", "import_utils", "import_jsx_runtime", "value", "FormLabel", "RadioGroup", "FormControlLabel", "Radio", "import_FormLabel", "import_utils", "import_jsx_runtime", "value", "FormLabel", "Slider", "import_TextField", "import_utils", "import_jsx_runtime", "value", "TextField", "MenuItem", "label", "disabled", "import_utils", "import_jsx_runtime", "BaseInputTemplate"]
|
|
4
|
+
"sourcesContent": ["import MuiForm from './MuiForm/MuiForm';\n\nexport { default as Form, generateForm } from './MuiForm';\nexport { default as Templates, generateTemplates } from './Templates';\nexport { default as Theme, generateTheme } from './Theme';\nexport { default as Widgets, generateWidgets } from './Widgets';\n\nexport default MuiForm;\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", "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 {\n ArrayFieldItemTemplateProps,\n FormContextType,\n getUiOptions,\n getTemplate,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldItemTemplateProps` props for the component\n */\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldItemTemplateProps<T, S, F>) {\n const { children, buttonsProps, hasDescription, hasToolbar, uiSchema, registry } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldItemButtonsTemplate = getTemplate<'ArrayFieldItemButtonsTemplate', T, S, F>(\n 'ArrayFieldItemButtonsTemplate',\n registry,\n uiOptions,\n );\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 size={{ xs: 8, sm: 9, md: 10, lg: 11, xl: 11.25 }} 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 sx={{ mt: hasDescription ? -5 : -1.5 }}>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} style={btnStyle} />\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 FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n buttonId,\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 `ArrayFieldTemplateProps` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n canAdd,\n disabled,\n fieldPathId,\n uiSchema,\n items,\n optionalDataControl,\n onAddClick,\n readonly,\n registry,\n required,\n schema,\n 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 ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions,\n );\n const showOptionalDataControlInTitle = !readonly && !disabled;\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 fieldPathId={fieldPathId}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n required={required}\n registry={registry}\n optionalDataControl={showOptionalDataControlInTitle ? optionalDataControl : undefined}\n />\n <ArrayFieldDescriptionTemplate\n fieldPathId={fieldPathId}\n description={uiOptions.description || schema.description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {items}\n {canAdd && (\n <Grid container justifyContent='flex-end'>\n <Grid>\n <Box mt={2}>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-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 </Box>\n </Paper>\n );\n}\n", "import { ChangeEvent, FocusEvent, MouseEvent, useCallback } from 'react';\nimport TextField, { TextFieldProps } from '@mui/material/TextField';\nimport InputAdornment from '@mui/material/InputAdornment';\n\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 htmlName,\n placeholder,\n required,\n readonly,\n disabled,\n type,\n label,\n hideLabel,\n hideError,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n uiSchema,\n rawErrors = [],\n errorSchema,\n registry,\n InputLabelProps,\n ...textFieldProps\n } = props;\n const { ClearButton } = registry.templates.ButtonTemplates;\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, accept, ...rest } = inputProps;\n const htmlInputProps = { step, min, max, accept, ...(schema.examples ? { list: examplesId(id) } : undefined) };\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.value);\n const DisplayInputLabelProps = TYPES_THAT_SHRINK_LABEL.includes(type)\n ? {\n ...InputLabelProps,\n shrink: true,\n }\n : InputLabelProps;\n const _onClear = useCallback(\n (e: MouseEvent) => {\n e.preventDefault();\n e.stopPropagation();\n onChange(options.emptyValue ?? '');\n },\n [onChange, options.emptyValue],\n );\n\n return (\n <>\n <TextField\n id={id}\n name={htmlName || id}\n placeholder={placeholder}\n label={labelValue(label || undefined, hideLabel, undefined)}\n autoFocus={autofocus}\n required={required}\n disabled={disabled || readonly}\n slotProps={{ htmlInput: htmlInputProps, inputLabel: DisplayInputLabelProps }}\n {...rest}\n value={value || value === 0 ? value : ''}\n error={rawErrors.length > 0}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldProps as TextFieldProps)}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n InputProps={{\n ...textFieldProps.InputProps,\n endAdornment:\n options.allowClearTextInputs && value && !readonly && !disabled ? (\n <InputAdornment position='end'>\n <ClearButton registry={registry} onClick={_onClear} />\n </InputAdornment>\n ) : undefined,\n }}\n />\n {Array.isArray(schema.examples) && (\n <datalist id={examplesId(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';\nimport { RichDescription } from '@rjsf/core';\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, registry, uiSchema } = props;\n if (description) {\n return (\n <Typography id={id} variant='subtitle2' style={{ marginTop: '5px' }}>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\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 ClearIcon from '@mui/icons-material/Clear';\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\nexport function ClearButton<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.ClearButton)}\n {...otherProps}\n icon={<ClearIcon 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 = [], fieldPathId } = props;\n if (errors.length === 0) {\n return null;\n }\n const id = errorId(fieldPathId);\n\n return (\n <List id={id} dense={true} disablePadding={true}>\n {errors.map((error, i: number) => {\n return (\n <ListItem key={i} disableGutters={true}>\n <FormHelperText component='div' id={`${id}-${i}`}>\n {error}\n </FormHelperText>\n </ListItem>\n );\n })}\n </List>\n );\n}\n", "import { RichHelp } from '@rjsf/core';\nimport { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport FormHelperText from '@mui/material/FormHelperText';\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 { fieldPathId, help, uiSchema, registry } = props;\n if (!help) {\n return null;\n }\n\n return (\n <FormHelperText component='div' id={helpId(fieldPathId)} style={{ marginTop: '5px' }}>\n <RichHelp help={help} registry={registry} uiSchema={uiSchema} />\n </FormHelperText>\n );\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 onKeyRename,\n onKeyRenameBlur,\n onRemoveProperty,\n readonly,\n required,\n rawErrors = [],\n errors,\n help,\n description,\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\n const isCheckbox = uiOptions.widget === 'checkbox';\n\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n displayLabel={displayLabel}\n rawDescription={rawDescription}\n onKeyRename={onKeyRename}\n onKeyRenameBlur={onKeyRenameBlur}\n onRemoveProperty={onRemoveProperty}\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 && !isCheckbox && rawDescription ? (\n <Typography variant='caption' color='textSecondary'>\n {description}\n </Typography>\n ) : null}\n {errors}\n {help}\n </FormControl>\n </WrapIfAdditionalTemplate>\n );\n}\n", "import Grid from '@mui/material/Grid';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for mui, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Grid`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the mui grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, ...rest } = props;\n return (\n <Grid container={!column} {...rest}>\n {children}\n </Grid>\n );\n}\n", "import Box from '@mui/material/Box';\nimport { FormContextType, MultiSchemaFieldTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport FormControl from '@mui/material/FormControl';\n\nexport default function MultiSchemaFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: MultiSchemaFieldTemplateProps<T, S, F>) {\n const { optionSchemaField, selector } = props;\n\n return (\n <Box sx={{ mb: 2 }}>\n <FormControl fullWidth sx={{ mb: 2 }}>\n {selector}\n </FormControl>\n {optionSchemaField}\n </Box>\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 buttonId,\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 fieldPathId,\n schema,\n formData,\n optionalDataControl,\n onAddProperty,\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 const showOptionalDataControlInTitle = !readonly && !disabled;\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(fieldPathId)}\n title={title}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n optionalDataControl={showOptionalDataControlInTitle ? optionalDataControl : undefined}\n />\n )}\n {description && (\n <DescriptionFieldTemplate\n id={descriptionId(fieldPathId)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Grid container spacing={2} style={{ marginTop: '10px' }}>\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\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 size={{ xs: 12 }} key={index} style={{ marginBottom: '10px' }}>\n {element.content}\n </Grid>\n ),\n )}\n </Grid>\n {canExpand<T, S, F>(schema, uiSchema, formData) && (\n <Grid container justifyContent='flex-end'>\n <Grid>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-object-property-expand'\n onClick={onAddProperty}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Grid>\n </Grid>\n )}\n </>\n );\n}\n", "import { FormContextType, OptionalDataControlsTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport IconButton, { RemoveButton } from '../IconButton';\nimport AddIcon from '@mui/icons-material/Add';\n\n/** The OptionalDataControlsTemplate renders one of three different states. If\n * there is an `onAddClick()` function, it renders the \"Add\" button. If there is\n * an `onRemoveClick()` function, it renders the \"Remove\" button. Otherwise it\n * renders the \"No data found\" section. All of them use the `label` as either\n * the `title` of buttons or simply outputting it.\n *\n * @param props - The `OptionalDataControlsTemplateProps` for the template\n */\nexport default function OptionalDataControlsTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: OptionalDataControlsTemplateProps<T, S, F>) {\n const { id, registry, label, onAddClick, onRemoveClick } = props;\n if (onAddClick) {\n return (\n <IconButton\n id={id}\n registry={registry}\n className='rjsf-add-optional-data'\n onClick={onAddClick}\n title={label}\n icon={<AddIcon fontSize='small' />}\n />\n );\n } else if (onRemoveClick) {\n return (\n <RemoveButton\n id={id}\n registry={registry}\n className='rjsf-remove-optional-data'\n onClick={onRemoveClick}\n title={label}\n />\n );\n }\n return <em id={id}>{label}</em>;\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 Grid from '@mui/material/Grid';\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 optionalDataControl,\n}: TitleFieldProps<T, S, F>) {\n let heading = <Typography variant='h5'>{title}</Typography>;\n if (optionalDataControl) {\n heading = (\n <Grid container={true} spacing={0}>\n <Grid size='grow'>{heading}</Grid>\n <Grid justifyContent='flex-end'>{optionalDataControl}</Grid>\n </Grid>\n );\n }\n return (\n <Box id={id} mb={1} mt={1}>\n {heading}\n <Divider />\n </Box>\n );\n}\n", "import { CSSProperties } from 'react';\nimport Grid from '@mui/material/Grid';\nimport TextField from '@mui/material/TextField';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n buttonId,\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 displayLabel,\n onKeyRenameBlur,\n onRemoveProperty,\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 return (\n <Grid container key={`${id}-key`} alignItems='flex-start' spacing={2} className={classNames} style={style}>\n <Grid size={5.5}>\n <TextField\n fullWidth={true}\n required={required}\n label={displayLabel ? keyLabel : undefined}\n defaultValue={label}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? onKeyRenameBlur : undefined}\n type='text'\n />\n </Grid>\n <Grid size={5.5}>{children}</Grid>\n <Grid sx={{ mt: 1.5 }}>\n <RemoveButton\n id={buttonId(id, 'remove')}\n className='rjsf-object-property-remove'\n iconType='default'\n style={btnStyle}\n disabled={disabled || readonly}\n onClick={onRemoveProperty}\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, ClearButton } from '../IconButton';\nimport FieldErrorTemplate from '../FieldErrorTemplate';\nimport FieldHelpTemplate from '../FieldHelpTemplate';\nimport FieldTemplate from '../FieldTemplate';\nimport GridTemplate from '../GridTemplate';\nimport MultiSchemaFieldTemplate from '../MultiSchemaFieldTemplate';\nimport ObjectFieldTemplate from '../ObjectFieldTemplate';\nimport OptionalDataControlsTemplate from '../OptionalDataControlsTemplate';\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 ClearButton,\n },\n DescriptionFieldTemplate: DescriptionField,\n ErrorListTemplate: ErrorList,\n FieldErrorTemplate,\n FieldHelpTemplate,\n FieldTemplate,\n GridTemplate,\n MultiSchemaFieldTemplate,\n ObjectFieldTemplate,\n OptionalDataControlsTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n };\n}\n\nexport default generateTemplates();\n", "import 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 htmlName,\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: React.FocusEventHandler<HTMLButtonElement> = () => onBlur(id, value);\n const _onFocus: React.FocusEventHandler<HTMLButtonElement> = () => onFocus(id, value);\n const description = options.description ?? schema.description;\n\n return (\n <>\n {!hideLabel && description && (\n <DescriptionFieldTemplate\n id={descriptionId(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={htmlName || 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(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 htmlName,\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 }: FocusEvent<HTMLButtonElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n const _onFocus = ({ target }: FocusEvent<HTMLButtonElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.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={htmlName || 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(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 htmlName,\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 }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.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={htmlName || id}\n value={selectedIndex}\n row={row as boolean}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds(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={htmlName || 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 }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.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(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 htmlName,\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 errorSchema,\n rawErrors = [],\n registry,\n uiSchema,\n hideError,\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 }: FocusEvent<HTMLInputElement>) =>\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, optEmptyVal));\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) =>\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, optEmptyVal));\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n const { InputLabelProps, SelectProps, autocomplete, ...textFieldRemainingProps } = textFieldProps;\n const showPlaceholderOption = !multiple && schema.default === undefined;\n\n return (\n <TextField\n id={id}\n name={htmlName || id}\n label={labelValue(label || undefined, hideLabel, undefined)}\n value={!isEmpty && typeof selectedIndexes !== 'undefined' ? selectedIndexes : emptyValue}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n autoComplete={autocomplete}\n placeholder={placeholder}\n error={rawErrors.length > 0}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n {...(textFieldRemainingProps as TextFieldProps)}\n select // Apply this and the following props after the potential overrides defined in textFieldProps\n InputLabelProps={{\n ...InputLabelProps,\n shrink: !isEmpty,\n }}\n SelectProps={{\n ...SelectProps,\n multiple,\n }}\n aria-describedby={ariaDescribedByIds(id)}\n >\n {showPlaceholderOption && <MenuItem value=''>{placeholder}</MenuItem>}\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"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["import_core", "IconButton", "AddIcon", "import_utils", "import_jsx_runtime", "Grid", "Box", "Paper", "import_Box", "import_Grid", "import_Paper", "import_utils", "import_jsx_runtime", "AddButton", "Paper", "Box", "Grid", "import_utils", "import_jsx_runtime", "ClearButton", "value", "TextField", "InputAdornment", "import_jsx_runtime", "Typography", "import_Box", "import_Paper", "import_Typography", "import_utils", "import_jsx_runtime", "Paper", "Box", "Typography", "List", "ListItem", "ListItemIcon", "ErrorIcon", "ListItemText", "import_IconButton", "import_utils", "import_jsx_runtime", "IconButton", "CopyIcon", "ArrowDownwardIcon", "ArrowUpwardIcon", "RemoveIcon", "ClearIcon", "import_ListItem", "import_List", "import_utils", "import_jsx_runtime", "List", "ListItem", "FormHelperText", "import_core", "import_utils", "import_FormHelperText", "import_jsx_runtime", "FormHelperText", "import_Typography", "import_utils", "import_jsx_runtime", "WrapIfAdditionalTemplate", "FormControl", "Typography", "import_Grid", "import_jsx_runtime", "Grid", "import_Box", "import_FormControl", "import_jsx_runtime", "Box", "FormControl", "import_Grid", "import_utils", "import_jsx_runtime", "AddButton", "Grid", "import_Add", "import_jsx_runtime", "AddIcon", "import_Box", "import_utils", "import_jsx_runtime", "Box", "Button", "import_Box", "import_Grid", "import_Typography", "import_jsx_runtime", "Typography", "Grid", "Box", "Divider", "import_Grid", "import_TextField", "import_utils", "import_jsx_runtime", "RemoveButton", "Grid", "TextField", "import_utils", "import_jsx_runtime", "FormControlLabel", "Checkbox", "import_Checkbox", "import_FormControlLabel", "import_utils", "import_jsx_runtime", "FormLabel", "FormGroup", "Checkbox", "FormControlLabel", "import_FormControlLabel", "import_FormLabel", "import_utils", "import_jsx_runtime", "value", "FormLabel", "RadioGroup", "FormControlLabel", "Radio", "import_FormLabel", "import_utils", "import_jsx_runtime", "value", "FormLabel", "Slider", "import_TextField", "import_utils", "import_jsx_runtime", "value", "TextField", "MenuItem", "label", "disabled", "import_utils", "import_jsx_runtime", "BaseInputTemplate"]
|
|
7
7
|
}
|
package/dist/mui.esm.js
CHANGED
|
@@ -125,7 +125,9 @@ function ArrayFieldTemplate(props) {
|
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
// src/BaseInputTemplate/BaseInputTemplate.tsx
|
|
128
|
+
import { useCallback } from "react";
|
|
128
129
|
import TextField from "@mui/material/TextField";
|
|
130
|
+
import InputAdornment from "@mui/material/InputAdornment";
|
|
129
131
|
import {
|
|
130
132
|
ariaDescribedByIds,
|
|
131
133
|
examplesId,
|
|
@@ -163,6 +165,7 @@ function BaseInputTemplate(props) {
|
|
|
163
165
|
InputLabelProps,
|
|
164
166
|
...textFieldProps
|
|
165
167
|
} = props;
|
|
168
|
+
const { ClearButton: ClearButton2 } = registry.templates.ButtonTemplates;
|
|
166
169
|
const inputProps = getInputProps(schema, type, options);
|
|
167
170
|
const { step, min, max, accept, ...rest } = inputProps;
|
|
168
171
|
const htmlInputProps = { step, min, max, accept, ...schema.examples ? { list: examplesId(id) } : void 0 };
|
|
@@ -173,6 +176,14 @@ function BaseInputTemplate(props) {
|
|
|
173
176
|
...InputLabelProps,
|
|
174
177
|
shrink: true
|
|
175
178
|
} : InputLabelProps;
|
|
179
|
+
const _onClear = useCallback(
|
|
180
|
+
(e) => {
|
|
181
|
+
e.preventDefault();
|
|
182
|
+
e.stopPropagation();
|
|
183
|
+
onChange(options.emptyValue ?? "");
|
|
184
|
+
},
|
|
185
|
+
[onChange, options.emptyValue]
|
|
186
|
+
);
|
|
176
187
|
return /* @__PURE__ */ jsxs3(Fragment, { children: [
|
|
177
188
|
/* @__PURE__ */ jsx4(
|
|
178
189
|
TextField,
|
|
@@ -192,7 +203,11 @@ function BaseInputTemplate(props) {
|
|
|
192
203
|
onBlur: _onBlur,
|
|
193
204
|
onFocus: _onFocus,
|
|
194
205
|
...textFieldProps,
|
|
195
|
-
"aria-describedby": ariaDescribedByIds(id, !!schema.examples)
|
|
206
|
+
"aria-describedby": ariaDescribedByIds(id, !!schema.examples),
|
|
207
|
+
InputProps: {
|
|
208
|
+
...textFieldProps.InputProps,
|
|
209
|
+
endAdornment: options.allowClearTextInputs && value && !readonly && !disabled ? /* @__PURE__ */ jsx4(InputAdornment, { position: "end", children: /* @__PURE__ */ jsx4(ClearButton2, { registry, onClick: _onClear }) }) : void 0
|
|
210
|
+
}
|
|
196
211
|
}
|
|
197
212
|
),
|
|
198
213
|
Array.isArray(schema.examples) && /* @__PURE__ */ jsx4("datalist", { id: examplesId(id), children: schema.examples.concat(schema.default && !schema.examples.includes(schema.default) ? [schema.default] : []).map((example) => {
|
|
@@ -246,6 +261,7 @@ import ArrowDownwardIcon from "@mui/icons-material/ArrowDownward";
|
|
|
246
261
|
import ArrowUpwardIcon from "@mui/icons-material/ArrowUpward";
|
|
247
262
|
import CopyIcon from "@mui/icons-material/ContentCopy";
|
|
248
263
|
import RemoveIcon from "@mui/icons-material/Remove";
|
|
264
|
+
import ClearIcon from "@mui/icons-material/Clear";
|
|
249
265
|
import { TranslatableString as TranslatableString3 } from "@rjsf/utils";
|
|
250
266
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
251
267
|
function MuiIconButton(props) {
|
|
@@ -306,6 +322,20 @@ function RemoveButton(props) {
|
|
|
306
322
|
}
|
|
307
323
|
);
|
|
308
324
|
}
|
|
325
|
+
function ClearButton(props) {
|
|
326
|
+
const { iconType, ...otherProps } = props;
|
|
327
|
+
const {
|
|
328
|
+
registry: { translateString }
|
|
329
|
+
} = otherProps;
|
|
330
|
+
return /* @__PURE__ */ jsx7(
|
|
331
|
+
MuiIconButton,
|
|
332
|
+
{
|
|
333
|
+
title: translateString(TranslatableString3.ClearButton),
|
|
334
|
+
...otherProps,
|
|
335
|
+
icon: /* @__PURE__ */ jsx7(ClearIcon, { fontSize: iconType === "default" ? void 0 : "small" })
|
|
336
|
+
}
|
|
337
|
+
);
|
|
338
|
+
}
|
|
309
339
|
|
|
310
340
|
// src/FieldErrorTemplate/FieldErrorTemplate.tsx
|
|
311
341
|
import ListItem2 from "@mui/material/ListItem";
|
|
@@ -664,7 +694,8 @@ function generateTemplates() {
|
|
|
664
694
|
MoveDownButton,
|
|
665
695
|
MoveUpButton,
|
|
666
696
|
RemoveButton,
|
|
667
|
-
SubmitButton
|
|
697
|
+
SubmitButton,
|
|
698
|
+
ClearButton
|
|
668
699
|
},
|
|
669
700
|
DescriptionFieldTemplate: DescriptionField,
|
|
670
701
|
ErrorListTemplate: ErrorList,
|