@rjsf/mantine 6.0.0-beta.20 → 6.0.0-beta.22

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 (49) hide show
  1. package/dist/index.cjs +187 -139
  2. package/dist/index.cjs.map +4 -4
  3. package/dist/mantine.esm.js +186 -138
  4. package/dist/mantine.esm.js.map +4 -4
  5. package/dist/mantine.umd.js +75 -29
  6. package/lib/templates/ArrayFieldItemTemplate.d.ts +3 -3
  7. package/lib/templates/ArrayFieldItemTemplate.js +1 -1
  8. package/lib/templates/ArrayFieldItemTemplate.js.map +1 -1
  9. package/lib/templates/ArrayFieldTemplate.d.ts +1 -1
  10. package/lib/templates/ArrayFieldTemplate.js +5 -6
  11. package/lib/templates/ArrayFieldTemplate.js.map +1 -1
  12. package/lib/templates/BaseInputTemplate.js +2 -2
  13. package/lib/templates/BaseInputTemplate.js.map +1 -1
  14. package/lib/templates/ObjectFieldTemplate.js +5 -4
  15. package/lib/templates/ObjectFieldTemplate.js.map +1 -1
  16. package/lib/templates/OptionalDataControlsTemplate.d.ts +10 -0
  17. package/lib/templates/OptionalDataControlsTemplate.js +22 -0
  18. package/lib/templates/OptionalDataControlsTemplate.js.map +1 -0
  19. package/lib/templates/TitleField.js +8 -4
  20. package/lib/templates/TitleField.js.map +1 -1
  21. package/lib/templates/WrapIfAdditionalTemplate.js +2 -4
  22. package/lib/templates/WrapIfAdditionalTemplate.js.map +1 -1
  23. package/lib/templates/index.js +2 -0
  24. package/lib/templates/index.js.map +1 -1
  25. package/lib/tsconfig.tsbuildinfo +1 -1
  26. package/lib/widgets/CheckboxWidget.js +2 -2
  27. package/lib/widgets/CheckboxWidget.js.map +1 -1
  28. package/lib/widgets/CheckboxesWidget.js +2 -2
  29. package/lib/widgets/CheckboxesWidget.js.map +1 -1
  30. package/lib/widgets/RadioWidget.js +2 -2
  31. package/lib/widgets/RadioWidget.js.map +1 -1
  32. package/lib/widgets/SelectWidget.js +2 -2
  33. package/lib/widgets/SelectWidget.js.map +1 -1
  34. package/lib/widgets/TextareaWidget.js +2 -2
  35. package/lib/widgets/TextareaWidget.js.map +1 -1
  36. package/package.json +7 -7
  37. package/src/templates/ArrayFieldItemTemplate.tsx +3 -3
  38. package/src/templates/ArrayFieldTemplate.tsx +6 -13
  39. package/src/templates/BaseInputTemplate.tsx +3 -2
  40. package/src/templates/ObjectFieldTemplate.tsx +6 -3
  41. package/src/templates/OptionalDataControlsTemplate.tsx +44 -0
  42. package/src/templates/TitleField.tsx +12 -3
  43. package/src/templates/WrapIfAdditionalTemplate.tsx +4 -10
  44. package/src/templates/index.ts +2 -0
  45. package/src/widgets/CheckboxWidget.tsx +2 -1
  46. package/src/widgets/CheckboxesWidget.tsx +2 -1
  47. package/src/widgets/RadioWidget.tsx +2 -1
  48. package/src/widgets/SelectWidget.tsx +2 -1
  49. package/src/widgets/TextareaWidget.tsx +2 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../src/index.ts", "../src/Form/index.ts", "../src/templates/ArrayFieldItemTemplate.tsx", "../src/templates/ArrayFieldTemplate.tsx", "../src/templates/ArrayFieldTitleTemplate.tsx", "../src/templates/BaseInputTemplate.tsx", "../src/utils.ts", "../src/templates/DescriptionField.tsx", "../src/templates/ErrorList.tsx", "../src/templates/icons.tsx", "../src/templates/ButtonTemplates/SubmitButton.tsx", "../src/templates/ButtonTemplates/AddButton.tsx", "../src/templates/ButtonTemplates/IconButton.tsx", "../src/templates/ButtonTemplates/index.ts", "../src/templates/FieldErrorTemplate.tsx", "../src/templates/FieldTemplate.tsx", "../src/templates/FieldHelpTemplate.tsx", "../src/templates/GridTemplate.tsx", "../src/templates/ObjectFieldTemplate.tsx", "../src/templates/TitleField.tsx", "../src/templates/WrapIfAdditionalTemplate.tsx", "../src/templates/MultiSchemaFieldTemplate.tsx", "../src/templates/index.ts", "../src/widgets/index.ts", "../src/widgets/DateTime/AltDateWidget.tsx", "../src/widgets/DateTime/AltDateTimeWidget.tsx", "../src/widgets/DateTime/DateTimeInput.tsx", "../src/widgets/DateTime/DateWidget.tsx", "../src/widgets/DateTime/DateTimeWidget.tsx", "../src/widgets/DateTime/TimeWidget.tsx", "../src/widgets/CheckboxesWidget.tsx", "../src/widgets/CheckboxWidget.tsx", "../src/widgets/ColorWidget.tsx", "../src/widgets/FileWidget.tsx", "../src/widgets/PasswordWidget.tsx", "../src/widgets/RadioWidget.tsx", "../src/widgets/RangeWidget.tsx", "../src/widgets/SelectWidget.tsx", "../src/widgets/TextareaWidget.tsx", "../src/Theme/index.ts"],
