shineout 3.8.0-beta.9 → 3.8.0

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 (55) hide show
  1. package/README-zh_CN.md +1 -1
  2. package/README.md +1 -1
  3. package/cjs/breadcrumb/breadcrumb.js +2 -1
  4. package/cjs/cascader/cascader.d.ts +4 -1
  5. package/cjs/cascader/cascader.js +1 -0
  6. package/cjs/checkbox/checkbox.js +1 -0
  7. package/cjs/checkbox/group.js +3 -2
  8. package/cjs/date-picker/date-picker.js +3 -2
  9. package/cjs/editable-area/editable-area.js +1 -0
  10. package/cjs/empty/empty.type.d.ts +15 -1
  11. package/cjs/form/form.type.d.ts +31 -4
  12. package/cjs/index.js +1 -1
  13. package/cjs/input/input.js +1 -0
  14. package/cjs/input/number.js +1 -0
  15. package/cjs/input/password.js +1 -0
  16. package/cjs/radio/group.js +3 -2
  17. package/cjs/rate/rate.js +5 -4
  18. package/cjs/select/select.d.ts +3 -3
  19. package/cjs/select/select.js +5 -4
  20. package/cjs/slider/slider.js +1 -0
  21. package/cjs/switch/switch.js +3 -2
  22. package/cjs/textarea/textarea.js +3 -2
  23. package/cjs/tree-select/tree-select.js +1 -0
  24. package/cjs/upload/button.js +1 -0
  25. package/cjs/upload/image.js +1 -0
  26. package/cjs/upload/upload.js +1 -0
  27. package/dist/shineout.js +2013 -708
  28. package/dist/shineout.js.map +1 -1
  29. package/dist/shineout.min.js +1 -1
  30. package/dist/shineout.min.js.map +1 -1
  31. package/esm/breadcrumb/breadcrumb.js +3 -2
  32. package/esm/cascader/cascader.d.ts +4 -1
  33. package/esm/cascader/cascader.js +1 -0
  34. package/esm/checkbox/checkbox.js +1 -0
  35. package/esm/checkbox/group.js +3 -2
  36. package/esm/date-picker/date-picker.js +5 -4
  37. package/esm/editable-area/editable-area.js +1 -0
  38. package/esm/empty/empty.type.d.ts +15 -1
  39. package/esm/form/form.type.d.ts +31 -4
  40. package/esm/index.js +1 -1
  41. package/esm/input/input.js +1 -0
  42. package/esm/input/number.js +1 -0
  43. package/esm/input/password.js +1 -0
  44. package/esm/radio/group.js +3 -2
  45. package/esm/rate/rate.js +5 -4
  46. package/esm/select/select.d.ts +3 -3
  47. package/esm/select/select.js +5 -4
  48. package/esm/slider/slider.js +1 -0
  49. package/esm/switch/switch.js +3 -2
  50. package/esm/textarea/textarea.js +3 -2
  51. package/esm/tree-select/tree-select.js +1 -0
  52. package/esm/upload/button.js +1 -0
  53. package/esm/upload/image.js +1 -0
  54. package/esm/upload/upload.js +1 -0
  55. package/package.json +10 -10
@@ -6,11 +6,12 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
7
  import React from 'react';
8
8
  import { Breadcrumb } from '@sheinx/base';
9
- import { useBreadcrumbStyle, usePopoverStyle } from '@sheinx/shineout-style';
9
+ import { useBreadcrumbStyle, usePopoverStyle, useTooltipStyle } from '@sheinx/shineout-style';
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
11
  var jssStyle = {
12
12
  breadcrumb: useBreadcrumbStyle,
13
- popover: usePopoverStyle
13
+ popover: usePopoverStyle,
14
+ tooltip: useTooltipStyle
14
15
  };
