@rjsf/daisyui 6.0.0-beta.21 → 6.0.0-beta.23

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 (60) hide show
  1. package/dist/chakra-ui.esm.js +169 -355
  2. package/dist/chakra-ui.esm.js.map +4 -4
  3. package/dist/chakra-ui.umd.js +60 -237
  4. package/dist/index.cjs +186 -370
  5. package/dist/index.cjs.map +4 -4
  6. package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.d.ts +2 -2
  7. package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.js +2 -7
  8. package/lib/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.js.map +1 -1
  9. package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.d.ts +3 -3
  10. package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.js +1 -1
  11. package/lib/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.js.map +1 -1
  12. package/lib/templates/ArrayFieldTemplate/ArrayFieldTemplate.js +1 -2
  13. package/lib/templates/ArrayFieldTemplate/ArrayFieldTemplate.js.map +1 -1
  14. package/lib/templates/BaseInputTemplate/BaseInputTemplate.js +8 -2
  15. package/lib/templates/BaseInputTemplate/BaseInputTemplate.js.map +1 -1
  16. package/lib/templates/FieldTemplate/FieldTemplate.js +3 -3
  17. package/lib/templates/FieldTemplate/FieldTemplate.js.map +1 -1
  18. package/lib/templates/ObjectFieldTemplate/ObjectFieldTemplate.js +2 -2
  19. package/lib/templates/ObjectFieldTemplate/ObjectFieldTemplate.js.map +1 -1
  20. package/lib/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.js +2 -9
  21. package/lib/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.js.map +1 -1
  22. package/lib/tsconfig.tsbuildinfo +1 -1
  23. package/lib/widgets/AltDateWidget/AltDateWidget.d.ts +1 -1
  24. package/lib/widgets/AltDateWidget/AltDateWidget.js +5 -121
  25. package/lib/widgets/AltDateWidget/AltDateWidget.js.map +1 -1
  26. package/lib/widgets/CheckboxWidget/CheckboxWidget.js +2 -2
  27. package/lib/widgets/CheckboxWidget/CheckboxWidget.js.map +1 -1
  28. package/lib/widgets/CheckboxesWidget/CheckboxesWidget.d.ts +1 -1
  29. package/lib/widgets/CheckboxesWidget/CheckboxesWidget.js +2 -2
  30. package/lib/widgets/CheckboxesWidget/CheckboxesWidget.js.map +1 -1
  31. package/lib/widgets/RadioWidget/RadioWidget.d.ts +1 -1
  32. package/lib/widgets/RadioWidget/RadioWidget.js +2 -2
  33. package/lib/widgets/RadioWidget/RadioWidget.js.map +1 -1
  34. package/lib/widgets/TextareaWidget/TextareaWidget.js +2 -2
  35. package/lib/widgets/TextareaWidget/TextareaWidget.js.map +1 -1
  36. package/lib/widgets/Widgets.d.ts +1 -2
  37. package/lib/widgets/Widgets.js +1 -3
  38. package/lib/widgets/Widgets.js.map +1 -1
  39. package/package.json +7 -7
  40. package/src/templates/ArrayFieldItemButtonsTemplate/ArrayFieldItemButtonsTemplate.tsx +10 -15
  41. package/src/templates/ArrayFieldItemTemplate/ArrayFieldItemTemplate.tsx +3 -3
  42. package/src/templates/ArrayFieldTemplate/ArrayFieldTemplate.tsx +1 -8
  43. package/src/templates/BaseInputTemplate/BaseInputTemplate.tsx +11 -3
  44. package/src/templates/FieldTemplate/FieldTemplate.tsx +9 -7
  45. package/src/templates/ObjectFieldTemplate/ObjectFieldTemplate.tsx +2 -2
  46. package/src/templates/WrapIfAdditionalTemplate/WrapIfAdditionalTemplate.tsx +5 -16
  47. package/src/widgets/AltDateWidget/AltDateWidget.tsx +18 -253
  48. package/src/widgets/CheckboxWidget/CheckboxWidget.tsx +2 -0
  49. package/src/widgets/CheckboxesWidget/CheckboxesWidget.tsx +2 -1
  50. package/src/widgets/RadioWidget/RadioWidget.tsx +2 -1
  51. package/src/widgets/TextareaWidget/TextareaWidget.tsx +2 -1
  52. package/src/widgets/Widgets.tsx +0 -3
  53. package/lib/widgets/FileWidget/FileWidget.d.ts +0 -12
  54. package/lib/widgets/FileWidget/FileWidget.js +0 -57
  55. package/lib/widgets/FileWidget/FileWidget.js.map +0 -1
  56. package/lib/widgets/FileWidget/index.d.ts +0 -2
  57. package/lib/widgets/FileWidget/index.js +0 -3
  58. package/lib/widgets/FileWidget/index.js.map +0 -1
  59. package/src/widgets/FileWidget/FileWidget.tsx +0 -86
  60. package/src/widgets/FileWidget/index.ts +0 -2
@@ -12,4 +12,4 @@ import { FormContextType, RJSFSchema, StrictRJSFSchema, WidgetProps } from '@rjs
12
12
  *
13
13
  * @param props - The `WidgetProps` for this component
14
14
  */
