@rjsf/react-bootstrap 6.0.0-beta.2 → 6.0.0-beta.21

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.
Files changed (66) hide show
  1. package/README.md +4 -2
  2. package/dist/{index.js → index.cjs} +142 -63
  3. package/dist/index.cjs.map +7 -0
  4. package/dist/react-bootstrap.esm.js +141 -62
  5. package/dist/react-bootstrap.esm.js.map +4 -4
  6. package/dist/react-bootstrap.umd.js +89 -21
  7. package/lib/AddButton/AddButton.js +1 -1
  8. package/lib/AddButton/AddButton.js.map +1 -1
  9. package/lib/ArrayFieldTemplate/ArrayFieldTemplate.js +3 -3
  10. package/lib/ArrayFieldTemplate/ArrayFieldTemplate.js.map +1 -1
  11. package/lib/BaseInputTemplate/BaseInputTemplate.js.map +1 -1
  12. package/lib/CheckboxWidget/CheckboxWidget.js.map +1 -1
  13. package/lib/CheckboxesWidget/CheckboxesWidget.js.map +1 -1
  14. package/lib/FieldErrorTemplate/FieldErrorTemplate.js +2 -2
  15. package/lib/FieldErrorTemplate/FieldErrorTemplate.js.map +1 -1
  16. package/lib/FieldHelpTemplate/FieldHelpTemplate.js +2 -2
  17. package/lib/FieldHelpTemplate/FieldHelpTemplate.js.map +1 -1
  18. package/lib/IconButton/IconButton.d.ts +6 -5
  19. package/lib/IconButton/IconButton.js +1 -1
  20. package/lib/IconButton/IconButton.js.map +1 -1
  21. package/lib/MultiSchemaFieldTemplate/MultiSchemaFieldTemplate.d.ts +2 -0
  22. package/lib/MultiSchemaFieldTemplate/MultiSchemaFieldTemplate.js +6 -0
  23. package/lib/MultiSchemaFieldTemplate/MultiSchemaFieldTemplate.js.map +1 -0
  24. package/lib/MultiSchemaFieldTemplate/index.d.ts +2 -0
  25. package/lib/MultiSchemaFieldTemplate/index.js +3 -0
  26. package/lib/MultiSchemaFieldTemplate/index.js.map +1 -0
  27. package/lib/ObjectFieldTemplate/ObjectFieldTemplate.d.ts +1 -1
  28. package/lib/ObjectFieldTemplate/ObjectFieldTemplate.js +3 -2
  29. package/lib/ObjectFieldTemplate/ObjectFieldTemplate.js.map +1 -1
  30. package/lib/OptionalDataControlsTemplate/OptionalDataControlsTemplate.d.ts +10 -0
  31. package/lib/OptionalDataControlsTemplate/OptionalDataControlsTemplate.js +22 -0
  32. package/lib/OptionalDataControlsTemplate/OptionalDataControlsTemplate.js.map +1 -0
  33. package/lib/OptionalDataControlsTemplate/index.d.ts +2 -0
  34. package/lib/OptionalDataControlsTemplate/index.js +3 -0
  35. package/lib/OptionalDataControlsTemplate/index.js.map +1 -0
  36. package/lib/RadioWidget/RadioWidget.js.map +1 -1
  37. package/lib/SelectWidget/SelectWidget.js.map +1 -1
  38. package/lib/Templates/Templates.js +4 -0
  39. package/lib/Templates/Templates.js.map +1 -1
  40. package/lib/TextareaWidget/TextareaWidget.js.map +1 -1
  41. package/lib/TitleField/TitleField.d.ts +1 -1
  42. package/lib/TitleField/TitleField.js +9 -2
  43. package/lib/TitleField/TitleField.js.map +1 -1
  44. package/lib/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.js.map +1 -1
  45. package/lib/tsconfig.tsbuildinfo +1 -1
  46. package/package.json +16 -16
  47. package/src/AddButton/AddButton.tsx +1 -1
  48. package/src/ArrayFieldTemplate/ArrayFieldTemplate.tsx +24 -10
  49. package/src/BaseInputTemplate/BaseInputTemplate.tsx +3 -3
  50. package/src/CheckboxWidget/CheckboxWidget.tsx +2 -2
  51. package/src/CheckboxesWidget/CheckboxesWidget.tsx +1 -1
  52. package/src/FieldErrorTemplate/FieldErrorTemplate.tsx +2 -2
  53. package/src/FieldHelpTemplate/FieldHelpTemplate.tsx +2 -2
  54. package/src/IconButton/IconButton.tsx +12 -6
  55. package/src/MultiSchemaFieldTemplate/MultiSchemaFieldTemplate.tsx +15 -0
  56. package/src/MultiSchemaFieldTemplate/index.ts +2 -0
  57. package/src/ObjectFieldTemplate/ObjectFieldTemplate.tsx +8 -4
  58. package/src/OptionalDataControlsTemplate/OptionalDataControlsTemplate.tsx +47 -0
  59. package/src/OptionalDataControlsTemplate/index.ts +2 -0
  60. package/src/RadioWidget/RadioWidget.tsx +1 -1
  61. package/src/SelectWidget/SelectWidget.tsx +1 -1
  62. package/src/Templates/Templates.ts +4 -0
  63. package/src/TextareaWidget/TextareaWidget.tsx +1 -1
  64. package/src/TitleField/TitleField.tsx +19 -2
  65. package/src/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx +1 -1
  66. package/dist/index.js.map +0 -7
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/Form/Form.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/ObjectFieldTemplate/ObjectFieldTemplate.tsx", "../src/SubmitButton/SubmitButton.tsx", "../src/TitleField/TitleField.tsx", "../src/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx", "../src/Templates/Templates.ts", "../src/CheckboxWidget/CheckboxWidget.tsx", "../src/CheckboxesWidget/CheckboxesWidget.tsx", "../src/RadioWidget/RadioWidget.tsx", "../src/RangeWidget/RangeWidget.tsx", "../src/SelectWidget/SelectWidget.tsx", "../src/TextareaWidget/TextareaWidget.tsx", "../src/Widgets/Widgets.ts", "../src/Theme/Theme.tsx", "../src/index.ts"],
4
- "sourcesContent": ["import { ComponentType } from 'react';\n\nimport { withTheme, FormProps } from '@rjsf/core';\nimport { generateTheme } from '../Theme';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport Button from 'react-bootstrap/Button';\nimport { BsPlus } from '@react-icons/all-files/bs/BsPlus';\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 <Button\n {...props}\n style={{ width: '100%' }}\n className={`ml-1 ${props.className}`}\n title={translateString(TranslatableString.AddItemButton)}\n >\n <BsPlus />\n </Button>\n );\n}\n", "import { CSSProperties } from 'react';\nimport Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport {\n ArrayFieldItemTemplateType,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldItemTemplateType<T, S, F>) {\n const { children, buttonsProps, 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 };\n return (\n <div>\n <Row className='mb-2 d-flex align-items-center'>\n <Col xs='9' lg='9'>\n {children}\n </Col>\n <Col xs='3' lg='3' className='py-4'>\n {hasToolbar && (\n <div className='d-flex flex-row'>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} style={btnStyle} />\n </div>\n )}\n </Col>\n </Row>\n </div>\n );\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Container from 'react-bootstrap/Container';\nimport {\n ArrayFieldItemTemplateType,\n ArrayFieldTemplateProps,\n buttonId,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const { canAdd, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, schema, title } =\n props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldDescriptionTemplate = getTemplate<'ArrayFieldDescriptionTemplate', T, S, F>(\n 'ArrayFieldDescriptionTemplate',\n registry,\n uiOptions,\n );\n const ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate', T, S, F>(\n 'ArrayFieldItemTemplate',\n registry,\n uiOptions,\n );\n const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions,\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <div>\n <Row className='p-0 m-0'>\n <Col className='p-0 m-0'>\n <ArrayFieldTitleTemplate\n idSchema={idSchema}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n required={required}\n registry={registry}\n />\n <ArrayFieldDescriptionTemplate\n idSchema={idSchema}\n description={uiOptions.description || schema.description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n <Container fluid key={`array-item-list-${idSchema.$id}`} className='p-0 m-0'>\n {items &&\n items.map(({ key, ...itemProps }: ArrayFieldItemTemplateType<T, S, F>) => (\n <ArrayFieldItemTemplate key={key} {...itemProps} />\n ))}\n {canAdd && (\n <Container className=''>\n <Row className='mt-2'>\n <Col xs={9}></Col>\n <Col xs={3} className='py-4 col-lg-3 col-3'>\n <AddButton\n id={buttonId<T>(idSchema, 'add')}\n className='rjsf-array-item-add'\n onClick={onAddClick}\n disabled={disabled || readonly}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Col>\n </Row>\n </Container>\n )}\n </Container>\n </Col>\n </Row>\n </div>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n FormContextType,\n getInputProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n placeholder,\n required,\n readonly,\n disabled,\n type,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n rawErrors = [],\n children,\n extraProps,\n}: BaseInputTemplateProps<T, S, F>) {\n const inputProps = {\n ...extraProps,\n ...getInputProps<T, S, F>(schema, type, options),\n };\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\n // const classNames = [rawErrors.length > 0 ? \"is-invalid\" : \"\", type === 'file' ? 'custom-file-label': \"\"]\n return (\n <>\n <Form.Control\n id={id}\n name={id}\n placeholder={placeholder}\n autoFocus={autofocus}\n required={required}\n disabled={disabled}\n readOnly={readonly}\n className={rawErrors.length > 0 ? 'is-invalid' : ''}\n list={schema.examples ? examplesId<T>(id) : undefined}\n {...inputProps}\n value={value || value === 0 ? value : ''}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id, !!schema.examples)}\n />\n {children}\n {Array.isArray(schema.examples) ? (\n <datalist id={examplesId<T>(id)}>\n {(schema.examples as string[])\n .concat(schema.default && !schema.examples.includes(schema.default) ? ([schema.default] as string[]) : [])\n .map((example: any) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n ) : null}\n </>\n );\n}\n", "import { 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>({ id, description, registry, uiSchema }: DescriptionFieldProps<T, S, F>) {\n if (!description) {\n return null;\n }\n\n return (\n <div>\n <div id={id} className='mb-3'>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\n </div>\n </div>\n );\n}\n", "import Card from 'react-bootstrap/Card';\nimport ListGroup from 'react-bootstrap/ListGroup';\n\nimport { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\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 <Card border='danger' className='mb-4'>\n <Card.Header className='alert-danger'>{translateString(TranslatableString.ErrorsLabel)}</Card.Header>\n <Card.Body className='p-0'>\n <ListGroup>\n {errors.map((error, i: number) => {\n return (\n <ListGroup.Item key={i} className='border-0'>\n <span>{error.stack}</span>\n </ListGroup.Item>\n );\n })}\n </ListGroup>\n </Card.Body>\n </Card>\n );\n}\n", "import { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport Button, { ButtonProps } from 'react-bootstrap/Button';\nimport { IoIosCopy } from '@react-icons/all-files/io/IoIosCopy';\nimport { IoIosRemove } from '@react-icons/all-files/io/IoIosRemove';\nimport { AiOutlineArrowUp } from '@react-icons/all-files/ai/AiOutlineArrowUp';\nimport { AiOutlineArrowDown } from '@react-icons/all-files/ai/AiOutlineArrowDown';\n\nexport default function IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F> & ButtonProps,\n) {\n const { icon, iconType, className, uiSchema, registry, ...otherProps } = props;\n return (\n <Button {...otherProps} variant={props.variant || 'light'} size='sm'>\n {icon}\n </Button>\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 <IconButton title={translateString(TranslatableString.CopyButton)} {...props} icon={<IoIosCopy />} />;\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 <IconButton title={translateString(TranslatableString.MoveDownButton)} {...props} icon={<AiOutlineArrowDown />} />\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 <IconButton title={translateString(TranslatableString.MoveUpButton)} {...props} icon={<AiOutlineArrowUp />} />;\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.RemoveButton)}\n {...props}\n variant='danger'\n icon={<IoIosRemove />}\n />\n );\n}\n", "import { FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema, errorId } from '@rjsf/utils';\nimport ListGroup from 'react-bootstrap/ListGroup';\n\n/** The `FieldErrorTemplate` component renders the errors local to the particular field\n *\n * @param props - The `FieldErrorProps` for the errors being rendered\n */\nexport default function FieldErrorTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: FieldErrorProps<T, S, F>) {\n const { errors = [], idSchema } = props;\n if (errors.length === 0) {\n return null;\n }\n const id = errorId<T>(idSchema);\n\n return (\n <ListGroup as='ul' id={id}>\n {errors.map((error, i) => {\n return (\n <ListGroup.Item as='li' key={i} className='border-0 m-0 p-0'>\n <small className='m-0 text-danger'>{error}</small>\n </ListGroup.Item>\n );\n })}\n </ListGroup>\n );\n}\n", "import { FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema, helpId } from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\n\n/** The `FieldHelpTemplate` component renders any help desired for a field\n *\n * @param props - The `FieldHelpProps` to be rendered\n */\nexport default function FieldHelpTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: FieldHelpProps<T, S, F>) {\n const { idSchema, help, hasErrors } = props;\n if (!help) {\n return null;\n }\n const id = helpId<T>(idSchema);\n return (\n <Form.Text className={hasErrors ? 'text-danger' : 'text-muted'} id={id}>\n {help}\n </Form.Text>\n );\n}\n", "import {\n FieldTemplateProps,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\n\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n children,\n displayLabel,\n rawErrors = [],\n errors,\n help,\n description,\n rawDescription,\n classNames,\n style,\n disabled,\n label,\n hidden,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n}: FieldTemplateProps<T, S, F>) {\n const uiOptions = getUiOptions(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions,\n );\n if (hidden) {\n return <div className='hidden'>{children}</div>;\n }\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n onDropPropertyClick={onDropPropertyClick}\n onKeyChange={onKeyChange}\n readonly={readonly}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n >\n <Form.Group>\n {displayLabel && (\n <Form.Label htmlFor={id} className={rawErrors.length > 0 ? 'text-danger' : ''}>\n {label}\n {required ? '*' : null}\n </Form.Label>\n )}\n {children}\n {displayLabel && rawDescription && (\n <Form.Text className={rawErrors.length > 0 ? 'text-danger' : 'text-muted'}>{description}</Form.Text>\n )}\n {errors}\n {help}\n </Form.Group>\n </WrapIfAdditionalTemplate>\n );\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for react-bootstrap, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Row`/`Col`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the react-bootstrap grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, ...rest } = props;\n if (column) {\n return <Col {...rest}>{children}</Col>;\n }\n return <Row {...rest}>{children}</Row>;\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Container from 'react-bootstrap/Container';\n\nimport {\n buttonId,\n canExpand,\n descriptionId,\n FormContextType,\n getTemplate,\n getUiOptions,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n titleId,\n} from '@rjsf/utils';\n\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n description,\n title,\n properties,\n required,\n uiSchema,\n idSchema,\n schema,\n formData,\n onAddClick,\n disabled,\n readonly,\n registry,\n}: ObjectFieldTemplateProps<T, S, F>) {\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, uiOptions);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions,\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <>\n {title && (\n <TitleFieldTemplate\n id={titleId<T>(idSchema)}\n title={title}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n {description && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(idSchema)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Container fluid className='p-0'>\n {properties.map((element: any, index: number) => (\n <Row key={index} style={{ marginBottom: '10px' }} className={element.hidden ? 'd-none' : undefined}>\n <Col xs={12}> {element.content}</Col>\n </Row>\n ))}\n {canExpand(schema, uiSchema, formData) ? (\n <Row>\n <Col xs={{ offset: 9, span: 3 }} className='py-4'>\n <AddButton\n id={buttonId<T>(idSchema, 'add')}\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n className='rjsf-object-property-expand'\n uiSchema={uiSchema}\n registry={registry}\n />\n </Col>\n </Row>\n ) : null}\n </Container>\n </>\n );\n}\n", "import Button from 'react-bootstrap/Button';\nimport { FormContextType, getSubmitButtonOptions, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\nexport default function SubmitButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: SubmitButtonProps<T, S, F>,\n) {\n const { submitText, norender, props: submitButtonProps } = getSubmitButtonOptions<T, S, F>(props.uiSchema);\n if (norender) {\n return null;\n }\n return (\n <div>\n <Button variant='primary' type='submit' {...submitButtonProps}>\n {submitText}\n </Button>\n </div>\n );\n}\n", "import { FormContextType, getUiOptions, RJSFSchema, StrictRJSFSchema, TitleFieldProps } from '@rjsf/utils';\n\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n title,\n uiSchema,\n}: TitleFieldProps<T, S, F>) {\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n return (\n <div id={id} className='my-1'>\n <h5>{uiOptions.title || title}</h5>\n <hr className='border-0 bg-secondary' style={{ height: '1px' }} />\n </div>\n );\n}\n", "import { FocusEvent } from 'react';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\n\nimport Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Form from 'react-bootstrap/Form';\n\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n classNames,\n style,\n children,\n disabled,\n id,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n}: WrapIfAdditionalTemplateProps<T, S, F>) {\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\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n const handleBlur = ({ target }: FocusEvent<HTMLInputElement>) => onKeyChange(target.value);\n const keyId = `${id}-key`;\n\n return (\n <Row className={classNames} style={style} key={keyId}>\n <Col xs={5}>\n <Form.Group>\n <Form.Label htmlFor={keyId}>{keyLabel}</Form.Label>\n <Form.Control\n required={required}\n defaultValue={label}\n disabled={disabled || readonly}\n id={keyId}\n name={keyId}\n onBlur={!readonly ? handleBlur : undefined}\n type='text'\n />\n </Form.Group>\n </Col>\n <Col xs={5}>{children}</Col>\n <Col xs={2} className='py-4 d-grid gap-2'>\n <RemoveButton\n id={buttonId<T>(id, 'remove')}\n className='rjsf-object-property-remove w-100'\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Col>\n </Row>\n );\n}\n", "import AddButton from '../AddButton';\nimport ArrayFieldItemTemplate from '../ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from '../ArrayFieldTemplate';\nimport BaseInputTemplate from '../BaseInputTemplate/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 ObjectFieldTemplate from '../ObjectFieldTemplate';\nimport SubmitButton from '../SubmitButton';\nimport TitleField from '../TitleField';\nimport WrapIfAdditionalTemplate from '../WrapIfAdditionalTemplate';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\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 ObjectFieldTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n };\n}\n\nexport default generateTemplates();\n", "import { FocusEvent } from 'react';\nimport {\n ariaDescribedByIds,\n descriptionId,\n getTemplate,\n labelValue,\n WidgetProps,\n schemaRequiresTrueValue,\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n} from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\n\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n value,\n disabled,\n readonly,\n label,\n hideLabel,\n schema,\n autofocus,\n options,\n onChange,\n onBlur,\n onFocus,\n registry,\n uiSchema,\n } = props;\n // Because an unchecked checkbox will cause html5 validation to fail, only add\n // the \"required\" attribute if the field value must be \"true\", due to the\n // \"const\" or \"enum\" keywords\n const required = schemaRequiresTrueValue<S>(schema);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n options,\n );\n\n const _onChange = ({ target: { checked } }: FocusEvent<HTMLInputElement>) => onChange(checked);\n const _onBlur = ({ target }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.checked);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.checked);\n\n const description = options.description || schema.description;\n return (\n <Form.Group className={disabled || readonly ? 'disabled' : ''} aria-describedby={ariaDescribedByIds<T>(id)}>\n {!hideLabel && description && (\n <DescriptionFieldTemplate\n id={descriptionId<T>(id)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Form.Check\n id={id}\n name={id}\n label={labelValue(label, hideLabel || !label)}\n checked={typeof value === 'undefined' ? false : value}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={_onChange}\n type='checkbox'\n onBlur={_onBlur}\n onFocus={_onFocus}\n />\n </Form.Group>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ id, disabled, options, value, autofocus, readonly, required, onChange, onBlur, onFocus }: 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<S>(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue<S>(index, checkboxesValues, enumOptions));\n }\n };\n\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 return (\n <Form.Group>\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\n return (\n <Form.Check\n key={option.value}\n inline={inline}\n required={required}\n checked={checked}\n className='bg-transparent border-0'\n type={'checkbox'}\n id={optionId(id, index)}\n name={id}\n label={option.label}\n autoFocus={autofocus && index === 0}\n onChange={_onChange(index)}\n onBlur={_onBlur}\n onFocus={_onFocus}\n disabled={disabled || itemDisabled || readonly}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n })}\n </Form.Group>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n enumOptionsIsSelected,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n options,\n value,\n required,\n disabled,\n readonly,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue } = options;\n\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n 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 inline = Boolean(options && options.inline);\n\n return (\n <Form.Group className='mb-0'>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const checked = enumOptionsIsSelected<S>(option.value, value);\n\n const radio = (\n <Form.Check\n inline={inline}\n label={option.label}\n id={optionId(id, index)}\n key={index}\n name={id}\n type='radio'\n disabled={disabled || itemDisabled || readonly}\n checked={checked}\n required={required}\n value={String(index)}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n );\n return radio;\n })}\n </Form.Group>\n );\n}\n", "import { FormContextType, rangeSpec, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\nimport { ChangeEvent, FocusEvent } from 'react';\nimport FormRange from 'react-bootstrap/FormRange';\n\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const { id, value, disabled, onChange, onBlur, onFocus, schema } = props;\n\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) => onChange(value);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n\n const rangeProps = {\n value,\n id,\n name: id,\n disabled,\n onChange: _onChange,\n onBlur: _onBlur,\n onFocus: _onFocus,\n ...rangeSpec<S>(schema),\n };\n\n return (\n <>\n <FormRange {...rangeProps} />\n <span className='range-view'>{value}</span>\n </>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport FormSelect from 'react-bootstrap/FormSelect';\nimport {\n ariaDescribedByIds,\n FormContextType,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function SelectWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n schema,\n id,\n options,\n required,\n disabled,\n readonly,\n value,\n multiple,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n placeholder,\n rawErrors = [],\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue: optEmptyValue } = options;\n\n const emptyValue = multiple ? [] : '';\n\n function getValue(event: FocusEvent | ChangeEvent | any, multiple?: boolean) {\n if (multiple) {\n return [].slice\n .call(event.target.options as any)\n .filter((o: any) => o.selected)\n .map((o: any) => o.value);\n } else {\n return event.target.value;\n }\n }\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n const showPlaceholderOption = !multiple && schema.default === undefined;\n\n return (\n <FormSelect\n id={id}\n name={id}\n value={typeof selectedIndexes === 'undefined' ? emptyValue : selectedIndexes}\n required={required}\n multiple={multiple}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n className={rawErrors.length > 0 ? 'is-invalid' : ''}\n onBlur={\n onBlur &&\n ((event: FocusEvent) => {\n const newValue = getValue(event, multiple);\n onBlur(id, enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n })\n }\n onFocus={\n onFocus &&\n ((event: FocusEvent) => {\n const newValue = getValue(event, multiple);\n onFocus(id, enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n })\n }\n onChange={(event: ChangeEvent) => {\n const newValue = getValue(event, multiple);\n onChange(enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n }}\n aria-describedby={ariaDescribedByIds<T>(id)}\n >\n {showPlaceholderOption && <option value=''>{placeholder}</option>}\n {(enumOptions as any).map(({ value, label }: any, i: number) => {\n const disabled: any = Array.isArray(enumDisabled) && (enumDisabled as any).indexOf(value) != -1;\n return (\n <option key={i} id={label} value={String(i)} disabled={disabled}>\n {label}\n </option>\n );\n })}\n </FormSelect>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\nimport FormControl from 'react-bootstrap/FormControl';\nimport InputGroup from 'react-bootstrap/InputGroup';\n\ntype CustomWidgetProps<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any> = WidgetProps<\n T,\n S,\n F\n> & {\n options: any;\n};\n\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n placeholder,\n value,\n required,\n disabled,\n autofocus,\n readonly,\n onBlur,\n onFocus,\n onChange,\n options,\n}: CustomWidgetProps<T, S, F>) {\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLTextAreaElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target }: FocusEvent<HTMLTextAreaElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLTextAreaElement>) => onFocus(id, target && target.value);\n\n return (\n <InputGroup>\n <FormControl\n id={id}\n name={id}\n as='textarea'\n placeholder={placeholder}\n disabled={disabled}\n readOnly={readonly}\n value={value}\n required={required}\n autoFocus={autofocus}\n rows={options.rows || 5}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds<T>(id)}\n />\n </InputGroup>\n );\n}\n", "import 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';\nimport { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 { ThemeProps } from '@rjsf/core';\n\nimport { generateTemplates } from '../Templates';\nimport { generateWidgets } from '../Widgets';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n };\n}\n\nexport default generateTheme();\n", "import Form from './Form/Form';\n\nexport { default as Form, generateForm } from './Form';\nexport { default as Templates, generateTemplates } from './Templates';\nexport { default as Theme, generateTheme } from './Theme';\nexport { default as Widgets, generateWidgets } from './Widgets';\n\nexport default Form;\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "Row", "Col", "getTemplate", "getUiOptions", "jsx", "jsxs", "ArrayFieldItemTemplate", "AddButton", "jsx", "jsxs", "value", "jsx", "TranslatableString", "jsx", "jsxs", "TranslatableString", "Button", "jsx", "ListGroup", "jsx", "Form", "jsx", "getTemplate", "getUiOptions", "Form", "jsx", "jsxs", "WrapIfAdditionalTemplate", "Row", "Col", "jsx", "Row", "Col", "Container", "buttonId", "getTemplate", "getUiOptions", "Fragment", "jsx", "jsxs", "AddButton", "Button", "jsx", "getUiOptions", "jsx", "jsxs", "buttonId", "TranslatableString", "Row", "Col", "Form", "jsx", "jsxs", "RemoveButton", "ariaDescribedByIds", "descriptionId", "getTemplate", "Form", "jsx", "jsxs", "Form", "ariaDescribedByIds", "jsx", "Form", "ariaDescribedByIds", "enumOptionsIsSelected", "enumOptionsValueForIndex", "optionId", "jsx", "value", "Fragment", "jsx", "jsxs", "value", "ariaDescribedByIds", "enumOptionsValueForIndex", "jsx", "jsxs", "multiple", "value", "disabled", "ariaDescribedByIds", "jsx", "value"]
3
+ "sources": ["../src/Form/Form.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", "../src/index.ts"],
4
+ "sourcesContent": ["import { ComponentType } from 'react';\n\nimport { withTheme, FormProps } from '@rjsf/core';\nimport { generateTheme } from '../Theme';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport Button from 'react-bootstrap/Button';\nimport { BsPlus } from '@react-icons/all-files/bs/BsPlus';\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 <Button\n title={translateString(TranslatableString.AddItemButton)}\n {...props}\n style={{ width: '100%' }}\n className={`ml-1 ${props.className}`}\n >\n <BsPlus />\n </Button>\n );\n}\n", "import { CSSProperties } from 'react';\nimport Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport {\n ArrayFieldItemTemplateType,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldItemTemplateType<T, S, F>) {\n const { children, buttonsProps, 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 };\n return (\n <div>\n <Row className='mb-2 d-flex align-items-center'>\n <Col xs='9' lg='9'>\n {children}\n </Col>\n <Col xs='3' lg='3' className='py-4'>\n {hasToolbar && (\n <div className='d-flex flex-row'>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} style={btnStyle} />\n </div>\n )}\n </Col>\n </Row>\n </div>\n );\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Container from 'react-bootstrap/Container';\nimport {\n ArrayFieldItemTemplateType,\n ArrayFieldTemplateProps,\n buttonId,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\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 ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate', T, S, F>(\n 'ArrayFieldItemTemplate',\n registry,\n uiOptions,\n );\n const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions,\n );\n const showOptionalDataControlInTitle = !readonly && !disabled;\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n return (\n <div>\n <Row className='p-0 m-0'>\n <Col className='p-0 m-0'>\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 <Container fluid key={`array-item-list-${fieldPathId.$id}`} className='p-0 m-0'>\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {items.map(({ key, ...itemProps }: ArrayFieldItemTemplateType<T, S, F>) => (\n <ArrayFieldItemTemplate key={key} {...itemProps} />\n ))}\n {canAdd && (\n <Container className=''>\n <Row className='mt-2'>\n <Col xs={9}></Col>\n <Col xs={3} className='py-4 col-lg-3 col-3'>\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 </Col>\n </Row>\n </Container>\n )}\n </Container>\n </Col>\n </Row>\n </div>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n FormContextType,\n getInputProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\n\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n placeholder,\n required,\n readonly,\n disabled,\n type,\n value,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n autofocus,\n options,\n schema,\n rawErrors = [],\n children,\n extraProps,\n}: BaseInputTemplateProps<T, S, F>) {\n const inputProps = {\n ...extraProps,\n ...getInputProps<T, S, F>(schema, type, options),\n };\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\n // const classNames = [rawErrors.length > 0 ? \"is-invalid\" : \"\", type === 'file' ? 'custom-file-label': \"\"]\n return (\n <>\n <Form.Control\n id={id}\n name={id}\n placeholder={placeholder}\n autoFocus={autofocus}\n required={required}\n disabled={disabled}\n readOnly={readonly}\n className={rawErrors.length > 0 ? 'is-invalid' : ''}\n list={schema.examples ? examplesId(id) : undefined}\n {...inputProps}\n value={value || value === 0 ? value : ''}\n onChange={onChangeOverride || _onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n {children}\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 ) : null}\n </>\n );\n}\n", "import { 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>({ id, description, registry, uiSchema }: DescriptionFieldProps<T, S, F>) {\n if (!description) {\n return null;\n }\n\n return (\n <div>\n <div id={id} className='mb-3'>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\n </div>\n </div>\n );\n}\n", "import Card from 'react-bootstrap/Card';\nimport ListGroup from 'react-bootstrap/ListGroup';\n\nimport { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\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 <Card border='danger' className='mb-4'>\n <Card.Header className='alert-danger'>{translateString(TranslatableString.ErrorsLabel)}</Card.Header>\n <Card.Body className='p-0'>\n <ListGroup>\n {errors.map((error, i: number) => {\n return (\n <ListGroup.Item key={i} className='border-0'>\n <span>{error.stack}</span>\n </ListGroup.Item>\n );\n })}\n </ListGroup>\n </Card.Body>\n </Card>\n );\n}\n", "import { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport Button, { ButtonProps } from 'react-bootstrap/Button';\nimport { IoIosCopy } from '@react-icons/all-files/io/IoIosCopy';\nimport { IoIosRemove } from '@react-icons/all-files/io/IoIosRemove';\nimport { AiOutlineArrowUp } from '@react-icons/all-files/ai/AiOutlineArrowUp';\nimport { AiOutlineArrowDown } from '@react-icons/all-files/ai/AiOutlineArrowDown';\n\nexport type BootstrapIconButtonProps<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n> = IconButtonProps<T, S, F> & ButtonProps;\n\nexport default function IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: BootstrapIconButtonProps<T, S, F>,\n) {\n const { icon, iconType, className, uiSchema, registry, ...otherProps } = props;\n return (\n <Button {...otherProps} variant={props.variant || 'light'} size='sm'>\n {icon}\n </Button>\n );\n}\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: BootstrapIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.CopyButton)} {...props} icon={<IoIosCopy />} />;\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: BootstrapIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.MoveDownButton)} {...props} icon={<AiOutlineArrowDown />} />\n );\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: BootstrapIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return <IconButton title={translateString(TranslatableString.MoveUpButton)} {...props} icon={<AiOutlineArrowUp />} />;\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: BootstrapIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.RemoveButton)}\n variant='danger'\n {...props}\n icon={<IoIosRemove />}\n />\n );\n}\n", "import { FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema, errorId } from '@rjsf/utils';\nimport ListGroup from 'react-bootstrap/ListGroup';\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 <ListGroup as='ul' id={id}>\n {errors.map((error, i) => {\n return (\n <ListGroup.Item as='li' key={i} className='border-0 m-0 p-0'>\n <small className='m-0 text-danger'>{error}</small>\n </ListGroup.Item>\n );\n })}\n </ListGroup>\n );\n}\n", "import { FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema, helpId } from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\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, hasErrors } = props;\n if (!help) {\n return null;\n }\n const id = helpId(fieldPathId);\n return (\n <Form.Text className={hasErrors ? 'text-danger' : 'text-muted'} id={id}>\n {help}\n </Form.Text>\n );\n}\n", "import {\n FieldTemplateProps,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\n\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n children,\n displayLabel,\n rawErrors = [],\n errors,\n help,\n description,\n rawDescription,\n classNames,\n style,\n disabled,\n label,\n hidden,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n}: FieldTemplateProps<T, S, F>) {\n const uiOptions = getUiOptions(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions,\n );\n if (hidden) {\n return <div className='hidden'>{children}</div>;\n }\n return (\n <WrapIfAdditionalTemplate\n classNames={classNames}\n style={style}\n disabled={disabled}\n id={id}\n label={label}\n onDropPropertyClick={onDropPropertyClick}\n onKeyChange={onKeyChange}\n readonly={readonly}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n >\n <Form.Group>\n {displayLabel && (\n <Form.Label htmlFor={id} className={rawErrors.length > 0 ? 'text-danger' : ''}>\n {label}\n {required ? '*' : null}\n </Form.Label>\n )}\n {children}\n {displayLabel && rawDescription && (\n <Form.Text className={rawErrors.length > 0 ? 'text-danger' : 'text-muted'}>{description}</Form.Text>\n )}\n {errors}\n {help}\n </Form.Group>\n </WrapIfAdditionalTemplate>\n );\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for react-bootstrap, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Row`/`Col`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the react-bootstrap grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, ...rest } = props;\n if (column) {\n return <Col {...rest}>{children}</Col>;\n }\n return <Row {...rest}>{children}</Row>;\n}\n", "import { FormContextType, MultiSchemaFieldTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport Card from 'react-bootstrap/Card';\n\nexport default function MultiSchemaFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ selector, optionSchemaField }: MultiSchemaFieldTemplateProps<T, S, F>) {\n return (\n <Card style={{ marginBottom: '1rem' }}>\n <Card.Body>{selector}</Card.Body>\n <Card.Body>{optionSchemaField}</Card.Body>\n </Card>\n );\n}\n", "import Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Container from 'react-bootstrap/Container';\n\nimport {\n buttonId,\n canExpand,\n descriptionId,\n FormContextType,\n getTemplate,\n getUiOptions,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n titleId,\n} from '@rjsf/utils';\n\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n description,\n title,\n properties,\n required,\n uiSchema,\n fieldPathId,\n schema,\n formData,\n optionalDataControl,\n onAddClick,\n disabled,\n readonly,\n registry,\n}: ObjectFieldTemplateProps<T, S, F>) {\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 <Container fluid className='p-0'>\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {properties.map((element: any, index: number) => (\n <Row key={index} style={{ marginBottom: '10px' }} className={element.hidden ? 'd-none' : undefined}>\n <Col xs={12}> {element.content}</Col>\n </Row>\n ))}\n {canExpand(schema, uiSchema, formData) ? (\n <Row>\n <Col xs={{ offset: 9, span: 3 }} className='py-4'>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n onClick={onAddClick(schema)}\n disabled={disabled || readonly}\n className='rjsf-object-property-expand'\n uiSchema={uiSchema}\n registry={registry}\n />\n </Col>\n </Row>\n ) : null}\n </Container>\n </>\n );\n}\n", "import { FormContextType, OptionalDataControlsTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { BsPlus } from '@react-icons/all-files/bs/BsPlus';\n\nimport IconButton, { RemoveButton } from '../IconButton';\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 icon={<BsPlus />}\n onClick={onAddClick}\n title={label}\n size='sm'\n variant='secondary'\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 size='sm'\n variant='secondary'\n />\n );\n }\n return <em id={id}>{label}</em>;\n}\n", "import Button from 'react-bootstrap/Button';\nimport { FormContextType, getSubmitButtonOptions, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\nexport default function SubmitButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: SubmitButtonProps<T, S, F>,\n) {\n const { submitText, norender, props: submitButtonProps } = getSubmitButtonOptions<T, S, F>(props.uiSchema);\n if (norender) {\n return null;\n }\n return (\n <div>\n <Button variant='primary' type='submit' {...submitButtonProps}>\n {submitText}\n </Button>\n </div>\n );\n}\n", "import { FormContextType, getUiOptions, RJSFSchema, StrictRJSFSchema, TitleFieldProps } from '@rjsf/utils';\nimport Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Container from 'react-bootstrap/Container';\n\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n title,\n uiSchema,\n optionalDataControl,\n}: TitleFieldProps<T, S, F>) {\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n let heading = <h5>{uiOptions.title || title}</h5>;\n if (optionalDataControl) {\n heading = (\n <Container fluid className='p-0'>\n <Row>\n <Col xs='11'>{heading}</Col>\n <Col xs='1' style={{ marginLeft: '-5px' }}>\n {optionalDataControl}\n </Col>\n </Row>\n </Container>\n );\n }\n return (\n <div id={id} className='my-1'>\n {heading}\n <hr className='border-0 bg-secondary mt-0' style={{ height: '1px' }} />\n </div>\n );\n}\n", "import { FocusEvent } from 'react';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\n\nimport Row from 'react-bootstrap/Row';\nimport Col from 'react-bootstrap/Col';\nimport Form from 'react-bootstrap/Form';\n\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n classNames,\n style,\n children,\n disabled,\n id,\n label,\n onDropPropertyClick,\n onKeyChange,\n readonly,\n required,\n schema,\n uiSchema,\n registry,\n}: WrapIfAdditionalTemplateProps<T, S, F>) {\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\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n const handleBlur = ({ target }: FocusEvent<HTMLInputElement>) => onKeyChange(target.value);\n const keyId = `${id}-key`;\n\n return (\n <Row className={classNames} style={style} key={keyId}>\n <Col xs={5}>\n <Form.Group>\n <Form.Label htmlFor={keyId}>{keyLabel}</Form.Label>\n <Form.Control\n required={required}\n defaultValue={label}\n disabled={disabled || readonly}\n id={keyId}\n name={keyId}\n onBlur={!readonly ? handleBlur : undefined}\n type='text'\n />\n </Form.Group>\n </Col>\n <Col xs={5}>{children}</Col>\n <Col xs={2} className='py-4 d-grid gap-2'>\n <RemoveButton\n id={buttonId(id, 'remove')}\n className='rjsf-object-property-remove w-100'\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={uiSchema}\n registry={registry}\n />\n </Col>\n </Row>\n );\n}\n", "import AddButton from '../AddButton';\nimport ArrayFieldItemTemplate from '../ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from '../ArrayFieldTemplate';\nimport BaseInputTemplate from '../BaseInputTemplate/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';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\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 { FocusEvent } from 'react';\nimport {\n ariaDescribedByIds,\n descriptionId,\n getTemplate,\n labelValue,\n WidgetProps,\n schemaRequiresTrueValue,\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n} from '@rjsf/utils';\nimport Form from 'react-bootstrap/Form';\n\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n value,\n disabled,\n readonly,\n label,\n hideLabel,\n schema,\n autofocus,\n options,\n onChange,\n onBlur,\n onFocus,\n registry,\n uiSchema,\n } = props;\n // Because an unchecked checkbox will cause html5 validation to fail, only add\n // the \"required\" attribute if the field value must be \"true\", due to the\n // \"const\" or \"enum\" keywords\n const required = schemaRequiresTrueValue<S>(schema);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n options,\n );\n\n const _onChange = ({ target: { checked } }: FocusEvent<HTMLInputElement>) => onChange(checked);\n const _onBlur = ({ target }: FocusEvent<HTMLInputElement>) => onBlur(id, target && target.checked);\n const _onFocus = ({ target }: FocusEvent<HTMLInputElement>) => onFocus(id, target && target.checked);\n\n const description = options.description || schema.description;\n return (\n <Form.Group className={disabled || readonly ? 'disabled' : ''} aria-describedby={ariaDescribedByIds(id)}>\n {!hideLabel && description && (\n <DescriptionFieldTemplate\n id={descriptionId(id)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Form.Check\n id={id}\n name={id}\n label={labelValue(label, hideLabel || !label)}\n checked={typeof value === 'undefined' ? false : value}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={_onChange}\n type='checkbox'\n onBlur={_onBlur}\n onFocus={_onFocus}\n />\n </Form.Group>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n enumOptionsDeselectValue,\n enumOptionsIsSelected,\n enumOptionsSelectValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ id, disabled, options, value, autofocus, readonly, required, onChange, onBlur, onFocus }: 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<S>(index, checkboxesValues, enumOptions));\n } else {\n onChange(enumOptionsDeselectValue<S>(index, checkboxesValues, enumOptions));\n }\n };\n\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 return (\n <Form.Group>\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\n return (\n <Form.Check\n key={option.value}\n inline={inline}\n required={required}\n checked={checked}\n className='bg-transparent border-0'\n type={'checkbox'}\n id={optionId(id, index)}\n name={id}\n label={option.label}\n autoFocus={autofocus && index === 0}\n onChange={_onChange(index)}\n onBlur={_onBlur}\n onFocus={_onFocus}\n disabled={disabled || itemDisabled || readonly}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n })}\n </Form.Group>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport Form from 'react-bootstrap/Form';\nimport {\n ariaDescribedByIds,\n enumOptionsIsSelected,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n id,\n options,\n value,\n required,\n disabled,\n readonly,\n onChange,\n onBlur,\n onFocus,\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue } = options;\n\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) =>\n 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 inline = Boolean(options && options.inline);\n\n return (\n <Form.Group className='mb-0'>\n {Array.isArray(enumOptions) &&\n enumOptions.map((option, index) => {\n const itemDisabled = Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1;\n const checked = enumOptionsIsSelected<S>(option.value, value);\n\n const radio = (\n <Form.Check\n inline={inline}\n label={option.label}\n id={optionId(id, index)}\n key={index}\n name={id}\n type='radio'\n disabled={disabled || itemDisabled || readonly}\n checked={checked}\n required={required}\n value={String(index)}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n return radio;\n })}\n </Form.Group>\n );\n}\n", "import { FormContextType, rangeSpec, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\nimport { ChangeEvent, FocusEvent } from 'react';\nimport FormRange from 'react-bootstrap/FormRange';\n\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const { id, value, disabled, onChange, onBlur, onFocus, schema } = props;\n\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLInputElement>) => onChange(value);\n const _onBlur = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onBlur(id, value);\n const _onFocus = ({ target: { value } }: FocusEvent<HTMLInputElement>) => onFocus(id, value);\n\n const rangeProps = {\n value,\n id,\n name: id,\n disabled,\n onChange: _onChange,\n onBlur: _onBlur,\n onFocus: _onFocus,\n ...rangeSpec<S>(schema),\n };\n\n return (\n <>\n <FormRange {...rangeProps} />\n <span className='range-view'>{value}</span>\n </>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport FormSelect from 'react-bootstrap/FormSelect';\nimport {\n ariaDescribedByIds,\n FormContextType,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\n\nexport default function SelectWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n schema,\n id,\n options,\n required,\n disabled,\n readonly,\n value,\n multiple,\n autofocus,\n onChange,\n onBlur,\n onFocus,\n placeholder,\n rawErrors = [],\n}: WidgetProps<T, S, F>) {\n const { enumOptions, enumDisabled, emptyValue: optEmptyValue } = options;\n\n const emptyValue = multiple ? [] : '';\n\n function getValue(event: FocusEvent | ChangeEvent | any, multiple?: boolean) {\n if (multiple) {\n return [].slice\n .call(event.target.options as any)\n .filter((o: any) => o.selected)\n .map((o: any) => o.value);\n } else {\n return event.target.value;\n }\n }\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n const showPlaceholderOption = !multiple && schema.default === undefined;\n\n return (\n <FormSelect\n id={id}\n name={id}\n value={typeof selectedIndexes === 'undefined' ? emptyValue : selectedIndexes}\n required={required}\n multiple={multiple}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n className={rawErrors.length > 0 ? 'is-invalid' : ''}\n onBlur={\n onBlur &&\n ((event: FocusEvent) => {\n const newValue = getValue(event, multiple);\n onBlur(id, enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n })\n }\n onFocus={\n onFocus &&\n ((event: FocusEvent) => {\n const newValue = getValue(event, multiple);\n onFocus(id, enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n })\n }\n onChange={(event: ChangeEvent) => {\n const newValue = getValue(event, multiple);\n onChange(enumOptionsValueForIndex<S>(newValue, enumOptions, optEmptyValue));\n }}\n aria-describedby={ariaDescribedByIds(id)}\n >\n {showPlaceholderOption && <option value=''>{placeholder}</option>}\n {(enumOptions as any).map(({ value, label }: any, i: number) => {\n const disabled: any = Array.isArray(enumDisabled) && (enumDisabled as any).indexOf(value) != -1;\n return (\n <option key={i} id={label} value={String(i)} disabled={disabled}>\n {label}\n </option>\n );\n })}\n </FormSelect>\n );\n}\n", "import { ChangeEvent, FocusEvent } from 'react';\nimport { ariaDescribedByIds, FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\nimport FormControl from 'react-bootstrap/FormControl';\nimport InputGroup from 'react-bootstrap/InputGroup';\n\ntype CustomWidgetProps<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any> = WidgetProps<\n T,\n S,\n F\n> & {\n options: any;\n};\n\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({\n id,\n placeholder,\n value,\n required,\n disabled,\n autofocus,\n readonly,\n onBlur,\n onFocus,\n onChange,\n options,\n}: CustomWidgetProps<T, S, F>) {\n const _onChange = ({ target: { value } }: ChangeEvent<HTMLTextAreaElement>) =>\n onChange(value === '' ? options.emptyValue : value);\n const _onBlur = ({ target }: FocusEvent<HTMLTextAreaElement>) => onBlur(id, target && target.value);\n const _onFocus = ({ target }: FocusEvent<HTMLTextAreaElement>) => onFocus(id, target && target.value);\n\n return (\n <InputGroup>\n <FormControl\n id={id}\n name={id}\n as='textarea'\n placeholder={placeholder}\n disabled={disabled}\n readOnly={readonly}\n value={value}\n required={required}\n autoFocus={autofocus}\n rows={options.rows || 5}\n onChange={_onChange}\n onBlur={_onBlur}\n onFocus={_onFocus}\n aria-describedby={ariaDescribedByIds(id)}\n />\n </InputGroup>\n );\n}\n", "import 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';\nimport { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 { ThemeProps } from '@rjsf/core';\n\nimport { generateTemplates } from '../Templates';\nimport { generateWidgets } from '../Widgets';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n };\n}\n\nexport default generateTheme();\n", "import Form from './Form/Form';\n\nexport { default as Form, generateForm } from './Form';\nexport { default as Templates, generateTemplates } from './Templates';\nexport { default as Theme, generateTheme } from './Theme';\nexport { default as Widgets, generateWidgets } from './Widgets';\n\nexport default Form;\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "Row", "Col", "getTemplate", "getUiOptions", "jsx", "jsxs", "ArrayFieldItemTemplate", "AddButton", "jsx", "jsxs", "value", "jsx", "TranslatableString", "jsx", "jsxs", "TranslatableString", "Button", "jsx", "ListGroup", "jsx", "Form", "jsx", "getTemplate", "getUiOptions", "Form", "jsx", "jsxs", "WrapIfAdditionalTemplate", "Row", "Col", "jsx", "Card", "jsx", "jsxs", "Row", "Col", "Container", "buttonId", "getTemplate", "getUiOptions", "Fragment", "jsx", "jsxs", "AddButton", "BsPlus", "jsx", "BsPlus", "Button", "jsx", "getUiOptions", "Row", "Col", "Container", "jsx", "jsxs", "buttonId", "TranslatableString", "Row", "Col", "Form", "jsx", "jsxs", "RemoveButton", "ariaDescribedByIds", "descriptionId", "getTemplate", "Form", "jsx", "jsxs", "Form", "ariaDescribedByIds", "jsx", "Form", "ariaDescribedByIds", "enumOptionsIsSelected", "enumOptionsValueForIndex", "optionId", "jsx", "value", "Fragment", "jsx", "jsxs", "value", "ariaDescribedByIds", "enumOptionsValueForIndex", "jsx", "jsxs", "multiple", "value", "disabled", "ariaDescribedByIds", "jsx", "value"]
7
7
  }
@@ -14,10 +14,10 @@
14
14
  return /* @__PURE__ */ jsxRuntime.jsx(
15
15
  Button,
16
16
  {
17
+ title: translateString(utils.TranslatableString.AddItemButton),
17
18
  ...props,
18
19
  style: { width: "100%" },
19
20
  className: `ml-1 ${props.className}`,
20
- title: translateString(utils.TranslatableString.AddItemButton),
21
21
  children: /* @__PURE__ */ jsxRuntime.jsx(BsPlus.BsPlus, {})
22
22
  }
23
23
  );
@@ -42,7 +42,20 @@
42
42
  ] }) });
