@rjsf/daisyui 6.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +231 -0
- package/dist/chakra-ui.esm.js +2192 -0
- package/dist/chakra-ui.esm.js.map +7 -0
- package/dist/chakra-ui.umd.js +2011 -0
- package/dist/index.js +2180 -0
- package/dist/index.js.map +7 -0
- package/lib/DaisyUIForm.d.ts +5 -0
- package/lib/DaisyUIForm.js +8 -0
- package/lib/DaisyUIForm.js.map +1 -0
- package/lib/DaisyUIFrameProvider.d.ts +35 -0
- package/lib/DaisyUIFrameProvider.js +93 -0
- package/lib/DaisyUIFrameProvider.js.map +1 -0
- package/lib/daisyForm/DaisyForm.d.ts +12 -0
- package/lib/daisyForm/DaisyForm.js +15 -0
- package/lib/daisyForm/DaisyForm.js.map +1 -0
- package/lib/daisyForm/index.d.ts +2 -0
- package/lib/daisyForm/index.js +3 -0
- package/lib/daisyForm/index.js.map +1 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.js +11 -0
- package/lib/index.js.map +1 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/ArrayFieldDescriptionTemplate.d.ts +7 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/ArrayFieldDescriptionTemplate.js +11 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/ArrayFieldDescriptionTemplate.js.map +1 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/index.d.ts +2 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/index.js +3 -0
- package/lib/templates/ArrayFieldDescriptionTemplate/index.js.map +1 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.d.ts +5 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.js +20 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.js.map +1 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/index.d.ts +2 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/index.js +3 -0
- package/lib/templates/ArrayFieldItemButtonsTemplate/index.js.map +1 -0
- package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.d.ts +14 -0
- package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.js +27 -0
- package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.js.map +1 -0
- package/lib/templates/ArrayFieldItemTemplate/index.d.ts +2 -0
- package/lib/templates/ArrayFieldItemTemplate/index.js +3 -0
- package/lib/templates/ArrayFieldItemTemplate/index.js.map +1 -0
- package/lib/templates/ArrayFieldTemplate/ArrayFieldTemplate.d.ts +15 -0
- package/lib/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +37 -0
- package/lib/templates/ArrayFieldTemplate/ArrayFieldTemplate.js.map +1 -0
- package/lib/templates/ArrayFieldTemplate/index.d.ts +2 -0
- package/lib/templates/ArrayFieldTemplate/index.js +3 -0
- package/lib/templates/ArrayFieldTemplate/index.js.map +1 -0
- package/lib/templates/ArrayFieldTitleTemplate/ArrayFieldTitleTemplate.d.ts +7 -0
- package/lib/templates/ArrayFieldTitleTemplate/ArrayFieldTitleTemplate.js +11 -0
- package/lib/templates/ArrayFieldTitleTemplate/ArrayFieldTitleTemplate.js.map +1 -0
- package/lib/templates/ArrayFieldTitleTemplate/index.d.ts +2 -0
- package/lib/templates/ArrayFieldTitleTemplate/index.js +3 -0
- package/lib/templates/ArrayFieldTitleTemplate/index.js.map +1 -0
- package/lib/templates/BaseInputTemplate/BaseInputTemplate.d.ts +16 -0
- package/lib/templates/BaseInputTemplate/BaseInputTemplate.js +33 -0
- package/lib/templates/BaseInputTemplate/BaseInputTemplate.js.map +1 -0
- package/lib/templates/BaseInputTemplate/index.d.ts +2 -0
- package/lib/templates/BaseInputTemplate/index.js +3 -0
- package/lib/templates/BaseInputTemplate/index.js.map +1 -0
- package/lib/templates/ButtonTemplates/AddButton.d.ts +6 -0
- package/lib/templates/ButtonTemplates/AddButton.js +15 -0
- package/lib/templates/ButtonTemplates/AddButton.js.map +1 -0
- package/lib/templates/ButtonTemplates/DaisyUIButton.d.ts +18 -0
- package/lib/templates/ButtonTemplates/DaisyUIButton.js +15 -0
- package/lib/templates/ButtonTemplates/DaisyUIButton.js.map +1 -0
- package/lib/templates/ButtonTemplates/IconButton.d.ts +5 -0
- package/lib/templates/ButtonTemplates/IconButton.js +21 -0
- package/lib/templates/ButtonTemplates/IconButton.js.map +1 -0
- package/lib/templates/ButtonTemplates/SubmitButton.d.ts +4 -0
- package/lib/templates/ButtonTemplates/SubmitButton.js +12 -0
- package/lib/templates/ButtonTemplates/SubmitButton.js.map +1 -0
- package/lib/templates/ButtonTemplates/index.d.ts +15 -0
- package/lib/templates/ButtonTemplates/index.js +17 -0
- package/lib/templates/ButtonTemplates/index.js.map +1 -0
- package/lib/templates/DescriptionField/DescriptionField.d.ts +8 -0
- package/lib/templates/DescriptionField/DescriptionField.js +16 -0
- package/lib/templates/DescriptionField/DescriptionField.js.map +1 -0
- package/lib/templates/DescriptionField/index.d.ts +2 -0
- package/lib/templates/DescriptionField/index.js +3 -0
- package/lib/templates/DescriptionField/index.js.map +1 -0
- package/lib/templates/ErrorList/ErrorList.d.ts +7 -0
- package/lib/templates/ErrorList/ErrorList.js +11 -0
- package/lib/templates/ErrorList/ErrorList.js.map +1 -0
- package/lib/templates/ErrorList/index.d.ts +2 -0
- package/lib/templates/ErrorList/index.js +3 -0
- package/lib/templates/ErrorList/index.js.map +1 -0
- package/lib/templates/FieldErrorTemplate/FieldErrorTemplate.d.ts +10 -0
- package/lib/templates/FieldErrorTemplate/FieldErrorTemplate.js +15 -0
- package/lib/templates/FieldErrorTemplate/FieldErrorTemplate.js.map +1 -0
- package/lib/templates/FieldErrorTemplate/index.d.ts +2 -0
- package/lib/templates/FieldErrorTemplate/index.js +3 -0
- package/lib/templates/FieldErrorTemplate/index.js.map +1 -0
- package/lib/templates/FieldHelpTemplate/FieldHelpTemplate.d.ts +11 -0
- package/lib/templates/FieldHelpTemplate/FieldHelpTemplate.js +15 -0
- package/lib/templates/FieldHelpTemplate/FieldHelpTemplate.js.map +1 -0
- package/lib/templates/FieldHelpTemplate/index.d.ts +2 -0
- package/lib/templates/FieldHelpTemplate/index.js +3 -0
- package/lib/templates/FieldHelpTemplate/index.js.map +1 -0
- package/lib/templates/FieldTemplate/FieldTemplate.d.ts +15 -0
- package/lib/templates/FieldTemplate/FieldTemplate.js +23 -0
- package/lib/templates/FieldTemplate/FieldTemplate.js.map +1 -0
- package/lib/templates/FieldTemplate/index.d.ts +2 -0
- package/lib/templates/FieldTemplate/index.js +3 -0
- package/lib/templates/FieldTemplate/index.js.map +1 -0
- package/lib/templates/GridTemplate/GridTemplate.d.ts +7 -0
- package/lib/templates/GridTemplate/GridTemplate.js +16 -0
- package/lib/templates/GridTemplate/GridTemplate.js.map +1 -0
- package/lib/templates/GridTemplate/index.d.ts +2 -0
- package/lib/templates/GridTemplate/index.js +3 -0
- package/lib/templates/GridTemplate/index.js.map +1 -0
- package/lib/templates/ObjectFieldTemplate/ObjectFieldTemplate.d.ts +13 -0
- package/lib/templates/ObjectFieldTemplate/ObjectFieldTemplate.js +25 -0
- package/lib/templates/ObjectFieldTemplate/ObjectFieldTemplate.js.map +1 -0
- package/lib/templates/ObjectFieldTemplate/index.d.ts +2 -0
- package/lib/templates/ObjectFieldTemplate/index.js +3 -0
- package/lib/templates/ObjectFieldTemplate/index.js.map +1 -0
- package/lib/templates/Templates.d.ts +19 -0
- package/lib/templates/Templates.js +56 -0
- package/lib/templates/Templates.js.map +1 -0
- package/lib/templates/TitleField/TitleField.d.ts +13 -0
- package/lib/templates/TitleField/TitleField.js +19 -0
- package/lib/templates/TitleField/TitleField.js.map +1 -0
- package/lib/templates/TitleField/index.d.ts +2 -0
- package/lib/templates/TitleField/index.js +3 -0
- package/lib/templates/TitleField/index.js.map +1 -0
- package/lib/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.d.ts +7 -0
- package/lib/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.js +20 -0
- package/lib/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.js.map +1 -0
- package/lib/templates/WrapIfAdditionalTemplate/index.d.ts +2 -0
- package/lib/templates/WrapIfAdditionalTemplate/index.js +3 -0
- package/lib/templates/WrapIfAdditionalTemplate/index.js.map +1 -0
- package/lib/templates/index.d.ts +19 -0
- package/lib/templates/index.js +20 -0
- package/lib/templates/index.js.map +1 -0
- package/lib/theme/Theme.d.ts +43 -0
- package/lib/theme/Theme.js +68 -0
- package/lib/theme/Theme.js.map +1 -0
- package/lib/theme/index.d.ts +2 -0
- package/lib/theme/index.js +3 -0
- package/lib/theme/index.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types/DaisyProps.d.ts +5 -0
- package/lib/types/DaisyProps.js +2 -0
- package/lib/types/DaisyProps.js.map +1 -0
- package/lib/utils.d.ts +13 -0
- package/lib/utils.js +5 -0
- package/lib/utils.js.map +1 -0
- package/lib/widgets/AltDateTimeWidget/AltDateTimeWidget.d.ts +6 -0
- package/lib/widgets/AltDateTimeWidget/AltDateTimeWidget.js +10 -0
- package/lib/widgets/AltDateTimeWidget/AltDateTimeWidget.js.map +1 -0
- package/lib/widgets/AltDateTimeWidget/index.d.ts +2 -0
- package/lib/widgets/AltDateTimeWidget/index.js +3 -0
- package/lib/widgets/AltDateTimeWidget/index.js.map +1 -0
- package/lib/widgets/AltDateWidget/AltDateWidget.d.ts +15 -0
- package/lib/widgets/AltDateWidget/AltDateWidget.js +138 -0
- package/lib/widgets/AltDateWidget/AltDateWidget.js.map +1 -0
- package/lib/widgets/AltDateWidget/index.d.ts +2 -0
- package/lib/widgets/AltDateWidget/index.js +3 -0
- package/lib/widgets/AltDateWidget/index.js.map +1 -0
- package/lib/widgets/CheckboxWidget/CheckboxWidget.d.ts +13 -0
- package/lib/widgets/CheckboxWidget/CheckboxWidget.js +43 -0
- package/lib/widgets/CheckboxWidget/CheckboxWidget.js.map +1 -0
- package/lib/widgets/CheckboxWidget/index.d.ts +2 -0
- package/lib/widgets/CheckboxWidget/index.js +3 -0
- package/lib/widgets/CheckboxWidget/index.js.map +1 -0
- package/lib/widgets/CheckboxesWidget/CheckboxesWidget.d.ts +16 -0
- package/lib/widgets/CheckboxesWidget/CheckboxesWidget.js +73 -0
- package/lib/widgets/CheckboxesWidget/CheckboxesWidget.js.map +1 -0
- package/lib/widgets/CheckboxesWidget/index.d.ts +2 -0
- package/lib/widgets/CheckboxesWidget/index.js +3 -0
- package/lib/widgets/CheckboxesWidget/index.js.map +1 -0
- package/lib/widgets/DateTimeWidget/DateTimeWidget.d.ts +14 -0
- package/lib/widgets/DateTimeWidget/DateTimeWidget.js +207 -0
- package/lib/widgets/DateTimeWidget/DateTimeWidget.js.map +1 -0
- package/lib/widgets/DateTimeWidget/index.d.ts +2 -0
- package/lib/widgets/DateTimeWidget/index.js +3 -0
- package/lib/widgets/DateTimeWidget/index.js.map +1 -0
- package/lib/widgets/DateWidget/DateWidget.d.ts +14 -0
- package/lib/widgets/DateWidget/DateWidget.js +274 -0
- package/lib/widgets/DateWidget/DateWidget.js.map +1 -0
- package/lib/widgets/DateWidget/index.d.ts +2 -0
- package/lib/widgets/DateWidget/index.js +3 -0
- package/lib/widgets/DateWidget/index.js.map +1 -0
- package/lib/widgets/FileWidget/FileWidget.d.ts +12 -0
- package/lib/widgets/FileWidget/FileWidget.js +57 -0
- package/lib/widgets/FileWidget/FileWidget.js.map +1 -0
- package/lib/widgets/FileWidget/index.d.ts +2 -0
- package/lib/widgets/FileWidget/index.js +3 -0
- package/lib/widgets/FileWidget/index.js.map +1 -0
- package/lib/widgets/RadioWidget/RadioWidget.d.ts +14 -0
- package/lib/widgets/RadioWidget/RadioWidget.js +67 -0
- package/lib/widgets/RadioWidget/RadioWidget.js.map +1 -0
- package/lib/widgets/RadioWidget/index.d.ts +2 -0
- package/lib/widgets/RadioWidget/index.js +3 -0
- package/lib/widgets/RadioWidget/index.js.map +1 -0
- package/lib/widgets/RangeWidget/RangeWidget.d.ts +13 -0
- package/lib/widgets/RangeWidget/RangeWidget.js +42 -0
- package/lib/widgets/RangeWidget/RangeWidget.js.map +1 -0
- package/lib/widgets/RangeWidget/index.d.ts +2 -0
- package/lib/widgets/RangeWidget/index.js +3 -0
- package/lib/widgets/RangeWidget/index.js.map +1 -0
- package/lib/widgets/RatingWidget/RatingWidget.d.ts +17 -0
- package/lib/widgets/RatingWidget/RatingWidget.js +64 -0
- package/lib/widgets/RatingWidget/RatingWidget.js.map +1 -0
- package/lib/widgets/RatingWidget/index.d.ts +2 -0
- package/lib/widgets/RatingWidget/index.js +3 -0
- package/lib/widgets/RatingWidget/index.js.map +1 -0
- package/lib/widgets/SelectWidget/SelectWidget.d.ts +14 -0
- package/lib/widgets/SelectWidget/SelectWidget.js +74 -0
- package/lib/widgets/SelectWidget/SelectWidget.js.map +1 -0
- package/lib/widgets/SelectWidget/index.d.ts +2 -0
- package/lib/widgets/SelectWidget/index.js +3 -0
- package/lib/widgets/SelectWidget/index.js.map +1 -0
- package/lib/widgets/TextareaWidget/TextareaWidget.d.ts +12 -0
- package/lib/widgets/TextareaWidget/TextareaWidget.js +44 -0
- package/lib/widgets/TextareaWidget/TextareaWidget.js.map +1 -0
- package/lib/widgets/TextareaWidget/index.d.ts +2 -0
- package/lib/widgets/TextareaWidget/index.js +3 -0
- package/lib/widgets/TextareaWidget/index.js.map +1 -0
- package/lib/widgets/TimeWidget/TimeWidget.d.ts +12 -0
- package/lib/widgets/TimeWidget/TimeWidget.js +42 -0
- package/lib/widgets/TimeWidget/TimeWidget.js.map +1 -0
- package/lib/widgets/TimeWidget/index.d.ts +2 -0
- package/lib/widgets/TimeWidget/index.js +3 -0
- package/lib/widgets/TimeWidget/index.js.map +1 -0
- package/lib/widgets/ToggleWidget/ToggleWidget.d.ts +13 -0
- package/lib/widgets/ToggleWidget/ToggleWidget.js +40 -0
- package/lib/widgets/ToggleWidget/ToggleWidget.js.map +1 -0
- package/lib/widgets/ToggleWidget/index.d.ts +2 -0
- package/lib/widgets/ToggleWidget/index.js +3 -0
- package/lib/widgets/ToggleWidget/index.js.map +1 -0
- package/lib/widgets/Widgets.d.ts +18 -0
- package/lib/widgets/Widgets.js +35 -0
- package/lib/widgets/Widgets.js.map +1 -0
- package/lib/widgets/index.d.ts +2 -0
- package/lib/widgets/index.js +3 -0
- package/lib/widgets/index.js.map +1 -0
- package/package.json +95 -0
- package/src/DaisyUIForm.tsx +9 -0
- package/src/DaisyUIFrameProvider.tsx +107 -0
- package/src/daisyForm/DaisyForm.tsx +20 -0
- package/src/daisyForm/index.ts +2 -0
- package/src/index.ts +13 -0
- package/src/styles.css +9 -0
- package/src/templates/ArrayFieldDescriptionTemplate/ArrayFieldDescriptionTemplate.tsx +19 -0
- package/src/templates/ArrayFieldDescriptionTemplate/index.ts +2 -0
- package/src/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.tsx +89 -0
- package/src/templates/ArrayFieldItemButtonsTemplate/index.ts +2 -0
- package/src/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.tsx +55 -0
- package/src/templates/ArrayFieldItemTemplate/index.ts +2 -0
- package/src/templates/ArrayFieldTemplate/ArrayFieldTemplate.tsx +120 -0
- package/src/templates/ArrayFieldTemplate/index.ts +2 -0
- package/src/templates/ArrayFieldTitleTemplate/ArrayFieldTitleTemplate.tsx +15 -0
- package/src/templates/ArrayFieldTitleTemplate/index.ts +2 -0
- package/src/templates/BaseInputTemplate/BaseInputTemplate.tsx +104 -0
- package/src/templates/BaseInputTemplate/index.ts +2 -0
- package/src/templates/ButtonTemplates/AddButton.tsx +38 -0
- package/src/templates/ButtonTemplates/DaisyUIButton.tsx +31 -0
- package/src/templates/ButtonTemplates/IconButton.tsx +62 -0
- package/src/templates/ButtonTemplates/SubmitButton.tsx +25 -0
- package/src/templates/ButtonTemplates/index.ts +19 -0
- package/src/templates/DescriptionField/DescriptionField.tsx +26 -0
- package/src/templates/DescriptionField/index.ts +2 -0
- package/src/templates/ErrorList/ErrorList.tsx +21 -0
- package/src/templates/ErrorList/index.ts +2 -0
- package/src/templates/FieldErrorTemplate/FieldErrorTemplate.tsx +22 -0
- package/src/templates/FieldErrorTemplate/index.ts +2 -0
- package/src/templates/FieldHelpTemplate/FieldHelpTemplate.tsx +23 -0
- package/src/templates/FieldHelpTemplate/index.ts +2 -0
- package/src/templates/FieldTemplate/FieldTemplate.tsx +66 -0
- package/src/templates/FieldTemplate/index.ts +2 -0
- package/src/templates/GridTemplate/GridTemplate.tsx +26 -0
- package/src/templates/GridTemplate/index.ts +2 -0
- package/src/templates/ObjectFieldTemplate/ObjectFieldTemplate.tsx +108 -0
- package/src/templates/ObjectFieldTemplate/index.ts +2 -0
- package/src/templates/Templates.tsx +63 -0
- package/src/templates/TitleField/TitleField.tsx +26 -0
- package/src/templates/TitleField/index.ts +2 -0
- package/src/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx +74 -0
- package/src/templates/WrapIfAdditionalTemplate/index.ts +2 -0
- package/src/templates/index.ts +22 -0
- package/src/theme/Theme.tsx +93 -0
- package/src/theme/index.ts +2 -0
- package/src/tsconfig.json +26 -0
- package/src/types/DaisyProps.ts +5 -0
- package/src/types.d.ts +4 -0
- package/src/utils.ts +18 -0
- package/src/widgets/AltDateTimeWidget/AltDateTimeWidget.tsx +14 -0
- package/src/widgets/AltDateTimeWidget/index.ts +2 -0
- package/src/widgets/AltDateWidget/AltDateWidget.tsx +328 -0
- package/src/widgets/AltDateWidget/index.ts +2 -0
- package/src/widgets/CheckboxWidget/CheckboxWidget.tsx +108 -0
- package/src/widgets/CheckboxWidget/index.ts +2 -0
- package/src/widgets/CheckboxesWidget/CheckboxesWidget.tsx +124 -0
- package/src/widgets/CheckboxesWidget/index.ts +2 -0
- package/src/widgets/DateTimeWidget/DateTimeWidget.tsx +343 -0
- package/src/widgets/DateTimeWidget/index.ts +2 -0
- package/src/widgets/DateWidget/DateWidget.tsx +393 -0
- package/src/widgets/DateWidget/index.ts +2 -0
- package/src/widgets/FileWidget/FileWidget.tsx +86 -0
- package/src/widgets/FileWidget/index.ts +2 -0
- package/src/widgets/RadioWidget/RadioWidget.tsx +114 -0
- package/src/widgets/RadioWidget/index.ts +2 -0
- package/src/widgets/RangeWidget/RangeWidget.tsx +78 -0
- package/src/widgets/RangeWidget/index.ts +2 -0
- package/src/widgets/RatingWidget/RatingWidget.tsx +120 -0
- package/src/widgets/RatingWidget/index.ts +2 -0
- package/src/widgets/SelectWidget/SelectWidget.tsx +161 -0
- package/src/widgets/SelectWidget/index.ts +2 -0
- package/src/widgets/TextareaWidget/TextareaWidget.tsx +77 -0
- package/src/widgets/TextareaWidget/index.ts +2 -0
- package/src/widgets/TimeWidget/TimeWidget.tsx +72 -0
- package/src/widgets/TimeWidget/index.ts +2 -0
- package/src/widgets/ToggleWidget/ToggleWidget.tsx +70 -0
- package/src/widgets/ToggleWidget/index.ts +2 -0
- package/src/widgets/Widgets.tsx +58 -0
- package/src/widgets/index.ts +2 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';
|
|
2
|
+
/** The `RatingWidget` component renders a star or heart rating input with DaisyUI styling
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Configurable number of stars/hearts (1-5) with default of 5
|
|
6
|
+
* - Supports different shapes (star, heart)
|
|
7
|
+
* - Supports different colors (red, orange, yellow, lime, green, blue, purple, pink)
|
|
8
|
+
* - Supports different sizes (xs, sm, md, lg, xl)
|
|
9
|
+
* - Uses DaisyUI's mask and star/heart styling
|
|
10
|
+
* - Supports minimum and maximum values from schema
|
|
11
|
+
* - Handles required, disabled, and readonly states
|
|
12
|
+
* - Provides focus and blur event handling for accessibility
|
|
13
|
+
* - Uses radio inputs for a11y compatibility
|
|
14
|
+
*
|
|
15
|
+
* @param props - The `WidgetProps` for this component
|
|
16
|
+
*/
|
|
17
|
+
export default function RatingWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, value, required, disabled, readonly, autofocus, onChange, onFocus, onBlur, schema, options, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
/** The `RatingWidget` component renders a star or heart rating input with DaisyUI styling
|
|
4
|
+
*
|
|
5
|
+
* Features:
|
|
6
|
+
* - Configurable number of stars/hearts (1-5) with default of 5
|
|
7
|
+
* - Supports different shapes (star, heart)
|
|
8
|
+
* - Supports different colors (red, orange, yellow, lime, green, blue, purple, pink)
|
|
9
|
+
* - Supports different sizes (xs, sm, md, lg, xl)
|
|
10
|
+
* - Uses DaisyUI's mask and star/heart styling
|
|
11
|
+
* - Supports minimum and maximum values from schema
|
|
12
|
+
* - Handles required, disabled, and readonly states
|
|
13
|
+
* - Provides focus and blur event handling for accessibility
|
|
14
|
+
* - Uses radio inputs for a11y compatibility
|
|
15
|
+
*
|
|
16
|
+
* @param props - The `WidgetProps` for this component
|
|
17
|
+
*/
|
|
18
|
+
export default function RatingWidget({ id, value, required, disabled, readonly, autofocus, onChange, onFocus, onBlur, schema, options, }) {
|
|
19
|
+
const { stars = 5, shape = 'star', color = 'orange', size = 'md', colorGradient = false } = options;
|
|
20
|
+
// Use schema.maximum if provided, otherwise use stars option (limited to 1-5)
|
|
21
|
+
const numStars = schema.maximum ? Math.min(schema.maximum, 5) : Math.min(Math.max(stars, 1), 5);
|
|
22
|
+
const min = schema.minimum || 0;
|
|
23
|
+
// Generate shape class
|
|
24
|
+
const maskClass = shape === 'heart' ? 'mask-heart' : 'mask-star-2';
|
|
25
|
+
// Generate size class
|
|
26
|
+
const sizeClass = size === 'md' ? '' : `rating-${size}`;
|
|
27
|
+
/** Handles change events from radio inputs */
|
|
28
|
+
const _onChange = useCallback(({ target: { value } }) => {
|
|
29
|
+
onChange(parseInt(value));
|
|
30
|
+
}, [onChange]);
|
|
31
|
+
/** Handles focus events for accessibility */
|
|
32
|
+
const handleFocus = useCallback((event) => {
|
|
33
|
+
if (onFocus) {
|
|
34
|
+
const starValue = Number(event.target.value);
|
|
35
|
+
onFocus(id, starValue);
|
|
36
|
+
}
|
|
37
|
+
}, [onFocus, id]);
|
|
38
|
+
/** Handles blur events for accessibility */
|
|
39
|
+
const handleBlur = useCallback((event) => {
|
|
40
|
+
if (onBlur) {
|
|
41
|
+
const starValue = Number(event.target.value);
|
|
42
|
+
onBlur(id, starValue);
|
|
43
|
+
}
|
|
44
|
+
}, [onBlur, id]);
|
|
45
|
+
/** Get color class for a specific star/heart
|
|
46
|
+
*
|
|
47
|
+
* @param index - The index of the star/heart (0-based)
|
|
48
|
+
* @returns The appropriate color class
|
|
49
|
+
*/
|
|
50
|
+
const getColorClass = (index) => {
|
|
51
|
+
if (!colorGradient) {
|
|
52
|
+
return `bg-${color}-400`;
|
|
53
|
+
}
|
|
54
|
+
// For gradient effect, use different colors based on position
|
|
55
|
+
const colors = ['red', 'orange', 'yellow', 'lime', 'green'];
|
|
56
|
+
const colorIdx = Math.min(index, colors.length - 1);
|
|
57
|
+
return `bg-${colors[colorIdx]}-400`;
|
|
58
|
+
};
|
|
59
|
+
return (_jsx("div", { className: 'form-control w-full', children: _jsx("div", { className: `rating gap-1 ${sizeClass}`, children: [...Array(numStars)].map((_, index) => {
|
|
60
|
+
const starValue = min + index;
|
|
61
|
+
return (_jsx("input", { type: 'radio', name: id, value: starValue, checked: value === starValue, onChange: _onChange, onFocus: handleFocus, onBlur: handleBlur, className: `mask ${maskClass} ${getColorClass(index)}`, disabled: disabled || readonly, required: required, autoFocus: autofocus && index === 0, "aria-label": `${starValue} ${shape === 'heart' ? 'heart' : 'star'}${starValue === 1 ? '' : 's'}` }, index));
|
|
62
|
+
}) }) }));
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=RatingWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RatingWidget.js","sourceRoot":"","sources":["../../../src/widgets/RatingWidget/RatingWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/RatingWidget/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';
|
|
2
|
+
/** The `SelectWidget` component renders a select input with DaisyUI styling
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Supports both single and multiple selection
|
|
6
|
+
* - Handles enumerated objects and primitive values
|
|
7
|
+
* - Uses DaisyUI select styling with proper width
|
|
8
|
+
* - Supports required, disabled, and readonly states
|
|
9
|
+
* - Manages focus and blur events for accessibility
|
|
10
|
+
* - Provides placeholder option when needed
|
|
11
|
+
*
|
|
12
|
+
* @param props - The `WidgetProps` for this component
|
|
13
|
+
*/
|
|
14
|
+
export default function SelectWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ schema, id, options, label, disabled, placeholder, readonly, value, multiple, onChange, onBlur, onFocus, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
import { enumOptionsIndexForValue, enumOptionsValueForIndex, } from '@rjsf/utils';
|
|
4
|
+
/** The `SelectWidget` component renders a select input with DaisyUI styling
|
|
5
|
+
*
|
|
6
|
+
* Features:
|
|
7
|
+
* - Supports both single and multiple selection
|
|
8
|
+
* - Handles enumerated objects and primitive values
|
|
9
|
+
* - Uses DaisyUI select styling with proper width
|
|
10
|
+
* - Supports required, disabled, and readonly states
|
|
11
|
+
* - Manages focus and blur events for accessibility
|
|
12
|
+
* - Provides placeholder option when needed
|
|
13
|
+
*
|
|
14
|
+
* @param props - The `WidgetProps` for this component
|
|
15
|
+
*/
|
|
16
|
+
export default function SelectWidget({ schema, id, options, label, disabled, placeholder, readonly, value, multiple, onChange, onBlur, onFocus, }) {
|
|
17
|
+
var _a;
|
|
18
|
+
const { enumOptions, emptyValue: optEmptyVal } = options;
|
|
19
|
+
multiple = typeof multiple === 'undefined' ? false : !!multiple;
|
|
20
|
+
const getDisplayValue = (val) => {
|
|
21
|
+
if (!val) {
|
|
22
|
+
return '';
|
|
23
|
+
}
|
|
24
|
+
if (typeof val === 'object') {
|
|
25
|
+
if (val.name) {
|
|
26
|
+
return val.name;
|
|
27
|
+
}
|
|
28
|
+
return val.label || JSON.stringify(val);
|
|
29
|
+
}
|
|
30
|
+
return String(val);
|
|
31
|
+
};
|
|
32
|
+
const isEnumeratedObject = enumOptions && ((_a = enumOptions[0]) === null || _a === void 0 ? void 0 : _a.value) && typeof enumOptions[0].value === 'object';
|
|
33
|
+
const handleOptionClick = useCallback((event) => {
|
|
34
|
+
const index = Number(event.currentTarget.dataset.value);
|
|
35
|
+
if (isNaN(index)) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
if (multiple) {
|
|
39
|
+
const currentValue = Array.isArray(value) ? value : [];
|
|
40
|
+
const optionValue = isEnumeratedObject
|
|
41
|
+
? enumOptions[index].value
|
|
42
|
+
: enumOptionsValueForIndex(String(index), enumOptions, optEmptyVal);
|
|
43
|
+
const newValue = currentValue.includes(optionValue)
|
|
44
|
+
? currentValue.filter((v) => v !== optionValue)
|
|
45
|
+
: [...currentValue, optionValue];
|
|
46
|
+
onChange(newValue);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
onChange(isEnumeratedObject
|
|
50
|
+
? enumOptions[index].value
|
|
51
|
+
: enumOptionsValueForIndex(String(index), enumOptions, optEmptyVal));
|
|
52
|
+
}
|
|
53
|
+
}, [value, multiple, isEnumeratedObject, enumOptions, optEmptyVal, onChange]);
|
|
54
|
+
const _onBlur = useCallback(({ target }) => {
|
|
55
|
+
const dataValue = target === null || target === void 0 ? void 0 : target.getAttribute('data-value');
|
|
56
|
+
if (dataValue !== null) {
|
|
57
|
+
onBlur(id, enumOptionsValueForIndex(dataValue, enumOptions, optEmptyVal));
|
|
58
|
+
}
|
|
59
|
+
}, [onBlur, id, enumOptions, optEmptyVal]);
|
|
60
|
+
const _onFocus = useCallback(({ target }) => {
|
|
61
|
+
const dataValue = target === null || target === void 0 ? void 0 : target.getAttribute('data-value');
|
|
62
|
+
if (dataValue !== null) {
|
|
63
|
+
onFocus(id, enumOptionsValueForIndex(dataValue, enumOptions, optEmptyVal));
|
|
64
|
+
}
|
|
65
|
+
}, [onFocus, id, enumOptions, optEmptyVal]);
|
|
66
|
+
const selectedIndexes = enumOptionsIndexForValue(value, enumOptions, multiple);
|
|
67
|
+
const selectedValues = Array.isArray(selectedIndexes) ? selectedIndexes : [selectedIndexes];
|
|
68
|
+
const optionsList = enumOptions ||
|
|
69
|
+
(Array.isArray(schema.examples) ? schema.examples.map((example) => ({ value: example, label: example })) : []);
|
|
70
|
+
return (_jsx("div", { className: 'form-control w-full', children: _jsxs("div", { className: 'dropdown w-full', children: [_jsxs("div", { tabIndex: 0, role: 'button', className: `btn btn-outline w-full text-left flex justify-between items-center ${disabled || readonly ? 'btn-disabled' : ''}`, onBlur: _onBlur, onFocus: _onFocus, children: [_jsx("span", { className: 'truncate', children: selectedValues.length > 0
|
|
71
|
+
? selectedValues.map((index) => { var _a; return (_a = optionsList[Number(index)]) === null || _a === void 0 ? void 0 : _a.label; }).join(', ')
|
|
72
|
+
: placeholder || label || 'Select...' }), _jsx("span", { className: 'ml-2', children: "\u25BC" })] }), _jsx("ul", { className: 'dropdown-content z-[1] bg-base-100 w-full max-h-60 overflow-auto rounded-box shadow-lg', children: optionsList.map(({ label }, i) => (_jsx("li", { role: 'button', tabIndex: 0, className: `px-4 py-2 hover:bg-base-200 cursor-pointer ${selectedValues.includes(String(i)) ? 'bg-primary/10' : ''}`, onClick: handleOptionClick, "data-value": i, children: _jsxs("div", { className: 'flex items-center gap-2', children: [multiple && (_jsx("input", { type: 'checkbox', className: 'checkbox checkbox-sm', checked: selectedValues.includes(String(i)), readOnly: true })), _jsx("span", { children: isEnumeratedObject ? label : getDisplayValue(label) })] }) }, i))) })] }) }));
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=SelectWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectWidget.js","sourceRoot":"","sources":["../../../src/widgets/SelectWidget/SelectWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/SelectWidget/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { WidgetProps, StrictRJSFSchema, RJSFSchema, FormContextType } from '@rjsf/utils';
|
|
2
|
+
/** The `TextareaWidget` component renders a multi-line text input with DaisyUI styling
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Handles multi-line text input with proper styling
|
|
6
|
+
* - Supports required, disabled, and readonly states
|
|
7
|
+
* - Manages focus and blur events for accessibility
|
|
8
|
+
* - Uses DaisyUI's textarea component for consistent styling
|
|
9
|
+
*
|
|
10
|
+
* @param props - The `WidgetProps` for this component
|
|
11
|
+
*/
|
|
12
|
+
export default function TextareaWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(props: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
/** The `TextareaWidget` component renders a multi-line text input with DaisyUI styling
|
|
4
|
+
*
|
|
5
|
+
* Features:
|
|
6
|
+
* - Handles multi-line text input with proper styling
|
|
7
|
+
* - Supports required, disabled, and readonly states
|
|
8
|
+
* - Manages focus and blur events for accessibility
|
|
9
|
+
* - Uses DaisyUI's textarea component for consistent styling
|
|
10
|
+
*
|
|
11
|
+
* @param props - The `WidgetProps` for this component
|
|
12
|
+
*/
|
|
13
|
+
export default function TextareaWidget(props) {
|
|
14
|
+
const { id, value, required, disabled, readonly, onChange, onFocus, onBlur, options } = props;
|
|
15
|
+
/** Handle focus events
|
|
16
|
+
*
|
|
17
|
+
* @param event - The focus event
|
|
18
|
+
*/
|
|
19
|
+
const handleFocus = useCallback((event) => {
|
|
20
|
+
if (onFocus) {
|
|
21
|
+
onFocus(id, event.target.value);
|
|
22
|
+
}
|
|
23
|
+
}, [onFocus, id]);
|
|
24
|
+
/** Handle blur events
|
|
25
|
+
*
|
|
26
|
+
* @param event - The blur event
|
|
27
|
+
*/
|
|
28
|
+
const handleBlur = useCallback((event) => {
|
|
29
|
+
if (onBlur) {
|
|
30
|
+
onBlur(id, event.target.value);
|
|
31
|
+
}
|
|
32
|
+
}, [onBlur, id]);
|
|
33
|
+
/** Handle change events
|
|
34
|
+
*
|
|
35
|
+
* @param event - The change event
|
|
36
|
+
*/
|
|
37
|
+
const handleChange = useCallback((event) => {
|
|
38
|
+
onChange(event.target.value);
|
|
39
|
+
}, [onChange]);
|
|
40
|
+
// Extract rows and other textarea-specific props from options
|
|
41
|
+
const rows = (options === null || options === void 0 ? void 0 : options.rows) || 5;
|
|
42
|
+
return (_jsx("div", { className: 'form-control', children: _jsx("textarea", { id: id, value: value || '', required: required, disabled: disabled || readonly, readOnly: readonly, rows: rows, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur, className: 'textarea textarea-bordered w-full' }) }));
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=TextareaWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextareaWidget.js","sourceRoot":"","sources":["../../../src/widgets/TextareaWidget/TextareaWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,OAAO,CAAC;AAGhD;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAIpC,KAA2B;IAC3B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAE9F;;;OAGG;IACH,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAsC,EAAE,EAAE;QACzC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,EAAE,CAAC,CACd,CAAC;IAEF;;;OAGG;IACH,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,KAAsC,EAAE,EAAE;QACzC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,CACb,CAAC;IAEF;;;OAGG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAA6C,EAAE,EAAE;QAChD,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,8DAA8D;IAC9D,MAAM,IAAI,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,KAAI,CAAC,CAAC;IAEhC,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,YAC3B,mBACE,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,KAAK,IAAI,EAAE,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAC9B,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAC,mCAAmC,GAC7C,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/TextareaWidget/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { WidgetProps, StrictRJSFSchema, RJSFSchema, FormContextType } from '@rjsf/utils';
|
|
2
|
+
/** The `TimeWidget` component renders a time input with DaisyUI styling
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Provides a time picker with hours and minutes
|
|
6
|
+
* - Handles required, disabled, and readonly states
|
|
7
|
+
* - Manages focus and blur events for accessibility
|
|
8
|
+
* - Uses DaisyUI's input styling with proper width
|
|
9
|
+
*
|
|
10
|
+
* @param props - The `WidgetProps` for this component
|
|
11
|
+
*/
|
|
12
|
+
export default function TimeWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(props: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
/** The `TimeWidget` component renders a time input with DaisyUI styling
|
|
4
|
+
*
|
|
5
|
+
* Features:
|
|
6
|
+
* - Provides a time picker with hours and minutes
|
|
7
|
+
* - Handles required, disabled, and readonly states
|
|
8
|
+
* - Manages focus and blur events for accessibility
|
|
9
|
+
* - Uses DaisyUI's input styling with proper width
|
|
10
|
+
*
|
|
11
|
+
* @param props - The `WidgetProps` for this component
|
|
12
|
+
*/
|
|
13
|
+
export default function TimeWidget(props) {
|
|
14
|
+
const { id, value, onChange, onFocus, onBlur, required, disabled, readonly } = props;
|
|
15
|
+
/** Handle focus events
|
|
16
|
+
*
|
|
17
|
+
* @param event - The focus event
|
|
18
|
+
*/
|
|
19
|
+
const handleFocus = useCallback((event) => {
|
|
20
|
+
if (onFocus) {
|
|
21
|
+
onFocus(id, event.target.value);
|
|
22
|
+
}
|
|
23
|
+
}, [onFocus, id]);
|
|
24
|
+
/** Handle blur events
|
|
25
|
+
*
|
|
26
|
+
* @param event - The blur event
|
|
27
|
+
*/
|
|
28
|
+
const handleBlur = useCallback((event) => {
|
|
29
|
+
if (onBlur) {
|
|
30
|
+
onBlur(id, event.target.value);
|
|
31
|
+
}
|
|
32
|
+
}, [onBlur, id]);
|
|
33
|
+
/** Handle change events
|
|
34
|
+
*
|
|
35
|
+
* @param event - The change event
|
|
36
|
+
*/
|
|
37
|
+
const handleChange = useCallback((event) => {
|
|
38
|
+
onChange(event.target.value);
|
|
39
|
+
}, [onChange]);
|
|
40
|
+
return (_jsx("div", { className: 'form-control', children: _jsx("input", { type: 'time', id: id, className: 'input input-bordered w-full', value: value || '', required: required, disabled: disabled || readonly, readOnly: readonly, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur }) }));
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=TimeWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimeWidget.js","sourceRoot":"","sources":["../../../src/widgets/TimeWidget/TimeWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,WAAW,EAAE,MAAM,OAAO,CAAC;AAGhD;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,KAA2B;IAE3B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAErF;;;OAGG;IACH,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAmC,EAAE,EAAE;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,EAAE,CAAC,CACd,CAAC;IAEF;;;OAGG;IACH,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,KAAmC,EAAE,EAAE;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,EAAE,CAAC,CACb,CAAC;IAEF;;;OAGG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAA0C,EAAE,EAAE;QAC7C,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,YAC3B,gBACE,IAAI,EAAC,MAAM,EACX,EAAE,EAAE,EAAE,EACN,SAAS,EAAC,6BAA6B,EACvC,KAAK,EAAE,KAAK,IAAI,EAAE,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAC9B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,GAClB,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/TimeWidget/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjsf/utils';
|
|
2
|
+
/** The `ToggleWidget` component renders a toggle switch input with DaisyUI styling
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Provides a visual toggle switch rather than a standard checkbox
|
|
6
|
+
* - Supports different sizes through options (sm, md, lg)
|
|
7
|
+
* - Handles required, disabled, and readonly states
|
|
8
|
+
* - Manages focus and blur events for accessibility
|
|
9
|
+
* - Includes an optional label from options
|
|
10
|
+
*
|
|
11
|
+
* @param props - The `WidgetProps` for this component
|
|
12
|
+
*/
|
|
13
|
+
export default function ToggleWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, value, required, disabled, readonly, autofocus, onChange, onFocus, onBlur, options }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback } from 'react';
|
|
3
|
+
/** The `ToggleWidget` component renders a toggle switch input with DaisyUI styling
|
|
4
|
+
*
|
|
5
|
+
* Features:
|
|
6
|
+
* - Provides a visual toggle switch rather than a standard checkbox
|
|
7
|
+
* - Supports different sizes through options (sm, md, lg)
|
|
8
|
+
* - Handles required, disabled, and readonly states
|
|
9
|
+
* - Manages focus and blur events for accessibility
|
|
10
|
+
* - Includes an optional label from options
|
|
11
|
+
*
|
|
12
|
+
* @param props - The `WidgetProps` for this component
|
|
13
|
+
*/
|
|
14
|
+
export default function ToggleWidget({ id, value, required, disabled, readonly, autofocus, onChange, onFocus, onBlur, options }) {
|
|
15
|
+
/** Handle change events from the toggle input
|
|
16
|
+
*
|
|
17
|
+
* @param event - The change event
|
|
18
|
+
*/
|
|
19
|
+
const _onChange = useCallback(({ target: { checked } }) => onChange(checked), [onChange]);
|
|
20
|
+
/** Handle focus events
|
|
21
|
+
*/
|
|
22
|
+
const handleFocus = useCallback(() => {
|
|
23
|
+
if (onFocus) {
|
|
24
|
+
onFocus(id, value);
|
|
25
|
+
}
|
|
26
|
+
}, [onFocus, id, value]);
|
|
27
|
+
/** Handle blur events
|
|
28
|
+
*/
|
|
29
|
+
const handleBlur = useCallback(() => {
|
|
30
|
+
if (onBlur) {
|
|
31
|
+
onBlur(id, value);
|
|
32
|
+
}
|
|
33
|
+
}, [onBlur, id, value]);
|
|
34
|
+
// Get size from options or use default "md"
|
|
35
|
+
const { size = 'md' } = options;
|
|
36
|
+
// Only add size class if it's not the default size
|
|
37
|
+
const sizeClass = size !== 'md' ? `toggle-${size}` : '';
|
|
38
|
+
return (_jsx("div", { className: 'form-control', children: _jsxs("label", { className: 'cursor-pointer label my-auto', children: [_jsx("input", { type: 'checkbox', id: id, checked: value, required: required, disabled: disabled || readonly, autoFocus: autofocus, onChange: _onChange, onFocus: handleFocus, onBlur: handleBlur, className: `toggle ${sizeClass}` }), _jsx("span", { className: 'label-text', children: options.label })] }) }));
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=ToggleWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToggleWidget.js","sourceRoot":"","sources":["../../../src/widgets/ToggleWidget/ToggleWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAe,WAAW,EAAE,MAAM,OAAO,CAAC;AAGjD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,UAAU,YAAY,CAIlC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAwB;IAChH;;;OAGG;IACH,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAiC,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAC7E,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF;OACG;IACH,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzB;OACG;IACH,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;IAExB,4CAA4C;IAC5C,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IAEhC,mDAAmD;IACnD,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAExD,OAAO,CACL,cAAK,SAAS,EAAC,cAAc,YAC3B,iBAAO,SAAS,EAAC,8BAA8B,aAC7C,gBACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAC9B,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,SAAS,EACnB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAE,UAAU,SAAS,EAAE,GAChC,EACF,eAAM,SAAS,EAAC,YAAY,YAAE,OAAO,CAAC,KAAK,GAAQ,IAC7C,GACJ,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/widgets/ToggleWidget/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { FormContextType, RegistryWidgetsType, RJSFSchema, StrictRJSFSchema } from '@rjsf/utils';
|
|
2
|
+
import AltDateTimeWidget from './AltDateTimeWidget/AltDateTimeWidget.js';
|
|
3
|
+
import AltDateWidget from './AltDateWidget/AltDateWidget.js';
|
|
4
|
+
import CheckboxWidget from './CheckboxWidget/CheckboxWidget.js';
|
|
5
|
+
import CheckboxesWidget from './CheckboxesWidget/CheckboxesWidget.js';
|
|
6
|
+
import DateTimeWidget from './DateTimeWidget/DateTimeWidget.js';
|
|
7
|
+
import DateWidget from './DateWidget/DateWidget.js';
|
|
8
|
+
import FileWidget from './FileWidget/FileWidget.js';
|
|
9
|
+
import RadioWidget from './RadioWidget/RadioWidget.js';
|
|
10
|
+
import RangeWidget from './RangeWidget/RangeWidget.js';
|
|
11
|
+
import RatingWidget from './RatingWidget/RatingWidget.js';
|
|
12
|
+
import SelectWidget from './SelectWidget/SelectWidget.js';
|
|
13
|
+
import TextareaWidget from './TextareaWidget/TextareaWidget.js';
|
|
14
|
+
import TimeWidget from './TimeWidget/TimeWidget.js';
|
|
15
|
+
import ToggleWidget from './ToggleWidget/ToggleWidget.js';
|
|
16
|
+
export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, FileWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
|
|
17
|
+
export declare function generateWidgets<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(): RegistryWidgetsType<T, S, F>;
|
|
18
|
+
export default generateWidgets;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import AltDateTimeWidget from './AltDateTimeWidget/AltDateTimeWidget.js';
|
|
2
|
+
import AltDateWidget from './AltDateWidget/AltDateWidget.js';
|
|
3
|
+
import CheckboxWidget from './CheckboxWidget/CheckboxWidget.js';
|
|
4
|
+
import CheckboxesWidget from './CheckboxesWidget/CheckboxesWidget.js';
|
|
5
|
+
import DateTimeWidget from './DateTimeWidget/DateTimeWidget.js';
|
|
6
|
+
import DateWidget from './DateWidget/DateWidget.js';
|
|
7
|
+
import FileWidget from './FileWidget/FileWidget.js';
|
|
8
|
+
import RadioWidget from './RadioWidget/RadioWidget.js';
|
|
9
|
+
import RangeWidget from './RangeWidget/RangeWidget.js';
|
|
10
|
+
import RatingWidget from './RatingWidget/RatingWidget.js';
|
|
11
|
+
import SelectWidget from './SelectWidget/SelectWidget.js';
|
|
12
|
+
import TextareaWidget from './TextareaWidget/TextareaWidget.js';
|
|
13
|
+
import TimeWidget from './TimeWidget/TimeWidget.js';
|
|
14
|
+
import ToggleWidget from './ToggleWidget/ToggleWidget.js';
|
|
15
|
+
export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, FileWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
|
|
16
|
+
export function generateWidgets() {
|
|
17
|
+
return {
|
|
18
|
+
AltDateTimeWidget,
|
|
19
|
+
AltDateWidget,
|
|
20
|
+
CheckboxesWidget,
|
|
21
|
+
CheckboxWidget,
|
|
22
|
+
DateTimeWidget,
|
|
23
|
+
DateWidget,
|
|
24
|
+
FileWidget,
|
|
25
|
+
RadioWidget,
|
|
26
|
+
RangeWidget,
|
|
27
|
+
RatingWidget,
|
|
28
|
+
SelectWidget,
|
|
29
|
+
TextareaWidget,
|
|
30
|
+
TimeWidget,
|
|
31
|
+
toggle: ToggleWidget,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export default generateWidgets;
|
|
35
|
+
//# sourceMappingURL=Widgets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Widgets.js","sourceRoot":"","sources":["../../src/widgets/Widgets.tsx"],"names":[],"mappings":"AAEA,OAAO,iBAAiB,MAAM,uCAAuC,CAAC;AACtE,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,gBAAgB,MAAM,qCAAqC,CAAC;AACnE,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,UAAU,MAAM,yBAAyB,CAAC;AACjD,OAAO,YAAY,MAAM,6BAA6B,CAAC;AAEvD,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,UAAU,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,UAAU,EACV,YAAY,GACb,CAAC;AAEF,MAAM,UAAU,eAAe;IAK7B,OAAO;QACL,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,cAAc;QACd,cAAc;QACd,UAAU;QACV,UAAU;QACV,WAAW;QACX,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,UAAU;QACV,MAAM,EAAE,YAAY;KACrB,CAAC;AACJ,CAAC;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/widgets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,cAAc,WAAW,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@rjsf/daisyui",
|
|
3
|
+
"version": "6.0.0-beta.2",
|
|
4
|
+
"description": "Daisy UI components for react-jsonschema-form",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"module": "lib/index.js",
|
|
7
|
+
"typings": "lib/index.d.ts",
|
|
8
|
+
"type": "module",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./lib/index.d.ts",
|
|
12
|
+
"require": "./dist/index.js",
|
|
13
|
+
"import": "./lib/index.js"
|
|
14
|
+
},
|
|
15
|
+
"./lib": {
|
|
16
|
+
"types": "./lib/index.d.ts",
|
|
17
|
+
"require": "./dist/index.js",
|
|
18
|
+
"import": "./lib/index.js"
|
|
19
|
+
},
|
|
20
|
+
"./lib/*.js": {
|
|
21
|
+
"types": "./lib/*.d.ts",
|
|
22
|
+
"require": "./dist/*.js",
|
|
23
|
+
"import": "./lib/*.js"
|
|
24
|
+
},
|
|
25
|
+
"./dist": {
|
|
26
|
+
"types": "./lib/index.d.ts",
|
|
27
|
+
"require": "./dist/index.js",
|
|
28
|
+
"import": "./lib/index.js"
|
|
29
|
+
},
|
|
30
|
+
"./dist/*.js": {
|
|
31
|
+
"types": "./lib/*.d.ts",
|
|
32
|
+
"require": "./dist/*.js",
|
|
33
|
+
"import": "./lib/*.js"
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"files": [
|
|
37
|
+
"dist",
|
|
38
|
+
"lib",
|
|
39
|
+
"src"
|
|
40
|
+
],
|
|
41
|
+
"engineStrict": false,
|
|
42
|
+
"engines": {
|
|
43
|
+
"node": ">=20"
|
|
44
|
+
},
|
|
45
|
+
"scripts": {
|
|
46
|
+
"build:ts": "tsc -b tsconfig.build.json && tsc-alias -p tsconfig.build.json",
|
|
47
|
+
"build:cjs": "esbuild ./src/index.ts --bundle --outfile=dist/index.js --sourcemap --packages=external --format=cjs",
|
|
48
|
+
"build:esm": "esbuild ./src/index.ts --bundle --outfile=dist/chakra-ui.esm.js --sourcemap --packages=external --format=esm",
|
|
49
|
+
"build:umd": "rollup dist/chakra-ui.esm.js --format=umd --file=dist/chakra-ui.umd.js --name=@rjsf/chakra-ui",
|
|
50
|
+
"build": "npm run build:ts && npm run build:cjs && npm run build:esm && npm run build:umd",
|
|
51
|
+
"cs-check": "prettier -l \"{src,test}/**/*.ts?(x)\"",
|
|
52
|
+
"cs-format": "prettier \"{src,test}/**/*.ts?(x)\" --write",
|
|
53
|
+
"lint": "eslint src test",
|
|
54
|
+
"precommit": "lint-staged",
|
|
55
|
+
"test": "jest",
|
|
56
|
+
"test:update": "jest --u",
|
|
57
|
+
"test:watch": "jest --watch",
|
|
58
|
+
"test:debug": "node --inspect-brk ../../node_modules/.bin/jest"
|
|
59
|
+
},
|
|
60
|
+
"lint-staged": {
|
|
61
|
+
"{src,test}/**/*.ts?(x)": [
|
|
62
|
+
"eslint --fix"
|
|
63
|
+
]
|
|
64
|
+
},
|
|
65
|
+
"dependencies": {
|
|
66
|
+
"@fortawesome/fontawesome-svg-core": "^6.7.2",
|
|
67
|
+
"@fortawesome/free-solid-svg-icons": "^6.7.2",
|
|
68
|
+
"@fortawesome/react-fontawesome": "^0.2.2",
|
|
69
|
+
"daisyui": "^5.0.29",
|
|
70
|
+
"react-day-picker": "^9.6.7",
|
|
71
|
+
"tailwindcss": "^4.1.4"
|
|
72
|
+
},
|
|
73
|
+
"peerDependencies": {
|
|
74
|
+
"@rjsf/core": "^6.0.0-beta.x",
|
|
75
|
+
"@rjsf/utils": "^6.0.0-beta.x",
|
|
76
|
+
"react": ">=18"
|
|
77
|
+
},
|
|
78
|
+
"devDependencies": {
|
|
79
|
+
"@rjsf/core": "^6.0.0-beta.2",
|
|
80
|
+
"@rjsf/snapshot-tests": "^6.0.0-beta.2",
|
|
81
|
+
"@rjsf/utils": "^6.0.0-beta.2",
|
|
82
|
+
"@rjsf/validator-ajv8": "^6.0.0-beta.2",
|
|
83
|
+
"@testing-library/jest-dom": "^6.1.3",
|
|
84
|
+
"@testing-library/react": "^14.0.0"
|
|
85
|
+
},
|
|
86
|
+
"repository": {
|
|
87
|
+
"type": "git",
|
|
88
|
+
"url": "git+https://github.com/rjsf-team/react-jsonschema-form.git"
|
|
89
|
+
},
|
|
90
|
+
"publishConfig": {
|
|
91
|
+
"access": "public"
|
|
92
|
+
},
|
|
93
|
+
"author": "Jason Vertrees <jason.vertrees@gmail.com>",
|
|
94
|
+
"license": "Apache-2.0"
|
|
95
|
+
}
|