15
- export default function AltDateWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ time, disabled, readonly, autofocus, options, id, name, registry, onBlur, onFocus, onChange, value, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
15
+ export default function AltDateWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(props: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
@@ -1,79 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useCallback, useEffect, useReducer, useState } from 'react';
3
- import { ariaDescribedByIds, TranslatableString, parseDateString, toDateString, dateRangeOptions, } from '@rjsf/utils';
4
- /** Determines if the date object has all required fields to form a valid date
5
- *
6
- * @param state - The date object to check
7
- * @param time - Whether to check time fields as well
8
- * @returns True if all required fields are present
9
- */
10
- function readyForChange(state, time = false) {
11
- return state.year && state.month && state.day && (!time || (state.hour && state.minute && state.second));
12
- }
13
- /** Gets configuration for date elements based on format and ranges
14
- *
15
- * @param state - The current date object state
16
- * @param time - Whether to include time elements
17
- * @param yearsRange - Optional range of years to display
18
- * @param format - Format for ordering date elements (year, month, day)
19
- * @returns Array of element properties for rendering
20
- */
21
- function getDateElementProps(state, time, yearsRange, format = 'YMD') {
22
- const rangeOptions = yearsRange !== null && yearsRange !== void 0 ? yearsRange : [1900, new Date().getFullYear() + 2];
23
- // Define the order based on the format
24
- const formats = {
25
- YMD: ['year', 'month', 'day'],
26
- MDY: ['month', 'day', 'year'],
27
- DMY: ['day', 'month', 'year'],
28
- };
29
- // Get the elements in the specified order
30
- const dateElements = formats[format].map((key) => ({
31
- type: key,
32
- value: state[key],
33
- range: key === 'year'
34
- ? rangeOptions
35
- : key === 'month'
36
- ? [1, 12]
37
- : key === 'day'
38
- ? [1, 31]
39
- : [0, 59],
40
- }));
41
- // Add time elements if needed
42
- if (time) {
43
- dateElements.push({ type: 'hour', value: state.hour, range: [0, 23] }, { type: 'minute', value: state.minute, range: [0, 59] }, { type: 'second', value: state.second, range: [0, 59] });
44
- }
45
- return dateElements;
46
- }
47
- /** Component for rendering individual date/time elements (year, month, day, etc.)
48
- *
49
- * Renders a select input for each date component with appropriate options.
50
- *
51
- * @param props - The props for the component
52
- */
53
- function DateElement({ type, range, value, select, rootId, name, disabled, readonly, autofocus, registry, onBlur, onFocus, }) {
54
- const id = `${rootId}_${type}`;
55
- const { SelectWidget } = registry.widgets;
56
- // Memoize the onChange handler
57
- const handleChange = useCallback((value) => {
58
- select(type, value);
59
- }, [select, type]);
60
- return (_jsx(SelectWidget, { schema: { type: 'integer' }, id: id, name: name, className: 'select select-bordered select-sm w-full', options: { enumOptions: dateRangeOptions(range[0], range[1]) }, placeholder: type, value: value, disabled: disabled, readonly: readonly, autofocus: autofocus, onChange: handleChange, onBlur: onBlur, onFocus: onFocus, registry: registry, label: '', "aria-describedby": ariaDescribedByIds(rootId), required: false }));
61
- }
62
- /** Converts our DateObject to the expected format for toDateString
63
- *
64
- * @param dateObj - The internal DateObject
65
- * @returns A properly formatted object for the utils toDateString function
66
- */
67
- function convertToRJSFDateObject(dateObj) {
68
- return {
69
- year: dateObj.year ? parseInt(dateObj.year) : 0,
70
- month: dateObj.month ? parseInt(dateObj.month) : 0,
71
- day: dateObj.day ? parseInt(dateObj.day) : 0,
72
- hour: dateObj.hour ? parseInt(dateObj.hour) : 0,
73
- minute: dateObj.minute ? parseInt(dateObj.minute) : 0,
74
- second: dateObj.second ? parseInt(dateObj.second) : 0,
75
- };
76
- }
2
+ import { DateElement, TranslatableString, useAltDateWidgetProps, } from '@rjsf/utils';
77
3
  /** The `AltDateWidget` component provides an alternative date/time input
78
4
  * with individual fields for year, month, day, and optionally time components.
79
5
  *
@@ -87,52 +13,10 @@ function convertToRJSFDateObject(dateObj) {
87
13
  *
88
14
  * @param props - The `WidgetProps` for this component
89
15
  */