43
43
  }
44
44
  function ArrayFieldTemplate(props) {
45
- const { canAdd, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, schema, title } = props;
45
+ const {
46
+ canAdd,
47
+ disabled,
48
+ fieldPathId,
49
+ uiSchema,
50
+ items,
51
+ optionalDataControl,
52
+ onAddClick,
53
+ readonly,
54
+ registry,
55
+ required,
56
+ schema,
57
+ title
58
+ } = props;
46
59
  const uiOptions = utils.getUiOptions(uiSchema);
47
60
  const ArrayFieldDescriptionTemplate = utils.getTemplate(
48
61
  "ArrayFieldDescriptionTemplate",
@@ -59,6 +72,7 @@
59
72
  registry,
60
73
  uiOptions
61
74
  );
75
+ const showOptionalDataControlInTitle = !readonly && !disabled;
62
76
  const {
63
77
  ButtonTemplates: { AddButton: AddButton2 }
64
78
  } = registry.templates;
@@ -66,18 +80,19 @@
66
80
  /* @__PURE__ */ jsxRuntime.jsx(
67
81
  ArrayFieldTitleTemplate,
68
82
  {
69
- idSchema,
83
+ fieldPathId,
70
84
  title: uiOptions.title || title,
71
85
  schema,
72
86
  uiSchema,
73
87
  required,
74
- registry
88
+ registry,
89
+ optionalDataControl: showOptionalDataControlInTitle ? optionalDataControl : void 0
75
90
  }
76
91
  ),
77
92
  /* @__PURE__ */ jsxRuntime.jsx(
78
93
  ArrayFieldDescriptionTemplate,
79
94
  {
80
- idSchema,
95
+ fieldPathId,
81
96
  description: uiOptions.description || schema.description,
82
97
  schema,
83
98
  uiSchema,
@@ -85,13 +100,14 @@
85
100
  }
86
101
  ),
87
102
  /* @__PURE__ */ jsxRuntime.jsxs(Container, { fluid: true, className: "p-0 m-0", children: [
88
- items && items.map(({ key, ...itemProps }) => /* @__PURE__ */ jsxRuntime.jsx(ArrayFieldItemTemplate2, { ...itemProps }, key)),
103
+ !showOptionalDataControlInTitle ? optionalDataControl : void 0,
104
+ items.map(({ key, ...itemProps }) => /* @__PURE__ */ jsxRuntime.jsx(ArrayFieldItemTemplate2, { ...itemProps }, key)),
89
105
  canAdd && /* @__PURE__ */ jsxRuntime.jsx(Container, { className: "", children: /* @__PURE__ */ jsxRuntime.jsxs(Row2, { className: "mt-2", children: [
90
106
  /* @__PURE__ */ jsxRuntime.jsx(Col2, { xs: 9 }),
91
107
  /* @__PURE__ */ jsxRuntime.jsx(Col2, { xs: 3, className: "py-4 col-lg-3 col-3", children: /* @__PURE__ */ jsxRuntime.jsx(
92
108
  AddButton2,
93
109
  {
94
- id: utils.buttonId(idSchema, "add"),
110
+ id: utils.buttonId(fieldPathId, "add"),
95
111
  className: "rjsf-array-item-add",
96
112
  onClick: onAddClick,
97
113
  disabled: disabled || readonly,
@@ -100,7 +116,7 @@
100
116
  }
101
117
  ) })
102
118
  ] }) })
103
- ] }, `array-item-list-${idSchema.$id}`)
119
+ ] }, `array-item-list-${fieldPathId.$id}`)
104
120
  ] }) }) });