4
- "sourcesContent": ["import Form, { generateForm } from './Form';\nimport Templates, { generateTemplates } from './templates';\nimport Theme, { generateTheme } from './Theme';\nimport Widgets, { generateWidgets } from './widgets';\n\nexport { Form, Templates, Theme, Widgets, generateForm, generateTemplates, generateTheme, generateWidgets };\n\nexport default Form;\n", "import { ComponentType } from 'react';\nimport { FormProps, withTheme } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTheme } from '../Theme';\n\nexport function generateForm<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ComponentType<FormProps<T, S, F>> {\n return withTheme<T, S, F>(generateTheme<T, S, F>());\n}\n\nexport default generateForm();\n", "import {\n ArrayFieldItemTemplateType,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Box, Flex, Group } from '@mantine/core';\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldItemTemplateType` props for the component\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 { buttonsProps, className, hasToolbar, index, uiSchema, registry, children } = 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\n return (\n <Box key={`array-item-${index}`} className={className || 'rjsf-array-item'} mb='xs'>\n <Flex gap='xs' align='end' justify='center'>\n <Box w='100%'>{children}</Box>\n {hasToolbar && (\n <Group wrap='nowrap' gap={2} mb={7}>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} />\n </Group>\n )}\n </Flex>\n </Box>\n );\n}\n", "import {\n getTemplate,\n getUiOptions,\n ArrayFieldTemplateProps,\n ArrayFieldItemTemplateType,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Fieldset, Box, Group } from '@mantine/core';\n\n/** The `ArrayFieldTemplate` component is the template used to render all items in an array.\n *\n * @param props - The `ArrayFieldItemTemplateType` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n canAdd,\n className,\n disabled,\n fieldPathId,\n items,\n onAddClick,\n readonly,\n required,\n schema,\n uiSchema,\n title,\n registry,\n } = props;\n\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\n const legend = (uiOptions.title || title) && (\n <ArrayFieldTitleTemplate\n fieldPathId={fieldPathId}\n required={required}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n );\n\n return (\n <Fieldset legend={legend} className={className} id={fieldPathId.$id}>\n {(uiOptions.description || schema.description) && (\n <ArrayFieldDescriptionTemplate\n description={uiOptions.description || schema.description}\n fieldPathId={fieldPathId}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n\n <Box className='row rjsf-array-item-list'>\n {items &&\n items.map(({ key, ...itemProps }: ArrayFieldItemTemplateType<T, S, F>) => (\n <ArrayFieldItemTemplate key={key} {...itemProps} />\n ))}\n </Box>\n\n {canAdd && (\n <Group justify='flex-end'>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-array-item-add'\n disabled={disabled || readonly}\n onClick={onAddClick}\n uiSchema={uiSchema}\n registry={registry}\n iconType='md'\n />\n </Group>\n )}\n </Fieldset>\n );\n}\n", "import {\n getUiOptions,\n titleId,\n ArrayFieldTitleProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Title } from '@mantine/core';\n\n/** The `ArrayFieldTitleTemplate` component renders a `TitleFieldTemplate` with an `id` derived from\n * the `fieldPathId`.\n *\n * @param props - The `ArrayFieldTitleProps` for the component\n */\nexport default function ArrayFieldTitleTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTitleProps<T, S, F>) {\n const { fieldPathId, title, uiSchema, registry } = props;\n\n const options = getUiOptions<T, S, F>(uiSchema, registry.globalUiOptions);\n const { label: displayLabel = true } = options;\n if (!title || !displayLabel) {\n return null;\n }\n return (\n <Title id={titleId(fieldPathId)} order={4} fw='normal'>\n {title}\n </Title>\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { TextInput, NumberInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `BaseInputTemplate` is the template to use to render the basic `<input>` component for the `core` theme.\n * It is used as the template for rendering many of the <input> based widgets that differ by `type` and callbacks only.\n * It can be customized/overridden for other themes or individual implementations as needed.\n *\n * @param props - The `WidgetProps` for this template\n */\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: BaseInputTemplateProps<T, S, F>) {\n const {\n id,\n type,\n schema,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n options,\n rawErrors,\n children,\n } = props;\n\n const inputProps = getInputProps<T, S, F>(schema, type, options, false);\n const themeProps = cleanupOptions(options);\n\n const handleNumberChange = useCallback((value: number | string) => onChange(value), [onChange]);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const handler = onChangeOverride ? onChangeOverride : onChange;\n const value = e.target.value === '' ? (options.emptyValue ?? '') : e.target.value;\n handler(value);\n },\n [onChange, onChangeOverride, options],\n );\n\n const handleBlur = useCallback(\n (e: FocusEvent<HTMLInputElement>) => {\n onBlur(id, e.target && e.target.value);\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n (e: FocusEvent<HTMLInputElement>) => {\n onFocus(id, e.target && e.target.value);\n },\n [onFocus, id],\n );\n\n const input =\n inputProps.type === 'number' || inputProps.type === 'integer' ? (\n <NumberInput\n id={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n onBlur={!readonly ? handleBlur : undefined}\n onChange={!readonly ? handleNumberChange : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n placeholder={placeholder}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n list={schema.examples ? examplesId(id) : undefined}\n {...inputProps}\n {...themeProps}\n step={typeof inputProps.step === 'number' ? inputProps.step : 1}\n type='text'\n value={value}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n ) : (\n <TextInput\n id={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n onBlur={!readonly ? handleBlur : undefined}\n onChange={!readonly ? handleChange : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n placeholder={placeholder}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n list={schema.examples ? examplesId(id) : undefined}\n {...inputProps}\n {...themeProps}\n value={value}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n );\n\n return (\n <>\n {input}\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) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n", "import { UIOptionsType } from '@rjsf/utils';\n\nconst uiOptionsKeys: Array<keyof UIOptionsType> = [\n 'emptyValue',\n 'classNames',\n 'title',\n 'help',\n 'autocomplete',\n 'disabled',\n 'enumDisabled',\n 'hideError',\n 'readonly',\n 'order',\n 'filePreview',\n 'inline',\n 'inputType',\n 'submitButtonOptions',\n 'widget',\n 'enumNames',\n 'addable',\n 'copyable',\n 'orderable',\n 'removable',\n 'duplicateKeySuffixSeparator',\n 'enumOptions',\n 'enableMarkdownInDescription',\n];\n\nexport function cleanupOptions<T extends object>(options: T): Omit<T, keyof UIOptionsType> {\n const result = {} as T;\n for (const key in options) {\n if (!uiOptionsKeys.includes(key as keyof UIOptionsType)) {\n result[key] = options[key];\n }\n }\n return result as Omit<T, keyof UIOptionsType>;\n}\n", "import { DescriptionFieldProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { RichDescription } from '@rjsf/core';\nimport { Text } from '@mantine/core';\n\n/** The `DescriptionField` is the template to use to render the description of a field\n *\n * @param props - The `DescriptionFieldProps` for this component\n */\nexport default function DescriptionField<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: DescriptionFieldProps<T, S, F>) {\n const { id, description, registry, uiSchema } = props;\n if (description) {\n return (\n <Text id={id} mt={3} mb='sm'>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\n </Text>\n );\n }\n\n return null;\n}\n", "import { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport { Alert, Title, List } from '@mantine/core';\n\nimport { ExclamationCircle } from './icons';\n\n/** The `ErrorList` component is the template that renders the all the errors associated with the fields in the `Form`\n *\n * @param props - The `ErrorListProps` for this component\n */\nexport default function ErrorList<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n errors,\n registry,\n}: ErrorListProps<T, S, F>) {\n const { translateString } = registry;\n\n return (\n <Alert\n color='red'\n variant='transparent'\n title={\n <Title order={5} fw='normal'>\n {translateString(TranslatableString.ErrorsLabel)}\n </Title>\n }\n icon={<ExclamationCircle />}\n >\n <List>\n {errors.map((error, index) => (\n <List.Item key={`error-${index}`} c='red'>\n {error.stack}\n </List.Item>\n ))}\n </List>\n </Alert>\n );\n}\n", "import { ComponentPropsWithoutRef } from 'react';\n\ninterface IconProps extends ComponentPropsWithoutRef<'svg'> {\n size?: number | string;\n}\n\nexport function Plus({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-plus'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M12 5l0 14' />\n <path d='M5 12l14 0' />\n </svg>\n );\n}\n\nexport function Copy({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-copy'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z' />\n <path d='M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1' />\n </svg>\n );\n}\n\nexport function ChevronDown({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-chevron-down'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M6 9l6 6l6 -6' />\n </svg>\n );\n}\n\nexport function ChevronUp({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-chevron-up'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M6 15l6 -6l6 6' />\n </svg>\n );\n}\n\nexport function X({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-x'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M18 6l-12 12' />\n <path d='M6 6l12 12' />\n </svg>\n );\n}\n\nexport function ExclamationCircle({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-exclamation-circle'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path d='M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0' />\n <path d='M12 9v4' />\n <path d='M12 16v.01' />\n </svg>\n );\n}\n", "import { Button } from '@mantine/core';\nimport { getSubmitButtonOptions, FormContextType, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\n/** The `SubmitButton` renders a button that represent the `Submit` action on a form\n */\nexport default function SubmitButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ uiSchema }: SubmitButtonProps<T, S, F>) {\n const { submitText, norender, props: submitButtonProps = {} } = getSubmitButtonOptions(uiSchema);\n if (norender) {\n return null;\n }\n return (\n <Button type='submit' variant='filled' {...submitButtonProps}>\n {submitText}\n </Button>\n );\n}\n", "import { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nimport IconButton from './IconButton';\nimport { Plus } from '../icons';\n\n/** The `AddButton` renders a button that represent the `Add` action on a form\n */\nexport default function AddButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.AddItemButton)} variant='subtle' {...props} icon={<Plus />} />\n );\n}\n", "import { MouseEventHandler } from 'react';\nimport { ActionIcon, ActionIconProps } from '@mantine/core';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nimport { Copy, ChevronDown, ChevronUp, X } from '../icons';\n\nexport type MantineIconButtonProps<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n> = IconButtonProps<T, S, F> & Omit<ActionIconProps, 'onClick'>;\n\nexport default function IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const { icon, iconType = 'sm', color, onClick, uiSchema, registry, ...otherProps } = props;\n return (\n <ActionIcon\n size={iconType as ActionIconProps['size']}\n color={color as ActionIconProps['color']}\n onClick={onClick as MouseEventHandler<HTMLAnchorElement> & MouseEventHandler<HTMLButtonElement>}\n {...otherProps}\n >\n {icon}\n </ActionIcon>\n );\n}\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.CopyButton)} variant='subtle' {...props} icon={<Copy />} />\n );\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.MoveDownButton)}\n variant='subtle'\n {...props}\n icon={<ChevronDown />}\n />\n );\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.MoveUpButton)}\n variant='subtle'\n {...props}\n icon={<ChevronUp />}\n />\n );\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.RemoveButton)}\n variant='subtle'\n color='red'\n {...props}\n icon={<X />}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\nimport SubmitButton from './SubmitButton';\nimport AddButton from './AddButton';\nimport { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } from './IconButton';\n\nfunction buttonTemplates<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): TemplatesType<T, S, F>['ButtonTemplates'] {\n return {\n SubmitButton,\n AddButton,\n CopyButton,\n MoveDownButton,\n MoveUpButton,\n RemoveButton,\n };\n}\n\nexport default buttonTemplates;\n", "import { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Box, List } from '@mantine/core';\n\n/** The `FieldErrorTemplate` component renders the errors local to the particular field\n *\n * @param props - The `FieldErrorProps` for the errors being rendered\n */\nexport default function FieldErrorTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ errors, fieldPathId }: FieldErrorProps<T, S, F>) {\n if (!errors || !errors.length) {\n return null;\n }\n // In mantine, errors are handled directly in each component, so there is no need to render a separate error template.\n const id = errorId(fieldPathId);\n return (\n <Box id={id} c='red' display='none'>\n <List>\n {errors.map((error, index) => (\n <List.Item key={`field-error-${index}`}>{error}</List.Item>\n ))}\n </List>\n </Box>\n );\n}\n", "import { Box } from '@mantine/core';\nimport {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\n\n/** The `FieldTemplate` component is the template used by `SchemaField` to render any field. It renders the field\n * content, (label, description, children, errors and help) inside a `WrapIfAdditional` component.\n *\n * @param props - The `FieldTemplateProps` for this component\n */\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: FieldTemplateProps<T, S, F>) {\n const {\n id,\n classNames,\n style,\n label,\n errors,\n help,\n displayLabel,\n description,\n rawDescription,\n hidden,\n schema,\n uiSchema,\n registry,\n children,\n ...otherProps\n } = props;\n\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions,\n );\n\n if (hidden) {\n return <Box display='none'>{children}</Box>;\n }\n\n return (\n <WrapIfAdditionalTemplate\n id={id}\n classNames={classNames}\n style={style}\n label={label}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n {...otherProps}\n >\n {children}\n {errors}\n {help}\n </WrapIfAdditionalTemplate>\n );\n}\n", "import { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Text } from '@mantine/core';\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 } = props;\n\n const id = helpId(fieldPathId);\n\n return !help ? null : (\n <Text id={id} size='sm' my='xs' c='dimmed'>\n {help}\n </Text>\n );\n}\n", "import { Container, Grid } from '@mantine/core';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for mantine, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Grid`/`Grid.Col`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the Mantine grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, fluid = true, ...rest } = props;\n\n if (column) {\n return <Grid.Col {...rest}>{children}</Grid.Col>;\n }\n\n // Grid with fluid container\n if (fluid) {\n return (\n <Container p='4' mx={0} w='100%'>\n <Grid {...rest}>{children}</Grid>\n </Container>\n );\n }\n // Grid without container\n return (\n <Grid grow {...rest}>\n {children}\n </Grid>\n );\n}\n", "import { Box, Container, Group, MantineSpacing, SimpleGrid } from '@mantine/core';\nimport {\n buttonId,\n canExpand,\n descriptionId,\n FormContextType,\n getTemplate,\n getUiOptions,\n ObjectFieldTemplatePropertyType,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n titleId,\n} from '@rjsf/utils';\n\n/** The `ObjectFieldTemplate` is the template to use to render all the inner properties of an object along with the\n * title and description if available. If the object is expandable, then an `AddButton` is also rendered after all\n * the properties.\n *\n * @param props - The `ObjectFieldTemplateProps` for this component\n */\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ObjectFieldTemplateProps<T, S, F>) {\n const {\n title,\n description,\n disabled,\n properties,\n onAddClick,\n readonly,\n required,\n schema,\n uiSchema,\n fieldPathId,\n formData,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, uiOptions);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions,\n );\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n const gridCols = (typeof uiOptions?.gridCols === 'number' && uiOptions?.gridCols) || undefined;\n const gridSpacing = uiOptions?.gridSpacing;\n const gridVerticalSpacing = uiOptions?.gridVerticalSpacing;\n\n return (\n <Container id={fieldPathId.$id} p={0}>\n {title && (\n <TitleFieldTemplate\n id={titleId(fieldPathId)}\n title={title}\n required={required}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\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 <SimpleGrid\n cols={gridCols}\n spacing={gridSpacing as MantineSpacing | undefined}\n verticalSpacing={gridVerticalSpacing as MantineSpacing | undefined}\n mb='sm'\n >\n {properties\n .filter((e) => !e.hidden)\n .map((element: ObjectFieldTemplatePropertyType) => (\n <Box key={element.name}>{element.content}</Box>\n ))}\n </SimpleGrid>\n\n {canExpand(schema, uiSchema, formData) && (\n <Group mt='xs' justify='flex-end'>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n disabled={disabled || readonly}\n onClick={onAddClick(schema)}\n className='rjsf-object-property-expand'\n uiSchema={uiSchema}\n registry={registry}\n />\n </Group>\n )}\n </Container>\n );\n}\n", "import { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Title } from '@mantine/core';\n\n/** The `TitleField` is the template to use to render the title of a field\n *\n * @param props - The `TitleFieldProps` for this component\n */\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: TitleFieldProps<T, S, F>,\n) {\n const { id, title } = props;\n return title ? (\n <Title id={id} order={3} fw='normal'>\n {title}\n </Title>\n ) : null;\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n ADDITIONAL_PROPERTY_FLAG,\n UI_OPTIONS_KEY,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\nimport { Flex, Grid, TextInput } from '@mantine/core';\n\n/** The `WrapIfAdditional` component is used by the `FieldTemplate` to rename, or remove properties that are\n * part of an `additionalProperties` part of a schema.\n *\n * @param props - The `WrapIfAdditionalProps` for this component\n */\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WrapIfAdditionalTemplateProps<T, S, F>) {\n const {\n id,\n classNames,\n style,\n label,\n required,\n readonly,\n disabled,\n schema,\n uiSchema,\n onKeyChange,\n onDropPropertyClick,\n registry,\n children,\n } = props;\n const { templates, translateString } = registry;\n // Button templates are not overridden in the uiSchema\n const { RemoveButton } = templates.ButtonTemplates;\n const keyLabel = translateString(TranslatableString.KeyLabel, [label]);\n const additional = ADDITIONAL_PROPERTY_FLAG in schema;\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => onKeyChange(target && target.value),\n [onKeyChange],\n );\n\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n // The `block` prop is not part of the `IconButtonProps` defined in the template, so put it into the uiSchema instead\n const uiOptions = uiSchema ? uiSchema[UI_OPTIONS_KEY] : {};\n const buttonUiOptions = {\n ...uiSchema,\n [UI_OPTIONS_KEY]: { ...uiOptions, block: true },\n };\n\n return (\n <div className={classNames} style={style}>\n <Flex gap='xs' align='end' justify='center'>\n <Grid w='100%' align='center'>\n <Grid.Col span={6} className='form-additional'>\n <div className='form-group'>\n <TextInput\n className='form-group'\n label={keyLabel}\n defaultValue={label}\n required={required}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? handleBlur : undefined}\n />\n </div>\n </Grid.Col>\n <Grid.Col span={6} className='form-additional'>\n {children}\n </Grid.Col>\n </Grid>\n <RemoveButton\n id={buttonId(id, 'remove')}\n iconType='sm'\n className='rjsf-array-item-remove'\n disabled={disabled || readonly}\n onClick={onDropPropertyClick(label)}\n uiSchema={buttonUiOptions}\n registry={registry}\n />\n </Flex>\n </div>\n );\n}\n", "import { Stack } from '@mantine/core';\nimport { FormContextType, MultiSchemaFieldTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 <Stack style={{ marginBottom: '1rem' }}>\n {selector}\n {optionSchemaField}\n </Stack>\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\n\nimport ArrayFieldItemTemplate from './ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from './ArrayFieldTemplate';\nimport ArrayFieldTitleTemplate from './ArrayFieldTitleTemplate';\nimport BaseInputTemplate from './BaseInputTemplate';\nimport DescriptionField from './DescriptionField';\nimport ErrorList from './ErrorList';\nimport ButtonTemplates from './ButtonTemplates';\nimport FieldErrorTemplate from './FieldErrorTemplate';\nimport FieldTemplate from './FieldTemplate';\nimport FieldHelpTemplate from './FieldHelpTemplate';\nimport GridTemplate from './GridTemplate';\nimport ObjectFieldTemplate from './ObjectFieldTemplate';\nimport TitleField from './TitleField';\nimport WrapIfAdditionalTemplate from './WrapIfAdditionalTemplate';\nimport MultiSchemaFieldTemplate from './MultiSchemaFieldTemplate';\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 ArrayFieldTitleTemplate,\n BaseInputTemplate,\n ButtonTemplates: ButtonTemplates<T, S, F>(),\n DescriptionFieldTemplate: DescriptionField,\n ErrorListTemplate: ErrorList,\n FieldErrorTemplate,\n FieldTemplate,\n FieldHelpTemplate,\n GridTemplate,\n ObjectFieldTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n MultiSchemaFieldTemplate,\n };\n}\n\nexport default generateTemplates();\n", "import { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\n\nimport { AltDateTimeWidget, AltDateWidget, DateWidget, DateTimeWidget, TimeWidget } from './DateTime';\nimport CheckboxesWidget from './CheckboxesWidget';\nimport CheckboxWidget from './CheckboxWidget';\nimport ColorWidget from './ColorWidget';\nimport FileWidget from './FileWidget';\nimport PasswordWidget from './PasswordWidget';\nimport RadioWidget from './RadioWidget';\nimport RangeWidget from './RangeWidget';\nimport SelectWidget from './SelectWidget';\nimport TextareaWidget from './TextareaWidget';\n\n// This plugin is needed to support the parsing of date and time values in the `DateWidget` and `DateTimeWidget`\ndayjs.extend(customParseFormat);\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 AltDateTimeWidget,\n AltDateWidget,\n CheckboxesWidget,\n CheckboxWidget,\n ColorWidget,\n FileWidget,\n DateTimeWidget,\n DateWidget,\n PasswordWidget,\n RadioWidget,\n RangeWidget,\n SelectWidget,\n TextareaWidget,\n TimeWidget,\n };\n}\n\nexport default generateWidgets();\n", "import { useCallback, useEffect, useState } from 'react';\nimport {\n ariaDescribedByIds,\n dateRangeOptions,\n parseDateString,\n toDateString,\n getDateElementProps,\n titleId,\n DateObject,\n type DateElementFormat,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Flex, Box, Group, Button, Select, Input } from '@mantine/core';\n\nfunction readyForChange(state: DateObject) {\n return Object.values(state).every((value) => value !== -1);\n}\n\n/** The `AltDateWidget` is an alternative widget for rendering date properties.\n * @param props - The `WidgetProps` for this component\n */\nexport default function AltDateWidget<\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 required,\n disabled,\n readonly,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n showTime = false,\n registry,\n } = props;\n\n const { translateString } = registry;\n const [state, setState] = useState(parseDateString(value, showTime));\n\n useEffect(() => {\n setState(parseDateString(value, showTime));\n }, [showTime, value]);\n\n const handleChange = useCallback(\n (property: keyof DateObject, nextValue: any) => {\n const nextState = {\n ...state,\n [property]: typeof nextValue === 'undefined' ? -1 : nextValue,\n };\n\n if (readyForChange(nextState)) {\n onChange(toDateString(nextState, showTime));\n } else {\n setState(nextState);\n }\n },\n [state, onChange, showTime],\n );\n\n const handleSetNow = useCallback(() => {\n if (!disabled && !readonly) {\n const nextState = parseDateString(new Date().toJSON(), showTime);\n onChange(toDateString(nextState, showTime));\n }\n }, [disabled, readonly, showTime, onChange]);\n\n const handleClear = useCallback(() => {\n if (!disabled && !readonly) {\n onChange('');\n }\n }, [disabled, readonly, onChange]);\n\n return (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n <Flex gap='xs' align='center' wrap='nowrap'>\n {getDateElementProps(\n state,\n showTime,\n options.yearsRange as [number, number] | undefined,\n options.format as DateElementFormat | undefined,\n ).map((elemProps, i) => {\n const elemId = id + '_' + elemProps.type;\n return (\n <Box key={i}>\n <Select\n id={elemId}\n name={elemId}\n placeholder={elemProps.type}\n disabled={disabled || readonly}\n data={dateRangeOptions<S>(elemProps.range[0], elemProps.range[1]).map((item) => item.value.toString())}\n value={!elemProps.value || elemProps.value < 0 ? null : elemProps.value.toString()}\n onChange={(v) => handleChange(elemProps.type as keyof DateObject, v)}\n searchable={false}\n allowDeselect={false}\n comboboxProps={{ withinPortal: false }}\n aria-describedby={ariaDescribedByIds(elemId)}\n />\n </Box>\n );\n })}\n <Group wrap='nowrap' gap={3}>\n {(options.hideNowButton !== 'undefined' ? !options.hideNowButton : true) && (\n <Button variant='subtle' size='xs' onClick={handleSetNow}>\n {translateString(TranslatableString.NowLabel)}\n </Button>\n )}\n {(options.hideClearButton !== 'undefined' ? !options.hideClearButton : true) && (\n <Button variant='subtle' size='xs' onClick={handleClear}>\n {translateString(TranslatableString.ClearLabel)}\n </Button>\n )}\n </Group>\n </Flex>\n {rawErrors &&\n rawErrors?.length > 0 &&\n rawErrors.map((error: string, index: number) => (\n <Input.Error key={`alt-date-widget-input-errors-${index}`}>{error}</Input.Error>\n ))}\n </>\n );\n}\n\nAltDateWidget.defaultProps = {\n showTime: false,\n};\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport _AltDateWidget from './AltDateWidget';\n\n/** The `AltDateTimeWidget` is an alternative widget for rendering datetime properties.\n * It uses the AltDateWidget for rendering, with the `time` prop set to true by default.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function AltDateTimeWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const { AltDateWidget } = props.registry.widgets;\n return <AltDateWidget showTime {...props} />;\n}\n\nAltDateTimeWidget.defaultProps = {\n ..._AltDateWidget?.defaultProps,\n showTime: true,\n};\n", "import { useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport dayjs from 'dayjs';\nimport { DateInput } from '@mantine/dates';\n\nconst dateParser = (input: string, format: string) => {\n if (!input) {\n return null;\n }\n const d = dayjs(input, format);\n return d.isValid() ? d.toDate() : null;\n};\n\nconst dateFormat = (date?: Date, format?: string) => {\n if (!date) {\n return '';\n }\n return dayjs(date).format(format || 'YYYY-MM-DD');\n};\n\n/** The `DateTimeInput` is a base component that used by other Date-Time widget components.\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateTimeInput<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n valueFormat,\n displayFormat,\n } = props;\n\n const handleChange = useCallback(\n (nextValue: any) => {\n onChange(dateFormat(nextValue, valueFormat as string));\n },\n [onChange, valueFormat],\n );\n\n const handleBlur = useCallback(() => {\n if (onBlur) {\n onBlur(id, value);\n }\n }, [onBlur, id, value]);\n\n const handleFocus = useCallback(() => {\n if (onFocus) {\n onFocus(id, value);\n }\n }, [onFocus, id, value]);\n\n return (\n <DateInput\n id={id}\n name={name}\n value={dateParser(value, valueFormat as string)}\n dateParser={(v) => dateParser(v, displayFormat as string)}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...options}\n aria-describedby={ariaDescribedByIds(id)}\n popoverProps={{ withinPortal: false }}\n classNames={typeof options?.classNames === 'object' ? options.classNames : undefined}\n valueFormat={displayFormat}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport DateTimeInput from './DateTimeInput';\n\n/** The `DateWidget` component uses the `DateTimeInput` changing the valueFormat to show `date`\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const { valueFormat = 'YYYY-MM-DD', displayFormat, ...otherOptions } = props.options;\n\n return (\n <DateTimeInput\n {...props}\n options={otherOptions}\n valueFormat={valueFormat}\n displayFormat={displayFormat || valueFormat}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport DateTimeInput from './DateTimeInput';\n\n/** The `DateWidget` component uses the `DateTimeInput` changing the valueFormat to show `datetime`\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateTimeWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const { valueFormat = 'YYYY-MM-DD HH:mm:ss', displayFormat, ...otherOptions } = props.options;\n\n return (\n <DateTimeInput\n {...props}\n options={otherOptions}\n valueFormat={valueFormat}\n displayFormat={displayFormat || valueFormat}\n />\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { TimeInput } from '@mantine/dates';\n\n/** The `TimeWidget` component uses the `TimeInput` component from `@mantine/dates` for rendering.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TimeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const emptyValue = options.emptyValue || '';\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <TimeInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...options}\n aria-describedby={ariaDescribedByIds(id)}\n classNames={typeof options?.classNames === 'object' ? options.classNames : undefined}\n />\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsValueForIndex,\n enumOptionsIndexForValue,\n optionId,\n titleId,\n FormContextType,\n WidgetProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Checkbox, Flex, Input } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `CheckboxesWidget` is a widget for rendering checkbox groups.\n * It is typically used to represent an array of enums.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, true) as string[];\n\n return Array.isArray(enumOptions) && enumOptions.length > 0 ? (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n <Checkbox.Group\n id={id}\n value={selectedIndexes}\n onChange={handleChange}\n required={required}\n readOnly={disabled || readonly}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n >\n {Array.isArray(enumOptions) ? (\n <Flex mt='xs' direction={inline ? 'row' : 'column'} gap='xs' wrap='wrap'>\n {enumOptions.map((option, i) => (\n <Checkbox\n key={i}\n id={optionId(id, i)}\n name={id}\n value={String(i)}\n label={option.label}\n disabled={Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1}\n autoFocus={i === 0 && autofocus}\n onBlur={handleBlur}\n onFocus={handleFocus}\n />\n ))}\n </Flex>\n ) : null}\n </Checkbox.Group>\n </>\n ) : null;\n}\n", "import { ReactElement, ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n descriptionId,\n getTemplate,\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { Checkbox } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `CheckBoxWidget` is a widget for rendering boolean properties.\n * It is typically used to represent a boolean.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>): ReactElement {\n const {\n id,\n name,\n value = false,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n schema,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n registry,\n uiSchema,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n options,\n );\n\n const handleCheckboxChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n if (!disabled && !readonly && onChange) {\n onChange(e.currentTarget.checked);\n }\n },\n [onChange, disabled, readonly],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target.checked);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target.checked);\n }\n },\n [onFocus, id],\n );\n\n const description = options.description || schema.description;\n return (\n <>\n {!hideLabel && !!description && (\n <DescriptionFieldTemplate\n id={descriptionId(id)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Checkbox\n id={id}\n name={name}\n label={labelValue(label || undefined, hideLabel, false)}\n disabled={disabled || readonly}\n required={required}\n autoFocus={autofocus}\n checked={typeof value === 'undefined' ? false : value === 'true' || value}\n onChange={handleCheckboxChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n />\n </>\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { ColorInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `ColorWidget` component uses the `ColorInput` from Mantine, allowing users to pick a color.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function ColorWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: string) => {\n onChange(nextValue);\n },\n [onChange],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <ColorInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n popoverProps={{ withinPortal: false }}\n />\n );\n}\n", "import { useCallback } from 'react';\nimport {\n dataURItoBlob,\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { FileInput, Pill } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\nfunction addNameToDataURL(dataURL: string, name: string) {\n if (dataURL === null) {\n return null;\n }\n return dataURL.replace(';base64', `;name=${encodeURIComponent(name)};base64`);\n}\n\ntype FileInfoType = {\n dataURL?: string | null;\n name: string;\n size: number;\n type: string;\n};\n\nfunction processFile(file: File): Promise<FileInfoType> {\n const { name, size, type } = file;\n return new Promise((resolve, reject) => {\n const reader = new window.FileReader();\n reader.onerror = reject;\n reader.onload = (event) => {\n if (typeof event.target?.result === 'string') {\n resolve({\n dataURL: addNameToDataURL(event.target.result, name),\n name,\n size,\n type,\n });\n } else {\n resolve({\n dataURL: null,\n name,\n size,\n type,\n });\n }\n };\n reader.readAsDataURL(file);\n });\n}\n\nfunction processFiles(files: FileList) {\n return Promise.all(Array.from(files).map(processFile));\n}\n\nfunction extractFileInfo(dataURLs: string[]): FileInfoType[] {\n return dataURLs.reduce((acc, dataURL) => {\n if (!dataURL) {\n return acc;\n }\n try {\n const { blob, name } = dataURItoBlob(dataURL);\n return [\n ...acc,\n {\n dataURL,\n name: name,\n size: blob.size,\n type: blob.type,\n },\n ];\n } catch (e) {\n console.log(e);\n // Invalid dataURI, so just ignore it.\n return acc;\n }\n }, [] as FileInfoType[]);\n}\n\n/**\n * The `FileWidget` is a widget for rendering file upload fields.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function FileWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n multiple,\n onChange,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (files: any) => {\n if (typeof files === 'object') {\n processFiles(multiple ? files : [files]).then((filesInfoEvent) => {\n const newValue = filesInfoEvent.map((fileInfo) => fileInfo.dataURL);\n if (multiple) {\n onChange(value.concat(newValue));\n } else {\n onChange(newValue[0]);\n }\n });\n }\n return;\n },\n [multiple, value, onChange],\n );\n\n const handleRemoveFile = useCallback(\n (index: number) => {\n if (multiple) {\n const newValue = value.filter((_: any, i: number) => i !== index);\n onChange(newValue);\n } else {\n onChange(undefined);\n }\n },\n [multiple, value, onChange],\n );\n\n const ValueComponent = useCallback(\n (props: any) => {\n const filesInfo = props.value ? extractFileInfo(Array.isArray(props.value) ? props.value : [props.value]) : null;\n if (Array.isArray(filesInfo) && filesInfo.length > 0) {\n return (\n <Pill.Group>\n {filesInfo.map((file, index) => (\n <Pill key={index} withRemoveButton onRemove={() => handleRemoveFile(index)}>\n {file.name}\n </Pill>\n ))}\n </Pill.Group>\n );\n }\n return null;\n },\n [handleRemoveFile],\n );\n\n return (\n <FileInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n multiple={!!multiple}\n valueComponent={ValueComponent}\n onChange={handleChange}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { PasswordInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/**\n * The `PasswordWidget` component renders a password input element.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function PasswordWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const emptyValue = options.emptyValue || '';\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <PasswordInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Radio, Flex } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `RadioWidget` is a widget for rendering a radio group.\n * It is typically used with a string property constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selected = enumOptionsIndexForValue<S>(value, enumOptions) as string;\n\n return (\n <Radio.Group\n id={id}\n name={id}\n value={selected}\n label={!hideLabel ? label : undefined}\n onChange={handleChange}\n required={required}\n readOnly={disabled || readonly}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n >\n {Array.isArray(enumOptions) ? (\n <Flex mt='xs' direction={inline ? 'row' : 'column'} gap='xs' wrap='wrap'>\n {enumOptions.map((option, i) => (\n <Radio\n key={i}\n id={optionId(id, i)}\n value={String(i)}\n label={option.label}\n disabled={Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1}\n autoFocus={i === 0 && autofocus}\n onBlur={handleBlur}\n onFocus={handleFocus}\n />\n ))}\n </Flex>\n ) : null}\n </Radio.Group>\n );\n}\n", "import { useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n rangeSpec,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n titleId,\n} from '@rjsf/utils';\nimport { Slider, Input } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `RangeWidget` component uses the `BaseInputTemplate` changing the type to `range` and wrapping the result\n * in a div, with the value alongside it.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n schema,\n } = props;\n\n const themeProps = cleanupOptions(options);\n const { min, max, step } = rangeSpec(schema);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(nextValue);\n }\n },\n [onChange, disabled, readonly],\n );\n\n const handleBlur = useCallback(() => {\n if (onBlur) {\n onBlur(id, value);\n }\n }, [onBlur, id, value]);\n\n const handleFocus = useCallback(() => {\n if (onFocus) {\n onFocus(id, value);\n }\n }, [onFocus, id, value]);\n\n return (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n {options?.description && <Input.Description>{options.description}</Input.Description>}\n <Slider\n id={id}\n name={name}\n value={value}\n max={max}\n min={min}\n step={step}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n {rawErrors &&\n rawErrors?.length > 0 &&\n rawErrors.map((error: string, index: number) => (\n <Input.Error key={`range-widget-input-errors-${index}`}>{error}</Input.Error>\n ))}\n </>\n );\n}\n", "import { FocusEvent, useCallback, useMemo } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Select, MultiSelect } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `SelectWidget` is a widget for rendering dropdowns.\n * It is typically used with string properties constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function SelectWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n multiple,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n const selectOptions = useMemo(() => {\n if (Array.isArray(enumOptions)) {\n return enumOptions.map((option, index) => ({\n key: String(index),\n value: String(index),\n label: option.label,\n disabled: Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1,\n }));\n }\n return [];\n }, [enumDisabled, enumOptions]);\n\n const Component = multiple ? MultiSelect : Select;\n\n return (\n <Component\n id={id}\n name={id}\n label={labelValue(label || undefined, hideLabel, false)}\n data={selectOptions}\n value={multiple ? (selectedIndexes as any) : (selectedIndexes as string)}\n onChange={!readonly ? handleChange : undefined}\n onBlur={!readonly ? handleBlur : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n autoFocus={autofocus}\n placeholder={placeholder}\n disabled={disabled || readonly}\n required={required}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n searchable\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n comboboxProps={{ withinPortal: false }}\n />\n );\n}\n", "import { ReactElement, ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { Textarea } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `TextareaWidget` is a widget for rendering input fields as textarea.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>): ReactElement {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const themeProps = cleanupOptions(options);\n const emptyValue = options?.emptyValue ?? '';\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLTextAreaElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLTextAreaElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLTextAreaElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <Textarea\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n />\n );\n}\n", "import { ThemeProps } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTemplates } from '../templates';\nimport { generateWidgets } from '../widgets';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n };\n}\n\nexport default generateTheme();\n"],
5
- "mappings": "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",
6
- "names": ["import_core", "import_utils", "import_core", "import_jsx_runtime", "ArrayFieldItemTemplate", "ArrayFieldTitleTemplate", "AddButton", "import_utils", "import_core", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "value", "import_core", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "import_utils", "import_core", "import_utils", "import_jsx_runtime", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "WrapIfAdditionalTemplate", "import_utils", "import_core", "import_jsx_runtime", "import_core", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "AddButton", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "RemoveButton", "import_core", "import_jsx_runtime", "import_dayjs", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_jsx_runtime", "AltDateWidget", "import_react", "import_utils", "import_jsx_runtime", "dayjs", "import_jsx_runtime", "import_jsx_runtime", "import_react", "import_utils", "import_dates", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "props", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "dayjs", "customParseFormat"]
3
+ "sources": ["../src/index.ts", "../src/Form/index.ts", "../src/templates/ArrayFieldItemTemplate.tsx", "../src/templates/ArrayFieldTemplate.tsx", "../src/templates/ArrayFieldTitleTemplate.tsx", "../src/templates/BaseInputTemplate.tsx", "../src/utils.ts", "../src/templates/DescriptionField.tsx", "../src/templates/ErrorList.tsx", "../src/templates/icons.tsx", "../src/templates/ButtonTemplates/SubmitButton.tsx", "../src/templates/ButtonTemplates/AddButton.tsx", "../src/templates/ButtonTemplates/IconButton.tsx", "../src/templates/ButtonTemplates/index.ts", "../src/templates/FieldErrorTemplate.tsx", "../src/templates/FieldTemplate.tsx", "../src/templates/FieldHelpTemplate.tsx", "../src/templates/GridTemplate.tsx", "../src/templates/ObjectFieldTemplate.tsx", "../src/templates/OptionalDataControlsTemplate.tsx", "../src/templates/TitleField.tsx", "../src/templates/WrapIfAdditionalTemplate.tsx", "../src/templates/MultiSchemaFieldTemplate.tsx", "../src/templates/index.ts", "../src/widgets/index.ts", "../src/widgets/DateTime/AltDateWidget.tsx", "../src/widgets/DateTime/AltDateTimeWidget.tsx", "../src/widgets/DateTime/DateTimeInput.tsx", "../src/widgets/DateTime/DateWidget.tsx", "../src/widgets/DateTime/DateTimeWidget.tsx", "../src/widgets/DateTime/TimeWidget.tsx", "../src/widgets/CheckboxesWidget.tsx", "../src/widgets/CheckboxWidget.tsx", "../src/widgets/ColorWidget.tsx", "../src/widgets/FileWidget.tsx", "../src/widgets/PasswordWidget.tsx", "../src/widgets/RadioWidget.tsx", "../src/widgets/RangeWidget.tsx", "../src/widgets/SelectWidget.tsx", "../src/widgets/TextareaWidget.tsx", "../src/Theme/index.ts"],
4
+ "sourcesContent": ["import Form, { generateForm } from './Form';\nimport Templates, { generateTemplates } from './templates';\nimport Theme, { generateTheme } from './Theme';\nimport Widgets, { generateWidgets } from './widgets';\n\nexport { Form, Templates, Theme, Widgets, generateForm, generateTemplates, generateTheme, generateWidgets };\n\nexport default Form;\n", "import { ComponentType } from 'react';\nimport { FormProps, withTheme } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTheme } from '../Theme';\n\nexport function generateForm<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ComponentType<FormProps<T, S, F>> {\n return withTheme<T, S, F>(generateTheme<T, S, F>());\n}\n\nexport default generateForm();\n", "import {\n ArrayFieldItemTemplateProps,\n FormContextType,\n getTemplate,\n getUiOptions,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Box, Flex, Group } from '@mantine/core';\n\n/** The `ArrayFieldItemTemplate` component is the template used to render an items of an array.\n *\n * @param props - The `ArrayFieldItemTemplateProps` props for the component\n */\nexport default function ArrayFieldItemTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldItemTemplateProps<T, S, F>) {\n const { buttonsProps, className, hasToolbar, index, uiSchema, registry, children } = 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\n return (\n <Box key={`array-item-${index}`} className={className || 'rjsf-array-item'} mb='xs'>\n <Flex gap='xs' align='end' justify='center'>\n <Box w='100%'>{children}</Box>\n {hasToolbar && (\n <Group wrap='nowrap' gap={2} mb={7}>\n <ArrayFieldItemButtonsTemplate {...buttonsProps} />\n </Group>\n )}\n </Flex>\n </Box>\n );\n}\n", "import {\n getTemplate,\n getUiOptions,\n ArrayFieldTemplateProps,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Fieldset, Box, Group } from '@mantine/core';\n\n/** The `ArrayFieldTemplate` component is the template used to render all items in an array.\n *\n * @param props - The `ArrayFieldTemplateProps` props for the component\n */\nexport default function ArrayFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTemplateProps<T, S, F>) {\n const {\n canAdd,\n className,\n disabled,\n fieldPathId,\n items,\n optionalDataControl,\n onAddClick,\n readonly,\n required,\n schema,\n uiSchema,\n title,\n registry,\n } = props;\n\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const ArrayFieldDescriptionTemplate = getTemplate<'ArrayFieldDescriptionTemplate', T, S, F>(\n 'ArrayFieldDescriptionTemplate',\n registry,\n uiOptions,\n );\n const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(\n 'ArrayFieldTitleTemplate',\n registry,\n uiOptions,\n );\n const showOptionalDataControlInTitle = !readonly && !disabled;\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n\n const legend = (uiOptions.title || title) && (\n <ArrayFieldTitleTemplate\n fieldPathId={fieldPathId}\n required={required}\n title={uiOptions.title || title}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n optionalDataControl={showOptionalDataControlInTitle ? optionalDataControl : undefined}\n />\n );\n\n return (\n <Fieldset legend={legend} className={className} id={fieldPathId.$id}>\n {(uiOptions.description || schema.description) && (\n <ArrayFieldDescriptionTemplate\n description={uiOptions.description || schema.description}\n fieldPathId={fieldPathId}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Box className='row rjsf-array-item-list'>\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {items}\n </Box>\n {canAdd && (\n <Group justify='flex-end'>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n className='rjsf-array-item-add'\n disabled={disabled || readonly}\n onClick={onAddClick}\n uiSchema={uiSchema}\n registry={registry}\n iconType='md'\n />\n </Group>\n )}\n </Fieldset>\n );\n}\n", "import {\n getUiOptions,\n titleId,\n ArrayFieldTitleProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Title } from '@mantine/core';\n\n/** The `ArrayFieldTitleTemplate` component renders a `TitleFieldTemplate` with an `id` derived from\n * the `fieldPathId`.\n *\n * @param props - The `ArrayFieldTitleProps` for the component\n */\nexport default function ArrayFieldTitleTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ArrayFieldTitleProps<T, S, F>) {\n const { fieldPathId, title, uiSchema, registry } = props;\n\n const options = getUiOptions<T, S, F>(uiSchema, registry.globalUiOptions);\n const { label: displayLabel = true } = options;\n if (!title || !displayLabel) {\n return null;\n }\n return (\n <Title id={titleId(fieldPathId)} order={4} fw='normal'>\n {title}\n </Title>\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n BaseInputTemplateProps,\n examplesId,\n getInputProps,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { TextInput, NumberInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `BaseInputTemplate` is the template to use to render the basic `<input>` component for the `core` theme.\n * It is used as the template for rendering many of the <input> based widgets that differ by `type` and callbacks only.\n * It can be customized/overridden for other themes or individual implementations as needed.\n *\n * @param props - The `WidgetProps` for this template\n */\nexport default function BaseInputTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: BaseInputTemplateProps<T, S, F>) {\n const {\n id,\n htmlName,\n type,\n schema,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n onChange,\n onChangeOverride,\n onBlur,\n onFocus,\n options,\n rawErrors,\n children,\n } = props;\n\n const inputProps = getInputProps<T, S, F>(schema, type, options, false);\n const themeProps = cleanupOptions(options);\n\n const handleNumberChange = useCallback((value: number | string) => onChange(value), [onChange]);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const handler = onChangeOverride ? onChangeOverride : onChange;\n const value = e.target.value === '' ? (options.emptyValue ?? '') : e.target.value;\n handler(value);\n },\n [onChange, onChangeOverride, options],\n );\n\n const handleBlur = useCallback(\n (e: FocusEvent<HTMLInputElement>) => {\n onBlur(id, e.target && e.target.value);\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n (e: FocusEvent<HTMLInputElement>) => {\n onFocus(id, e.target && e.target.value);\n },\n [onFocus, id],\n );\n\n const input =\n inputProps.type === 'number' || inputProps.type === 'integer' ? (\n <NumberInput\n id={id}\n name={htmlName || id}\n label={labelValue(label || undefined, hideLabel, false)}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n onBlur={!readonly ? handleBlur : undefined}\n onChange={!readonly ? handleNumberChange : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n placeholder={placeholder}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n list={schema.examples ? examplesId(id) : undefined}\n {...inputProps}\n {...themeProps}\n step={typeof inputProps.step === 'number' ? inputProps.step : 1}\n type='text'\n value={value}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n ) : (\n <TextInput\n id={id}\n name={htmlName || id}\n label={labelValue(label || undefined, hideLabel, false)}\n required={required}\n autoFocus={autofocus}\n disabled={disabled || readonly}\n onBlur={!readonly ? handleBlur : undefined}\n onChange={!readonly ? handleChange : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n placeholder={placeholder}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n list={schema.examples ? examplesId(id) : undefined}\n {...inputProps}\n {...themeProps}\n value={value}\n aria-describedby={ariaDescribedByIds(id, !!schema.examples)}\n />\n );\n\n return (\n <>\n {input}\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) => {\n return <option key={example} value={example} />;\n })}\n </datalist>\n )}\n </>\n );\n}\n", "import { UIOptionsType } from '@rjsf/utils';\n\nconst uiOptionsKeys: Array<keyof UIOptionsType> = [\n 'emptyValue',\n 'classNames',\n 'title',\n 'help',\n 'autocomplete',\n 'disabled',\n 'enumDisabled',\n 'hideError',\n 'readonly',\n 'order',\n 'filePreview',\n 'inline',\n 'inputType',\n 'submitButtonOptions',\n 'widget',\n 'enumNames',\n 'addable',\n 'copyable',\n 'orderable',\n 'removable',\n 'duplicateKeySuffixSeparator',\n 'enumOptions',\n 'enableMarkdownInDescription',\n];\n\nexport function cleanupOptions<T extends object>(options: T): Omit<T, keyof UIOptionsType> {\n const result = {} as T;\n for (const key in options) {\n if (!uiOptionsKeys.includes(key as keyof UIOptionsType)) {\n result[key] = options[key];\n }\n }\n return result as Omit<T, keyof UIOptionsType>;\n}\n", "import { DescriptionFieldProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { RichDescription } from '@rjsf/core';\nimport { Text } from '@mantine/core';\n\n/** The `DescriptionField` is the template to use to render the description of a field\n *\n * @param props - The `DescriptionFieldProps` for this component\n */\nexport default function DescriptionField<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: DescriptionFieldProps<T, S, F>) {\n const { id, description, registry, uiSchema } = props;\n if (description) {\n return (\n <Text id={id} mt={3} mb='sm'>\n <RichDescription description={description} registry={registry} uiSchema={uiSchema} />\n </Text>\n );\n }\n\n return null;\n}\n", "import { ErrorListProps, FormContextType, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\nimport { Alert, Title, List } from '@mantine/core';\n\nimport { ExclamationCircle } from './icons';\n\n/** The `ErrorList` component is the template that renders the all the errors associated with the fields in the `Form`\n *\n * @param props - The `ErrorListProps` for this component\n */\nexport default function ErrorList<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({\n errors,\n registry,\n}: ErrorListProps<T, S, F>) {\n const { translateString } = registry;\n\n return (\n <Alert\n color='red'\n variant='transparent'\n title={\n <Title order={5} fw='normal'>\n {translateString(TranslatableString.ErrorsLabel)}\n </Title>\n }\n icon={<ExclamationCircle />}\n >\n <List>\n {errors.map((error, index) => (\n <List.Item key={`error-${index}`} c='red'>\n {error.stack}\n </List.Item>\n ))}\n </List>\n </Alert>\n );\n}\n", "import { ComponentPropsWithoutRef } from 'react';\n\ninterface IconProps extends ComponentPropsWithoutRef<'svg'> {\n size?: number | string;\n}\n\nexport function Plus({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-plus'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M12 5l0 14' />\n <path d='M5 12l14 0' />\n </svg>\n );\n}\n\nexport function Copy({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-copy'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M7 7m0 2.667a2.667 2.667 0 0 1 2.667 -2.667h8.666a2.667 2.667 0 0 1 2.667 2.667v8.666a2.667 2.667 0 0 1 -2.667 2.667h-8.666a2.667 2.667 0 0 1 -2.667 -2.667z' />\n <path d='M4.012 16.737a2.005 2.005 0 0 1 -1.012 -1.737v-10c0 -1.1 .9 -2 2 -2h10c.75 0 1.158 .385 1.5 1' />\n </svg>\n );\n}\n\nexport function ChevronDown({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-chevron-down'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M6 9l6 6l6 -6' />\n </svg>\n );\n}\n\nexport function ChevronUp({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-chevron-up'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M6 15l6 -6l6 6' />\n </svg>\n );\n}\n\nexport function X({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-x'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path stroke='none' d='M0 0h24v24H0z' fill='none' />\n <path d='M18 6l-12 12' />\n <path d='M6 6l12 12' />\n </svg>\n );\n}\n\nexport function ExclamationCircle({ size, style, ...others }: IconProps) {\n return (\n <svg\n xmlns='http://www.w3.org/2000/svg'\n width='24'\n height='24'\n viewBox='0 0 24 24'\n fill='none'\n stroke='currentColor'\n strokeWidth='2'\n strokeLinecap='round'\n strokeLinejoin='round'\n className='icon icon-tabler icons-tabler-outline icon-tabler-exclamation-circle'\n style={{ width: size, height: size, ...style }}\n {...others}\n >\n <path d='M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0' />\n <path d='M12 9v4' />\n <path d='M12 16v.01' />\n </svg>\n );\n}\n", "import { Button } from '@mantine/core';\nimport { getSubmitButtonOptions, FormContextType, RJSFSchema, StrictRJSFSchema, SubmitButtonProps } from '@rjsf/utils';\n\n/** The `SubmitButton` renders a button that represent the `Submit` action on a form\n */\nexport default function SubmitButton<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ uiSchema }: SubmitButtonProps<T, S, F>) {\n const { submitText, norender, props: submitButtonProps = {} } = getSubmitButtonOptions(uiSchema);\n if (norender) {\n return null;\n }\n return (\n <Button type='submit' variant='filled' {...submitButtonProps}>\n {submitText}\n </Button>\n );\n}\n", "import { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nimport IconButton from './IconButton';\nimport { Plus } from '../icons';\n\n/** The `AddButton` renders a button that represent the `Add` action on a form\n */\nexport default function AddButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: IconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.AddItemButton)} variant='subtle' {...props} icon={<Plus />} />\n );\n}\n", "import { MouseEventHandler } from 'react';\nimport { ActionIcon, ActionIconProps } from '@mantine/core';\nimport { FormContextType, IconButtonProps, RJSFSchema, StrictRJSFSchema, TranslatableString } from '@rjsf/utils';\n\nimport { Copy, ChevronDown, ChevronUp, X } from '../icons';\n\nexport type MantineIconButtonProps<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n> = IconButtonProps<T, S, F> & Omit<ActionIconProps, 'onClick'>;\n\nexport default function IconButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const { icon, iconType = 'sm', color, onClick, uiSchema, registry, ...otherProps } = props;\n return (\n <ActionIcon\n size={iconType as ActionIconProps['size']}\n color={color as ActionIconProps['color']}\n onClick={onClick as MouseEventHandler<HTMLAnchorElement> & MouseEventHandler<HTMLButtonElement>}\n {...otherProps}\n >\n {icon}\n </ActionIcon>\n );\n}\n\nexport function CopyButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton title={translateString(TranslatableString.CopyButton)} variant='subtle' {...props} icon={<Copy />} />\n );\n}\n\nexport function MoveDownButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.MoveDownButton)}\n variant='subtle'\n {...props}\n icon={<ChevronDown />}\n />\n );\n}\n\nexport function MoveUpButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.MoveUpButton)}\n variant='subtle'\n {...props}\n icon={<ChevronUp />}\n />\n );\n}\n\nexport function RemoveButton<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: MantineIconButtonProps<T, S, F>,\n) {\n const {\n registry: { translateString },\n } = props;\n return (\n <IconButton\n title={translateString(TranslatableString.RemoveButton)}\n variant='subtle'\n color='red'\n {...props}\n icon={<X />}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\nimport SubmitButton from './SubmitButton';\nimport AddButton from './AddButton';\nimport { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } from './IconButton';\n\nfunction buttonTemplates<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): TemplatesType<T, S, F>['ButtonTemplates'] {\n return {\n SubmitButton,\n AddButton,\n CopyButton,\n MoveDownButton,\n MoveUpButton,\n RemoveButton,\n };\n}\n\nexport default buttonTemplates;\n", "import { errorId, FieldErrorProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Box, List } from '@mantine/core';\n\n/** The `FieldErrorTemplate` component renders the errors local to the particular field\n *\n * @param props - The `FieldErrorProps` for the errors being rendered\n */\nexport default function FieldErrorTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>({ errors, fieldPathId }: FieldErrorProps<T, S, F>) {\n if (!errors || !errors.length) {\n return null;\n }\n // In mantine, errors are handled directly in each component, so there is no need to render a separate error template.\n const id = errorId(fieldPathId);\n return (\n <Box id={id} c='red' display='none'>\n <List>\n {errors.map((error, index) => (\n <List.Item key={`field-error-${index}`}>{error}</List.Item>\n ))}\n </List>\n </Box>\n );\n}\n", "import { Box } from '@mantine/core';\nimport {\n FieldTemplateProps,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n getTemplate,\n getUiOptions,\n} from '@rjsf/utils';\n\n/** The `FieldTemplate` component is the template used by `SchemaField` to render any field. It renders the field\n * content, (label, description, children, errors and help) inside a `WrapIfAdditional` component.\n *\n * @param props - The `FieldTemplateProps` for this component\n */\nexport default function FieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: FieldTemplateProps<T, S, F>) {\n const {\n id,\n classNames,\n style,\n label,\n errors,\n help,\n displayLabel,\n description,\n rawDescription,\n hidden,\n schema,\n uiSchema,\n registry,\n children,\n ...otherProps\n } = props;\n\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate', T, S, F>(\n 'WrapIfAdditionalTemplate',\n registry,\n uiOptions,\n );\n\n if (hidden) {\n return <Box display='none'>{children}</Box>;\n }\n\n return (\n <WrapIfAdditionalTemplate\n id={id}\n classNames={classNames}\n style={style}\n label={label}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n {...otherProps}\n >\n {children}\n {errors}\n {help}\n </WrapIfAdditionalTemplate>\n );\n}\n", "import { helpId, FieldHelpProps, FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Text } from '@mantine/core';\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 } = props;\n\n const id = helpId(fieldPathId);\n\n return !help ? null : (\n <Text id={id} size='sm' my='xs' c='dimmed'>\n {help}\n </Text>\n );\n}\n", "import { Container, Grid } from '@mantine/core';\nimport { GridTemplateProps } from '@rjsf/utils';\n\n/** Renders a `GridTemplate` for mantine, which is expecting the column sizing information coming in via the\n * extra props provided by the caller, which are spread directly on the `Grid`/`Grid.Col`.\n *\n * @param props - The GridTemplateProps, including the extra props containing the Mantine grid positioning details\n */\nexport default function GridTemplate(props: GridTemplateProps) {\n const { children, column, fluid = true, ...rest } = props;\n\n if (column) {\n return <Grid.Col {...rest}>{children}</Grid.Col>;\n }\n\n // Grid with fluid container\n if (fluid) {\n return (\n <Container p='4' mx={0} w='100%'>\n <Grid {...rest}>{children}</Grid>\n </Container>\n );\n }\n // Grid without container\n return (\n <Grid grow {...rest}>\n {children}\n </Grid>\n );\n}\n", "import { Box, Container, Group, MantineSpacing, SimpleGrid } from '@mantine/core';\nimport {\n buttonId,\n canExpand,\n descriptionId,\n FormContextType,\n getTemplate,\n getUiOptions,\n ObjectFieldTemplatePropertyType,\n ObjectFieldTemplateProps,\n RJSFSchema,\n StrictRJSFSchema,\n titleId,\n} from '@rjsf/utils';\n\n/** The `ObjectFieldTemplate` is the template to use to render all the inner properties of an object along with the\n * title and description if available. If the object is expandable, then an `AddButton` is also rendered after all\n * the properties.\n *\n * @param props - The `ObjectFieldTemplateProps` for this component\n */\nexport default function ObjectFieldTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: ObjectFieldTemplateProps<T, S, F>) {\n const {\n title,\n description,\n disabled,\n properties,\n optionalDataControl,\n onAddProperty,\n readonly,\n required,\n schema,\n uiSchema,\n fieldPathId,\n formData,\n registry,\n } = props;\n const uiOptions = getUiOptions<T, S, F>(uiSchema);\n const TitleFieldTemplate = getTemplate<'TitleFieldTemplate', T, S, F>('TitleFieldTemplate', registry, uiOptions);\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n uiOptions,\n );\n const showOptionalDataControlInTitle = !readonly && !disabled;\n // Button templates are not overridden in the uiSchema\n const {\n ButtonTemplates: { AddButton },\n } = registry.templates;\n const gridCols = (typeof uiOptions?.gridCols === 'number' && uiOptions?.gridCols) || undefined;\n const gridSpacing = uiOptions?.gridSpacing;\n const gridVerticalSpacing = uiOptions?.gridVerticalSpacing;\n\n return (\n <Container id={fieldPathId.$id} p={0}>\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 <SimpleGrid\n cols={gridCols}\n spacing={gridSpacing as MantineSpacing | undefined}\n verticalSpacing={gridVerticalSpacing as MantineSpacing | undefined}\n mb='sm'\n >\n {!showOptionalDataControlInTitle ? optionalDataControl : undefined}\n {properties\n .filter((e) => !e.hidden)\n .map((element: ObjectFieldTemplatePropertyType) => (\n <Box key={element.name}>{element.content}</Box>\n ))}\n </SimpleGrid>\n {canExpand(schema, uiSchema, formData) && (\n <Group mt='xs' justify='flex-end'>\n <AddButton\n id={buttonId(fieldPathId, 'add')}\n disabled={disabled || readonly}\n onClick={onAddProperty}\n className='rjsf-object-property-expand'\n uiSchema={uiSchema}\n registry={registry}\n />\n </Group>\n )}\n </Container>\n );\n}\n", "import { FormContextType, OptionalDataControlsTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport AddButton from './ButtonTemplates/AddButton';\nimport { RemoveButton } from './ButtonTemplates/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 <AddButton\n id={id}\n registry={registry}\n icon='plus'\n className='rjsf-add-optional-data'\n onClick={onAddClick}\n title={label}\n />\n );\n } else if (onRemoveClick) {\n return (\n <RemoveButton\n id={id}\n registry={registry}\n icon='remove'\n className='rjsf-remove-optional-data'\n onClick={onRemoveClick}\n title={label}\n />\n );\n }\n return <em id={id}>{label}</em>;\n}\n", "import { FormContextType, TitleFieldProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport { Grid, Title } from '@mantine/core';\n\n/** The `TitleField` is the template to use to render the title of a field\n *\n * @param props - The `TitleFieldProps` for this component\n */\nexport default function TitleField<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: TitleFieldProps<T, S, F>,\n) {\n const { id, title, optionalDataControl } = props;\n let heading = title ? (\n <Title id={id} order={3} fw='normal'>\n {title}\n </Title>\n ) : null;\n if (optionalDataControl) {\n heading = (\n <Grid>\n <Grid.Col span='auto'>{heading}</Grid.Col>\n <Grid.Col span='content'>{optionalDataControl}</Grid.Col>\n </Grid>\n );\n }\n return heading;\n}\n", "import {\n ADDITIONAL_PROPERTY_FLAG,\n UI_OPTIONS_KEY,\n buttonId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WrapIfAdditionalTemplateProps,\n} from '@rjsf/utils';\nimport { Flex, Grid, TextInput } from '@mantine/core';\n\n/** The `WrapIfAdditional` component is used by the `FieldTemplate` to rename, or remove properties that are\n * part of an `additionalProperties` part of a schema.\n *\n * @param props - The `WrapIfAdditionalProps` for this component\n */\nexport default function WrapIfAdditionalTemplate<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WrapIfAdditionalTemplateProps<T, S, F>) {\n const {\n id,\n classNames,\n style,\n label,\n required,\n readonly,\n disabled,\n schema,\n uiSchema,\n onKeyRenameBlur,\n onRemoveProperty,\n registry,\n children,\n } = props;\n const { templates, translateString } = registry;\n // Button templates are not overridden in the uiSchema\n const { RemoveButton } = templates.ButtonTemplates;\n const keyLabel = translateString(TranslatableString.KeyLabel, [label]);\n const additional = ADDITIONAL_PROPERTY_FLAG in schema;\n\n if (!additional) {\n return (\n <div className={classNames} style={style}>\n {children}\n </div>\n );\n }\n\n // The `block` prop is not part of the `IconButtonProps` defined in the template, so put it into the uiSchema instead\n const uiOptions = uiSchema ? uiSchema[UI_OPTIONS_KEY] : {};\n const buttonUiOptions = {\n ...uiSchema,\n [UI_OPTIONS_KEY]: { ...uiOptions, block: true },\n };\n\n return (\n <div className={classNames} style={style}>\n <Flex gap='xs' align='end' justify='center'>\n <Grid w='100%' align='center'>\n <Grid.Col span={6} className='form-additional'>\n <div className='form-group'>\n <TextInput\n className='form-group'\n label={keyLabel}\n defaultValue={label}\n required={required}\n disabled={disabled || readonly}\n id={`${id}-key`}\n name={`${id}-key`}\n onBlur={!readonly ? onKeyRenameBlur : undefined}\n />\n </div>\n </Grid.Col>\n <Grid.Col span={6} className='form-additional'>\n {children}\n </Grid.Col>\n </Grid>\n <RemoveButton\n id={buttonId(id, 'remove')}\n iconType='sm'\n className='rjsf-array-item-remove'\n disabled={disabled || readonly}\n onClick={onRemoveProperty}\n uiSchema={buttonUiOptions}\n registry={registry}\n />\n </Flex>\n </div>\n );\n}\n", "import { Stack } from '@mantine/core';\nimport { FormContextType, MultiSchemaFieldTemplateProps, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\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 <Stack style={{ marginBottom: '1rem' }}>\n {selector}\n {optionSchemaField}\n </Stack>\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, TemplatesType } from '@rjsf/utils';\n\nimport ArrayFieldItemTemplate from './ArrayFieldItemTemplate';\nimport ArrayFieldTemplate from './ArrayFieldTemplate';\nimport ArrayFieldTitleTemplate from './ArrayFieldTitleTemplate';\nimport BaseInputTemplate from './BaseInputTemplate';\nimport DescriptionField from './DescriptionField';\nimport ErrorList from './ErrorList';\nimport ButtonTemplates from './ButtonTemplates';\nimport FieldErrorTemplate from './FieldErrorTemplate';\nimport FieldTemplate from './FieldTemplate';\nimport FieldHelpTemplate from './FieldHelpTemplate';\nimport GridTemplate from './GridTemplate';\nimport ObjectFieldTemplate from './ObjectFieldTemplate';\nimport OptionalDataControlsTemplate from './OptionalDataControlsTemplate';\nimport TitleField from './TitleField';\nimport WrapIfAdditionalTemplate from './WrapIfAdditionalTemplate';\nimport MultiSchemaFieldTemplate from './MultiSchemaFieldTemplate';\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 ArrayFieldTitleTemplate,\n BaseInputTemplate,\n ButtonTemplates: ButtonTemplates<T, S, F>(),\n DescriptionFieldTemplate: DescriptionField,\n ErrorListTemplate: ErrorList,\n FieldErrorTemplate,\n FieldTemplate,\n FieldHelpTemplate,\n GridTemplate,\n ObjectFieldTemplate,\n OptionalDataControlsTemplate,\n TitleFieldTemplate: TitleField,\n WrapIfAdditionalTemplate,\n MultiSchemaFieldTemplate,\n };\n}\n\nexport default generateTemplates();\n", "import { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\nimport dayjs from 'dayjs';\nimport customParseFormat from 'dayjs/plugin/customParseFormat';\n\nimport { AltDateTimeWidget, AltDateWidget, DateWidget, DateTimeWidget, TimeWidget } from './DateTime';\nimport CheckboxesWidget from './CheckboxesWidget';\nimport CheckboxWidget from './CheckboxWidget';\nimport ColorWidget from './ColorWidget';\nimport FileWidget from './FileWidget';\nimport PasswordWidget from './PasswordWidget';\nimport RadioWidget from './RadioWidget';\nimport RangeWidget from './RangeWidget';\nimport SelectWidget from './SelectWidget';\nimport TextareaWidget from './TextareaWidget';\n\n// This plugin is needed to support the parsing of date and time values in the `DateWidget` and `DateTimeWidget`\ndayjs.extend(customParseFormat);\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 AltDateTimeWidget,\n AltDateWidget,\n CheckboxesWidget,\n CheckboxWidget,\n ColorWidget,\n FileWidget,\n DateTimeWidget,\n DateWidget,\n PasswordWidget,\n RadioWidget,\n RangeWidget,\n SelectWidget,\n TextareaWidget,\n TimeWidget,\n };\n}\n\nexport default generateWidgets();\n", "import { useCallback, useEffect, useState } from 'react';\nimport {\n ariaDescribedByIds,\n dateRangeOptions,\n parseDateString,\n toDateString,\n getDateElementProps,\n titleId,\n DateObject,\n type DateElementFormat,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n TranslatableString,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Flex, Box, Group, Button, Select, Input } from '@mantine/core';\n\nfunction readyForChange(state: DateObject) {\n return Object.values(state).every((value) => value !== -1);\n}\n\n/** The `AltDateWidget` is an alternative widget for rendering date properties.\n * @param props - The `WidgetProps` for this component\n */\nexport default function AltDateWidget<\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 required,\n disabled,\n readonly,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n showTime = false,\n registry,\n } = props;\n\n const { translateString } = registry;\n const [state, setState] = useState(parseDateString(value, showTime));\n\n useEffect(() => {\n setState(parseDateString(value, showTime));\n }, [showTime, value]);\n\n const handleChange = useCallback(\n (property: keyof DateObject, nextValue: any) => {\n const nextState = {\n ...state,\n [property]: typeof nextValue === 'undefined' ? -1 : nextValue,\n };\n\n if (readyForChange(nextState)) {\n onChange(toDateString(nextState, showTime));\n } else {\n setState(nextState);\n }\n },\n [state, onChange, showTime],\n );\n\n const handleSetNow = useCallback(() => {\n if (!disabled && !readonly) {\n const nextState = parseDateString(new Date().toJSON(), showTime);\n onChange(toDateString(nextState, showTime));\n }\n }, [disabled, readonly, showTime, onChange]);\n\n const handleClear = useCallback(() => {\n if (!disabled && !readonly) {\n onChange('');\n }\n }, [disabled, readonly, onChange]);\n\n return (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n <Flex gap='xs' align='center' wrap='nowrap'>\n {getDateElementProps(\n state,\n showTime,\n options.yearsRange as [number, number] | undefined,\n options.format as DateElementFormat | undefined,\n ).map((elemProps, i) => {\n const elemId = id + '_' + elemProps.type;\n return (\n <Box key={i}>\n <Select\n id={elemId}\n name={elemId}\n placeholder={elemProps.type}\n disabled={disabled || readonly}\n data={dateRangeOptions<S>(elemProps.range[0], elemProps.range[1]).map((item) => item.value.toString())}\n value={!elemProps.value || elemProps.value < 0 ? null : elemProps.value.toString()}\n onChange={(v) => handleChange(elemProps.type as keyof DateObject, v)}\n searchable={false}\n allowDeselect={false}\n comboboxProps={{ withinPortal: false }}\n aria-describedby={ariaDescribedByIds(elemId)}\n />\n </Box>\n );\n })}\n <Group wrap='nowrap' gap={3}>\n {(options.hideNowButton !== 'undefined' ? !options.hideNowButton : true) && (\n <Button variant='subtle' size='xs' onClick={handleSetNow}>\n {translateString(TranslatableString.NowLabel)}\n </Button>\n )}\n {(options.hideClearButton !== 'undefined' ? !options.hideClearButton : true) && (\n <Button variant='subtle' size='xs' onClick={handleClear}>\n {translateString(TranslatableString.ClearLabel)}\n </Button>\n )}\n </Group>\n </Flex>\n {rawErrors &&\n rawErrors?.length > 0 &&\n rawErrors.map((error: string, index: number) => (\n <Input.Error key={`alt-date-widget-input-errors-${index}`}>{error}</Input.Error>\n ))}\n </>\n );\n}\n\nAltDateWidget.defaultProps = {\n showTime: false,\n};\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport _AltDateWidget from './AltDateWidget';\n\n/** The `AltDateTimeWidget` is an alternative widget for rendering datetime properties.\n * It uses the AltDateWidget for rendering, with the `time` prop set to true by default.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function AltDateTimeWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const { AltDateWidget } = props.registry.widgets;\n return <AltDateWidget showTime {...props} />;\n}\n\nAltDateTimeWidget.defaultProps = {\n ..._AltDateWidget?.defaultProps,\n showTime: true,\n};\n", "import { useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport dayjs from 'dayjs';\nimport { DateInput } from '@mantine/dates';\n\nconst dateParser = (input: string, format: string) => {\n if (!input) {\n return null;\n }\n const d = dayjs(input, format);\n return d.isValid() ? d.toDate() : null;\n};\n\nconst dateFormat = (date?: Date, format?: string) => {\n if (!date) {\n return '';\n }\n return dayjs(date).format(format || 'YYYY-MM-DD');\n};\n\n/** The `DateTimeInput` is a base component that used by other Date-Time widget components.\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateTimeInput<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n valueFormat,\n displayFormat,\n } = props;\n\n const handleChange = useCallback(\n (nextValue: any) => {\n onChange(dateFormat(nextValue, valueFormat as string));\n },\n [onChange, valueFormat],\n );\n\n const handleBlur = useCallback(() => {\n if (onBlur) {\n onBlur(id, value);\n }\n }, [onBlur, id, value]);\n\n const handleFocus = useCallback(() => {\n if (onFocus) {\n onFocus(id, value);\n }\n }, [onFocus, id, value]);\n\n return (\n <DateInput\n id={id}\n name={name}\n value={dateParser(value, valueFormat as string)}\n dateParser={(v) => dateParser(v, displayFormat as string)}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...options}\n aria-describedby={ariaDescribedByIds(id)}\n popoverProps={{ withinPortal: false }}\n classNames={typeof options?.classNames === 'object' ? options.classNames : undefined}\n valueFormat={displayFormat}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport DateTimeInput from './DateTimeInput';\n\n/** The `DateWidget` component uses the `DateTimeInput` changing the valueFormat to show `date`\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const { valueFormat = 'YYYY-MM-DD', displayFormat, ...otherOptions } = props.options;\n\n return (\n <DateTimeInput\n {...props}\n options={otherOptions}\n valueFormat={valueFormat}\n displayFormat={displayFormat || valueFormat}\n />\n );\n}\n", "import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';\n\nimport DateTimeInput from './DateTimeInput';\n\n/** The `DateWidget` component uses the `DateTimeInput` changing the valueFormat to show `datetime`\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function DateTimeWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const { valueFormat = 'YYYY-MM-DD HH:mm:ss', displayFormat, ...otherOptions } = props.options;\n\n return (\n <DateTimeInput\n {...props}\n options={otherOptions}\n valueFormat={valueFormat}\n displayFormat={displayFormat || valueFormat}\n />\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { TimeInput } from '@mantine/dates';\n\n/** The `TimeWidget` component uses the `TimeInput` component from `@mantine/dates` for rendering.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TimeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const emptyValue = options.emptyValue || '';\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <TimeInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...options}\n aria-describedby={ariaDescribedByIds(id)}\n classNames={typeof options?.classNames === 'object' ? options.classNames : undefined}\n />\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsValueForIndex,\n enumOptionsIndexForValue,\n optionId,\n titleId,\n FormContextType,\n WidgetProps,\n RJSFSchema,\n StrictRJSFSchema,\n} from '@rjsf/utils';\nimport { Checkbox, Flex, Input } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `CheckboxesWidget` is a widget for rendering checkbox groups.\n * It is typically used to represent an array of enums.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxesWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n htmlName,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, true) as string[];\n\n return Array.isArray(enumOptions) && enumOptions.length > 0 ? (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n <Checkbox.Group\n id={id}\n value={selectedIndexes}\n onChange={handleChange}\n required={required}\n readOnly={disabled || readonly}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n >\n {Array.isArray(enumOptions) ? (\n <Flex mt='xs' direction={inline ? 'row' : 'column'} gap='xs' wrap='wrap'>\n {enumOptions.map((option, i) => (\n <Checkbox\n key={i}\n id={optionId(id, i)}\n name={htmlName || id}\n value={String(i)}\n label={option.label}\n disabled={Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1}\n autoFocus={i === 0 && autofocus}\n onBlur={handleBlur}\n onFocus={handleFocus}\n />\n ))}\n </Flex>\n ) : null}\n </Checkbox.Group>\n </>\n ) : null;\n}\n", "import { ReactElement, ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n descriptionId,\n getTemplate,\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { Checkbox } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `CheckBoxWidget` is a widget for rendering boolean properties.\n * It is typically used to represent a boolean.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function CheckboxWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>): ReactElement {\n const {\n id,\n name,\n htmlName,\n value = false,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n schema,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n registry,\n uiSchema,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const DescriptionFieldTemplate = getTemplate<'DescriptionFieldTemplate', T, S, F>(\n 'DescriptionFieldTemplate',\n registry,\n options,\n );\n\n const handleCheckboxChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n if (!disabled && !readonly && onChange) {\n onChange(e.currentTarget.checked);\n }\n },\n [onChange, disabled, readonly],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target.checked);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target.checked);\n }\n },\n [onFocus, id],\n );\n\n const description = options.description || schema.description;\n return (\n <>\n {!hideLabel && !!description && (\n <DescriptionFieldTemplate\n id={descriptionId(id)}\n description={description}\n schema={schema}\n uiSchema={uiSchema}\n registry={registry}\n />\n )}\n <Checkbox\n id={id}\n name={htmlName || name}\n label={labelValue(label || undefined, hideLabel, false)}\n disabled={disabled || readonly}\n required={required}\n autoFocus={autofocus}\n checked={typeof value === 'undefined' ? false : value === 'true' || value}\n onChange={handleCheckboxChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n />\n </>\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { ColorInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `ColorWidget` component uses the `ColorInput` from Mantine, allowing users to pick a color.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function ColorWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: string) => {\n onChange(nextValue);\n },\n [onChange],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <ColorInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n popoverProps={{ withinPortal: false }}\n />\n );\n}\n", "import { useCallback } from 'react';\nimport {\n dataURItoBlob,\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { FileInput, Pill } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\nfunction addNameToDataURL(dataURL: string, name: string) {\n if (dataURL === null) {\n return null;\n }\n return dataURL.replace(';base64', `;name=${encodeURIComponent(name)};base64`);\n}\n\ntype FileInfoType = {\n dataURL?: string | null;\n name: string;\n size: number;\n type: string;\n};\n\nfunction processFile(file: File): Promise<FileInfoType> {\n const { name, size, type } = file;\n return new Promise((resolve, reject) => {\n const reader = new window.FileReader();\n reader.onerror = reject;\n reader.onload = (event) => {\n if (typeof event.target?.result === 'string') {\n resolve({\n dataURL: addNameToDataURL(event.target.result, name),\n name,\n size,\n type,\n });\n } else {\n resolve({\n dataURL: null,\n name,\n size,\n type,\n });\n }\n };\n reader.readAsDataURL(file);\n });\n}\n\nfunction processFiles(files: FileList) {\n return Promise.all(Array.from(files).map(processFile));\n}\n\nfunction extractFileInfo(dataURLs: string[]): FileInfoType[] {\n return dataURLs.reduce((acc, dataURL) => {\n if (!dataURL) {\n return acc;\n }\n try {\n const { blob, name } = dataURItoBlob(dataURL);\n return [\n ...acc,\n {\n dataURL,\n name: name,\n size: blob.size,\n type: blob.type,\n },\n ];\n } catch (e) {\n console.log(e);\n // Invalid dataURI, so just ignore it.\n return acc;\n }\n }, [] as FileInfoType[]);\n}\n\n/**\n * The `FileWidget` is a widget for rendering file upload fields.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function FileWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n multiple,\n onChange,\n } = props;\n\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (files: any) => {\n if (typeof files === 'object') {\n processFiles(multiple ? files : [files]).then((filesInfoEvent) => {\n const newValue = filesInfoEvent.map((fileInfo) => fileInfo.dataURL);\n if (multiple) {\n onChange(value.concat(newValue));\n } else {\n onChange(newValue[0]);\n }\n });\n }\n return;\n },\n [multiple, value, onChange],\n );\n\n const handleRemoveFile = useCallback(\n (index: number) => {\n if (multiple) {\n const newValue = value.filter((_: any, i: number) => i !== index);\n onChange(newValue);\n } else {\n onChange(undefined);\n }\n },\n [multiple, value, onChange],\n );\n\n const ValueComponent = useCallback(\n (props: any) => {\n const filesInfo = props.value ? extractFileInfo(Array.isArray(props.value) ? props.value : [props.value]) : null;\n if (Array.isArray(filesInfo) && filesInfo.length > 0) {\n return (\n <Pill.Group>\n {filesInfo.map((file, index) => (\n <Pill key={index} withRemoveButton onRemove={() => handleRemoveFile(index)}>\n {file.name}\n </Pill>\n ))}\n </Pill.Group>\n );\n }\n return null;\n },\n [handleRemoveFile],\n );\n\n return (\n <FileInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n multiple={!!multiple}\n valueComponent={ValueComponent}\n onChange={handleChange}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n}\n", "import { ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n FormContextType,\n labelValue,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { PasswordInput } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/**\n * The `PasswordWidget` component renders a password input element.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function PasswordWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>) {\n const {\n id,\n name,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const emptyValue = options.emptyValue || '';\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <PasswordInput\n id={id}\n name={name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n );\n}\n", "import { FocusEvent, useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n optionId,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Radio, Flex } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `RadioWidget` is a widget for rendering a radio group.\n * It is typically used with a string property constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n htmlName,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, inline, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selected = enumOptionsIndexForValue<S>(value, enumOptions) as string;\n\n return (\n <Radio.Group\n id={id}\n name={htmlName || id}\n value={selected}\n label={!hideLabel ? label : undefined}\n onChange={handleChange}\n required={required}\n readOnly={disabled || readonly}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n >\n {Array.isArray(enumOptions) ? (\n <Flex mt='xs' direction={inline ? 'row' : 'column'} gap='xs' wrap='wrap'>\n {enumOptions.map((option, i) => (\n <Radio\n key={i}\n id={optionId(id, i)}\n value={String(i)}\n label={option.label}\n disabled={Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1}\n autoFocus={i === 0 && autofocus}\n onBlur={handleBlur}\n onFocus={handleFocus}\n />\n ))}\n </Flex>\n ) : null}\n </Radio.Group>\n );\n}\n", "import { useCallback } from 'react';\nimport {\n ariaDescribedByIds,\n rangeSpec,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n titleId,\n} from '@rjsf/utils';\nimport { Slider, Input } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `RangeWidget` component uses the `BaseInputTemplate` changing the type to `range` and wrapping the result\n * in a div, with the value alongside it.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function RangeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n name,\n value,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n schema,\n } = props;\n\n const themeProps = cleanupOptions(options);\n const { min, max, step } = rangeSpec(schema);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(nextValue);\n }\n },\n [onChange, disabled, readonly],\n );\n\n const handleBlur = useCallback(() => {\n if (onBlur) {\n onBlur(id, value);\n }\n }, [onBlur, id, value]);\n\n const handleFocus = useCallback(() => {\n if (onFocus) {\n onFocus(id, value);\n }\n }, [onFocus, id, value]);\n\n return (\n <>\n {!hideLabel && !!label && (\n <Input.Label id={titleId(id)} required={required}>\n {label}\n </Input.Label>\n )}\n {options?.description && <Input.Description>{options.description}</Input.Description>}\n <Slider\n id={id}\n name={name}\n value={value}\n max={max}\n min={min}\n step={step}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n />\n {rawErrors &&\n rawErrors?.length > 0 &&\n rawErrors.map((error: string, index: number) => (\n <Input.Error key={`range-widget-input-errors-${index}`}>{error}</Input.Error>\n ))}\n </>\n );\n}\n", "import { FocusEvent, useCallback, useMemo } from 'react';\nimport {\n ariaDescribedByIds,\n enumOptionsIndexForValue,\n enumOptionsValueForIndex,\n labelValue,\n FormContextType,\n RJSFSchema,\n StrictRJSFSchema,\n WidgetProps,\n} from '@rjsf/utils';\nimport { Select, MultiSelect } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `SelectWidget` is a widget for rendering dropdowns.\n * It is typically used with string properties constrained with enum options.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function SelectWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(\n props: WidgetProps<T, S, F>,\n) {\n const {\n id,\n htmlName,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n multiple,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const { enumOptions, enumDisabled, emptyValue } = options;\n const themeProps = cleanupOptions(options);\n\n const handleChange = useCallback(\n (nextValue: any) => {\n if (!disabled && !readonly && onChange) {\n onChange(enumOptionsValueForIndex<S>(nextValue, enumOptions, emptyValue));\n }\n },\n [onChange, disabled, readonly, enumOptions, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onBlur) {\n onBlur(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onBlur, id, enumOptions, emptyValue],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLInputElement>) => {\n if (onFocus) {\n onFocus(id, enumOptionsValueForIndex<S>(target && target.value, enumOptions, emptyValue));\n }\n },\n [onFocus, id, enumOptions, emptyValue],\n );\n\n const selectedIndexes = enumOptionsIndexForValue<S>(value, enumOptions, multiple);\n\n const selectOptions = useMemo(() => {\n if (Array.isArray(enumOptions)) {\n return enumOptions.map((option, index) => ({\n key: String(index),\n value: String(index),\n label: option.label,\n disabled: Array.isArray(enumDisabled) && enumDisabled.indexOf(option.value) !== -1,\n }));\n }\n return [];\n }, [enumDisabled, enumOptions]);\n\n const Component = multiple ? MultiSelect : Select;\n\n return (\n <Component\n id={id}\n name={htmlName || id}\n label={labelValue(label || undefined, hideLabel, false)}\n data={selectOptions}\n value={multiple ? (selectedIndexes as any) : (selectedIndexes as string)}\n onChange={!readonly ? handleChange : undefined}\n onBlur={!readonly ? handleBlur : undefined}\n onFocus={!readonly ? handleFocus : undefined}\n autoFocus={autofocus}\n placeholder={placeholder}\n disabled={disabled || readonly}\n required={required}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n searchable\n {...themeProps}\n aria-describedby={ariaDescribedByIds(id)}\n comboboxProps={{ withinPortal: false }}\n />\n );\n}\n", "import { ReactElement, ChangeEvent, FocusEvent, useCallback } from 'react';\nimport {\n StrictRJSFSchema,\n RJSFSchema,\n FormContextType,\n WidgetProps,\n labelValue,\n ariaDescribedByIds,\n} from '@rjsf/utils';\nimport { Textarea } from '@mantine/core';\n\nimport { cleanupOptions } from '../utils';\n\n/** The `TextareaWidget` is a widget for rendering input fields as textarea.\n *\n * @param props - The `WidgetProps` for this component\n */\nexport default function TextareaWidget<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(props: WidgetProps<T, S, F>): ReactElement {\n const {\n id,\n name,\n htmlName,\n value,\n placeholder,\n required,\n disabled,\n readonly,\n autofocus,\n label,\n hideLabel,\n rawErrors,\n options,\n onChange,\n onBlur,\n onFocus,\n } = props;\n\n const themeProps = cleanupOptions(options);\n const emptyValue = options?.emptyValue ?? '';\n\n const handleChange = useCallback(\n (e: ChangeEvent<HTMLTextAreaElement>) => {\n onChange(e.target.value === '' ? emptyValue : e.target.value);\n },\n [onChange, emptyValue],\n );\n\n const handleBlur = useCallback(\n ({ target }: FocusEvent<HTMLTextAreaElement>) => {\n if (onBlur) {\n onBlur(id, target && target.value);\n }\n },\n [onBlur, id],\n );\n\n const handleFocus = useCallback(\n ({ target }: FocusEvent<HTMLTextAreaElement>) => {\n if (onFocus) {\n onFocus(id, target && target.value);\n }\n },\n [onFocus, id],\n );\n\n return (\n <Textarea\n id={id}\n name={htmlName || name}\n value={value || ''}\n placeholder={placeholder || undefined}\n required={required}\n disabled={disabled || readonly}\n autoFocus={autofocus}\n label={labelValue(label || undefined, hideLabel, false)}\n onChange={handleChange}\n onBlur={handleBlur}\n onFocus={handleFocus}\n error={rawErrors && rawErrors.length > 0 ? rawErrors.join('\\n') : undefined}\n aria-describedby={ariaDescribedByIds(id)}\n {...themeProps}\n />\n );\n}\n", "import { ThemeProps } from '@rjsf/core';\nimport { FormContextType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';\n\nimport { generateTemplates } from '../templates';\nimport { generateWidgets } from '../widgets';\n\nexport function generateTheme<\n T = any,\n S extends StrictRJSFSchema = RJSFSchema,\n F extends FormContextType = any,\n>(): ThemeProps<T, S, F> {\n return {\n templates: generateTemplates<T, S, F>(),\n widgets: generateWidgets<T, S, F>(),\n };\n}\n\nexport default generateTheme();\n"],
5
+ "mappings": "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",
6
+ "names": ["import_core", "import_utils", "import_core", "import_jsx_runtime", "ArrayFieldTitleTemplate", "AddButton", "import_utils", "import_core", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "value", "import_core", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "import_utils", "import_core", "import_utils", "import_jsx_runtime", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "WrapIfAdditionalTemplate", "import_utils", "import_core", "import_jsx_runtime", "import_core", "import_jsx_runtime", "import_core", "import_utils", "import_jsx_runtime", "AddButton", "import_jsx_runtime", "import_core", "import_jsx_runtime", "import_utils", "import_core", "import_jsx_runtime", "RemoveButton", "import_core", "import_jsx_runtime", "import_dayjs", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_jsx_runtime", "AltDateWidget", "import_react", "import_utils", "import_jsx_runtime", "dayjs", "import_jsx_runtime", "import_jsx_runtime", "import_react", "import_utils", "import_dates", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "props", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "import_react", "import_utils", "import_core", "import_jsx_runtime", "dayjs", "customParseFormat"]
7
7
  }