@react-fabric/form 1.0.0-beta.54 → 1.0.0-beta.56

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 (50) hide show
  1. package/dist/cjs/builder/FileField.js +2 -2
  2. package/dist/cjs/input/AvatarInput.js +17 -13
  3. package/dist/cjs/input/ColorInput.js +5 -3
  4. package/dist/cjs/input/ColorPicker.js +52 -46
  5. package/dist/cjs/input/DateInput.js +6 -4
  6. package/dist/cjs/input/Input.js +6 -4
  7. package/dist/cjs/input/Number.js +6 -4
  8. package/dist/cjs/input/Password.js +6 -4
  9. package/dist/cjs/input/Search.js +6 -4
  10. package/dist/cjs/input/Switch.js +3 -3
  11. package/dist/cjs/input/Textarea.js +6 -4
  12. package/dist/cjs/select/AutoComplete.js +1 -2
  13. package/dist/esm/builder/FileField.js +3 -3
  14. package/dist/esm/input/AvatarInput.js +18 -14
  15. package/dist/esm/input/ColorInput.js +5 -3
  16. package/dist/esm/input/ColorPicker.js +52 -46
  17. package/dist/esm/input/DateInput.js +6 -4
  18. package/dist/esm/input/Input.js +6 -4
  19. package/dist/esm/input/Number.js +6 -4
  20. package/dist/esm/input/Password.js +6 -4
  21. package/dist/esm/input/Search.js +6 -4
  22. package/dist/esm/input/Switch.js +3 -3
  23. package/dist/esm/input/Textarea.js +6 -4
  24. package/dist/esm/select/AutoComplete.js +1 -2
  25. package/dist/types/input/AvatarInput.d.ts +5 -1
  26. package/dist/types/input/DateInput.d.ts +1 -1
  27. package/dist/types/input/Input.d.ts +1 -1
  28. package/dist/types/input/Number.d.ts +1 -1
  29. package/dist/types/input/Password.d.ts +1 -1
  30. package/dist/types/input/RangeSlider.d.ts +1 -1
  31. package/dist/types/input/Search.d.ts +1 -1
  32. package/dist/types/input/Slider.d.ts +1 -1
  33. package/dist/types/input/Textarea.d.ts +1 -1
  34. package/dist/types/types/index.d.ts +4 -0
  35. package/package.json +4 -4
  36. package/src/builder/FileField.tsx +9 -3
  37. package/src/input/AvatarInput.tsx +19 -10
  38. package/src/input/ColorInput.tsx +5 -3
  39. package/src/input/ColorPicker.tsx +48 -43
  40. package/src/input/DateInput.tsx +4 -3
  41. package/src/input/Input.tsx +4 -3
  42. package/src/input/Number.tsx +4 -3
  43. package/src/input/Password.tsx +4 -3
  44. package/src/input/RangeSlider.tsx +1 -1
  45. package/src/input/Search.tsx +4 -3
  46. package/src/input/Slider.tsx +4 -1
  47. package/src/input/Switch.tsx +3 -3
  48. package/src/input/Textarea.tsx +4 -3
  49. package/src/select/AutoComplete.tsx +1 -1
  50. package/src/types/index.ts +4 -0
@@ -5,13 +5,13 @@ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
5
5
  import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
6
6
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
7
7
  import _regeneratorRuntime from '@babel/runtime/regenerator';
8
- import { Avatar, Icon, ProgressBar } from '@react-fabric/core';
8
+ import { Avatar, Icon, CoreIcons, ProgressBar } from '@react-fabric/core';
9
9
  import { useState, useEffect } from 'react';
10
10
  import { useFileUploader } from '../hooks/useFileUploader.js';
11
11
  import { HiddenInput } from './Hidden.js';
12
12
  import { jsxs, jsx } from 'react/jsx-runtime';
13
13
 
14
- var _excluded = ["size", "avatarName", "value", "fileUrl", "uploadHandler"];
14
+ var _excluded = ["size", "avatarName", "value", "defaultValue", "fileUrl", "uploadHandler"];
15
15
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
16
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
17
  /**
@@ -23,11 +23,12 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
23
23
  * @returns {JSX.Element} - The rendered AvatarInput component.
24
24
  */
25
25
  var AvatarInput = function AvatarInput(_ref) {
26
- var _list$;
26
+ var _list$0$path, _list$;
27
27
  var _ref$size = _ref.size,
28
28
  size = _ref$size === void 0 ? "6rem" : _ref$size,
29
29
  avatarName = _ref.avatarName,
30
30
  value = _ref.value,
31
+ defaultValue = _ref.defaultValue,
31
32
  fileUrl = _ref.fileUrl,
32
33
  uploadHandler = _ref.uploadHandler,
33
34
  rest = _objectWithoutProperties(_ref, _excluded);
@@ -73,15 +74,17 @@ var AvatarInput = function AvatarInput(_ref) {
73
74
  reader.readAsDataURL(blob);
74
75
  }));
75
76
  } else {
76
- setBase64("");
77
+ var _ref3, _fileUrl;
78
+ setBase64((_ref3 = (_fileUrl = fileUrl === null || fileUrl === void 0 ? void 0 : fileUrl(defaultValue !== null && defaultValue !== void 0 ? defaultValue : "")) !== null && _fileUrl !== void 0 ? _fileUrl : defaultValue) !== null && _ref3 !== void 0 ? _ref3 : "");
77
79
  }