15
16
  export default (function (props) {
16
17
  return /*#__PURE__*/_jsx(Breadcrumb, _objectSpread({
@@ -1,4 +1,7 @@
1
1
  import { KeygenResult } from '@sheinx/hooks';
2
2
  import { CascaderProps } from './cascader.type';
3
- declare const _default: <DataItem, Value extends KeygenResult[]>(props: CascaderProps<DataItem, Value>) => import("react/jsx-runtime").JSX.Element;
3
+ declare const _default: {
4
+ <DataItem, Value extends KeygenResult[]>(props: CascaderProps<DataItem, Value>): import("react/jsx-runtime").JSX.Element;
5
+ displayName: string;
6
+ };
4
7
  export default _default;
@@ -26,6 +26,7 @@ var Cascader = function Cascader(props) {
26
26
  jssStyle: jssStyle
27
27
  }));
28
28
  };
29
+ Cascader.displayName = 'ShineoutCascader';
29
30
  export default /*#__PURE__*/memo(function (props) {
30
31
  return useFieldCommon(props, Cascader, 'array');
31
32
  });
@@ -18,6 +18,7 @@ var BaseCheckbox = function BaseCheckbox(props) {
18
18
  jssStyle: jssStyle
19
19
  }));
20
20
  };
21
+ BaseCheckbox.displayName = 'ShineoutCheckbox';
21
22
  var Checkbox = function Checkbox(props) {
22
23
  return useFieldCommon(props, BaseCheckbox);
23
24
  };
@@ -12,12 +12,13 @@ var jssStyle = {
12
12
  checkbox: useCheckboxStyle,
13
13
  input: useInputStyle
14
14
  };
15
- var BaseCheckboxGroup = function BaseCheckboxGroup(props) {
15
+ var CheckboxGroup = function CheckboxGroup(props) {
16
16
  return /*#__PURE__*/_jsx(UnStyledCheckboxGroup, _objectSpread(_objectSpread({}, props), {}, {
17
17
  jssStyle: jssStyle
18
18
  }));
19
19
  };
20
+ CheckboxGroup.displayName = 'ShineoutCheckboxGroup';
20
21
  var CheckboxGroupWithField = function CheckboxGroupWithField(props) {
21
- return useFieldCommon(props, BaseCheckboxGroup, 'array');
22
+ return useFieldCommon(props, CheckboxGroup, 'array');
22
23
  };
23
24
  export default CheckboxGroupWithField;
@@ -5,7 +5,7 @@ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key i
5
5
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
6
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
7
  import { useMemo } from 'react';
8
- import { DatePicker, getLocale, useConfig } from '@sheinx/base';
8
+ import { DatePicker as BaseDatePicker, getLocale, useConfig } from '@sheinx/base';
9
9
  import { useButtonStyle, useDatePickerStyle, useInnerTitleStyle, usePopoverStyle, useLinkStyle } from '@sheinx/shineout-style';
10
10
  import { convertValueToDateArr, getFormat, getFormatValueArr } from '@sheinx/hooks';
11
11
  import useFieldCommon from "../hooks/use-field-common";
@@ -17,11 +17,12 @@ var jssStyle = {
17
17
  popover: usePopoverStyle,
18
18
  link: useLinkStyle
19
19
  };
20
- var BaseDatePicker = function BaseDatePicker(props) {
21
- return /*#__PURE__*/_jsx(DatePicker, _objectSpread({
20
+ var DatePicker = function DatePicker(props) {
21
+ return /*#__PURE__*/_jsx(BaseDatePicker, _objectSpread({
22
22
  jssStyle: jssStyle
23
23
  }, props));
24
24
  };
25
+ DatePicker.displayName = 'ShineoutDatePicker';
25
26
  export default (function (props) {
26
27
  var _useConfig = useConfig(),
27
28
  locale = _useConfig.locale;
@@ -48,5 +49,5 @@ export default (function (props) {
48
49
  }, []);
49
50
  return useFieldCommon(_objectSpread(_objectSpread({}, props), {}, {
50
51
  defaultValue: defaultValue
51
- }), BaseDatePicker);
52
+ }), DatePicker);
52
53
  });
@@ -18,6 +18,7 @@ var EditableArea = function EditableArea(props) {
18
18
  jssStyle: jssStyle
19
19
  }, props));
20
20
  };
21
+ EditableArea.displayName = 'ShineoutEditableArea';
21
22
  export default (function (props) {
22
23
  return useFieldCommon(props, EditableArea);
23
24
  });