90
- export default function AltDateWidget({ time = false, disabled = false, readonly = false, autofocus = false, options = {}, id, name, registry, onBlur, onFocus, onChange, value, }) {
16
+ export default function AltDateWidget(props) {
17
+ const { disabled = false, readonly = false, autofocus = false, options = {}, id, name, registry, onBlur, onFocus, } = props;
91
18
  const { translateString } = registry;
92
- const [lastValue, setLastValue] = useState(value);
93
- // Use a type-safe version of parseDateString result
94
- const initialState = parseDateString(value, time);
95
- // Create a reducer for date objects
96
- const dateReducer = (state, action) => {
97
- return { ...state, ...action };
98
- };
99
- const [state, setState] = useReducer(dateReducer, initialState);
100
- // Handle changes in props or state
101
- useEffect(() => {
102
- const rjsfDateObj = convertToRJSFDateObject(state);
103
- const stateValue = toDateString(rjsfDateObj, time);
104
- if (readyForChange(state, time) && stateValue !== value) {
105
- // Valid date changed via the selects
106
- onChange(stateValue);
107
- }
108
- else if (lastValue !== value) {
109
- // New value from props
110
- setLastValue(value);
111
- setState(parseDateString(value, time));
112
- }
113
- }, [time, value, onChange, state, lastValue]);
114
- // Handle individual field changes
115
- const handleChange = useCallback((property, value) => {
116
- setState({ [property]: value });
117
- }, []);
118
- // Set current date
119
- const handleSetNow = useCallback((event) => {
120
- event.preventDefault();
121
- if (disabled || readonly) {
122
- return;
123
- }
124
- const nextState = parseDateString(new Date().toJSON(), time);
125
- const rjsfDateObj = convertToRJSFDateObject(nextState);
126
- onChange(toDateString(rjsfDateObj, time));
127
- }, [disabled, readonly, time, onChange]);
128
- // Clear the date
129
- const handleClear = useCallback((event) => {
130
- event.preventDefault();
131
- if (disabled || readonly) {
132
- return;
133
- }
134
- onChange(undefined);
135
- }, [disabled, readonly, onChange]);
136
- return (_jsxs("div", { className: 'space-y-3', children: [_jsx("div", { className: 'grid grid-cols-3 gap-2', children: getDateElementProps(state, time, options.yearsRange, options.format).map((elemProps, i) => (_jsxs("div", { className: 'form-control', children: [_jsx("label", { className: 'label', children: _jsx("span", { className: 'label-text capitalize', children: elemProps.type }) }), _jsx(DateElement, { rootId: id, name: name, select: handleChange, type: elemProps.type, range: elemProps.range, value: elemProps.value, disabled: disabled, readonly: readonly, registry: registry, onBlur: onBlur, onFocus: onFocus, autofocus: autofocus && i === 0 })] }, i))) }), _jsxs("div", { className: 'flex justify-start space-x-2', children: [(options.hideNowButton !== undefined ? !options.hideNowButton : true) && (_jsx("button", { type: 'button', className: 'btn btn-sm btn-primary', onClick: handleSetNow, disabled: disabled || readonly, children: translateString(TranslatableString.NowLabel) })), (options.hideClearButton !== undefined ? !options.hideClearButton : true) && (_jsx("button", { type: 'button', className: 'btn btn-sm btn-secondary', onClick: handleClear, disabled: disabled || readonly, children: translateString(TranslatableString.ClearLabel) }))] })] }));
19
+ const { elements, handleChange, handleClear, handleSetNow } = useAltDateWidgetProps(props);
20
+ return (_jsxs("div", { className: 'space-y-3', children: [_jsx("div", { className: 'grid grid-cols-3 gap-2', children: elements.map((elemProps, i) => (_jsxs("div", { className: 'form-control', children: [_jsx("label", { className: 'label', children: _jsx("span", { className: 'label-text capitalize', children: elemProps.type }) }), _jsx(DateElement, { rootId: id, name: name, className: 'select select-bordered select-sm', select: handleChange, type: elemProps.type, range: elemProps.range, value: elemProps.value, disabled: disabled, readonly: readonly, registry: registry, onBlur: onBlur, onFocus: onFocus, autofocus: autofocus && i === 0 })] }, i))) }), _jsxs("div", { className: 'flex justify-start space-x-2', children: [(options.hideNowButton !== undefined ? !options.hideNowButton : true) && (_jsx("button", { type: 'button', className: 'btn btn-sm btn-primary', onClick: handleSetNow, disabled: disabled || readonly, children: translateString(TranslatableString.NowLabel) })), (options.hideClearButton !== undefined ? !options.hideClearButton : true) && (_jsx("button", { type: 'button', className: 'btn btn-sm btn-secondary', onClick: handleClear, disabled: disabled || readonly, children: translateString(TranslatableString.ClearLabel) }))] })] }));
137
21
  }
138
22
  //# sourceMappingURL=AltDateWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AltDateWidget.js","sourceRoot":"","sources":["../../../src/widgets/AltDateWidget/AltDateWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAc,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,EACL,kBAAkB,EAKlB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,gBAAgB,GAGjB,MAAM,aAAa,CAAC;AAYrB;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAAiB,EAAE,IAAI,GAAG,KAAK;IACrD,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3G,CAAC;AAKD;;;;;;;GAOG;AACH,SAAS,mBAAmB,CAC1B,KAAiB,EACjB,IAAa,EACb,UAA6B,EAC7B,SAA4B,KAAK;IAEjC,MAAM,YAAY,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC;IACxE,uCAAuC;IACvC,MAAM,OAAO,GAAuD;QAClE,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;QAC7B,GAAG,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC;QAC7B,GAAG,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC;KAC9B,CAAC;IAEF,0CAA0C;IAC1C,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,EAAE,GAAG;QACT,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC;QACjB,KAAK,EACH,GAAG,KAAK,MAAM;YACZ,CAAC,CAAE,YAAiC;YACpC,CAAC,CAAC,GAAG,KAAK,OAAO;gBACf,CAAC,CAAE,CAAC,CAAC,EAAE,EAAE,CAAsB;gBAC/B,CAAC,CAAC,GAAG,KAAK,KAAK;oBACb,CAAC,CAAE,CAAC,CAAC,EAAE,EAAE,CAAsB;oBAC/B,CAAC,CAAE,CAAC,CAAC,EAAE,EAAE,CAAsB;KACxC,CAAC,CAAC,CAAC;IAEJ,8BAA8B;IAC9B,IAAI,IAAI,EAAE,CAAC;QACT,YAAY,CAAC,IAAI,CACf,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAqB,EAAE,EACvE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAqB,EAAE,EAC3E,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAqB,EAAE,CAC5E,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AA8BD;;;;;GAKG;AACH,SAAS,WAAW,CAAoF,EACtG,IAAI,EACJ,KAAK,EACL,KAAK,EACL,MAAM,EACN,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,MAAM,EACN,OAAO,GACmB;IAC1B,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;IAC/B,MAAM,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC,OAAuC,CAAC;IAE1E,+BAA+B;IAC/B,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAAU,EAAE,EAAE;QACb,MAAM,CAAC,IAAwB,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC,EACD,CAAC,MAAM,EAAE,IAAI,CAAC,CACf,CAAC;IAEF,OAAO,CACL,KAAC,YAAY,IACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAO,EAChC,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,yCAAyC,EACnD,OAAO,EAAE,EAAE,WAAW,EAAE,gBAAgB,CAAI,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EACjE,WAAW,EAAE,IAAI,EACjB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAC,EAAE,sBACU,kBAAkB,CAAC,MAAM,CAAC,EAC5C,QAAQ,EAAE,KAAK,GACf,CACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAC,OAAmB;IAClD,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;KACtD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAInC,EACA,IAAI,GAAG,KAAK,EACZ,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,EAAE,EACZ,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,OAAO,EACP,QAAQ,EACR,KAAK,GACgB;IACrB,MAAM,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC;IACrC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,oDAAoD;IACpD,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,EAAE,IAAI,CAA0B,CAAC;IAE3E,oCAAoC;IACpC,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAE,MAA2B,EAAc,EAAE;QACjF,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,EAAE,CAAC;IACjC,CAAC,CAAC;IAEF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAEhE,mCAAmC;IACnC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACxD,qCAAqC;YACrC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;YAC/B,uBAAuB;YACvB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAA0B,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;IAE9C,kCAAkC;IAClC,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,QAA0B,EAAE,KAAa,EAAE,EAAE;QAC7E,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAClC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,mBAAmB;IACnB,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAAoC,EAAE,EAAE;QACvC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,CAA0B,CAAC;QACtF,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;QACvD,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC5C,CAAC,EACD,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,CACrC,CAAC;IAEF,iBAAiB;IACjB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,KAAoC,EAAE,EAAE;QACvC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QACD,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,EACD,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAC/B,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,WAAW,aACxB,cAAK,SAAS,EAAC,wBAAwB,YACpC,mBAAmB,CAClB,KAAK,EACL,IAAI,EACJ,OAAO,CAAC,UAA0C,EAClD,OAAO,CAAC,MAAuC,CAChD,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,eAAa,SAAS,EAAC,cAAc,aACnC,gBAAO,SAAS,EAAC,OAAO,YACtB,eAAM,SAAS,EAAC,uBAAuB,YAAE,SAAS,CAAC,IAAI,GAAQ,GACzD,EACR,KAAC,WAAW,IACV,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,GAC/B,KAjBM,CAAC,CAkBL,CACP,CAAC,GACE,EACN,eAAK,SAAS,EAAC,8BAA8B,aAC1C,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CACxE,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,wBAAwB,EAClC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,YAE7B,eAAe,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GACtC,CACV,EACA,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAC5E,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,YAE7B,eAAe,CAAC,kBAAkB,CAAC,UAAU,CAAC,GACxC,CACV,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"AltDateWidget.js","sourceRoot":"","sources":["../../../src/widgets/AltDateWidget/AltDateWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,WAAW,EAIX,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,OAAO,UAAU,aAAa,CAInC,KAA2B;IAC3B,MAAM,EACJ,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,EAAE,EACZ,EAAE,EACF,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,OAAO,GACR,GAAG,KAAK,CAAC;IACV,MAAM,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC;IACrC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAE3F,OAAO,CACL,eAAK,SAAS,EAAC,WAAW,aACxB,cAAK,SAAS,EAAC,wBAAwB,YACpC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,eAAa,SAAS,EAAC,cAAc,aACnC,gBAAO,SAAS,EAAC,OAAO,YACtB,eAAM,SAAS,EAAC,uBAAuB,YAAE,SAAS,CAAC,IAAI,GAAQ,GACzD,EACR,KAAC,WAAW,IACV,MAAM,EAAE,EAAE,EACV,IAAI,EAAE,IAAI,EACV,SAAS,EAAC,kCAAkC,EAC5C,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,SAAS,CAAC,IAAI,EACpB,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,KAAK,EAAE,SAAS,CAAC,KAAK,EACtB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,CAAC,GAC/B,KAlBM,CAAC,CAmBL,CACP,CAAC,GACE,EACN,eAAK,SAAS,EAAC,8BAA8B,aAC1C,CAAC,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CACxE,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,wBAAwB,EAClC,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,YAE7B,eAAe,CAAC,kBAAkB,CAAC,QAAQ,CAAC,GACtC,CACV,EACA,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAC5E,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,0BAA0B,EACpC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,YAE7B,eAAe,CAAC,kBAAkB,CAAC,UAAU,CAAC,GACxC,CACV,IACG,IACF,CACP,CAAC;AACJ,CAAC"}
@@ -13,7 +13,7 @@ import { getTemplate, descriptionId } from '@rjsf/utils';
13
13
  * @param props - The `WidgetProps` for this component
14
14
  */
15
15
  export default function CheckboxWidget(props) {
16
- const { id, value, required, disabled, hideLabel, label, readonly, registry, options, schema, uiSchema, onChange, onFocus, onBlur, } = props;
16
+ const { id, htmlName, value, required, disabled, hideLabel, label, readonly, registry, options, schema, uiSchema, onChange, onFocus, onBlur, } = props;
17
17
  const DescriptionFieldTemplate = getTemplate('DescriptionFieldTemplate', registry, options);
18
18
  const description = options.description || schema.description;
19
19
  /** Handle focus events
@@ -37,7 +37,7 @@ export default function CheckboxWidget(props) {
37
37
  const handleChange = useCallback((event) => {
38
38
  onChange(event.target.checked);
39
39
  }, [onChange]);
40
- const input = (_jsx("input", { type: 'checkbox', id: id, checked: value, required: required, disabled: disabled || readonly, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur, className: 'checkbox' }));
40
+ const input = (_jsx("input", { type: 'checkbox', id: id, name: htmlName || id, checked: value, required: required, disabled: disabled || readonly, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur, className: 'checkbox' }));
41
41
  return (_jsxs("div", { className: 'form-control', children: [!hideLabel && description && (_jsx(DescriptionFieldTemplate, { id: descriptionId(id), description: description, schema: schema, uiSchema: uiSchema, registry: registry })), hideLabel || !label ? (input) : (_jsxs("label", { className: 'label cursor-pointer justify-start', children: [_jsx("div", { className: 'mr-2', children: input }), _jsxs("span", { className: 'label-text', children: [label, required && _jsx("span", { className: 'text-error ml-1', children: "*" })] })] }))] }));
42
42
  }
43
43
  //# sourceMappingURL=CheckboxWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxWidget.js","sourceRoot":"","sources":["../../../src/widgets/CheckboxWidget/CheckboxWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAA8D,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAErH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAIpC,KAA2B;IAC3B,MAAM,EACJ,EAAE,EACF,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,GACP,GAAG,KAAK,CAAC;IACV,MAAM,wBAAwB,GAAG,WAAW,CAC1C,0BAA0B,EAC1B,QAAQ,EACR,OAAO,CACR,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC;IAE9D;OACG;IACH,MAAM,WAAW,GAA8C,WAAW,CAAC,GAAG,EAAE;QAC9E,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,GAA8C,WAAW,CAAC,GAAG,EAAE;QAC7E,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;;;OAGG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAA0C,EAAE,EAAE;QAC7C,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,KAAK,GAAG,CACZ,gBACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAC9B,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAC,UAAU,GACpB,CACH,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,cAAc,aAC1B,CAAC,SAAS,IAAI,WAAW,IAAI,CAC5B,KAAC,wBAAwB,IACvB,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,EACrB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GAClB,CACH,EACA,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACrB,KAAK,CACN,CAAC,CAAC,CAAC,CACF,iBAAO,SAAS,EAAC,oCAAoC,aACnD,cAAK,SAAS,EAAC,MAAM,YAAE,KAAK,GAAO,EACnC,gBAAM,SAAS,EAAC,YAAY,aACzB,KAAK,EACL,QAAQ,IAAI,eAAM,SAAS,EAAC,iBAAiB,kBAAS,IAClD,IACD,CACT,IACG,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"CheckboxWidget.js","sourceRoot":"","sources":["../../../src/widgets/CheckboxWidget/CheckboxWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAA8D,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAErH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,OAAO,UAAU,cAAc,CAIpC,KAA2B;IAC3B,MAAM,EACJ,EAAE,EACF,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,GACP,GAAG,KAAK,CAAC;IACV,MAAM,wBAAwB,GAAG,WAAW,CAC1C,0BAA0B,EAC1B,QAAQ,EACR,OAAO,CACR,CAAC;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC;IAE9D;OACG;IACH,MAAM,WAAW,GAA8C,WAAW,CAAC,GAAG,EAAE;QAC9E,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,GAA8C,WAAW,CAAC,GAAG,EAAE;QAC7E,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;;;OAGG;IACH,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAA0C,EAAE,EAAE;QAC7C,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC,EACD,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,KAAK,GAAG,CACZ,gBACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,QAAQ,IAAI,EAAE,EACpB,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAAI,QAAQ,EAC9B,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,UAAU,EAClB,SAAS,EAAC,UAAU,GACpB,CACH,CAAC;IAEF,OAAO,CACL,eAAK,SAAS,EAAC,cAAc,aAC1B,CAAC,SAAS,IAAI,WAAW,IAAI,CAC5B,KAAC,wBAAwB,IACvB,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,EACrB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,GAClB,CACH,EACA,SAAS,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACrB,KAAK,CACN,CAAC,CAAC,CAAC,CACF,iBAAO,SAAS,EAAC,oCAAoC,aACnD,cAAK,SAAS,EAAC,MAAM,YAAE,KAAK,GAAO,EACnC,gBAAM,SAAS,EAAC,YAAY,aACzB,KAAK,EACL,QAAQ,IAAI,eAAM,SAAS,EAAC,iBAAiB,kBAAS,IAClD,IACD,CACT,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -13,4 +13,4 @@ import { WidgetProps, StrictRJSFSchema, RJSFSchema, FormContextType } from '@rjs
13
13
  *
14
14
  * @param props - The `WidgetProps` for this component
15
15
  */
16
- export default function CheckboxesWidget<T, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, disabled, options, value, readonly, required, onChange, onFocus, onBlur, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
16
+ export default function CheckboxesWidget<T, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, htmlName, disabled, options, value, readonly, required, onChange, onFocus, onBlur, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
@@ -14,7 +14,7 @@ import { useCallback } from 'react';
14
14
  *
15
15
  * @param props - The `WidgetProps` for this component
16
16
  */
17
- export default function CheckboxesWidget({ id, disabled, options, value, readonly, required, onChange, onFocus, onBlur, }) {
17
+ export default function CheckboxesWidget({ id, htmlName, disabled, options, value, readonly, required, onChange, onFocus, onBlur, }) {
18
18
  var _a;
19
19
  const { enumOptions } = options;
20
20
  const isEnumeratedObject = enumOptions && ((_a = enumOptions[0]) === null || _a === void 0 ? void 0 : _a.value) && typeof enumOptions[0].value === 'object';
@@ -68,6 +68,6 @@ export default function CheckboxesWidget({ id, disabled, options, value, readonl
68
68
  }
69
69
  }
70
70
  }, [onBlur, id, enumOptions]);
71
- return (_jsx("div", { className: 'form-control', children: _jsx("div", { className: 'flex flex-col gap-2 mt-1', children: enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions.map((option, index) => (_jsxs("label", { className: 'flex items-center cursor-pointer gap-2', children: [_jsx("input", { type: 'checkbox', id: `${id}-${option.value}`, className: 'checkbox', name: id, checked: isChecked(option), required: required, disabled: disabled || readonly, "data-index": index, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur }), _jsx("span", { className: 'label-text', children: option.label })] }, option.value))) }) }));
71
+ return (_jsx("div", { className: 'form-control', children: _jsx("div", { className: 'flex flex-col gap-2 mt-1', children: enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions.map((option, index) => (_jsxs("label", { className: 'flex items-center cursor-pointer gap-2', children: [_jsx("input", { type: 'checkbox', id: `${id}-${option.value}`, className: 'checkbox', name: htmlName || id, checked: isChecked(option), required: required, disabled: disabled || readonly, "data-index": index, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur }), _jsx("span", { className: 'label-text', children: option.label })] }, option.value))) }) }));
72
72
  }
73
73
  //# sourceMappingURL=CheckboxesWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CheckboxesWidget.js","sourceRoot":"","sources":["../../../src/widgets/CheckboxesWidget/CheckboxesWidget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CheckboxesWidget.js","sourceRoot":"","sources":["../../../src/widgets/CheckboxesWidget/CheckboxesWidget.tsx"],"names":[],"mappings":"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"}
@@ -11,4 +11,4 @@ import { WidgetProps, StrictRJSFSchema, FormContextType, RJSFSchema } from '@rjs
11
11
  *
12
12
  * @param props - The `WidgetProps` for this component
13
13
  */
14
- export default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, options, value, required, disabled, readonly, onChange, onFocus, onBlur, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
14
+ export default function RadioWidget<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>({ id, htmlName, options, value, required, disabled, readonly, onChange, onFocus, onBlur, }: WidgetProps<T, S, F>): import("react/jsx-runtime").JSX.Element;
@@ -12,7 +12,7 @@ import { useCallback } from 'react';
12
12
  *
13
13
  * @param props - The `WidgetProps` for this component
14
14
  */
15
- export default function RadioWidget({ id, options, value, required, disabled, readonly, onChange, onFocus, onBlur, }) {
15
+ export default function RadioWidget({ id, htmlName, options, value, required, disabled, readonly, onChange, onFocus, onBlur, }) {
16
16
  var _a;
17
17
  const { enumOptions } = options;
18
18
  const isEnumeratedObject = enumOptions && ((_a = enumOptions[0]) === null || _a === void 0 ? void 0 : _a.value) && typeof enumOptions[0].value === 'object';
@@ -62,6 +62,6 @@ export default function RadioWidget({ id, options, value, required, disabled, re
62
62
  event.target.blur();
63
63
  }
64
64
  }, [onChange, isEnumeratedObject, enumOptions]);
65
- return (_jsx("div", { className: 'form-control', children: _jsx("div", { className: 'flex flex-col gap-2 mt-1', children: enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions.map((option, index) => (_jsxs("label", { className: 'flex items-center cursor-pointer gap-2', children: [_jsx("input", { type: 'radio', id: `${id}-${option.value}`, className: 'radio', name: id, value: getValue(option), checked: isChecked(option), required: required, disabled: disabled || readonly, "data-index": index, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur }), _jsx("span", { className: 'label-text', children: option.label })] }, option.value))) }) }));
65
+ return (_jsx("div", { className: 'form-control', children: _jsx("div", { className: 'flex flex-col gap-2 mt-1', children: enumOptions === null || enumOptions === void 0 ? void 0 : enumOptions.map((option, index) => (_jsxs("label", { className: 'flex items-center cursor-pointer gap-2', children: [_jsx("input", { type: 'radio', id: `${id}-${option.value}`, className: 'radio', name: htmlName || id, value: getValue(option), checked: isChecked(option), required: required, disabled: disabled || readonly, "data-index": index, onChange: handleChange, onFocus: handleFocus, onBlur: handleBlur }), _jsx("span", { className: 'label-text', children: option.label })] }, option.value))) }) }));
66
66
  }
67
67
  //# sourceMappingURL=RadioWidget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RadioWidget.js","sourceRoot":"","sources":["../../../src/widgets/RadioWidget/RadioWidget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RadioWidget.js","sourceRoot":"","sources":["../../../src/widgets/RadioWidget/RadioWidget.tsx"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { useCallback } from 'react';
11
11
  * @param props - The `WidgetProps` for this component
12
12
  */
13
13
  export default function TextareaWidget(props) {
14
- const { id, value, required, disabled, readonly, onChange, onFocus, onBlur, options } = props;
14
+ const { id, htmlName, value, required, disabled, readonly, onChange, onFocus, onBlur, options } = props;
15
15
  /** Handle focus events
16
16
  *
17
17
  * @param event - The focus event
@@ -39,6 +39,6 @@ export default function TextareaWidget(props) {
39
39
  }, [onChange]);
40
40
  // Extract rows and other textarea-specific props from options
41
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' }) }));
42
+ return (_jsx("div", { className: 'form-control', children: _jsx("textarea", { id: id, name: htmlName || 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
43
  }
44
44
  //# sourceMappingURL=TextareaWidget.js.map
@@ -1 +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"}
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,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAExG;;;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,IAAI,EAAE,QAAQ,IAAI,EAAE,EACpB,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"}
@@ -5,7 +5,6 @@ import CheckboxWidget from './CheckboxWidget/CheckboxWidget.js';
5
5
  import CheckboxesWidget from './CheckboxesWidget/CheckboxesWidget.js';
6
6
  import DateTimeWidget from './DateTimeWidget/DateTimeWidget.js';
7
7
  import DateWidget from './DateWidget/DateWidget.js';
8
- import FileWidget from './FileWidget/FileWidget.js';
9
8
  import RadioWidget from './RadioWidget/RadioWidget.js';
10
9
  import RangeWidget from './RangeWidget/RangeWidget.js';
11
10
  import RatingWidget from './RatingWidget/RatingWidget.js';
@@ -13,6 +12,6 @@ import SelectWidget from './SelectWidget/SelectWidget.js';
13
12
  import TextareaWidget from './TextareaWidget/TextareaWidget.js';
14
13
  import TimeWidget from './TimeWidget/TimeWidget.js';
15
14
  import ToggleWidget from './ToggleWidget/ToggleWidget.js';
16
- export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, FileWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
15
+ export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
17
16
  export declare function generateWidgets<T = any, S extends StrictRJSFSchema = RJSFSchema, F extends FormContextType = any>(): RegistryWidgetsType<T, S, F>;
18
17
  export default generateWidgets;
@@ -4,7 +4,6 @@ import CheckboxWidget from './CheckboxWidget/CheckboxWidget.js';
4
4
  import CheckboxesWidget from './CheckboxesWidget/CheckboxesWidget.js';
5
5
  import DateTimeWidget from './DateTimeWidget/DateTimeWidget.js';
6
6
  import DateWidget from './DateWidget/DateWidget.js';
7
- import FileWidget from './FileWidget/FileWidget.js';
8
7
  import RadioWidget from './RadioWidget/RadioWidget.js';
9
8
  import RangeWidget from './RangeWidget/RangeWidget.js';
10
9
  import RatingWidget from './RatingWidget/RatingWidget.js';
@@ -12,7 +11,7 @@ import SelectWidget from './SelectWidget/SelectWidget.js';
12
11
  import TextareaWidget from './TextareaWidget/TextareaWidget.js';
13
12
  import TimeWidget from './TimeWidget/TimeWidget.js';
14
13
  import ToggleWidget from './ToggleWidget/ToggleWidget.js';
15
- export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, FileWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
14
+ export { AltDateTimeWidget, AltDateWidget, CheckboxesWidget, CheckboxWidget, DateTimeWidget, DateWidget, RadioWidget, RangeWidget, RatingWidget, SelectWidget, TextareaWidget, TimeWidget, ToggleWidget, };
16
15
  export function generateWidgets() {
17
16
  return {
18
17
  AltDateTimeWidget,
@@ -21,7 +20,6 @@ export function generateWidgets() {
21
20
  CheckboxWidget,
22
21
  DateTimeWidget,
23
22
  DateWidget,
24
- FileWidget,
25
23
  RadioWidget,
26
24
  RangeWidget,
27
25
  RatingWidget,
@@ -1 +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"}
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,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,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,WAAW;QACX,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,cAAc;QACd,UAAU;QACV,MAAM,EAAE,YAAY;KACrB,CAAC;AACJ,CAAC;AAED,eAAe,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rjsf/daisyui",
3
- "version": "6.0.0-beta.21",
3
+ "version": "6.0.0-beta.23",
4
4
  "description": "Daisy UI components for react-jsonschema-form",
5
5
  "main": "dist/index.js",
6
6
  "module": "lib/index.js",
@@ -71,16 +71,16 @@
71
71
  "tailwindcss": "^4.1.12"
72
72
  },
73
73
  "peerDependencies": {
74
- "@rjsf/core": "^6.0.0-beta.21",
75
- "@rjsf/utils": "^6.0.0-beta.21",
74
+ "@rjsf/core": "^6.0.0-beta.23",
75
+ "@rjsf/utils": "^6.0.0-beta.23",
76
76
  "daisyui": "^5.0.29",
77
77
  "react": ">=18"
78
78
  },
79
79
  "devDependencies": {
80
- "@rjsf/core": "^6.0.0-beta.21",
81
- "@rjsf/snapshot-tests": "^6.0.0-beta.21",
82
- "@rjsf/utils": "^6.0.0-beta.21",
83
- "@rjsf/validator-ajv8": "^6.0.0-beta.21",
80
+ "@rjsf/core": "^6.0.0-beta.23",
81
+ "@rjsf/snapshot-tests": "^6.0.0-beta.23",
82
+ "@rjsf/utils": "^6.0.0-beta.23",
83
+ "@rjsf/validator-ajv8": "^6.0.0-beta.23",
84
84
  "@testing-library/dom": "^10.4.1",
85
85
  "@testing-library/jest-dom": "^6.9.1",
86
86
  "@testing-library/react": "^16.3.0",
@@ -1,9 +1,8 @@
1
- import { useMemo } from 'react';
2
1
  import {
3
2
  FormContextType,
4
3
  RJSFSchema,
5
4
  StrictRJSFSchema,
6
- ArrayFieldItemButtonsTemplateType,
5
+ ArrayFieldItemButtonsTemplateProps,
7
6
  buttonId,
8
7
  } from '@rjsf/utils';
9
8
 
@@ -14,7 +13,7 @@ export default function ArrayFieldItemButtonsTemplate<
14
13
  T = any,
15
14
  S extends StrictRJSFSchema = RJSFSchema,
16
15
  F extends FormContextType = any,
17
- >(props: ArrayFieldItemButtonsTemplateType<T, S, F>) {
16
+ >(props: ArrayFieldItemButtonsTemplateProps<T, S, F>) {
18
17
  const {
19
18
  disabled,
20
19
  hasCopy,
@@ -22,19 +21,15 @@ export default function ArrayFieldItemButtonsTemplate<
22
21
  hasMoveUp,
23
22
  hasRemove,
24
23
  fieldPathId,
25
- index,
26
- onCopyIndexClick,
27
- onDropIndexClick,
28
- onReorderClick,
24
+ onCopyItem,
25
+ onRemoveItem,
26
+ onMoveDownItem,
27
+ onMoveUpItem,
29
28
  readonly,
30
29
  registry,
31
30
  uiSchema,
32
31
  } = props;
33
32
  const { CopyButton, MoveDownButton, MoveUpButton, RemoveButton } = registry.templates.ButtonTemplates;
34
- const onCopyClick = useMemo(() => onCopyIndexClick(index), [index, onCopyIndexClick]);
35
- const onRemoveClick = useMemo(() => onDropIndexClick(index), [index, onDropIndexClick]);
36
- const onArrowUpClick = useMemo(() => onReorderClick(index, index - 1), [index, onReorderClick]);
37
- const onArrowDownClick = useMemo(() => onReorderClick(index, index + 1), [index, onReorderClick]);
38
33
 
39
34
  const renderMany = [hasMoveUp || hasMoveDown, hasCopy, hasRemove].filter(Boolean).length > 1;
40
35
  const btnClass = renderMany ? 'join-item btn btn-sm px-2' : 'btn btn-sm px-2 rounded-sm';
@@ -48,7 +43,7 @@ export default function ArrayFieldItemButtonsTemplate<
48
43
  id={buttonId(fieldPathId, 'moveUp')}
49
44
  className={`rjsf-array-item-move-up ${btnClass}`}
50
45
  disabled={disabled || readonly || !hasMoveUp}
51
- onClick={onArrowUpClick}
46
+ onClick={onMoveUpItem}
52
47
  uiSchema={uiSchema}
53
48
  registry={registry}
54
49
  />
@@ -56,7 +51,7 @@ export default function ArrayFieldItemButtonsTemplate<
56
51
  id={buttonId(fieldPathId, 'moveDown')}
57
52
  className={`rjsf-array-item-move-down ${btnClass}`}
58
53
  disabled={disabled || readonly || !hasMoveDown}
59
- onClick={onArrowDownClick}
54
+ onClick={onMoveDownItem}
60
55
  uiSchema={uiSchema}
61
56
  registry={registry}
62
57
  />
@@ -67,7 +62,7 @@ export default function ArrayFieldItemButtonsTemplate<
67
62
  id={buttonId(fieldPathId, 'copy')}
68
63
  className={`rjsf-array-item-copy ${btnClass}`}
69
64
  disabled={disabled || readonly}
70
- onClick={onCopyClick}
65
+ onClick={onCopyItem}
71
66
  uiSchema={uiSchema}
72
67
  registry={registry}
73
68
  />
@@ -77,7 +72,7 @@ export default function ArrayFieldItemButtonsTemplate<
77
72
  id={buttonId(fieldPathId, 'remove')}
78
73
  className={`rjsf-array-item-remove ${removeBtnClass}`}
79
74
  disabled={disabled || readonly}
80
- onClick={onRemoveClick}
75
+ onClick={onRemoveItem}
81
76
  uiSchema={uiSchema}
82
77
  registry={registry}
83
78
  />
@@ -1,5 +1,5 @@
1
1
  import {
2
- ArrayFieldItemTemplateType,
2
+ ArrayFieldItemTemplateProps,
3
3
  FormContextType,
4
4
  getTemplate,
5
5
  getUiOptions,
@@ -15,7 +15,7 @@ import {
15
15
  * - Positions items with z-index to create a stacked effect
16
16
  * - Places action buttons in an easily accessible location
17
17
  *
18
- * @param props - The `ArrayFieldItemTemplateType` props for the component with additional properties:
18
+ * @param props - The `ArrayFieldItemTemplateProps` props for the component with additional properties:
19
19
  * @param props.index - The position of this item in the array (optional)
20
20
  * @param props.totalItems - The total number of items in the array (optional)
21
21
  */
@@ -23,7 +23,7 @@ export default function ArrayFieldItemTemplate<
23
23
  T = any,
24
24
  S extends StrictRJSFSchema = RJSFSchema,
25
25
  F extends FormContextType = any,
26
- >(props: ArrayFieldItemTemplateType<T, S, F>) {
26
+ >(props: ArrayFieldItemTemplateProps<T, S, F>) {
27
27
  const { children, buttonsProps, hasToolbar, registry, uiSchema, index, totalItems } = props;
28
28
  const uiOptions = getUiOptions<T, S, F>(uiSchema);
29
29
  const ArrayFieldItemButtonsTemplate = getTemplate<'ArrayFieldItemButtonsTemplate', T, S, F>(
@@ -48,11 +48,6 @@ export default function ArrayFieldTemplate<T = any, S extends RJSFSchema = RJSFS
48
48
  registry as Registry<T, S, F>,
49
49
  uiOptions,
50
50
  );
51
- const ArrayFieldItemTemplate = getTemplate<'ArrayFieldItemTemplate', T, S, F>(
52
- 'ArrayFieldItemTemplate',
53
- registry as Registry<T, S, F>,
54
- uiOptions,
55
- );
56
51
  const ArrayFieldTitleTemplate = getTemplate<'ArrayFieldTitleTemplate', T, S, F>(
57
52
  'ArrayFieldTitleTemplate',
58
53
  registry as Registry<T, S, F>,
@@ -98,9 +93,7 @@ export default function ArrayFieldTemplate<T = any, S extends RJSFSchema = RJSFS
98
93
  <div className='flex flex-col gap-4'>
99
94
  {!showOptionalDataControlInTitle ? optionalDataControl : undefined}
100
95
  <div className='rjsf-array-item-list'>
101
- {items.map(({ key, ...itemProps }, index) => (
102
- <ArrayFieldItemTemplate key={key} {...itemProps} index={index} totalItems={items.length} />
103
- ))}
96
+ {items}
104
97
  {items && items.length === 0 && canAdd && (
105
98
  <div className='text-center italic text-base-content/70'>{TranslatableString.EmptyArray}</div>
106
99
  )}
@@ -30,6 +30,8 @@ export default function BaseInputTemplate<
30
30
  >(props: WidgetProps<T, S, F>) {
31
31
  const {
32
32
  id,
33
+ htmlName,
34
+ multiple,
33
35
  value,
34
36
  required,
35
37
  disabled,
@@ -47,7 +49,12 @@ export default function BaseInputTemplate<
47
49
  } = props;
48
50
 
49
51
  const inputProps = getInputProps<T, S, F>(schema, type, options);
50
-
52
+ let className = 'input input-bordered';
53
+ let isMulti = multiple;
54
+ if (type === 'file') {
55
+ isMulti = schema.type === 'array' || Boolean(options.multiple);
56
+ className = 'file-input w-full';
57
+ }
51
58
  // Extract step, min, max, accept from inputProps
52
59
  const { step, min, max, accept, ...rest } = inputProps;
53
60
  const htmlInputProps = { step, min, max, accept, ...(schema.examples ? { list: examplesId(id) } : undefined) };
@@ -75,13 +82,14 @@ export default function BaseInputTemplate<
75
82
  </label>
76
83
  <input
77
84
  id={id}
78
- name={id}
85
+ name={htmlName || id}
79
86
  value={value || value === 0 ? value : ''}
80
87
  placeholder={placeholder}
81
88
  required={required}
82
89
  disabled={disabled || readonly}
83
90
  autoFocus={autofocus}
84
- className='input input-bordered'
91
+ className={className}
92
+ multiple={isMulti}
85
93
  {...rest}
86
94
  {...htmlInputProps}
87
95
  onChange={onChangeOverride || _onChange}
@@ -34,21 +34,22 @@ export default function FieldTemplate<
34
34
  help,
35
35
  hideError,
36
36
  displayLabel,
37
+ onKeyRename,
38
+ onKeyRenameBlur,
39
+ onRemoveProperty,
37
40
  classNames,
38
- // Destructure props we don't want to pass to div
39
- description,
40
- onKeyChange,
41
- onDropPropertyClick,
42
41
  uiSchema,
43
42
  schema,
44
43
  readonly,
45
44
  required,
45
+ registry,
46
+ // Destructure props we don't want to pass to div
47
+ description,
46
48
  rawErrors,
47
49
  rawHelp,
48
50
  rawDescription,
49
51
  hidden,
50
52
  onChange,
51
- registry,
52
53
  ...divProps
53
54
  } = props;
54
55
 
@@ -67,8 +68,9 @@ export default function FieldTemplate<
67
68
  disabled={divProps.disabled}
68
69
  id={id}
69
70
  label={label}
70
- onDropPropertyClick={onDropPropertyClick}
71
- onKeyChange={onKeyChange}
71
+ onKeyRename={onKeyRename}
72
+ onKeyRenameBlur={onKeyRenameBlur}
73
+ onRemoveProperty={onRemoveProperty}
72
74
  readonly={readonly}
73
75
  required={required}
74
76
  schema={schema}
@@ -39,7 +39,7 @@ export default function ObjectFieldTemplate<
39
39
  schema,
40
40
  formData,
41
41
  optionalDataControl,
42
- onAddClick,
42
+ onAddProperty,
43
43
  registry,
44
44
  } = props;
45
45
  const uiOptions = getUiOptions<T, S, F>(uiSchema);
@@ -99,7 +99,7 @@ export default function ObjectFieldTemplate<
99
99
  <AddButton
100
100
  id={buttonId(fieldPathId, 'add')}
101
101
  className='rjsf-object-property-expand btn btn-primary btn-sm'
102
- onClick={onAddClick(schema)}
102
+ onClick={onAddProperty}
103
103
  disabled={disabled || readonly}
104
104
  uiSchema={uiSchema}
105
105
  registry={registry}