@nutui/nutui-react 2.0.0-alpha.15 → 2.0.0-alpha.17

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 (130) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/esm/ActionSheet/style/style.css +1 -1
  3. package/dist/esm/Button.js +4 -2
  4. package/dist/esm/DatePicker.js +54 -58
  5. package/dist/esm/Dialog/style/index.js +1 -0
  6. package/dist/esm/Dialog/style/style.css +1 -1
  7. package/dist/esm/Divider/style/style.css +1 -1
  8. package/dist/esm/Form/style/index.js +3 -1
  9. package/dist/esm/Form/style/style.css +1 -1
  10. package/dist/esm/Form.js +64 -48
  11. package/dist/esm/FormItem/style/index.js +1 -1
  12. package/dist/esm/FormItem/style/style.css +1 -1
  13. package/dist/esm/FormItem.js +1 -1
  14. package/dist/esm/InputNumber.js +7 -7
  15. package/dist/esm/Menu/style/style.css +1 -1
  16. package/dist/esm/Menu.js +5 -3
  17. package/dist/esm/MenuItem/style/style.css +1 -1
  18. package/dist/esm/MenuItem.js +31 -44
  19. package/dist/esm/NoticeBar.js +2 -2
  20. package/dist/esm/Pagination/style/style.css +1 -1
  21. package/dist/esm/Picker.js +32 -12
  22. package/dist/esm/Popover.js +10 -47
  23. package/dist/esm/Popup.js +2 -1
  24. package/dist/esm/SearchBar.js +2 -2
  25. package/dist/esm/Swipe.js +4 -6
  26. package/dist/esm/Toast.js +16 -7
  27. package/dist/esm/Uploader.js +1 -1
  28. package/dist/esm/formitem2.js +87 -69
  29. package/dist/esm/index.js +2 -2
  30. package/dist/esm/types/src/packages/button/button.d.ts +1 -0
  31. package/dist/esm/types/src/packages/datepicker/datepicker.d.ts +11 -17
  32. package/dist/esm/types/src/packages/datepicker/datepicker.taro.d.ts +11 -17
  33. package/dist/esm/types/src/packages/datepicker/index.d.ts +1 -0
  34. package/dist/esm/types/src/packages/datepicker/index.taro.d.ts +1 -0
  35. package/dist/esm/types/src/packages/elevator/elevator.d.ts +0 -1
  36. package/dist/esm/types/src/packages/elevator/elevator.taro.d.ts +0 -1
  37. package/dist/esm/types/src/packages/form/__tests__/form.spec.d.ts +1 -0
  38. package/dist/esm/types/src/packages/form/context.d.ts +4 -0
  39. package/dist/esm/types/src/packages/form/form.d.ts +11 -4
  40. package/dist/esm/types/src/packages/form/form.taro.d.ts +14 -4
  41. package/dist/esm/types/src/packages/form/index.d.ts +1 -0
  42. package/dist/esm/types/src/packages/form/index.taro.d.ts +1 -0
  43. package/dist/esm/types/src/packages/form/types.d.ts +4 -52
  44. package/dist/esm/types/src/packages/formitem/formitem.d.ts +16 -15
  45. package/dist/esm/types/src/packages/formitem/formitem.taro.d.ts +16 -12
  46. package/dist/esm/types/src/packages/formitem/index.d.ts +1 -0
  47. package/dist/esm/types/src/packages/formitem/index.taro.d.ts +1 -0
  48. package/dist/esm/types/src/packages/formitem/types.d.ts +1 -31
  49. package/dist/esm/types/src/packages/inputnumber/inputnumber.d.ts +1 -1
  50. package/dist/esm/types/src/packages/inputnumber/inputnumber.taro.d.ts +1 -1
  51. package/dist/esm/types/src/packages/nutui.react.taro.d.ts +2 -2
  52. package/dist/esm/types/src/packages/nutui.taro.react.build.d.ts +2 -2
  53. package/dist/esm/types/src/packages/picker/picker.d.ts +7 -2
  54. package/dist/esm/types/src/packages/picker/picker.taro.d.ts +7 -2
  55. package/dist/esm/types/src/packages/sticky/sticky.d.ts +0 -1
  56. package/dist/esm/types/src/packages/swipe/swipe.d.ts +2 -6
  57. package/dist/esm/types/src/packages/swipe/swipe.taro.d.ts +2 -6
  58. package/dist/esm/types/src/packages/toast/Notification.d.ts +4 -1
  59. package/dist/esm/types/src/utils/is-forward-ref-component.d.ts +1 -0
  60. package/dist/esm/use-click-away.js +43 -0
  61. package/dist/locales/base.js +1 -1
  62. package/dist/locales/en-US.js +1 -1
  63. package/dist/locales/id-ID.js +1 -1
  64. package/dist/locales/tr-TR.js +1 -1
  65. package/dist/locales/zh-CN.js +1 -1
  66. package/dist/locales/zh-TW.js +1 -1
  67. package/dist/locales/zh-UG.js +1 -1
  68. package/dist/nutui.react.es.js +453 -396
  69. package/dist/nutui.react.umd.js +453 -396
  70. package/dist/packages/actionsheet/actionsheet.scss +6 -6
  71. package/dist/packages/divider/divider.scss +8 -7
  72. package/dist/packages/formitem/formitem.scss +1 -13
  73. package/dist/packages/layout/layout.scss +0 -2
  74. package/dist/packages/menuitem/menuitem.scss +1 -1
  75. package/dist/packages/noticebar/noticebar.scss +0 -3
  76. package/dist/packages/pagination/pagination.scss +8 -30
  77. package/dist/style.css +1 -1
  78. package/dist/style.mjs +1 -1
  79. package/dist/types/packages/animate/animate.d.ts +3 -3
  80. package/dist/types/packages/audio/audio.d.ts +2 -2
  81. package/dist/types/packages/avatar/avatar.d.ts +5 -5
  82. package/dist/types/packages/avatargroup/avatargroup.d.ts +5 -5
  83. package/dist/types/packages/badge/badge.d.ts +1 -1
  84. package/dist/types/packages/button/button.d.ts +5 -4
  85. package/dist/types/packages/cascader/cascader.d.ts +4 -4
  86. package/dist/types/packages/checkboxgroup/checkboxgroup.d.ts +2 -2
  87. package/dist/types/packages/circleprogress/circleprogress.d.ts +2 -2
  88. package/dist/types/packages/datepicker/datepicker.d.ts +79 -25
  89. package/dist/types/packages/datepicker/index.d.ts +1 -0
  90. package/dist/types/packages/divider/divider.d.ts +2 -2
  91. package/dist/types/packages/drag/drag.d.ts +1 -1
  92. package/dist/types/packages/elevator/elevator.d.ts +0 -1
  93. package/dist/types/packages/empty/empty.d.ts +3 -3
  94. package/dist/types/packages/fixednav/fixednav.d.ts +3 -3
  95. package/dist/types/packages/form/context.d.ts +4 -0
  96. package/dist/types/packages/form/form.d.ts +43 -4
  97. package/dist/types/packages/form/index.d.ts +1 -0
  98. package/dist/types/packages/form/types.d.ts +4 -52
  99. package/dist/types/packages/formitem/formitem.d.ts +45 -16
  100. package/dist/types/packages/formitem/index.d.ts +1 -0
  101. package/dist/types/packages/formitem/types.d.ts +1 -31
  102. package/dist/types/packages/grid/grid.d.ts +1 -1
  103. package/dist/types/packages/infiniteloading/infiniteloading.d.ts +1 -1
  104. package/dist/types/packages/inputnumber/inputnumber.d.ts +1 -1
  105. package/dist/types/packages/noticebar/noticebar.d.ts +3 -3
  106. package/dist/types/packages/overlay/overlay.d.ts +1 -1
  107. package/dist/types/packages/pagination/pagination.d.ts +1 -1
  108. package/dist/types/packages/picker/picker.d.ts +7 -2
  109. package/dist/types/packages/popover/popover.d.ts +5 -5
  110. package/dist/types/packages/popup/popup.d.ts +2 -2
  111. package/dist/types/packages/radio/radio.d.ts +2 -2
  112. package/dist/types/packages/searchbar/searchbar.d.ts +7 -7
  113. package/dist/types/packages/step/step.d.ts +3 -3
  114. package/dist/types/packages/steps/steps.d.ts +1 -1
  115. package/dist/types/packages/sticky/sticky.d.ts +1 -2
  116. package/dist/types/packages/swipe/swipe.d.ts +2 -6
  117. package/dist/types/packages/swiper/swiper.d.ts +1 -1
  118. package/dist/types/packages/tabs/tabs.d.ts +1 -1
  119. package/dist/types/packages/tag/tag.d.ts +1 -1
  120. package/dist/types/packages/timeselect/timeselect.d.ts +2 -2
  121. package/dist/types/packages/toast/Notification.d.ts +4 -1
  122. package/dist/types/packages/toast/toast.d.ts +50 -10
  123. package/dist/types/packages/uploader/uploader.d.ts +17 -17
  124. package/dist/types/utils/is-forward-ref-component.d.ts +1 -0
  125. package/package.json +1 -1
  126. package/dist/esm/types/src/packages/formitem/formitemcontext.d.ts +0 -6
  127. package/dist/types/packages/formitem/formitemcontext.d.ts +0 -6
  128. /package/dist/esm/types/src/packages/form/{useForm.d.ts → useform.d.ts} +0 -0
  129. /package/dist/esm/types/src/packages/form/{useForm.taro.d.ts → useform.taro.d.ts} +0 -0
  130. /package/dist/types/packages/form/{useForm.d.ts → useform.d.ts} +0 -0