105
121
  }
106
122
  function BaseInputTemplate({
@@ -204,28 +220,28 @@
204
220
  IconButton,
205
221
  {
206
222
  title: translateString(utils.TranslatableString.RemoveButton),
207
- ...props,
208
223
  variant: "danger",
224
+ ...props,
209
225
  icon: /* @__PURE__ */ jsxRuntime.jsx(IoIosRemove.IoIosRemove, {})
210
226
  }
211
227
  );
212
228
  }
213
229
  function FieldErrorTemplate(props) {
214
- const { errors = [], idSchema } = props;
230
+ const { errors = [], fieldPathId } = props;
215
231
  if (errors.length === 0) {
216
232
  return null;
217
233
  }
218
- const id = utils.errorId(idSchema);
234
+ const id = utils.errorId(fieldPathId);
219
235
  return /* @__PURE__ */ jsxRuntime.jsx(ListGroup, { as: "ul", id, children: errors.map((error, i) => {
220
236
  return /* @__PURE__ */ jsxRuntime.jsx(ListGroup.Item, { as: "li", className: "border-0 m-0 p-0", children: /* @__PURE__ */ jsxRuntime.jsx("small", { className: "m-0 text-danger", children: error }) }, i);
221
237
  }) });
222
238
  }
223
239
  function FieldHelpTemplate(props) {
224
- const { idSchema, help, hasErrors } = props;
240
+ const { fieldPathId, help, hasErrors } = props;
225
241
  if (!help) {
226
242
  return null;
227
243
  }
228
- const id = utils.helpId(idSchema);
244
+ const id = utils.helpId(fieldPathId);
229
245
  return /* @__PURE__ */ jsxRuntime.jsx(Form3.Text, { className: hasErrors ? "text-danger" : "text-muted", id, children: help });
230
246
  }