@@ -1,5 +1,19 @@
1
+ /// <reference types="react" />
1
2
  import { EmptyProps as UnStyledEmptyProps } from '@sheinx/base';
2
3
  /**
3
4
  * @title Empty
4
5
  */
5
- export type EmptyProps = Omit<UnStyledEmptyProps, 'jssStyle'>;
6
+ export interface EmptyProps extends Omit<UnStyledEmptyProps, 'jssStyle' | 'icon' | 'description'> {
7
+ /**
8
+ * @en Empty state icon. Enhanced in v3.8.0 to support global configuration via setConfig
9
+ * @cn 空状态图标。3.8.0版本增强,支持通过setConfig进行全局配置
10
+ * @version 3.8.0
11
+ */
12
+ icon?: React.ReactNode;
13
+ /**
14
+ * @en Description, if false, the description will not be displayed. Enhanced in v3.8.0 to support global configuration via setConfig
15
+ * @cn 描述,若为false则不显示描述。3.8.0版本增强,支持通过setConfig进行全局配置
16
+ * @version 3.8.0
17
+ */
18
+ description?: React.ReactNode | boolean;
19
+ }
@@ -1,12 +1,17 @@
1
1
  import { FormFieldProps as UiFormFieldProps, FormFieldSetProps as UiFormFieldSetProps, FormItemProps as UiFormItemProps, FormProps as UiFormProps, ObjectType, FormFlowProps as UiFormFlowProps, FormRef as UiFormRef, FormDatum as UiFormDatum } from '@sheinx/base';
2
+ import { ButtonProps } from '../button/button.type';
2
3
  /**
3
4
  * @title FormRef
4
5
  * @sort 6
6
+ * @en Form reference object that provides a series of methods to operate the form. After obtaining the instance through ref or useForm, you can actively control the form's validation, submission, reset and other behaviors
7
+ * @cn 表单引用对象,提供了一系列操作表单的方法。通过 ref 或 useForm 获取实例后,可以主动控制表单的校验、提交、重置等行为
5
8
  */
6
9
  export type FormRef<T> = UiFormRef<T>;
7
10
  /**
8
11
  * @title FormDatum
9
12
  * @sort 7
13
+ * @en Form data management object, used to manage the internal data state and validation logic of the form
14
+ * @cn 表单数据管理对象,用于管理表单内部的数据状态和校验逻辑
10
15
  */
11
16
  export type FormDatum = UiFormDatum;
12
17
  /**
@@ -15,34 +20,56 @@ export type FormDatum = UiFormDatum;
15
20
  */
16
21
  export interface FormProps<T extends ObjectType> extends Omit<UiFormProps<T>, 'jssStyle'> {
17
22
  /**
18
- * @en Form value
19
- * @cn 表单数据
23
+ * @en When set, the form becomes a controlled component and needs to be used with onChange. Suitable for scenarios where external management of form state is required, such as sharing form data across components, real-time synchronization of form data to state managers, etc.
24
+ * @cn 设置后表单变为受控组件,需要配合 onChange 使用。适用于需要外部管理表单状态的场景,如跨组件共享表单数据、实时同步表单数据到状态管理器等
20
25
  * @override object
21
26
  */
22
27
  value?: T;
23
28
  /**
24
- * @en callback function, executed when the value is changing
25
- * @cn 表单内组件值变化函数
29
+ * @en Must be set in controlled mode to update external state. Triggered whenever any field value in the form changes, with the parameter being the latest data of the entire form
30
+ * @cn 在受控模式下必须设置此函数来更新外部状态。每当表单内任意字段值改变时都会触发,参数为整个表单的最新数据
26
31
  */
27
32
  onChange?: (value: T) => void;
28
33
  }
29
34
  /**
30
35
  * @title Form.Item
31
36
  * @sort 2
37
+ * @en Form item component, used to wrap form controls and provide label, error tips and other functions. Each form control should be wrapped with Form.Item to properly display labels and validation information
38
+ * @cn 表单项组件,用于包装表单控件并提供标签、错误提示等功能。每个表单控件都应该被 Form.Item 包裹,以便正确显示标签和校验信息
32
39
  */