@@ -1,27 +1,21 @@
1
1
  import React, { FunctionComponent } from 'react';
2
- export interface PickerOption {
3
- text: string | number;
4
- value: string | number;
5
- disabled?: boolean;
6
- children?: PickerOption[];
7
- className?: string | number;
8
- }
9
- export interface DatePickerProps {
10
- modelValue: Date | null;
2
+ import { PickerOption } from '@/packages/picker/index';
3
+ import { BasicComponent } from '@/utils/typings';
4
+ export interface DatePickerProps extends BasicComponent {
5
+ value?: Date | null;
6
+ defaultValue?: Date | null;
11
7
  visible: boolean;
12
8
  title: string;
13
9
  type: 'date' | 'time' | 'year-month' | 'month-day' | 'datehour' | 'datetime' | 'hour-minutes';
14
- isShowChinese: boolean;
10
+ showChinese: boolean;
15
11
  minuteStep: number;
16
- minDate: Date;
17
- maxDate: Date;
12
+ startDate: Date;
13
+ endDate: Date;
18
14
  threeDimensional: boolean;
19
- className?: string;
20
- style?: React.CSSProperties;
21
15
  formatter: (type: string, option: PickerOption) => PickerOption;
22
16
  filter: (type: string, option: PickerOption[]) => PickerOption[];
23
- onCloseDatePicker: () => void;
24
- onConfirmDatePicker: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
17
+ onClose: () => void;
18
+ onConfirm: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
25
19
  onChange?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], columnIndex: number) => void;