231
247
  function FieldTemplate({
@@ -294,15 +310,22 @@
294
310
  }
295
311
  return /* @__PURE__ */ jsxRuntime.jsx(Row2, { ...rest, children });
296
312
  }
313
+ function MultiSchemaFieldTemplate({ selector, optionSchemaField }) {
314
+ return /* @__PURE__ */ jsxRuntime.jsxs(Card, { style: { marginBottom: "1rem" }, children: [
315
+ /* @__PURE__ */ jsxRuntime.jsx(Card.Body, { children: selector }),
316
+ /* @__PURE__ */ jsxRuntime.jsx(Card.Body, { children: optionSchemaField })
317
+ ] });
318
+ }
297
319
  function ObjectFieldTemplate({
298
320
  description,
299
321
  title,
300
322
  properties,
301
323
  required,
302
324
  uiSchema,
303
- idSchema,
325
+ fieldPathId,
304
326
  schema,
305
327
  formData,
328
+ optionalDataControl,
306
329
  onAddClick,
307
330
  disabled,
308
331
  readonly,
@@ -315,6 +338,7 @@
315
338
  registry,
316
339
  uiOptions
317
340
  );
341
+ const showOptionalDataControlInTitle = !readonly && !disabled;
318
342
  const {
319
343
  ButtonTemplates: { AddButton: AddButton2 }
320
344
  } = registry.templates;
@@ -322,18 +346,19 @@
322
346
  title && /* @__PURE__ */ jsxRuntime.jsx(
323
347
  TitleFieldTemplate,
324
348
  {
325
- id: utils.titleId(idSchema),
349
+ id: utils.titleId(fieldPathId),
326
350
  title,
327
351
  required,
328
352
  schema,
329
353
  uiSchema,
330
- registry
354
+ registry,
355
+ optionalDataControl: showOptionalDataControlInTitle ? optionalDataControl : void 0
331
356
  }
332
357
  ),
333
358
  description && /* @__PURE__ */ jsxRuntime.jsx(
334
359
  DescriptionFieldTemplate,
335
360
  {
336
- id: utils.descriptionId(idSchema),
361
+ id: utils.descriptionId(fieldPathId),
337
362
  description,
338
363
  schema,
339
364
  uiSchema,
@@ -341,6 +366,7 @@
341
366
  }
342
367
  ),
343
368
  /* @__PURE__ */ jsxRuntime.jsxs(Container, { fluid: true, className: "p-0", children: [
369
+ !showOptionalDataControlInTitle ? optionalDataControl : void 0,
344
370
  properties.map((element, index) => /* @__PURE__ */ jsxRuntime.jsx(Row2, { style: { marginBottom: "10px" }, className: element.hidden ? "d-none" : void 0, children: /* @__PURE__ */ jsxRuntime.jsxs(Col2, { xs: 12, children: [
345
371
  " ",
346
372
  element.content
@@ -348,7 +374,7 @@
348
374
  utils.canExpand(schema, uiSchema, formData) ? /* @__PURE__ */ jsxRuntime.jsx(Row2, { children: /* @__PURE__ */ jsxRuntime.jsx(Col2, { xs: { offset: 9, span: 3 }, className: "py-4", children: /* @__PURE__ */ jsxRuntime.jsx(
349
375
  AddButton2,
350
376
  {
351
- id: utils.buttonId(idSchema, "add"),
377
+ id: utils.buttonId(fieldPathId, "add"),
352
378
  onClick: onAddClick(schema),
353
379
  disabled: disabled || readonly,
354
380
  className: "rjsf-object-property-expand",
@@ -359,6 +385,38 @@
359
385
  ] })
360
386
  ] });
361
387
  }
388
+ function OptionalDataControlsTemplate(props) {
389
+ const { id, registry, label, onAddClick, onRemoveClick } = props;
390
+ if (onAddClick) {
391
+ return /* @__PURE__ */ jsxRuntime.jsx(
392
+ IconButton,
393
+ {
394
+ id,
395
+ registry,
396
+ className: "rjsf-add-optional-data",
397
+ icon: /* @__PURE__ */ jsxRuntime.jsx(BsPlus.BsPlus, {}),
398
+ onClick: onAddClick,
399
+ title: label,
400
+ size: "sm",
401
+ variant: "secondary"
402
+ }
403
+ );
404
+ } else if (onRemoveClick) {
405
+ return /* @__PURE__ */ jsxRuntime.jsx(
406
+ RemoveButton,
407
+ {
408
+ id,
409
+ registry,
410
+ className: "rjsf-remove-optional-data",
411
+ onClick: onRemoveClick,
412
+ title: label,
413
+ size: "sm",
414
+ variant: "secondary"
415
+ }
416
+ );
417
+ }
418
+ return /* @__PURE__ */ jsxRuntime.jsx("em", { id, children: label });
419
+ }
362
420
  function SubmitButton(props) {
363
421
  const { submitText, norender, props: submitButtonProps } = utils.getSubmitButtonOptions(props.uiSchema);
364
422
  if (norender) {
@@ -369,12 +427,20 @@
369
427
  function TitleField({
370
428
  id,
371
429
  title,
372
- uiSchema
430
+ uiSchema,
431
+ optionalDataControl
373
432
  }) {
374
433
  const uiOptions = utils.getUiOptions(uiSchema);
434
+ let heading = /* @__PURE__ */ jsxRuntime.jsx("h5", { children: uiOptions.title || title });
435
+ if (optionalDataControl) {
436
+ heading = /* @__PURE__ */ jsxRuntime.jsx(Container, { fluid: true, className: "p-0", children: /* @__PURE__ */ jsxRuntime.jsxs(Row2, { children: [
437
+ /* @__PURE__ */ jsxRuntime.jsx(Col2, { xs: "11", children: heading }),
438
+ /* @__PURE__ */ jsxRuntime.jsx(Col2, { xs: "1", style: { marginLeft: "-5px" }, children: optionalDataControl })
439
+ ] }) });
440
+ }
375
441
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { id, className: "my-1", children: [
376
- /* @__PURE__ */ jsxRuntime.jsx("h5", { children: uiOptions.title || title }),
377
- /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "border-0 bg-secondary", style: { height: "1px" } })
442
+ heading,
443
+ /* @__PURE__ */ jsxRuntime.jsx("hr", { className: "border-0 bg-secondary mt-0", style: { height: "1px" } })
378
444
  ] });
379
445
  }
380
446
  function WrapIfAdditionalTemplate({
@@ -452,7 +518,9 @@
452
518
  FieldHelpTemplate,
453
519
  FieldTemplate,
454
520
  GridTemplate,
521
+ MultiSchemaFieldTemplate,
455
522
  ObjectFieldTemplate,
523
+ OptionalDataControlsTemplate,
456
524
  TitleFieldTemplate: TitleField,
457
525
  WrapIfAdditionalTemplate
458
526
  };
@@ -4,6 +4,6 @@ import Button from 'react-bootstrap/Button';
4
4
  import { BsPlus } from '@react-icons/all-files/bs/BsPlus';
5
5
  export default function AddButton({ uiSchema, registry, ...props }) {
6
6
  const { translateString } = registry;
7
- return (_jsx(Button, { ...props, style: { width: '100%' }, className: `ml-1 ${props.className}`, title: translateString(TranslatableString.AddItemButton), children: _jsx(BsPlus, {}) }));
7
+ return (_jsx(Button, { title: translateString(TranslatableString.AddItemButton), ...props, style: { width: '100%' }, className: `ml-1 ${props.className}`, children: _jsx(BsPlus, {}) }));
8
8
  }
9
9
  //# sourceMappingURL=AddButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddButton.js","sourceRoot":"","sources":["../../src/AddButton/AddButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjH,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAE1D,MAAM,CAAC,OAAO,UAAU,SAAS,CAAoF,EACnH,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACiB;IACzB,MAAM,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC;IACrC,OAAO,CACL,KAAC,MAAM,OACD,KAAK,EACT,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EACxB,SAAS,EAAE,QAAQ,KAAK,CAAC,SAAS,EAAE,EACpC,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,aAAa,CAAC,YAExD,KAAC,MAAM,KAAG,GACH,CACV,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AddButton.js","sourceRoot":"","sources":["../../src/AddButton/AddButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjH,OAAO,MAAM,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAE1D,MAAM,CAAC,OAAO,UAAU,SAAS,CAAoF,EACnH,QAAQ,EACR,QAAQ,EACR,GAAG,KAAK,EACiB;IACzB,MAAM,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC;IACrC,OAAO,CACL,KAAC,MAAM,IACL,KAAK,EAAE,eAAe,CAAC,kBAAkB,CAAC,aAAa,CAAC,KACpD,KAAK,EACT,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EACxB,SAAS,EAAE,QAAQ,KAAK,CAAC,SAAS,EAAE,YAEpC,KAAC,MAAM,KAAG,GACH,CACV,CAAC;AACJ,CAAC"}
@@ -4,14 +4,14 @@ import Col from 'react-bootstrap/Col';
4
4
  import Container from 'react-bootstrap/Container';
5
5
  import { buttonId, getTemplate, getUiOptions, } from '@rjsf/utils';
6
6
  export default function ArrayFieldTemplate(props) {
7
- const { canAdd, disabled, idSchema, uiSchema, items, onAddClick, readonly, registry, required, schema, title } = props;
7
+ const { canAdd, disabled, fieldPathId, uiSchema, items, optionalDataControl, onAddClick, readonly, registry, required, schema, title, } = props;
8
8
  const uiOptions = getUiOptions(uiSchema);
9
9
  const ArrayFieldDescriptionTemplate = getTemplate('ArrayFieldDescriptionTemplate', registry, uiOptions);
10
10
  const ArrayFieldItemTemplate = getTemplate('ArrayFieldItemTemplate', registry, uiOptions);
11
11
  const ArrayFieldTitleTemplate = getTemplate('ArrayFieldTitleTemplate', registry, uiOptions);
12
+ const showOptionalDataControlInTitle = !readonly && !disabled;
12
13
  // Button templates are not overridden in the uiSchema
13
14
  const { ButtonTemplates: { AddButton }, } = registry.templates;
14
- return (_jsx("div", { children: _jsx(Row, { className: 'p-0 m-0', children: _jsxs(Col, { className: 'p-0 m-0', children: [_jsx(ArrayFieldTitleTemplate, { idSchema: idSchema, title: uiOptions.title || title, schema: schema, uiSchema: uiSchema, required: required, registry: registry }), _jsx(ArrayFieldDescriptionTemplate, { idSchema: idSchema, description: uiOptions.description || schema.description, schema: schema, uiSchema: uiSchema, registry: registry }), _jsxs(Container, { fluid: true, className: 'p-0 m-0', children: [items &&
15
- items.map(({ key, ...itemProps }) => (_jsx(ArrayFieldItemTemplate, { ...itemProps }, key))), canAdd && (_jsx(Container, { className: '', children: _jsxs(Row, { className: 'mt-2', children: [_jsx(Col, { xs: 9 }), _jsx(Col, { xs: 3, className: 'py-4 col-lg-3 col-3', children: _jsx(AddButton, { id: buttonId(idSchema, 'add'), className: 'rjsf-array-item-add', onClick: onAddClick, disabled: disabled || readonly, uiSchema: uiSchema, registry: registry }) })] }) }))] }, `array-item-list-${idSchema.$id}`)] }) }) }));
15
+ return (_jsx("div", { children: _jsx(Row, { className: 'p-0 m-0', children: _jsxs(Col, { className: 'p-0 m-0', children: [_jsx(ArrayFieldTitleTemplate, { fieldPathId: fieldPathId, title: uiOptions.title || title, schema: schema, uiSchema: uiSchema, required: required, registry: registry, optionalDataControl: showOptionalDataControlInTitle ? optionalDataControl : undefined }), _jsx(ArrayFieldDescriptionTemplate, { fieldPathId: fieldPathId, description: uiOptions.description || schema.description, schema: schema, uiSchema: uiSchema, registry: registry }), _jsxs(Container, { fluid: true, className: 'p-0 m-0', children: [!showOptionalDataControlInTitle ? optionalDataControl : undefined, items.map(({ key, ...itemProps }) => (_jsx(ArrayFieldItemTemplate, { ...itemProps }, key))), canAdd && (_jsx(Container, { className: '', children: _jsxs(Row, { className: 'mt-2', children: [_jsx(Col, { xs: 9 }), _jsx(Col, { xs: 3, className: 'py-4 col-lg-3 col-3', children: _jsx(AddButton, { id: buttonId(fieldPathId, 'add'), className: 'rjsf-array-item-add', onClick: onAddClick, disabled: disabled || readonly, uiSchema: uiSchema, registry: registry }) })] }) }))] }, `array-item-list-${fieldPathId.$id}`)] }) }) }));
16
16
  }
17
17
  //# sourceMappingURL=ArrayFieldTemplate.js.map