78
- }, [files, list]);
80
+ }, [files, list, defaultValue]);
79
81
  useEffect(function () {
80
- var _fileUrl;
81
- value && setBase64((_fileUrl = fileUrl === null || fileUrl === void 0 ? void 0 : fileUrl(value)) !== null && _fileUrl !== void 0 ? _fileUrl : value);
82
- }, [value]);
82
+ var _fileUrl2, _fileUrl3;
83
+ !value && defaultValue && setBase64((_fileUrl2 = fileUrl === null || fileUrl === void 0 ? void 0 : fileUrl(defaultValue)) !== null && _fileUrl2 !== void 0 ? _fileUrl2 : defaultValue);
84
+ value && setBase64((_fileUrl3 = fileUrl === null || fileUrl === void 0 ? void 0 : fileUrl(value)) !== null && _fileUrl3 !== void 0 ? _fileUrl3 : value);
85
+ }, [value, defaultValue]);
83
86
  return /*#__PURE__*/jsxs("div", {
84
- className: "flex flex-nowrap items-end",
87
+ className: "flex flex-nowrap items-end overflow-hidden",
85
88
  children: [/*#__PURE__*/jsxs("div", {
86
89
  className: "inline-block leading-none rounded-full relative outline overflow-hidden",
87
90
  children: [/*#__PURE__*/jsx(Avatar, {
@@ -102,10 +105,10 @@ var AvatarInput = function AvatarInput(_ref) {
102
105
  })]
103
106
  })]
104
107
  }), /*#__PURE__*/jsx(HiddenInput, _objectSpread({
105
- hiddenValue: list === null || list === void 0 || (_list$ = list[0]) === null || _list$ === void 0 ? void 0 : _list$.path
108
+ hiddenValue: (_list$0$path = list === null || list === void 0 || (_list$ = list[0]) === null || _list$ === void 0 ? void 0 : _list$.path) !== null && _list$0$path !== void 0 ? _list$0$path : defaultValue
106
109
  }, rest)), files.map(function (file, idx) {
107
110
  return /*#__PURE__*/jsxs("div", {
108
- className: "px-2 py-1 flex-1",
111
+ className: "px-2 py-1 flex-1 overflow-hidden",
109
112
  children: [/*#__PURE__*/jsxs("div", {
110
113
  className: "flex flex-nowrap gap-1 items-center",
111
114
  children: [/*#__PURE__*/jsx("div", {
@@ -118,20 +121,21 @@ var AvatarInput = function AvatarInput(_ref) {
118
121
  children: file.error
119
122
  })
120
123
  }), file.progress && /*#__PURE__*/jsx(Icon, {
121
- icon: "mdi mdi-stop-circle",
124
+ icon: CoreIcons.stop,
122
125
  bg: "danger",
123
126
  color: "white",
124
127
  size: "sm",
125
- className: "p-[2px]",
128
+ className: "p-[2px] flex-content",
126
129
  "aria-label": "abort",
127
130
  onClick: function onClick() {
128
131
  var _file$abort;
129
132
  return (_file$abort = file.abort) === null || _file$abort === void 0 ? void 0 : _file$abort.call(file);
130
133
  }
131
134
  }), !file.progress && /*#__PURE__*/jsx(Icon, {
132
- icon: "mdi mdi-trash-can",
135
+ icon: CoreIcons.trash,
133
136
  color: "danger",
134
137
  size: "sm",
138
+ className: "flex-content",
135
139
  "aria-label": "remove",
136
140
  onClick: function onClick() {
137
141
  return remove(file.key);
@@ -51,11 +51,12 @@ var ColorInput = function ColorInput(_ref) {
51
51
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
52
52
  }, [deferred]);
53
53
  var handleChange = useCallback(function (e) {
54
- setActualValue(e !== null && e !== void 0 ? e : defaultColor);
54
+ var value = e !== null && e !== void 0 ? e : defaultColor;
55
+ setActualValue(value);
55
56
  onChange != null && startTransition(function () {
56
- return onChange(e !== null && e !== void 0 ? e : null);
57
+ return onChange(value !== null && value !== void 0 ? value : null);
57
58
  });
58
- }, [onChange]);
59
+ }, [onChange, defaultColor]);
59
60
  var arrowRef = useRef(null);
60
61
  var _useState3 = useState(false),
61
62
  _useState4 = _slicedToArray(_useState3, 2),
@@ -139,6 +140,7 @@ var ColorInput = function ColorInput(_ref) {
139
140
  className: "fill-base stroke-muted"
140
141
  })]
141
142
  })), !disabled && showPicker && /*#__PURE__*/jsx(Icon, {
143
+ className: "flex-content p-1",
142
144
  icon: CoreIcons.colorPicker,
143
145
  onClick: function onClick() {
144
146
  return window.EyeDropper && new window.EyeDropper().open().then(function (resp) {
@@ -44,54 +44,60 @@ var ColorPicker = /*#__PURE__*/memo(function (_ref) {
44
44
  return onChange(e);
45
45
  });
46
46
  }, [onChange]);
47
- return /*#__PURE__*/jsx(SketchPicker, {
48
- width: "16rem",
49
- className: "fabric-colorPicker",
50
- styles: {
51
- "default": {
52
- hue: {
53
- boxShadow: "0 0 1px 1px var(--color-shadow)"
54
- },
55
- alpha: {
56
- backgroundColor: "var(--fabric-bg)",
57
- boxShadow: "0 0 1px 1px var(--color-shadow)"
58
- },
59
- color: {
60
- boxShadow: "0 0 1px 1px var(--color-shadow)"
61
- },
62
- saturation: {
63
- boxShadow: "0 0 1px 1px var(--color-shadow)"
64
- },
65
- activeColor: {
66
- boxShadow: "0 0 1px 1px var(--color-shadow)"
67
- },
68
- picker: {
69
- backgroundColor: "var(--fabric-bg)",
70
- boxShadow: "0 0 0 1px var(--color-shadow), 0 0 8px var(--fabric-shadow)"
71
- },
72
- checkboard: {
73
- white: "transparent",
74
- black: "red"
47
+ return /*#__PURE__*/jsx("div", {
48
+ // prevent default on mouse down to avoid selection issues
49
+ onMouseDown: function onMouseDown(e) {
50
+ return e.preventDefault();
51
+ },
52
+ children: /*#__PURE__*/jsx(SketchPicker, {
53
+ width: "16rem",
54
+ className: "fabric-colorPicker",
55
+ styles: {
56
+ "default": {
57
+ hue: {
58
+ boxShadow: "0 0 1px 1px var(--color-shadow)"
59
+ },
60
+ alpha: {
61
+ backgroundColor: "var(--fabric-bg)",
62
+ boxShadow: "0 0 1px 1px var(--color-shadow)"
63
+ },
64
+ color: {
65
+ boxShadow: "0 0 1px 1px var(--color-shadow)"
66
+ },
67
+ saturation: {
68
+ boxShadow: "0 0 1px 1px var(--color-shadow)"
69
+ },
70
+ activeColor: {
71
+ boxShadow: "0 0 1px 1px var(--color-shadow)"
72
+ },
73
+ picker: {
74
+ backgroundColor: "var(--fabric-bg)",
75
+ boxShadow: "0 0 0 1px var(--color-shadow), 0 0 8px var(--fabric-shadow)"
76
+ },
77
+ checkboard: {
78
+ white: "transparent",
79
+ black: "red"
80
+ }
75
81
  }
82
+ },
83
+ color: actualValue,
84
+ presetColors: swatches,
85
+ disableAlpha: hideAlpha,
86
+ onChange: function onChange(_ref2) {
87
+ var _ref2$rgb = _ref2.rgb,
88
+ _ref2$rgb$a = _ref2$rgb.a,
89
+ a = _ref2$rgb$a === void 0 ? 1 : _ref2$rgb$a,
90
+ rgb = _objectWithoutProperties(_ref2$rgb, _excluded);
91
+ return setActualValue(Color(rgb).alpha(a)[a < 1 ? "hexa" : "hex"]());
92
+ },
93
+ onChangeComplete: function onChangeComplete(_ref3) {
94
+ var _ref3$rgb = _ref3.rgb,
95
+ _ref3$rgb$a = _ref3$rgb.a,
96
+ a = _ref3$rgb$a === void 0 ? 1 : _ref3$rgb$a,
97
+ rgb = _objectWithoutProperties(_ref3$rgb, _excluded2);
98
+ return handleChange(Color(rgb).alpha(a)[a < 1 ? "hexa" : "hex"]());
76
99
  }
77
- },
78
- color: actualValue,
79
- presetColors: swatches,
80
- disableAlpha: hideAlpha,
81
- onChange: function onChange(_ref2) {
82
- var _ref2$rgb = _ref2.rgb,
83
- _ref2$rgb$a = _ref2$rgb.a,
84
- a = _ref2$rgb$a === void 0 ? 1 : _ref2$rgb$a,
85
- rgb = _objectWithoutProperties(_ref2$rgb, _excluded);
86
- return setActualValue(Color(rgb).alpha(a)[a < 1 ? "hexa" : "hex"]());
87
- },
88
- onChangeComplete: function onChangeComplete(_ref3) {
89
- var _ref3$rgb = _ref3.rgb,
90
- _ref3$rgb$a = _ref3$rgb.a,
91
- a = _ref3$rgb$a === void 0 ? 1 : _ref3$rgb$a,
92
- rgb = _objectWithoutProperties(_ref3$rgb, _excluded2);
93
- return handleChange(Color(rgb).alpha(a)[a < 1 ? "hexa" : "hex"]());
94
- }
100
+ })
95
101
  });
96
102
  });
97
103
 
@@ -12,7 +12,7 @@ import { InputWrapper } from '../internal/InputWrapper.js';
12
12
  import { useHandleEnter } from '../utils/eventHandlers.js';
13
13
  import { jsxs, jsx } from 'react/jsx-runtime';
14
14
 
15
- var _excluded = ["ref", "name", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "autoFocus", "error", "type", "onBlur", "onFocus", "onChange", "onEnterPressed", "format", "min", "max"];
15
+ var _excluded = ["ref", "name", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "defaultValue", "autoFocus", "error", "type", "onBlur", "onFocus", "onChange", "onEnterPressed", "format", "min", "max"];
16
16
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
17
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
18
  /**
@@ -33,6 +33,7 @@ var DateInput = function DateInput(_ref) {
33
33
  disabled = _ref.disabled,
34
34
  required = _ref.required,
35
35
  placeholder = _ref.placeholder,
36
+ defaultValue = _ref.defaultValue,
36
37
  autoFocus = _ref.autoFocus,
37
38
  error = _ref.error,
38
39
  _ref$type = _ref.type,
@@ -53,7 +54,7 @@ var DateInput = function DateInput(_ref) {
53
54
  _useState4 = _slicedToArray(_useState3, 2),
54
55
  inputValue = _useState4[0],
55
56
  setInputValue = _useState4[1];
56
- var deferred = useDeferredValue(value);
57
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
57
58
  var inputFormat = useMemo(function () {
58
59
  return type === "datetime" ? "yyyy-MM-dd HH:mm" : "yyyy-MM-dd";
59
60
  }, [type]);
@@ -63,7 +64,8 @@ var DateInput = function DateInput(_ref) {
63
64
  }, [deferred, inputFormat]);
64
65
  var handleEnterPressed = useHandleEnter(onEnterPressed);
65
66
  var handleChange = useCallback(function (e) {
66
- var value = e === null || e === void 0 ? void 0 : e.currentTarget.value;
67
+ var _e$currentTarget$valu;
68
+ var value = (_e$currentTarget$valu = e === null || e === void 0 ? void 0 : e.currentTarget.value) !== null && _e$currentTarget$valu !== void 0 ? _e$currentTarget$valu : defaultValue;
67
69
  if (value) {
68
70
  var _parsed$toISOString;
69
71
  var parsed = DateUtil.parseDate(value);
@@ -80,7 +82,7 @@ var DateInput = function DateInput(_ref) {
80
82
  return onChange(null);
81
83
  });
82
84
  }
83
- }, [onChange, inputFormat]);
85
+ }, [onChange, inputFormat, defaultValue]);
84
86
  var handleDateChange = useCallback(function (value) {
85
87
  if (value) {
86
88
  var _parsed$toISOString3;
@@ -10,7 +10,7 @@ import { useHandleEnter } from '../utils/eventHandlers.js';
10
10
  import '@react-fabric/utilities';
11
11
  import { jsx } from 'react/jsx-runtime';
12
12
 
13
- var _excluded = ["ref", "name", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "autoFocus", "error", "monospace", "type", "onBlur", "onFocus", "onChange", "onEnterPressed"];
13
+ var _excluded = ["ref", "name", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "defaultValue", "autoFocus", "error", "monospace", "type", "onBlur", "onFocus", "onChange", "onEnterPressed"];
14
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
16
  /**
@@ -30,6 +30,7 @@ var Input = function Input(_ref) {
30
30
  disabled = _ref.disabled,
31
31
  required = _ref.required,
32
32
  placeholder = _ref.placeholder,
33
+ defaultValue = _ref.defaultValue,
33
34
  autoFocus = _ref.autoFocus,
34
35
  error = _ref.error,
35
36
  monospace = _ref.monospace,
@@ -44,16 +45,17 @@ var Input = function Input(_ref) {
44
45
  _useState2 = _slicedToArray(_useState, 2),
45
46
  actualValue = _useState2[0],
46
47
  setActualValue = _useState2[1];
47
- var deferred = useDeferredValue(value);
48
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
48
49
  var handleEnterPressed = useHandleEnter(onEnterPressed);
49
50
  useEffect(function () {
50
51
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
51
52
  }, [deferred]);
52
53
  var handleChange = useCallback(function (e) {
53
- var value = e === null || e === void 0 ? void 0 : e.target.value;
54
+ var _e$target$value;
55
+ var value = (_e$target$value = e === null || e === void 0 ? void 0 : e.target.value) !== null && _e$target$value !== void 0 ? _e$target$value : defaultValue;
54
56
  setActualValue(value !== null && value !== void 0 ? value : "");
55
57
  onChange === null || onChange === void 0 || onChange(value !== null && value !== void 0 ? value : null);
56
- }, [onchange]);
58
+ }, [onChange, defaultValue]);
57
59
  return /*#__PURE__*/jsx(InputWrapper, _objectSpread(_objectSpread({
58
60
  showClear: !!actualValue && !disabled && !readOnly,
59
61
  onClear: handleChange,
@@ -9,7 +9,7 @@ import { useHandleEnter } from '../utils/eventHandlers.js';
9
9
  import '@react-fabric/utilities';
10
10
  import { jsx } from 'react/jsx-runtime';
11
11
 
12
- var _excluded = ["ref", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "autoFocus", "name", "min", "max", "step", "onBlur", "onFocus", "onChange", "onEnterPressed"];
12
+ var _excluded = ["ref", "value", "invalid", "readOnly", "disabled", "required", "placeholder", "defaultValue", "autoFocus", "name", "min", "max", "step", "onBlur", "onFocus", "onChange", "onEnterPressed"];
13
13
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
15
  /**
@@ -28,6 +28,7 @@ var Number = function Number(_ref) {
28
28
  disabled = _ref.disabled,
29
29
  required = _ref.required,
30
30
  placeholder = _ref.placeholder,
31
+ defaultValue = _ref.defaultValue,
31
32
  autoFocus = _ref.autoFocus,
32
33
  name = _ref.name,
33
34
  min = _ref.min,
@@ -42,16 +43,17 @@ var Number = function Number(_ref) {
42
43
  _useState2 = _slicedToArray(_useState, 2),
43
44
  actualValue = _useState2[0],
44
45
  setActualValue = _useState2[1];
45
- var deferred = useDeferredValue(value);
46
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
46
47
  var handleEnterPressed = useHandleEnter(onEnterPressed);
47
48
  useEffect(function () {
48
49
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
49
50
  }, [deferred]);
50
51
  var handleChange = useCallback(function (e) {
51
- var number = e === null || e === void 0 ? void 0 : e.target.valueAsNumber;
52
+ var _e$target$valueAsNumb;
53
+ var number = (_e$target$valueAsNumb = e === null || e === void 0 ? void 0 : e.target.valueAsNumber) !== null && _e$target$valueAsNumb !== void 0 ? _e$target$valueAsNumb : defaultValue;
52
54
  setActualValue(number !== null && number !== void 0 ? number : "");
53
55
  onChange === null || onChange === void 0 || onChange(number !== null && number !== void 0 ? number : null);
54
- }, [onChange]);
56
+ }, [onChange, defaultValue]);
55
57
  return /*#__PURE__*/jsx(InputWrapper, _objectSpread(_objectSpread({
56
58
  showClear: !!actualValue && !disabled && !readOnly,
57
59
  onClear: handleChange,
@@ -12,7 +12,7 @@ import { useHandleEnter } from '../utils/eventHandlers.js';
12
12
  import '@react-fabric/utilities';
13
13
  import { jsxs, jsx } from 'react/jsx-runtime';
14
14
 
15
- var _excluded = ["ref", "value", "name", "strength", "invalid", "readOnly", "disabled", "required", "placeholder", "autoFocus", "showToggle", "onBlur", "onFocus", "onChange", "onEnterPressed"];
15
+ var _excluded = ["ref", "value", "name", "strength", "invalid", "readOnly", "disabled", "required", "placeholder", "defaultValue", "autoFocus", "showToggle", "onBlur", "onFocus", "onChange", "onEnterPressed"];
16
16
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
17
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
18
  /**
@@ -31,6 +31,7 @@ var Password = function Password(_ref) {
31
31
  disabled = _ref.disabled,
32
32
  required = _ref.required,
33
33
  placeholder = _ref.placeholder,
34
+ defaultValue = _ref.defaultValue,
34
35
  autoFocus = _ref.autoFocus,
35
36
  showToggle = _ref.showToggle,
36
37
  onBlur = _ref.onBlur,
@@ -48,16 +49,17 @@ var Password = function Password(_ref) {
48
49
  _useState4 = _slicedToArray(_useState3, 2),
49
50
  actualValue = _useState4[0],
50
51
  setActualValue = _useState4[1];
51
- var deferred = useDeferredValue(value);
52
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
52
53
  var handleEnterPressed = useHandleEnter(onEnterPressed);
53
54
  useEffect(function () {
54
55
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
55
56
  }, [deferred]);
56
57
  var handleChange = useCallback(function (e) {
57
- var value = e === null || e === void 0 ? void 0 : e.target.value;
58
+ var _e$target$value;
59
+ var value = (_e$target$value = e === null || e === void 0 ? void 0 : e.target.value) !== null && _e$target$value !== void 0 ? _e$target$value : defaultValue;
58
60
  setActualValue(value !== null && value !== void 0 ? value : "");
59
61
  onChange === null || onChange === void 0 || onChange(value !== null && value !== void 0 ? value : null);
60
- }, [onChange]);
62
+ }, [onChange, defaultValue]);
61
63
  return /*#__PURE__*/jsxs(InputWrapper, _objectSpread(_objectSpread({
62
64
  showClear: !!actualValue && !disabled && !readOnly,
63
65
  onClear: handleChange,
@@ -10,7 +10,7 @@ import { useHandleEnter } from '../utils/eventHandlers.js';
10
10
  import '@react-fabric/utilities';
11
11
  import { jsx, jsxs } from 'react/jsx-runtime';
12
12
 
13
- var _excluded = ["ref", "value", "name", "invalid", "readOnly", "disabled", "required", "searching", "placeholder", "autoFocus", "hideHandle", "allowClear", "searchOnChange", "onBlur", "onFocus", "onSearch", "onChange", "onEnterPressed"];
13
+ var _excluded = ["ref", "value", "name", "invalid", "readOnly", "disabled", "required", "searching", "placeholder", "defaultValue", "autoFocus", "hideHandle", "allowClear", "searchOnChange", "onBlur", "onFocus", "onSearch", "onChange", "onEnterPressed"];
14
14
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
15
15
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
16
16
  /**
@@ -32,6 +32,7 @@ var Search = function Search(_ref) {
32
32
  required = _ref.required,
33
33
  searching = _ref.searching,
34
34
  placeholder = _ref.placeholder,
35
+ defaultValue = _ref.defaultValue,
35
36
  autoFocus = _ref.autoFocus,
36
37
  hideHandle = _ref.hideHandle,
37
38
  _ref$allowClear = _ref.allowClear,
@@ -48,7 +49,7 @@ var Search = function Search(_ref) {
48
49
  _useState2 = _slicedToArray(_useState, 2),
49
50
  actualValue = _useState2[0],
50
51
  setActualValue = _useState2[1];
51
- var deferred = useDeferredValue(value);
52
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
52
53
  var refValue = useRef("");
53
54
  var handleSearch = useDebounce(function () {
54
55
  return onSearch === null || onSearch === void 0 ? void 0 : onSearch(refValue.current);
@@ -58,7 +59,8 @@ var Search = function Search(_ref) {
58
59
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
59
60
  }, [deferred]);
60
61
  var handleChange = useCallback(function (e) {
61
- var value = e === null || e === void 0 ? void 0 : e.target.value;
62
+ var _e$target$value;
63
+ var value = (_e$target$value = e === null || e === void 0 ? void 0 : e.target.value) !== null && _e$target$value !== void 0 ? _e$target$value : defaultValue;
62
64
  refValue.current = value !== null && value !== void 0 ? value : "";
63
65
  setActualValue(value !== null && value !== void 0 ? value : "");
64
66
  onChange === null || onChange === void 0 || onChange(value !== null && value !== void 0 ? value : null);
@@ -67,7 +69,7 @@ var Search = function Search(_ref) {
67
69
  if (!e || searchOnChange) {
68
70
  handleSearch();
69
71
  }
70
- }, [onChange, searchOnChange, handleSearch]);
72
+ }, [onChange, searchOnChange, handleSearch, defaultValue]);
71
73
  return /*#__PURE__*/jsx(InputWrapper, _objectSpread(_objectSpread({
72
74
  showClear: !!actualValue && !disabled && !readOnly,
73
75
  onClear: handleChange,
@@ -60,7 +60,7 @@ var Switch = function Switch(_ref) {
60
60
  width: width
61
61
  },
62
62
  children: [/*#__PURE__*/jsxs("div", {
63
- className: classNames(actualValue && getBgClass(color ? "".concat(color, "-500") : "primary-500"), !actualValue && (defaultColor ? getBgClass("".concat(defaultColor, "-500")) : "bg-tint-200"), "relative grid grid-cols-2 items-center h-6 min-w-10 cursor-pointer rounded-full p-1 transition-colors duration-200 ease-in-out"),
63
+ className: classNames(actualValue && getBgClass(color ? "".concat(color, "-500") : "primary-500"), !actualValue && (defaultColor ? getBgClass("".concat(defaultColor, "-500")) : "bg-tint-200"), "relative grid grid-cols-2 items-center h-[1.5em] min-w-[2.5em] cursor-pointer rounded-full p-[0.25em] transition-colors duration-200 ease-in-out"),
64
64
  style: {
65
65
  backgroundColor: actualValue ? getColor(color) : getColor(defaultColor)
66
66
  },
@@ -79,9 +79,9 @@ var Switch = function Switch(_ref) {
79
79
  onChange: handleChange
80
80
  }, rest)), /*#__PURE__*/jsx("span", {
81
81
  "aria-hidden": "true",
82
- className: classNames(!disabled && "shadow-sm", actualValue ? "translate-x-[100%]" : "translate-x-0", "pointer-events-none inline-block h-4 start-1 absolute rounded-full bg-white ring-0 transition duration-200 ease-in-out"),
82
+ className: classNames(!disabled && "shadow-sm", actualValue ? "translate-x-[100%]" : "translate-x-0", "pointer-events-none inline-block h-[1em] start-[0.25em] absolute rounded-full bg-white ring-0 transition duration-200 ease-in-out"),
83
83
  style: {
84
- width: "calc(50% - 0.25rem)"
84
+ width: "calc(50% - 0.25em)"
85
85
  }
86
86
  }), (!!onLabel || !!offLabel) && /*#__PURE__*/jsxs(Fragment, {
87
87
  children: [/*#__PURE__*/jsx("span", {
@@ -9,7 +9,7 @@ import { useHandleEnter } from '../utils/eventHandlers.js';
9
9
  import '@react-fabric/utilities';
10
10
  import { jsx } from 'react/jsx-runtime';
11
11
 
12
- var _excluded = ["ref", "value", "name", "invalid", "readOnly", "disabled", "required", "placeholder", "autoFocus", "rows", "maxRows", "variableRows", "expandable", "onBlur", "onFocus", "onChange", "onEnterPressed"];
12
+ var _excluded = ["ref", "value", "name", "invalid", "readOnly", "disabled", "required", "placeholder", "defaultValue", "autoFocus", "rows", "maxRows", "variableRows", "expandable", "onBlur", "onFocus", "onChange", "onEnterPressed"];
13
13
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
14
14
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
15
15
  /**
@@ -31,6 +31,7 @@ var Textarea = function Textarea(_ref) {
31
31
  disabled = _ref.disabled,
32
32
  required = _ref.required,
33
33
  placeholder = _ref.placeholder,
34
+ defaultValue = _ref.defaultValue,
34
35
  autoFocus = _ref.autoFocus,
35
36
  _ref$rows = _ref.rows,
36
37
  rows = _ref$rows === void 0 ? 5 : _ref$rows,
@@ -51,16 +52,17 @@ var Textarea = function Textarea(_ref) {
51
52
  _useState4 = _slicedToArray(_useState3, 2),
52
53
  fixedRows = _useState4[0],
53
54
  setFixedRows = _useState4[1];
54
- var deferred = useDeferredValue(value);
55
+ var deferred = useDeferredValue(value !== null && value !== void 0 ? value : defaultValue);
55
56
  var wrapperRef = useRef(null);
56
57
  useEffect(function () {
57
58
  setActualValue(deferred !== null && deferred !== void 0 ? deferred : "");
58
59
  }, [deferred]);
59
60
  var handleChange = useCallback(function (e) {
60
- var value = e === null || e === void 0 ? void 0 : e.target.value;
61
+ var _e$target$value;
62
+ var value = (_e$target$value = e === null || e === void 0 ? void 0 : e.target.value) !== null && _e$target$value !== void 0 ? _e$target$value : defaultValue;
61
63
  setActualValue(value !== null && value !== void 0 ? value : "");
62
64
  onChange === null || onChange === void 0 || onChange(value !== null && value !== void 0 ? value : null);
63
- }, [onChange]);
65
+ }, [onChange, defaultValue]);
64
66
  useEffect(function () {
65
67
  if (variableRows) {
66
68
  var _actualValue$split$le;
@@ -141,9 +141,8 @@ var AutoComplete = function AutoComplete(_ref) {
141
141
  handleChange("");
142
142
  return false;
143
143
  } else {
144
- var _submitRef$current;
145
144
  onEnterPressed === null || onEnterPressed === void 0 || onEnterPressed(evt);
146
- (_submitRef$current = submitRef.current) === null || _submitRef$current === void 0 || _submitRef$current.click();
145
+ setOpen(false);
147
146
  }
148
147
  } else if (evt.key === "Backspace") {
149
148
  !state.query && multiple && handleRemove();
@@ -9,6 +9,10 @@ export interface Props extends RefProp {
9
9
  * actual avatar storage path
10
10
  */
11
11
  value?: string;
12
+ /**
13
+ * default avatar image
14
+ */
15
+ defaultValue?: string;
12
16
  /**
13
17
  * avatar name
14
18
  */
@@ -39,4 +43,4 @@ export interface Props extends RefProp {
39
43
  * @param {Props} props - The properties for the AvatarInput component.
40
44
  * @returns {JSX.Element} - The rendered AvatarInput component.
41
45
  */
42
- export declare const AvatarInput: ({ size, avatarName, value, fileUrl, uploadHandler, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
46
+ export declare const AvatarInput: ({ size, avatarName, value, defaultValue, fileUrl, uploadHandler, ...rest }: Props) => import("react/jsx-runtime").JSX.Element;
@@ -25,4 +25,4 @@ export interface DateProps extends InputProps<string>, RefProp<HTMLInputElement>
25
25
  * @param {DateProps} props - The properties for the DateInput component.
26
26
  * @returns {JSX.Element} - The rendered DateInput component.
27
27
  */
28
- export declare const DateInput: ({ ref, name, value, invalid, readOnly, disabled, required, placeholder, autoFocus, error, type, onBlur, onFocus, onChange, onEnterPressed, format, min, max, ...rest }: DateProps) => import("react/jsx-runtime").JSX.Element;
28
+ export declare const DateInput: ({ ref, name, value, invalid, readOnly, disabled, required, placeholder, defaultValue, autoFocus, error, type, onBlur, onFocus, onChange, onEnterPressed, format, min, max, ...rest }: DateProps) => import("react/jsx-runtime").JSX.Element;
@@ -14,4 +14,4 @@ export interface TextInputProps extends InputProps, RefProp<HTMLInputElement> {
14
14
  * @param {TextInputProps} props - The properties for the text input component.
15
15
  * @returns {JSX.Element} - A JSX element representing the text input field.
16
16
  */
17
- export declare const Input: ({ ref, name, value, invalid, readOnly, disabled, required, placeholder, autoFocus, error, monospace, type, onBlur, onFocus, onChange, onEnterPressed, ...rest }: TextInputProps) => import("react/jsx-runtime").JSX.Element;
17
+ export declare const Input: ({ ref, name, value, invalid, readOnly, disabled, required, placeholder, defaultValue, autoFocus, error, monospace, type, onBlur, onFocus, onChange, onEnterPressed, ...rest }: TextInputProps) => import("react/jsx-runtime").JSX.Element;
@@ -22,4 +22,4 @@ export interface NumberProps extends InputProps<number>, RefProp<HTMLInputElemen
22
22
  * @param {NumberProps} props - The properties for the Number input component.
23
23
  * @returns {JSX.Element} The rendered Number input component.
24
24
  */
25
- export declare const Number: ({ ref, value, invalid, readOnly, disabled, required, placeholder, autoFocus, name, min, max, step, onBlur, onFocus, onChange, onEnterPressed, ...rest }: NumberProps) => import("react/jsx-runtime").JSX.Element;
25
+ export declare const Number: ({ ref, value, invalid, readOnly, disabled, required, placeholder, defaultValue, autoFocus, name, min, max, step, onBlur, onFocus, onChange, onEnterPressed, ...rest }: NumberProps) => import("react/jsx-runtime").JSX.Element;
@@ -16,4 +16,4 @@ export interface PasswordProps extends InputProps, RefProp<HTMLInputElement> {
16
16
  * @param {PasswordProps} props - The properties for the Password component.
17
17
  * @returns {JSX.Element} The rendered Password input component.
18
18
  */
19
- export declare const Password: ({ ref, value, name, strength, invalid, readOnly, disabled, required, placeholder, autoFocus, showToggle, onBlur, onFocus, onChange, onEnterPressed, ...rest }: PasswordProps) => import("react/jsx-runtime").JSX.Element;
19
+ export declare const Password: ({ ref, value, name, strength, invalid, readOnly, disabled, required, placeholder, defaultValue, autoFocus, showToggle, onBlur, onFocus, onChange, onEnterPressed, ...rest }: PasswordProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import { type InputProps } from "../types";
2
- export interface RangeProps extends Omit<InputProps<[number, number]>, "placeholder" | "allowClear" | "children"> {
2
+ export interface RangeProps extends Omit<InputProps<[number, number]>, "placeholder" | "allowClear" | "children" | "defaultValue"> {
3
3
  /**
4
4
  * min value
5
5
  */
@@ -27,4 +27,4 @@ export interface SearchProps extends InputProps, RefProp<HTMLInputElement> {
27
27
  * @param {SearchProps} props - The properties for the Search component.
28
28
  * @returns {JSX.Element} The rendered Search input component.
29
29
  */
30
- export declare const Search: ({ ref, value, name, invalid, readOnly, disabled, required, searching, placeholder, autoFocus, hideHandle, allowClear, searchOnChange, onBlur, onFocus, onSearch, onChange, onEnterPressed, ...rest }: SearchProps) => import("react/jsx-runtime").JSX.Element;
30
+ export declare const Search: ({ ref, value, name, invalid, readOnly, disabled, required, searching, placeholder, defaultValue, autoFocus, hideHandle, allowClear, searchOnChange, onBlur, onFocus, onSearch, onChange, onEnterPressed, ...rest }: SearchProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,5 +1,5 @@
1
1
  import { type InputProps } from "../types";
2
- export interface SliderProps extends Omit<InputProps<number>, "placeholder" | "allowClear" | "children"> {
2
+ export interface SliderProps extends Omit<InputProps<number>, "placeholder" | "allowClear" | "children" | "defaultValue"> {
3
3
  /**
4
4
  * min value
5
5
  */
@@ -28,4 +28,4 @@ export interface TextareaProps extends InputProps, RefProp<HTMLTextAreaElement>
28
28
  * @param {TextareaProps} props - The properties for the Textarea component.
29
29
  * @returns {JSX.Element} The rendered Textarea component.
30
30
  */
31
- export declare const Textarea: ({ ref, value, name, invalid, readOnly, disabled, required, placeholder, autoFocus, rows, maxRows, variableRows, expandable, onBlur, onFocus, onChange, onEnterPressed, ...rest }: TextareaProps) => import("react/jsx-runtime").JSX.Element;
31
+ export declare const Textarea: ({ ref, value, name, invalid, readOnly, disabled, required, placeholder, defaultValue, autoFocus, rows, maxRows, variableRows, expandable, onBlur, onFocus, onChange, onEnterPressed, ...rest }: TextareaProps) => import("react/jsx-runtime").JSX.Element;
@@ -5,6 +5,10 @@ export interface InputProps<V = string> extends TestProps {
5
5
  * value
6
6
  */
7
7
  value?: V | null;
8
+ /**
9
+ * default value
10
+ */
11
+ defaultValue?: V | null;
8
12
  /**
9
13
  * change handler
10
14
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-fabric/form",
3
- "version": "1.0.0-beta.54",
3
+ "version": "1.0.0-beta.56",
4
4
  "description": "RUF: Form package",
5
5
  "author": "Adarsh Pastakia <adarshpastakia@outlook.com>",
6
6
  "license": "MIT",
@@ -41,8 +41,8 @@
41
41
  "@dnd-kit/utilities": "^3.2.2",
42
42
  "@floating-ui/react": "^0.27.9",
43
43
  "@hookform/resolvers": "^3.9.0",
44
- "@react-fabric/core": "^1.0.0-beta.54",
45
- "@react-fabric/date": "^1.0.0-beta.54",
44
+ "@react-fabric/core": "^1.0.0-beta.55",
45
+ "@react-fabric/date": "^1.0.0-beta.55",
46
46
  "@react-fabric/utilities": "^1.0.0-beta.52",
47
47
  "classnames": "^2.5.1",
48
48
  "color": "^4.2.3",
@@ -63,5 +63,5 @@
63
63
  "node": ">=18.12.0",
64
64
  "npm": ">=8.19.0"
65
65
  },
66
- "gitHead": "242f15e3de29d365cce6f41f4ef99ab36bb6b995"
66
+ "gitHead": "fd9dd6cfd1a58efb5c4bfb6446928a78cb4f4266"
67
67
  }