33
40
  export type FormItemProps = Omit<UiFormItemProps, 'jssStyle'>;
34
41
  /**
35
42
  * @title Form.Field
36
43
  * @sort 3
44
+ * @en Form field component for creating custom form controls. Provides form data binding, validation and other functions, suitable for encapsulating complex custom form components
45
+ * @cn 表单字段组件,用于创建自定义的表单控件。提供了表单数据绑定、校验等功能,适用于封装复杂的自定义表单组件
37
46
  */
38
47
  export type FormFieldProps<T> = UiFormFieldProps<T>;
39
48
  /**
40
49
  * @title Form.FieldSet
41
50
  * @sort 4
51
+ * @en Form field set component for managing a group of related form fields. Suitable for handling object or array type form data, such as dynamic form lists, nested objects and other complex scenarios
52
+ * @cn 表单字段集组件,用于管理一组相关的表单字段。适用于处理对象或数组类型的表单数据,如动态表单列表、嵌套对象等复杂场景
42
53
  */
43
54
  export type FormFieldSetProps<T> = UiFormFieldSetProps<T>;
44
55
  /**
45
56
  * @title Form.Flow
46
57
  * @sort 5
58
+ * @en Form flow component for listening to form data changes and executing corresponding side effects. Suitable for implementing form linkage, conditional rendering and other scenarios
59
+ * @cn 表单流程组件,用于监听表单数据变化并执行相应的副作用。适用于实现表单联动、条件渲染等场景
47
60
  */
48
61
  export type FormFlowProps = UiFormFlowProps;
62
+ /**
63
+ * @title Form.Button
64
+ * @sort 8
65
+ * @en Form button component with htmlType='button'. Prevents accidental form submission when users press Enter in form inputs. Users must explicitly click the button to submit the form. Internally calls formFunc.submit() for better control over submission logic
66
+ * @cn 表单按钮组件,htmlType='button'。防止用户在表单输入框中按回车键时意外提交表单。用户必须显式点击按钮才能提交表单。内部调用 formFunc.submit() 以更好地控制提交逻辑
67
+ */
68
+ export type FormButtonProps = ButtonProps;
69
+ /**
70
+ * @title Form.Submit
71
+ * @sort 9
72
+ * @en Form submit button component with htmlType='submit'. Uses native browser submit behavior. When users press Enter in any form input, it will trigger this button automatically. Suitable for simple forms where Enter-to-submit behavior is desired
73
+ * @cn 表单提交按钮组件,htmlType='submit'。使用浏览器原生提交行为。当用户在任何表单输入框中按回车键时,会自动触发此按钮。适用于希望支持回车提交的简单表单
74
+ */
75
+ export type FormSubmitProps = ButtonProps;
package/esm/index.js CHANGED
@@ -62,5 +62,5 @@ export * from "./deprecated";
62
62
  import * as _TYPE from "./type";
63
63
  export { _TYPE as TYPE };
64
64
  export default {
65
- version: '3.8.0-beta.9'
65
+ version: '3.8.0'
66
66
  };
@@ -19,6 +19,7 @@ var Input = function Input(props) {
19
19
  jssStyle: jssStyle
20
20
  }));
21
21
  };
22
+ Input.displayName = 'ShineoutInput';
22
23
  export default /*#__PURE__*/memo(function (props) {
23
24
  return useFieldCommon(props, Input);
24
25
  });
@@ -19,6 +19,7 @@ var InputNumber = function InputNumber(props) {
19
19
  jssStyle: jssStyle
20
20
  }));
21
21
  };
22
+ InputNumber.displayName = 'ShineoutInputNumber';
22
23
  export default (function (props) {
23
24
  return useFieldCommon(props, InputNumber, 'number');
24
25
  });
@@ -18,6 +18,7 @@ var InputPassword = function InputPassword(props) {
18
18
  jssStyle: jssStyle
19
19
  }));
20
20
  };
21
+ InputPassword.displayName = 'ShineoutInputPassword';
21
22
  export default (function (props) {
22
23
  return useFieldCommon(props, InputPassword);
23
24
  });