26
20
  }
27
- export declare const DatePicker: FunctionComponent<Partial<DatePickerProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'>>;
21
+ export declare const DatePicker: FunctionComponent<Partial<DatePickerProps> & Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'defaultValue'>>;
@@ -1,2 +1,3 @@
1
1
  import { DatePicker } from './datepicker';
2
+ export type { DatePickerProps } from './datepicker';
2
3
  export default DatePicker;
@@ -1,2 +1,3 @@
1
1
  import { DatePicker } from './datepicker.taro';
2
+ export type { DatePickerProps } from './datepicker.taro';
2
3
  export default DatePicker;
@@ -9,7 +9,6 @@ export interface ElevatorProps extends BasicComponent {
9
9
  spaceHeight: number;
10
10
  titleHeight: number;
11
11
  showKeys: boolean;
12
- children: React.ReactNode;
13
12
  onClickItem: (key: string, item: ElevatorData) => void;
14
13
  onClickIndex: (key: string) => void;
15
14
  }
@@ -9,7 +9,6 @@ export interface ElevatorProps extends BasicComponent {
9
9
  spaceHeight: number;
10
10
  titleHeight: number;
11
11
  showKeys: boolean;
12
- children: React.ReactNode;
13
12
  onClickItem: (key: string, item: ElevatorData) => void;
14
13
  onClickIndex: (key: string) => void;
15
14
  }
@@ -0,0 +1 @@
1
+ import '@testing-library/jest-dom';
@@ -0,0 +1,4 @@
1
+ /// <reference types="react" />
2
+ export declare const Context: import("react").Context<{
3
+ [key: string]: any;
4
+ }>;
@@ -1,9 +1,16 @@
1
- import React, { FunctionComponent } from 'react';
2
- import { useForm } from './useForm';
1
+ import React, { FunctionComponent, ReactNode } from 'react';
2
+ import { useForm } from './useform';
3
3
  import { BasicComponent } from '@/utils/typings';
4
4
  import { FormItem } from '../formitem/formitem';