@@ -12,12 +12,13 @@ var jssStyle = {
12
12
  radio: useRadioStyle,
13
13
  button: useButtonStyle
14
14
  };
15
- var BaseRadioGroup = function BaseRadioGroup(props) {
15
+ var RadioGroup = function RadioGroup(props) {
16
16
  return /*#__PURE__*/_jsx(UnStyledRadioGroup, _objectSpread(_objectSpread({}, props), {}, {
17
17
  jssStyle: jssStyle
18
18
  }));
19
19
  };
20
+ RadioGroup.displayName = 'ShineoutRadioGroup';
20
21
  var RadioGroupWithField = function RadioGroupWithField(props) {
21
- return useFieldCommon(props, BaseRadioGroup, 'array');
22
+ return useFieldCommon(props, RadioGroup, 'array');
22
23
  };
23
24
  export default RadioGroupWithField;
package/esm/rate/rate.js CHANGED
@@ -11,17 +11,18 @@ import { jsx as _jsx } from "react/jsx-runtime";
11
11
  var jssStyle = {
12
12
  rate: useRateStyle
13
13
  };
14
- var BaseRate = function BaseRate(props) {
14
+ var Rate = function Rate(props) {
15
15
  return /*#__PURE__*/_jsx(UnStyleRate, _objectSpread({
16
16
  jssStyle: jssStyle
17
17
  }, props));
18
18
  };
19
- var Rate = function Rate(props) {
20
- return useFieldCommon(props, BaseRate, 'number');
19
+ Rate.displayName = 'ShineoutRate';
20
+ var WrappedRate = function WrappedRate(props) {
21
+ return useFieldCommon(props, Rate, 'number');
21
22
  };
22
23
  export default (function (background, front, opts) {
23
24
  var RateIns = function RateIns(props) {
24
- return /*#__PURE__*/_jsx(Rate, _objectSpread(_objectSpread({}, opts), {}, {
25
+ return /*#__PURE__*/_jsx(WrappedRate, _objectSpread(_objectSpread({}, opts), {}, {
25
26
  background: background,
26
27
  front: front || background
27
28
  }, props));
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import { SelectPropsA, SelectPropsB } from './select.type';
3
- declare function Select<DataItem, Value>(props: SelectPropsA<DataItem, Value>): JSX.Element;
4
- declare function Select<DataItem, Value>(props: SelectPropsB<DataItem, Value>): JSX.Element;
5
- export default Select;
3
+ declare function SelectComponent<DataItem, Value>(props: SelectPropsA<DataItem, Value>): JSX.Element;
4
+ declare function SelectComponent<DataItem, Value>(props: SelectPropsB<DataItem, Value>): JSX.Element;
5
+ export default SelectComponent;
@@ -20,12 +20,13 @@ var jssStyle = {
20
20
  spin: useSpinStyle,
21
21
  common: useCommonStyle
22
22
  };
23
- function SelectComponent(props) {
23
+ function Select(props) {
24
24
  return /*#__PURE__*/_jsx(BaseSelect, _objectSpread({
25
25
  jssStyle: jssStyle
26
26
  }, props));
27
27
  }
28
- function Select(props) {
29
- return useFieldCommon(props, SelectComponent, 'array');
28
+ Select.displayName = 'ShineoutSelect';
29
+ function SelectComponent(props) {
30
+ return useFieldCommon(props, Select, 'array');
30
31
  }
31
- export default Select;
32
+ export default SelectComponent;
@@ -17,6 +17,7 @@ var BaseSlider = function BaseSlider(props) {
17
17
  jssStyle: jssStyle
18
18
  }, props));
19
19
  };
20
+ BaseSlider.displayName = 'ShineoutSlider';
20
21
  export default (function (props) {
21
22
  return useFieldCommon(props, BaseSlider, 'number');
22
23
  });
@@ -11,11 +11,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
11
11
  var jssStyle = {
12
12
  switch: useSwitchStyle
13
13
  };
14
- var BaseSwitch = function BaseSwitch(props) {
14
+ var Switch = function Switch(props) {
15
15
  return /*#__PURE__*/_jsx(UnStyleSwitch, _objectSpread({
16
16
  jssStyle: jssStyle
17
17
  }, props));
18
18
  };
19
+ Switch.displayName = 'ShineoutSwitch';
19
20
  export default (function (props) {
20
- return useFieldCommon(props, BaseSwitch);
21
+ return useFieldCommon(props, Switch);
21
22
  });
@@ -13,11 +13,12 @@ var jssStyle = {
13
13
  popover: usePopoverStyle,
14
14
  innerTitle: useInnerTitleStyle
15
15
  };
16
- var BaseTextarea = function BaseTextarea(props) {
16
+ var Textarea = function Textarea(props) {
17
17
  return /*#__PURE__*/_jsx(UnStyledTextarea, _objectSpread(_objectSpread({}, props), {}, {
18
18
  jssStyle: jssStyle
19
19
  }));
20
20
  };
21
+ Textarea.displayName = 'ShineoutTextarea';
21
22
  export default (function (props) {
22
- return useFieldCommon(props, BaseTextarea);
23
+ return useFieldCommon(props, Textarea);
23
24
  });
@@ -25,6 +25,7 @@ var TreeSelectComponent = function TreeSelectComponent(props) {
25
25
  jssStyle: jssStyle
26
26
  }, props));
27
27
  };
28
+ TreeSelectComponent.displayName = 'ShineoutTreeSelect';
28
29
  var TreeSelect = function TreeSelect(props) {
29
30
  return useFieldCommon(props, TreeSelectComponent, 'array');
30
31
  };
@@ -22,6 +22,7 @@ var BaseUploadButton = function BaseUploadButton(props) {
22
22
  jssStyle: jssStyle
23
23
  }, props));
24
24
  };
25
+ BaseUploadButton.displayName = 'ShineoutUploadButton';
25
26
  export default (function (props) {
26
27
  var customProps = useUploadCommon({
27
28
  rules: props.rules
@@ -22,6 +22,7 @@ var BaseUploadImage = function BaseUploadImage(props) {
22
22
  jssStyle: jssStyle
23
23
  }, props));
24
24
  };
25
+ BaseUploadImage.displayName = 'ShineoutUploadImage';
25
26
  export default (function (props) {
26
27
  var customProps = useUploadCommon({
27
28
  rules: props.rules
@@ -22,6 +22,7 @@ var BaseUpload = function BaseUpload(props) {
22
22
  jssStyle: jssStyle
23
23
  }, props));
24
24
  };
25
+ BaseUpload.displayName = 'ShineoutUpload';
25
26
  export default (function (props) {
26
27
  var customProps = useUploadCommon({
27
28
  rules: props.rules
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shineout",
3
- "version": "3.8.0-beta.9",
3
+ "version": "3.8.0",
4
4
  "description": "A components library for React",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -16,18 +16,18 @@
16
16
  "module": "./esm/index.js",
17
17
  "typings": "./cjs/index.d.ts",
18
18
  "dependencies": {
19
- "@sheinx/base": "3.8.0-beta.9",
20
- "@sheinx/hooks": "3.8.0-beta.9",
21
- "@sheinx/shineout-style": "3.8.0-beta.9",
22
- "@sheinx/theme": "3.8.0-beta.9",
19
+ "@sheinx/base": "3.8.0",
20
+ "@sheinx/hooks": "3.8.0",
21
+ "@sheinx/shineout-style": "3.8.0",
22
+ "@sheinx/theme": "3.8.0",
23
23
  "classnames": "^2.0.0",
24
- "immer": "^10.0.0",
25
- "deep-eql": "^4.0.0"
24
+ "deep-eql": "^4.0.0",
25
+ "immer": "^10.0.0"
26
26
  },
27
27
  "peerDependencies": {
28
- "react": ">=16.8",
29
- "react-dom": ">=16.8",
30
- "core-js": ">=3"
28
+ "core-js": ">=3",
29
+ "react": ">=16.14.0",
30
+ "react-dom": ">=16.14.0"
31
31
  },
32
32
  "repository": {
33
33
  "type": "git",