5
- import { BaseForm } from './types';
6
- export interface FormProps extends BasicComponent, BaseForm {
5
+ export interface FormProps extends BasicComponent {
6
+ footer: ReactNode;
7
+ initialValues: any;
8
+ name: string;
9
+ form: any;
10
+ labelPosition: 'top' | 'left' | 'right';
11
+ starPosition: 'left' | 'right';
12
+ onFinish: (values: any) => void;
13
+ onFinishFailed: (values: any, errorFields: any) => void;
7
14
  }
8
15
  export declare const Form: FunctionComponent<Partial<FormProps> & React.HTMLAttributes<HTMLFormElement>> & {
9
16
  Item: typeof FormItem;
@@ -1,9 +1,19 @@
1
- import React, { FunctionComponent } from 'react';
1
+ import React, { FunctionComponent, ReactNode } from 'react';
2
2
  import { BasicComponent } from '@/utils/typings';
3
- import FormItem from '@/packages/formitem/index.taro';
4
- import { BaseForm } from './types';
5
- export interface FormProps extends BasicComponent, BaseForm {
3
+ import { useForm } from './useform.taro';
4
+ import { FormItem } from '../formitem/formitem.taro';
5
+ export interface FormProps extends BasicComponent {
6
+ footer: ReactNode;
7
+ initialValues: any;
8
+ name: string;
9
+ form: any;
10
+ labelPosition: 'top' | 'left' | 'right';
11
+ starPosition: 'left' | 'right';
12
+ onFinish: (values: any) => void;
13
+ onFinishFailed: (values: any, errorFields: any) => void;
6
14
  }
7
15
  export declare const Form: FunctionComponent<Partial<FormProps> & React.HTMLAttributes<HTMLFormElement>> & {
8
16
  Item: typeof FormItem;
17
+ } & {
18
+ useForm: typeof useForm;
9
19
  };
@@ -1,2 +1,3 @@
1
1
  import { Form } from './form';
2
+ export type { FormItemRuleWithoutValidator, StoreValue, NamePath, FormInstance, FieldEntity, } from './types';
2
3
  export default Form;
@@ -1,2 +1,3 @@
1
1
  import { Form } from './form.taro';
2
+ export type { FormItemRuleWithoutValidator, StoreValue, NamePath, FormInstance, FieldEntity, } from './types';
2
3
  export default Form;
@@ -1,63 +1,18 @@
1
- export interface BaseForm {
2
- /**
3
- * 经 Form.useForm() 创建的 form 控制实例,不提供时会自动创建
4
- */
5
- form: any;
6
- /**
7
- * label的位置
8
- * 可选值 top/left/right
9
- */
10
- labelPosition: string | number;
11
- /**
12
- * 表单分组名称
13
- */
14
- formGroupTitle: string;
15
- starPositon: string;
16
- /**
17
- * 表单校验成功回调
18
- */
19
- onFinish: (obj: object) => void;
20
- /**
21
- * 表单校验失败回调
22
- */
23
- onFinishFailed: (value: []) => void;
24
- }
25
1
  export interface FormItemRuleWithoutValidator {
26
2
  [key: string]: any;
27
3
  regex?: RegExp;
28
4
  required?: boolean;
29
5
  message?: string;
30
6
  }
31
- export interface FormItemRule extends FormItemRuleWithoutValidator {
32
- validator?: (value: any, ruleCfg: FormItemRuleWithoutValidator) => boolean | string | Promise<boolean | string>;
33
- }
34
- export interface BaseFormField {
35
- /**
36
- * 字段名
37
- */
38
- name: string;
39
- /**
40
- * label 标签的文本
41
- */
42
- label: string;
43
- /**
44
- * 校验规则,设置字段的校验逻辑
45
- */
46
- rules: FormItemRule[];
47
- /**
48
- * 是否禁用表单项
49
- */
50
- disabled: boolean;
51
- }
52
- export type StoreValue = string | number;
7
+ export type StoreValue = any;
53
8
  export type NamePath = string | number;
54
9
  export interface Callbacks<Values = any> {
55
10
  onValuesChange?: (values: Values) => void;
56
11
  onFinish?: (values: Values) => void;
57
- onFinishFailed?: (Values: Values) => void;
12
+ onFinishFailed?: (values: Values, errorFields: any) => void;
58
13
  }
59
14
  export interface Store {
60
- [name: string]: StoreValue;
15
+ [name: string]: any;
61
16
  }
62
17
  export interface FormInstance<Values = any> {
63
18
  registerField: (entity: FieldEntity) => () => void;
@@ -68,7 +23,7 @@ export interface FormInstance<Values = any> {
68
23
  setCallback: (callbacks: Callbacks) => void;
69
24
  }
70
25
  export interface FieldEntity {
71
- onStoreChange: () => void;
26
+ onStoreChange: (type?: string) => void;
72
27
  getNamePath: () => NamePath;
73
28
  props: {
74
29
  name: NamePath;
@@ -77,6 +32,3 @@ export interface FieldEntity {
77
32
  initialValue?: any;
78
33
  };
79
34
  }
80
- export interface IDescriptor {
81
- [name: string]: string;
82
- }
@@ -1,33 +1,34 @@
1
1
  import React from 'react';
2
2
  import { BaseFormField } from './types';
3
- import { FormItemContext } from './formitemcontext';
3
+ import { Context } from '../form/context';
4
4
  import { BasicComponent } from '@/utils/typings';
5
5
  type TextAlign = 'start' | 'end' | 'left' | 'right' | 'center' | 'justify' | 'match-parent';
6
6
  export interface FormItemProps extends BasicComponent, BaseFormField {
7
- labelWidth: string | number;
7
+ required: boolean;
8
+ initialValue: any;
9
+ trigger: string;
10
+ valuePropName: string;
11
+ getValueFromEvent: (...args: any) => any;
12
+ onClick: (event: React.MouseEvent, componentRef: React.MutableRefObject<any>) => void;
8
13
  errorMessageAlign: TextAlign;
9
- showErrorLine: boolean;
10
- showErrorMessage: boolean;
11
- initialValue: string;
12
14
  }
13
15
  declare const defaultProps: FormItemProps;
14
16
  export type FieldProps = typeof defaultProps & Partial<BaseFormField>;
15
- export declare class FormItem extends React.Component<FieldProps> {
17
+ export declare class FormItem extends React.Component<FieldProps, {
18
+ resetCount: number;
19
+ }> {
16
20
  static defaultProps: FormItemProps;
17
21
  static contextType: any;
18
- context: React.ContextType<typeof FormItemContext>;
22
+ context: React.ContextType<typeof Context>;
19
23
  private cancelRegister;
20
- private isInitialValue;
24
+ private componentRef;
25
+ constructor(props: FieldProps);
21
26
  componentDidMount(): void;
22
27
  componentWillUnmount(): void;
23
- getControlled: (children: React.ReactElement) => {
24
- value: any;
25
- defaultValue: any;
26
- onChange: (event: React.ChangeEvent<HTMLInputElement> | number | string | string[]) => void;
27
- };
28
- onStoreChange: () => void;
28
+ getControlled: (children: React.ReactElement) => any;
29
+ refresh: () => void;
30
+ onStoreChange: (type?: string) => void;
29
31
  renderLayout: (childNode: React.ReactNode) => JSX.Element;
30
- pxCheck: (value: string | number) => string;
31
32
  render(): JSX.Element;
32
33
  }
33
34
  export {};
@@ -1,30 +1,34 @@
1
1
  import React from 'react';
2
2
  import { BaseFormField } from './types';
3
- import { FormItemContext } from './formitemcontext';
3
+ import { Context } from '../form/context';
4
4
  import { BasicComponent } from '@/utils/typings';
5
5
  type TextAlign = 'start' | 'end' | 'left' | 'right' | 'center' | 'justify' | 'match-parent';
6
6
  export interface FormItemProps extends BasicComponent, BaseFormField {
7
- labelWidth: string | number;
7
+ required: boolean;
8
+ initialValue: any;
9
+ trigger: string;
10
+ valuePropName: string;
11
+ getValueFromEvent: (...args: any) => any;
12
+ onClick: (event: React.MouseEvent, componentRef: React.MutableRefObject<any>) => void;
8
13
  errorMessageAlign: TextAlign;
9
- showErrorLine: boolean;
10
- showErrorMessage: boolean;
11
14
  }
12
15
  declare const defaultProps: FormItemProps;
13
16
  export type FieldProps = typeof defaultProps & Partial<BaseFormField>;
14
- export declare class FormItem extends React.Component<FieldProps> {
17
+ export declare class FormItem extends React.Component<FieldProps, {
18
+ resetCount: number;
19
+ }> {
15
20
  static defaultProps: FormItemProps;
16
21
  static contextType: any;
17
- context: React.ContextType<typeof FormItemContext>;
22
+ context: React.ContextType<typeof Context>;
18
23
  private cancelRegister;
24
+ private componentRef;
25
+ constructor(props: FieldProps);
19
26
  componentDidMount(): void;
20
27
  componentWillUnmount(): void;
21
- getControlled: (children: React.ReactElement) => {
22
- value: any;
23
- onChange: (event: React.ChangeEvent<HTMLInputElement> | number | string | string[]) => void;
24
- };
25
- onStoreChange: () => void;
28
+ getControlled: (children: React.ReactElement) => any;
29
+ refresh: () => void;
30
+ onStoreChange: (type?: string) => void;
26
31
  renderLayout: (childNode: React.ReactNode) => JSX.Element;
27
- pxCheck: (value: string | number) => string;
28
32
  render(): JSX.Element;
29
33
  }
30
34
  export {};
@@ -1,2 +1,3 @@
1
1
  import { FormItem } from './formitem';
2
+ export type { FormItemRuleWithoutValidator, FormItemRule, FormInstance, } from './types';
2
3
  export default FormItem;
@@ -1,2 +1,3 @@
1
1
  import { FormItem } from './formitem.taro';
2
+ export type { FormItemRuleWithoutValidator, FormItemRule, FormInstance, } from './types';
2
3
  export default FormItem;
@@ -1,27 +1,3 @@
1
- export interface BaseForm {
2
- /**
3
- * 经 Form.useForm() 创建的 form 控制实例,不提供时会自动创建
4
- */
5
- form: any;
6
- /**
7
- * label的位置
8
- * 可选值 top/left/right
9
- */
10
- labelPosition: string | number;
11
- /**
12
- * 表单分组名称
13
- */
14
- formGroupTitle: string;
15
- starPositon: string;
16
- /**
17
- * 表单校验成功回调
18
- */
19
- onFinish: (obj: object) => void;
20
- /**
21
- * 表单校验失败回调
22
- */
23
- onFinishFailed: (value: []) => void;
24
- }
25
1
  export interface FormItemRuleWithoutValidator {
26
2
  [key: string]: any;
27
3
  regex?: RegExp;
@@ -49,16 +25,13 @@ export interface BaseFormField {
49
25
  */
50
26
  disabled: boolean;
51
27
  }
52
- export type StoreValue = string | number;
28
+ export type StoreValue = any;
53
29
  export type NamePath = string | number;
54
30
  export interface Callbacks<Values = any> {
55
31
  onValuesChange?: (values: Values) => void;
56
32
  onFinish?: (values: Values) => void;
57
33
  onFinishFailed?: (Values: Values) => void;
58
34
  }
59
- export interface Store {
60
- [name: string]: StoreValue;
61
- }
62
35
  export interface FormInstance<Values = any> {
63
36
  registerField: (entity: FieldEntity) => () => void;
64
37
  getFieldValue: (name: NamePath) => StoreValue;
@@ -77,6 +50,3 @@ export interface FieldEntity {
77
50
  initialValue?: any;
78
51
  };
79
52
  }
80
- export interface IDescriptor {
81
- [name: string]: string;
82
- }
@@ -4,7 +4,7 @@ export interface InputNumberProps extends BasicComponent {
4
4
  disabled: boolean;
5
5
  min: string | number;
6
6
  max: string | number;
7
- readonly: boolean;
7
+ readOnly: boolean;
8
8
  value: string | number;
9
9
  defaultValue: string | number;
10
10
  allowEmpty: boolean;
@@ -4,7 +4,7 @@ export interface InputNumberProps extends BasicComponent {
4
4
  disabled: boolean;
5
5
  min: string | number;
6
6
  max: string | number;
7
- readonly: boolean;
7
+ readOnly: boolean;
8
8
  value: string | number;
9
9
  defaultValue: string | number;
10
10
  allowEmpty: boolean;
@@ -52,7 +52,7 @@ import Badge from '@/packages/badge/index.taro';
52
52
  import Dialog from '@/packages/dialog/index.taro';
53
53
  import Drag from '@/packages/drag/index.taro';
54
54
  import Empty from '@/packages/empty/index.taro';
55
- import Infiniteloading from '@/packages/infiniteloading/index.taro';
55
+ import InfiniteLoading from '@/packages/infiniteloading/index.taro';
56
56
  import NoticeBar from '@/packages/noticebar/index.taro';
57
57
  import Notify from '@/packages/notify/index.taro';
58
58
  import Popover from '@/packages/popover/index.taro';
@@ -182,4 +182,4 @@ import '@/packages/timedetail/timedetail.scss';
182
182
  import '@/packages/timeselect/timeselect.scss';
183
183
  import '@/packages/trendarrow/trendarrow.scss';
184
184
  import '@/packages/watermark/watermark.scss';
185
- export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, Infiniteloading, NoticeBar, Notify, Popover, PullToRefresh, Skeleton, Swipe, Popup, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, VirtualList, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Video, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
185
+ export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, NoticeBar, Notify, Popover, PullToRefresh, Skeleton, Swipe, Popup, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, VirtualList, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Video, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
@@ -52,7 +52,7 @@ import Badge from '@/packages/badge/index.taro';
52
52
  import Dialog from '@/packages/dialog/index.taro';
53
53
  import Drag from '@/packages/drag/index.taro';
54
54
  import Empty from '@/packages/empty/index.taro';
55
- import Infiniteloading from '@/packages/infiniteloading/index.taro';
55
+ import InfiniteLoading from '@/packages/infiniteloading/index.taro';
56
56
  import NoticeBar from '@/packages/noticebar/index.taro';
57
57
  import Notify from '@/packages/notify/index.taro';
58
58
  import Popover from '@/packages/popover/index.taro';
@@ -90,4 +90,4 @@ import TimeDetail from '@/packages/timedetail/index.taro';
90
90
  import TimeSelect from '@/packages/timeselect/index.taro';
91
91
  import TrendArrow from '@/packages/trendarrow/index.taro';
92
92
  import WaterMark from '@/packages/watermark/index.taro';
93
- export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, Infiniteloading, NoticeBar, Notify, Popover, PullToRefresh, Skeleton, Swipe, Popup, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, VirtualList, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Video, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
93
+ export { Button, Cell, CellGroup, ConfigProvider, Image, Overlay, Col, Divider, Grid, GridItem, Layout, Row, Sticky, BackTop, Elevator, FixedNav, NavBar, SideNavBar, SideNavBarItem, SubSideNavBar, Tabbar, TabbarItem, TabPane, Tabs, Address, Calendar, CalendarItem, Cascader, Checkbox, CheckboxGroup, DatePicker, Form, FormItem, Input, InputNumber, Menu, MenuItem, NumberKeyboard, Picker, Radio, RadioGroup, Range, Rate, SearchBar, ShortPassword, Signature, Switch, TextArea, Uploader, ActionSheet, Badge, Dialog, Drag, Empty, InfiniteLoading, NoticeBar, Notify, Popover, PullToRefresh, Skeleton, Swipe, Popup, Toast, Animate, AnimatingNumbers, Audio, Avatar, AvatarGroup, CircleProgress, Collapse, CollapseItem, CountDown, Ellipsis, ImagePreview, Indicator, VirtualList, Pagination, Price, Progress, Step, Steps, Swiper, SwiperItem, Table, Tag, Video, Barrage, Card, TimeDetail, TimeSelect, TrendArrow, WaterMark };
@@ -1,8 +1,12 @@
1
1
  import React, { RefObject } from 'react';
2
2
  import { PickerOption } from './types';
3
3
  import { BasicComponent } from '@/utils/typings';
4
- export interface PickerProps extends BasicComponent {
5
- visible: boolean;
4
+ export type PickerActions = {
5
+ open: () => void;
6
+ close: () => void;
7
+ };
8
+ export interface PickerProps extends Omit<BasicComponent, 'children'> {
9
+ visible?: boolean | undefined;
6
10
  title?: string;
7
11
  options: (PickerOption | PickerOption[])[];
8
12
  value?: (number | string)[];
@@ -13,6 +17,7 @@ export interface PickerProps extends BasicComponent {
13
17
  onClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
14
18
  afterClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], pickerRef: RefObject<HTMLDivElement>) => void;
15
19
  onChange?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], columnIndex: number) => void;
20
+ children?: any;
16
21
  }
17
22
  declare const Picker: React.ForwardRefExoticComponent<Partial<PickerProps> & React.RefAttributes<unknown>>;
18
23
  export default Picker;
@@ -1,8 +1,12 @@
1
1
  import React, { RefObject } from 'react';
2
2
  import { PickerOption } from './types';
3
3
  import { BasicComponent } from '@/utils/typings';
4
- export interface PickerProps extends BasicComponent {
5
- visible: boolean;
4
+ export type PickerActions = {
5
+ open: () => void;
6
+ close: () => void;
7
+ };
8
+ export interface PickerProps extends Omit<BasicComponent, 'children'> {
9
+ visible?: boolean | undefined;
6
10
  title?: string;
7
11
  options: (PickerOption | PickerOption[])[];
8
12
  value?: (number | string)[];
@@ -13,6 +17,7 @@ export interface PickerProps extends BasicComponent {
13
17
  onClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[]) => void;
14
18
  afterClose?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], pickerRef: RefObject<HTMLDivElement>) => void;
15
19
  onChange?: (selectedOptions: PickerOption[], selectedValue: (string | number)[], columnIndex: number) => void;
20
+ children?: any;
16
21
  }
17
22
  declare const Picker: React.ForwardRefExoticComponent<Partial<PickerProps> & React.RefAttributes<unknown>>;
18
23
  export default Picker;
@@ -5,7 +5,6 @@ export interface StickyProps extends BasicComponent {
5
5
  position: 'top' | 'bottom';
6
6
  threshold: number;
7
7
  zIndex: number;
8
- children: React.ReactNode;
9
8
  onChange: (val: boolean) => void;
10
9
  }
11
10
  export declare const Sticky: FunctionComponent<Partial<StickyProps>>;
@@ -1,14 +1,11 @@
1
1
  import React from 'react';
2
+ import { BasicComponent } from '@/utils/typings';
2
3
  export type SwipeSide = 'left' | 'right';
3
4
  export interface SwipeInstance {
4
5
  open: (side: SwipeSide) => void;
5
6
  close: () => void;
6
7
  }
7
- export interface SwipeProps {
8
- /** 自定义类名 */
9
- className: string;
10
- /** 自定义样式 */
11
- style: React.CSSProperties;
8
+ export interface SwipeProps extends BasicComponent {
12
9
  /** 标识符,可以在事件参数中获取到 */
13
10
  name?: string | number;
14
11
  /** 左侧滑动区域的内容 */
@@ -34,6 +31,5 @@ export interface SwipeProps {
34
31
  onTouchStart?: (event: Event) => void;
35
32
  onTouchEnd?: (event: Event) => void;
36
33
  onTouchMove?: (event: Event) => void;
37
- children?: React.ReactNode;
38
34
  }
39
35
  export declare const Swipe: React.ForwardRefExoticComponent<Partial<SwipeProps> & Omit<React.HTMLAttributes<HTMLDivElement>, "onTouchEnd" | "onTouchMove" | "onTouchStart"> & React.RefAttributes<SwipeInstance>>;
@@ -1,14 +1,11 @@
1
1
  import React from 'react';
2
+ import { BasicComponent } from '@/utils/typings';
2
3
  export type SwipeSide = 'left' | 'right';
3
4
  export interface SwipeInstance {
4
5
  open: (side: SwipeSide) => void;
5
6
  close: () => void;
6
7
  }
7
- export interface SwipeProps {
8
- /** 自定义类名 */
9
- className: string;
10
- /** 自定义样式 */
11
- style: React.CSSProperties;
8
+ export interface SwipeProps extends BasicComponent {
12
9
  /** 标识符,可以在事件参数中获取到 */
13
10
  name?: string | number;
14
11
  /** 左侧滑动区域的内容 */
@@ -34,6 +31,5 @@ export interface SwipeProps {
34
31
  onTouchStart?: (event: Event) => void;
35
32
  onTouchEnd?: (event: Event) => void;
36
33
  onTouchMove?: (event: Event) => void;
37
- children?: React.ReactNode;
38
34
  }
39
35
  export declare const Swipe: React.ForwardRefExoticComponent<Partial<SwipeProps> & Omit<React.HTMLAttributes<HTMLDivElement>, "onTouchEnd" | "onTouchMove" | "onTouchStart"> & React.RefAttributes<SwipeInstance>>;
@@ -13,7 +13,10 @@ export interface NotificationProps extends BasicComponent {
13
13
  contentStyle?: React.CSSProperties;
14
14
  onClose: () => void;
15
15
  }
16
- export default class Notification extends React.PureComponent<NotificationProps> {
16
+ export interface NotificationState {
17
+ show: boolean;
18
+ }
19
+ export default class Notification extends React.PureComponent<NotificationProps, NotificationState> {
17
20
  static newInstance: (properties: NotificationProps, callback: any) => void;
18
21
  private closeTimer;
19
22
  constructor(props: NotificationProps);
@@ -0,0 +1 @@
1
+ export declare function isForwardRefComponent(component: any): any;
@@ -0,0 +1,43 @@
1
+ import { useEffect } from "react";
2
+ import { i as isFunction } from "./index.js";
3
+ var getTargetElement = function getTargetElement2(target) {
4
+ var targetElement;
5
+ if (isFunction(target)) {
6
+ targetElement = target();
7
+ } else if ("current" in target) {
8
+ targetElement = target.current;
9
+ } else {
10
+ targetElement = target;
11
+ }
12
+ return targetElement;
13
+ };
14
+ function useClickAway(onClickAway, target) {
15
+ var eventName = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "click";
16
+ var isListener = arguments.length > 3 ? arguments[3] : void 0;
17
+ var outerVar = arguments.length > 4 ? arguments[4] : void 0;
18
+ var handler = function handler2(event) {
19
+ var targets = Array.isArray(target) ? target : [target];
20
+ if (targets.some(function(item) {
21
+ var targetElement = getTargetElement(item);
22
+ return !targetElement || targetElement.contains(event.target);
23
+ })) {
24
+ return;
25
+ }
26
+ if (outerVar) {
27
+ onClickAway();
28
+ }
29
+ };
30
+ useEffect(function() {
31
+ if (isListener) {
32
+ window.addEventListener(eventName, handler, false);
33
+ } else {
34
+ window.removeEventListener(eventName, handler, false);
35
+ }
36
+ return function() {
37
+ window.removeEventListener(eventName, handler, true);
38
+ };
39
+ }, [target]);
40
+ }
41
+ export {
42
+ useClickAway as u
43
+ };
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.0.0-alpha.15 Wed Jun 07 2023 16:12:40 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.0.0-alpha.17 Wed Jun 14 2023 16:28:09 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.0.0-alpha.15 Wed Jun 07 2023 16:12:40 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.0.0-alpha.17 Wed Jun 14 2023 16:28:09 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.0.0-alpha.15 Wed Jun 07 2023 16:12:40 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.0.0-alpha.17 Wed Jun 14 2023 16:28:09 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.0.0-alpha.15 Wed Jun 07 2023 16:12:40 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.0.0-alpha.17 Wed Jun 14 2023 16:28:09 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v2.0.0-alpha.15 Wed Jun 07 2023 16:12:40 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v2.0.0-alpha.17 Wed Jun 14 2023 16:28:09 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */