@nutui/nutui-react 1.4.7 → 1.4.8

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 (64) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/esm/Badge.js +1 -0
  3. package/dist/esm/Barrage.js +17 -7
  4. package/dist/esm/Cascader.js +17 -21
  5. package/dist/esm/Checkbox.js +2 -2
  6. package/dist/esm/CheckboxGroup.js +13 -7
  7. package/dist/esm/Col.js +2 -1
  8. package/dist/esm/Dialog.js +19 -7
  9. package/dist/esm/Ellipsis.js +4 -2
  10. package/dist/esm/Form.js +36 -17
  11. package/dist/esm/FormItem.js +2 -2
  12. package/dist/esm/InputNumber.js +10 -8
  13. package/dist/esm/Popover.js +2 -2
  14. package/dist/esm/Row.js +2 -1
  15. package/dist/esm/ShortPassword.js +4 -1
  16. package/dist/esm/Switch.js +3 -2
  17. package/dist/esm/TabPane.js +2 -2
  18. package/dist/esm/Tabbar.js +12 -7
  19. package/dist/esm/Tabs.js +2 -2
  20. package/dist/esm/{checkbox-255983fc.js → checkbox-b2f0756e.js} +0 -2
  21. package/dist/esm/{formitem-bab4c481.js → formitem-4b58943b.js} +6 -4
  22. package/dist/esm/{tabpane-9b8ca8a8.js → tabpane-15f62234.js} +4 -3
  23. package/dist/esm/{tabs-ee05fd2f.js → tabs-5fe5fd90.js} +13 -11
  24. package/dist/esm/types/src/packages/cascader/cascader.d.ts +1 -0
  25. package/dist/esm/types/src/packages/cascader/cascaderItem.d.ts +1 -0
  26. package/dist/esm/types/src/packages/checkbox/demo.d.ts +0 -1
  27. package/dist/esm/types/src/packages/checkboxgroup/checkboxgroup.d.ts +5 -0
  28. package/dist/esm/types/src/packages/dialog/DialogWrap.d.ts +1 -1
  29. package/dist/esm/types/src/packages/dialog/index.taro.d.ts +2 -2
  30. package/dist/esm/types/src/packages/form/form.d.ts +3 -0
  31. package/dist/esm/types/src/packages/formitem/formitem.d.ts +2 -1
  32. package/dist/esm/types/src/packages/formitem/types.d.ts +1 -1
  33. package/dist/esm/types/src/packages/shortpassword/shortpassword.d.ts +1 -0
  34. package/dist/esm/types/src/packages/switch/switch.d.ts +2 -1
  35. package/dist/esm/types/src/packages/tabbar/tabbar.d.ts +1 -1
  36. package/dist/esm/types/src/packages/tabbar/use-props-value.d.ts +7 -0
  37. package/dist/esm/types/src/packages/tabs/tabs.d.ts +1 -0
  38. package/dist/locales/base.js +1 -1
  39. package/dist/locales/en-US.js +1 -1
  40. package/dist/locales/id-ID.js +1 -1
  41. package/dist/locales/zh-CN.js +1 -1
  42. package/dist/locales/zh-TW.js +1 -1
  43. package/dist/locales/zh-UG.js +1 -1
  44. package/dist/nutui.react.es.js +148 -70
  45. package/dist/nutui.react.umd.js +148 -70
  46. package/dist/packages/badge/badge.scss +11 -5
  47. package/dist/packages/barrage/barrage.scss +3 -3
  48. package/dist/packages/button/button.scss +1 -0
  49. package/dist/packages/cascader/cascader.scss +19 -5
  50. package/dist/packages/checkboxgroup/checkboxgroup.scss +33 -0
  51. package/dist/packages/collapseitem/collapseitem.scss +41 -17
  52. package/dist/packages/form/form.scss +3 -0
  53. package/dist/packages/inputnumber/inputnumber.scss +18 -1
  54. package/dist/packages/popover/popover.scss +71 -46
  55. package/dist/packages/radiogroup/radiogroup.scss +9 -8
  56. package/dist/packages/step/step.scss +135 -98
  57. package/dist/packages/switch/switch.scss +1 -1
  58. package/dist/packages/tabs/tabs.scss +24 -2
  59. package/dist/packages/textarea/textarea.scss +7 -1
  60. package/dist/style.css +1 -1
  61. package/dist/style.es.js +1 -1
  62. package/dist/styles/variables.scss +155 -33
  63. package/dist/types/index.d.ts +70 -33
  64. package/package.json +1 -1
package/dist/style.es.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @nutui/nutui-react v1.4.7 Wed Feb 15 2023 16:22:14 GMT+0800 (China Standard Time)
2
+ * @nutui/nutui-react v1.4.8 Wed Feb 22 2023 16:48:10 GMT+0800 (China Standard Time)
3
3
  * (c) 2023 @jdf2e.
4
4
  * Released under the MIT License.
5
5
  */
@@ -118,6 +118,7 @@ $button-default-border-color: var(
118
118
  rgba(204, 204, 204, 1)
119
119
  ) !default;
120
120
  $button-default-color: var(--nutui-button-default-color, $gray1) !default;
121
+ $button-plain-color: var(--nutui-button-plain-color, $gray2) !default;
121
122
  $button-default-padding: var(--nutui-button-default-padding, 0 18px) !default;
122
123
  $button-mini-padding: var(--nutui-button-mini-padding, 0 12px) !default;
123
124
  $button-small-padding: var(--nutui-button-small-padding, 0 12px) !default;
@@ -411,15 +412,36 @@ $input-padding: var(--nutui-input-padding, 10px 25px) !default;
411
412
 
412
413
  $textarea-font: var(--nutui-textarea-font, $font-size-2) !default;
413
414
  $textarea-height: var(--nutui-textarea-height, 100px) !default;
415
+ $textarea-padding: var(--nutui-textarea-padding, 16px 10px 16px 16px) !default;
414
416
  $textarea-limit-color: var(--nutui-textarea-limit-color, $text-color) !default;
415
417
  $textarea-text-color: var(--nutui-textarea-text-color, $title-color) !default;
418
+ $textarea-text-curror-color: var(
419
+ --nutui-textarea-text-curror-color,
420
+ '$title-color'
421
+ ) !default;
422
+ $textarea-text-line-height: var(
423
+ --nutui-textarea-text-line-height,
424
+ 30px
425
+ ) !default;
416
426
  $textarea-disabled-color: var(
417
427
  --nutui-textarea-disabled-color,
418
428
  $disable-color
419
429
  ) !default;
420
430
 
421
431
  // inputnumber(✅)
422
-
432
+ $inputnumber-button-width: var(--nutui-inputnumber-button-width, 12px) !default;
433
+ $inputnumber-button-height: var(
434
+ --nutui-inputnumber-button-height,
435
+ 12px
436
+ ) !default;
437
+ $inputnumber-button-border-radius: var(
438
+ --nutui-inputnumber-button-border-radius,
439
+ 30px
440
+ ) !default;
441
+ $inputnumber-button-background-color: var(
442
+ --nutui-inputnumber-button-background-color,
443
+ $gray6
444
+ ) !default;
423
445
  $inputnumber-icon-color: var(
424
446
  --nutui-inputnumber-icon-color,
425
447
  $title-color
@@ -450,6 +472,7 @@ $inputnumber-input-border-radius: var(
450
472
  4px
451
473
  ) !default;
452
474
  $inputnumber-input-width: var(--nutui-inputnumber-input-width, 40px) !default;
475
+ $inputnumber-input-height: var(--nutui-inputnumber-input-height, 24px) !default;
453
476
  $inputnumber-input-margin: var(
454
477
  --nutui-inputnumber-input-margin,
455
478
  0 6px
@@ -637,8 +660,8 @@ $avatar-normal-height: var(--nutui-avatar-normal-height, 40px) !default;
637
660
 
638
661
  //switch(✅)
639
662
  $switch-close-bg-color: var(--nutui-switch-close-bg-color, #ebebeb) !default;
640
- $switch-close--cline-bg-color: var(
641
- --nutui-switch-close--cline-bg-color,
663
+ $switch-close--line-bg-color: var(
664
+ --nutui-switch-close--line-bg-color,
642
665
  #f0f0f0
643
666
  ) !default;
644
667
  $switch-width: var(--nutui-switch-width, 36px) !default;
@@ -900,15 +923,24 @@ $steps-base-icon-line-height: var(
900
923
  --nutui-steps-base-icon-line-height,
901
924
  25px
902
925
  ) !default;
926
+ $steps-base-icon-margin-bottom: var(
927
+ --nutui-steps-base-icon-margin-bottom,
928
+ 12px
929
+ ) !default;
903
930
  $steps-base-icon-font-size: var(
904
931
  --nutui-steps-base-icon-font-size,
905
932
  13px
906
933
  ) !default;
934
+ $steps-base-line-width: var(--nutui-steps-base-line-width, 100%) !default;
935
+ $steps-base-line-height: var(--nutui-steps-base-line-height, 1px) !default;
936
+ $steps-base-line-background: var(
937
+ --nutui-steps-base-line-background,
938
+ #909ca4
939
+ ) !default;
907
940
  $steps-base-title-font-size: var(
908
941
  --nutui-steps-base-title-font-size,
909
942
  14px
910
943
  ) !default;
911
- $steps-base-line-color: var(--nutui-steps-base-line-color, #909ca4) !default;
912
944
  $steps-base-title-color: var(
913
945
  --nutui-steps-base-title-color,
914
946
  $title-color
@@ -919,7 +951,7 @@ $steps-base-title-margin-bottom: var(
919
951
  ) !default;
920
952
  $steps-base-content-font-size: var(
921
953
  --nutui-steps-base-content-font-size,
922
- 14px
954
+ 12px
923
955
  ) !default;
924
956
  $steps-base-content-color: var(
925
957
  --nutui-steps-base-content-color,
@@ -936,49 +968,84 @@ $steps-wait-head-border-color: var(
936
968
  --nutui-steps-wait-head-border-color,
937
969
  #909ca4
938
970
  ) !default;
971
+ $steps-wait-title-color: var(
972
+ --nutui-steps-wait-title-color,
973
+ $title-color2
974
+ ) !default;
939
975
  $steps-wait-content-color: var(
940
976
  --nutui-steps-wait-content-color,
941
977
  $title-color2
942
978
  ) !default;
943
979
 
944
- $steps-finish-head-color: var(
945
- --nutui-steps-finish-head-color,
980
+ $steps-process-icon-bg-color: var(
981
+ --nutui-steps-process-icon-bg-color,
946
982
  $primary-color
947
983
  ) !default;
948
- $steps-finish-head-border-color: var(
949
- --nutui-steps-finish-head-border-color,
984
+ $steps-process-icon-color: var(
985
+ --nutui-steps-process-icon-color,
986
+ $white
987
+ ) !default;
988
+ $steps-process-head-color: var(
989
+ --nutui-steps-process-head-color,
950
990
  $primary-color
951
991
  ) !default;
952
- $steps-finish-title-color: var(
953
- --nutui-steps-finish-title-color,
992
+ $steps-process-head-border-color: var(
993
+ --nutui-steps-process-head-border-color,
954
994
  $primary-color
955
995
  ) !default;
956
- $steps-finish-line-background: var(
957
- --nutui-steps-finish-line-background,
996
+ $steps-process-title-color: var(
997
+ --nutui-steps-process-title-color,
958
998
  $primary-color
959
999
  ) !default;
960
- $steps-finish-icon-text-color: var(
961
- --nutui-steps-finish-icon-text-color,
962
- $white
1000
+ $steps-process-title-font-size: var(
1001
+ --nutui-steps-process-title-font-size,
1002
+ 14px
1003
+ ) !default;
1004
+ $steps-process-title-font-weight: var(
1005
+ --nutui-steps-process-title-font-weight,
1006
+ 400
1007
+ ) !default;
1008
+ $steps-process-content-color: var(
1009
+ --nutui-steps-process-content-color,
1010
+ $title-color2
963
1011
  ) !default;
964
1012
 
965
- $steps-process-head-color: var(
966
- --nutui-steps-process-head-color,
1013
+ $steps-finish-icon-bg-color: var(
1014
+ --nutui-steps-finish-icon-bg-color,
967
1015
  $primary-text-color
968
1016
  ) !default;
969
- $steps-process-head-border-color: var(
970
- --nutui-steps-process-head-border-color,
1017
+ $steps-finish-icon-color: var(
1018
+ --nutui-steps-finish-icon-color,
971
1019
  $primary-color
972
1020
  ) !default;
973
- $steps-process-title-color: var(
974
- --nutui-steps-process-title-color,
1021
+ $steps-finish-head-color: var(
1022
+ --nutui-steps-finish-head-color,
1023
+ $primary-color
1024
+ ) !default;
1025
+ $steps-finish-head-border-color: var(
1026
+ --nutui-steps-finish-head-border-color,
1027
+ $primary-color
1028
+ ) !default;
1029
+ $steps-finish-title-color: var(
1030
+ --nutui-steps-finish-title-color,
975
1031
  $primary-color
976
1032
  ) !default;
977
- $steps-process-icon-text-color: var(
978
- --nutui-steps-process-icon-text-color,
1033
+ $steps-finish-content-color: var(
1034
+ --nutui-steps-finish-content-color,
1035
+ $title-color2
1036
+ ) !default;
1037
+ $steps-finish-line-background: var(
1038
+ --nutui-steps-finish-line-background,
979
1039
  $primary-color
980
1040
  ) !default;
981
1041
 
1042
+ $steps-dot-icon-width: var(--nutui-steps-dot-icon-width, 6px) !default;
1043
+ $steps-dot-icon-height: var(--nutui-steps-dot-icon-height, 6px) !default;
1044
+ $steps-dot-icon-border: var(
1045
+ --nutui-steps-dot-icon-border,
1046
+ 2px solid $primary-text-color
1047
+ ) !default;
1048
+
982
1049
  // dialog(✅)
983
1050
  $dialog-width: var(--nutui-dialog-width, 296px) !default;
984
1051
  $dialog-header-font-weight: var(
@@ -1050,7 +1117,7 @@ $checkbox-icon-disable-color: var(
1050
1117
  ) !default;
1051
1118
  $checkbox-label-margin-left: var(
1052
1119
  --nutui-checkbox-label-margin-left,
1053
- 15px
1120
+ 10px
1054
1121
  ) !default;
1055
1122
  $checkbox-label-font-size: var(--nutui-checkbox-label-font-size, 14px) !default;
1056
1123
  $checkbox-icon-font-size: var(--nutui-checkbox-icon-font-size, 18px) !default;
@@ -1291,10 +1358,9 @@ $tag-border-width: var(--nutui-tag-border-width, 1px) !default;
1291
1358
  $tag-height: var(--nutui-tag-height, auto) !default;
1292
1359
 
1293
1360
  //badge(✅)
1294
- $badge-background-color: linear-gradient(
1295
- 135deg,
1296
- $primary-color 0%,
1297
- $primary-color-end 100%
1361
+ $badge-background-color: var(
1362
+ --nutui-badge-background-color,
1363
+ linear-gradient(135deg, $primary-color 0%, $primary-color-end 100%)
1298
1364
  ) !default;
1299
1365
  $badge-color: var(--nutui-badge-color, #fff) !default;
1300
1366
  $badge-font-size: var(--nutui-badge-font-size, $font-size-1) !default;
@@ -1302,6 +1368,10 @@ $badge-default-background-color: var(
1302
1368
  --nutui-badge-default-background-color,
1303
1369
  rgba(255, 255, 255, 1)
1304
1370
  ) !default;
1371
+ $badge-border: var(
1372
+ --nutui-badge-border,
1373
+ 0px solid $primary-text-color
1374
+ ) !default;
1305
1375
  $badge-border-radius: var(--nutui-badge-border-radius, 14px) !default;
1306
1376
  $badge-padding: var(--nutui-badge-padding, 0 5px) !default;
1307
1377
  $badge-content-transform: var(
@@ -1315,6 +1385,37 @@ $badge-dot-border-radius: var(--nutui-badge-dot-border-radius, 7px) !default;
1315
1385
  $badge-dot-padding: var(--nutui-badge-dot-padding, 0px) !default;
1316
1386
 
1317
1387
  //popover(✅)
1388
+ $popover-border-radius: var(--nutui-popover-border-radius, 8px) !default;
1389
+ $popover-font-size: var(--nutui-popover-font-size, $font-size-1) !default;
1390
+ $popover-menu-item-height: var(--nutui-popover-menu-item-height, 30px) !default;
1391
+ $popover-menu-item-name-margin: var(
1392
+ --nutui-popover-menu-item-name-margin,
1393
+ 0px 10px
1394
+ ) !default;
1395
+ $popover-menu-item-hover-background-color: var(
1396
+ --nutui-popover-menu-item-hover-background-color,
1397
+ $primary-color
1398
+ ) !default;
1399
+ $popover-menu-item-hover-text-color: var(
1400
+ --nutui-popover-menu-item-hover-text-color,
1401
+ $primary-text-color
1402
+ ) !default;
1403
+ $popover-menu-item-border-width: var(
1404
+ --nutui-popover-menu-item-border-width,
1405
+ 80%
1406
+ ) !default;
1407
+ $popover-menu-item-border-height: var(
1408
+ --nutui-popover-menu-item-border-height,
1409
+ 1px
1410
+ ) !default;
1411
+ $popover-menu-item-border-left: var(
1412
+ --nutui-popover-menu-item-border-left,
1413
+ 10%
1414
+ ) !default;
1415
+ $popover-menu-item-border-bottom: var(
1416
+ --nutui-popover-menu-item-border-bottom,
1417
+ 2%
1418
+ ) !default;
1318
1419
  $popover-white-background-color: var(
1319
1420
  --nutui-popover-white-background-color,
1320
1421
  rgba(255, 255, 255, 1)
@@ -1516,13 +1617,21 @@ $tabs-titles-item-active-color: var(
1516
1617
  ) !default;
1517
1618
  $tabs-titles-background-color: var(
1518
1619
  --nutui-tabs-titles-background-color,
1519
- $background-color2
1620
+ $background-color
1520
1621
  ) !default;
1521
1622
  $tabs-horizontal-tab-line-color: linear-gradient(
1522
1623
  90deg,
1523
1624
  $primary-color 0%,
1524
1625
  rgba(#fa2c19, 0.15) 100%
1525
1626
  ) !default;
1627
+ $tabs-horizontal-tab-line-bottom: var(
1628
+ --nutui-tabs-horizontal-line-bottom,
1629
+ 15%
1630
+ ) !default;
1631
+ $tabs-horizontal-tab-line-border-radius: var(
1632
+ --nutui-tabs-horizontal-line-border-radius,
1633
+ 0px
1634
+ ) !default;
1526
1635
  $tabs-horizontal-titles-height: var(
1527
1636
  --nutui-tabs-horizontal-titles-height,
1528
1637
  46px
@@ -1658,9 +1767,9 @@ $menu-item-content-bg-color: var(
1658
1767
  // collapse(✅)
1659
1768
  $collapse-item-padding: var(
1660
1769
  --nutui-collapse-item-padding,
1661
- 13px 36px 13px 26px
1770
+ 13px 0px 13px 26px
1662
1771
  ) !default;
1663
- $collapse-item-color: var(--nutui-collapse-item-color, #666666) !default;
1772
+ $collapse-item-color: var(--nutui-collapse-item-color, $title-color) !default;
1664
1773
  $collapse-item-disabled-color: var(
1665
1774
  --nutui-collapse-item-disabled-color,
1666
1775
  #c8c9cc
@@ -1669,6 +1778,14 @@ $collapse-item-icon-color: var(
1669
1778
  --nutui-collapse-item-icon-color,
1670
1779
  #666666
1671
1780
  ) !default;
1781
+ $collapse-item-icon-margin-right: var(
1782
+ --nutui-collapse-item-icon-margin-right,
1783
+ 5px
1784
+ ) !default;
1785
+ $collapse-item-icon-margin-left: var(
1786
+ --nutui-collapse-item-icon-margin-left,
1787
+ 5px
1788
+ ) !default;
1672
1789
  $collapse-item-font-size: var(
1673
1790
  --nutui-collapse-item-font-size,
1674
1791
  $font-size-2
@@ -1797,7 +1914,6 @@ $empty-description-padding: var(
1797
1914
  --nutui-empty-description-padding,
1798
1915
  0 40px
1799
1916
  ) !default;
1800
-
1801
1917
  // cascader(✅)
1802
1918
  $cascader-font-size: var(--nutui-cascader-font-size, $font-size-2) !default;
1803
1919
  $cascader-line-height: var(--nutui-cascader-line-height, 22px) !default;
@@ -1830,7 +1946,13 @@ $cascader-bar-font-size: var(
1830
1946
  ) !default;
1831
1947
  $cascader-bar-line-height: var(--nutui-cascader-bar-line-height, 20px) !default;
1832
1948
  $cascader-bar-color: var(--nutui-cascader-bar-color, $title-color) !default;
1949
+ $cascader-item-height: var(--nutui-cascader-item-height, 40px) !default;
1833
1950
  $cascader-item-padding: var(--nutui-cascader-item-padding, 10px 20px) !default;
1951
+ $cascader-item-margin: var(--nutui-cascader-item-margin, 0px) !default;
1952
+ $cascader-item-border-bottom: var(
1953
+ --nutui-cascader-item-border-bottom,
1954
+ 0px solid #ddd
1955
+ ) !default;
1834
1956
  $cascader-item-color: var(--nutui-cascader-item-color, $title-color) !default;
1835
1957
  $cascader-item-font-size: var(
1836
1958
  --nutui-cascader-item-font-size,
@@ -383,8 +383,8 @@ declare const Elevator: FunctionComponent<Partial<ElevatorProps> & React__defaul
383
383
  Context: typeof elevatorContext;
384
384
  };
385
385
 
386
- type Direction$1 = 'right' | 'left';
387
- type Position$2 = {
386
+ type Direction$2 = 'right' | 'left';
387
+ type Position$3 = {
388
388
  top?: string;
389
389
  bottom?: string;
390
390
  };
@@ -395,8 +395,8 @@ interface FixedNavProps extends BasicComponent {
395
395
  navList: Array<any>;
396
396
  activeText: string;
397
397
  unActiveText: string;
398
- position: Position$2;
399
- type: Direction$1;
398
+ position: Position$3;
399
+ type: Direction$2;
400
400
  onChange: (v: any) => void;
401
401
  onSelected: (v: any, event: MouseEvent$1) => void;
402
402
  slotList: React__default.ReactNode;
@@ -529,6 +529,7 @@ declare const SubSideNavBar: FunctionComponent<SubSideNavBarProps>;
529
529
 
530
530
  interface TabbarProps {
531
531
  visible: number | string;
532
+ activeVisible?: number | string;
532
533
  bottom: boolean;
533
534
  size: string | number;
534
535
  unactiveColor: string;
@@ -536,7 +537,6 @@ interface TabbarProps {
536
537
  safeAreaInsetBottom: boolean;
537
538
  className: string;
538
539
  style: React__default.CSSProperties;
539
- tabSwitch: (child: React__default.ReactElement<any>, active: number) => void;
540
540
  onSwitch: (child: React__default.ReactElement<any>, active: number) => void;
541
541
  children?: React__default.ReactNode;
542
542
  }
@@ -594,6 +594,7 @@ interface TabsProps extends BasicComponent {
594
594
  animatedTime: number | string;
595
595
  titleGutter: number | string;
596
596
  size: TabsSize;
597
+ leftAlign: boolean;
597
598
  titleNode: () => JSX.Element[];
598
599
  onChange: (t: Title) => void;
599
600
  onClick: (t: Title) => void;
@@ -685,6 +686,7 @@ interface CascaderProps {
685
686
  className: string;
686
687
  style: CSSProperties;
687
688
  activeColor: string;
689
+ checkedIcon: string;
688
690
  tabsColor: string;
689
691
  poppable: boolean;
690
692
  visible: boolean;
@@ -715,10 +717,14 @@ interface RadioGroupOptionType {
715
717
  onChange?: MouseEventHandler<HTMLDivElement>;
716
718
  }
717
719
 
720
+ type Position$2 = 'left' | 'right';
721
+ type Direction$1 = 'horizontal' | 'vertical';
718
722
  interface CheckboxGroupProps {
719
723
  disabled: boolean;
720
724
  checkedValue: string[];
721
725
  max: number | undefined;
726
+ textPosition: Position$2;
727
+ direction: Direction$1;
722
728
  onChange: (value: string[]) => void;
723
729
  options: RadioGroupOptionType[];
724
730
  }
@@ -773,6 +779,58 @@ interface DatePickerProps {
773
779
  }
774
780
  declare const DatePicker: FunctionComponent<Partial<DatePickerProps> & Omit<React__default.HTMLAttributes<HTMLDivElement>, 'onChange'>>;
775
781
 
782
+ interface BaseForm {
783
+ /**
784
+ * 经 Form.useForm() 创建的 form 控制实例,不提供时会自动创建
785
+ */
786
+ form: any;
787
+ /**
788
+ * label的位置
789
+ * 可选值 top/left/right
790
+ */
791
+ labelPosition: string | number;
792
+ /**
793
+ * 表单分组名称
794
+ */
795
+ formGroupTitle: string;
796
+ starPositon: string;
797
+ /**
798
+ * 表单校验成功回调
799
+ */
800
+ onFinish: (obj: object) => void;
801
+ /**
802
+ * 表单校验失败回调
803
+ */
804
+ onFinishFailed: (value: []) => void;
805
+ }
806
+ type StoreValue = string | number;
807
+ type NamePath = string | number;
808
+ interface Callbacks<Values = any> {
809
+ onValuesChange?: (values: Values) => void;
810
+ onFinish?: (values: Values) => void;
811
+ onFinishFailed?: (Values: Values) => void;
812
+ }
813
+ interface FormInstance<Values = any> {
814
+ registerField: (entity: FieldEntity) => () => void;
815
+ getFieldValue: (name: NamePath) => StoreValue;
816
+ setFieldsValue: (value: any) => void;
817
+ resetFields: (fields?: NamePath[]) => void;
818
+ submit: () => void;
819
+ setCallback: (callbacks: Callbacks) => void;
820
+ }
821
+ interface FieldEntity {
822
+ onStoreChange: () => void;
823
+ getNamePath: () => NamePath;
824
+ props: {
825
+ name: NamePath;
826
+ rules?: any[];
827
+ dependencies?: NamePath[];
828
+ initialValue?: any;
829
+ };
830
+ }
831
+
832
+ declare const useForm: (form?: FormInstance) => any[];
833
+
776
834
  interface FormItemRuleWithoutValidator {
777
835
  [key: string]: any;
778
836
  regex?: RegExp;
@@ -780,7 +838,7 @@ interface FormItemRuleWithoutValidator {
780
838
  message?: string;
781
839
  }
782
840
  interface FormItemRule extends FormItemRuleWithoutValidator {
783
- validator?: (value: any, ruleCfg: FormItemRuleWithoutValidator) => boolean | string | Promise<boolean | string>;
841
+ validator?: (ruleCfg: FormItemRuleWithoutValidator, value: string) => boolean | string | Promise<boolean | string>;
784
842
  }
785
843
  interface BaseFormField {
786
844
  /**
@@ -821,10 +879,11 @@ declare class FormItem extends React__default.Component<FieldProps> {
821
879
  static contextType: any;
822
880
  context: React__default.ContextType<typeof FormItemContext>;
823
881
  private cancelRegister;
882
+ private isInitialValue;
824
883
  componentDidMount(): void;
825
884
  componentWillUnmount(): void;
826
885
  getControlled: (children: React__default.ReactElement) => {
827
- value: any;
886
+ defaultValue: any;
828
887
  onChange: (event: React__default.ChangeEvent<HTMLInputElement> | number | string | string[]) => void;
829
888
  };
830
889
  onStoreChange: () => void;
@@ -833,35 +892,12 @@ declare class FormItem extends React__default.Component<FieldProps> {
833
892
  render(): JSX.Element;
834
893
  }
835
894
 
836
- interface BaseForm {
837
- /**
838
- * 经 Form.useForm() 创建的 form 控制实例,不提供时会自动创建
839
- */
840
- form: any;
841
- /**
842
- * label的位置
843
- * 可选值 top/left/right
844
- */
845
- labelPosition: string | number;
846
- /**
847
- * 表单分组名称
848
- */
849
- formGroupTitle: string;
850
- starPositon: string;
851
- /**
852
- * 表单校验成功回调
853
- */
854
- onFinish: (obj: object) => void;
855
- /**
856
- * 表单校验失败回调
857
- */
858
- onFinishFailed: (value: []) => void;
859
- }
860
-
861
895
  interface FormProps extends BasicComponent, BaseForm {
862
896
  }
863
897
  declare const Form: FunctionComponent<Partial<FormProps> & React__default.HTMLAttributes<HTMLFormElement>> & {
864
898
  Item: typeof FormItem;
899
+ } & {
900
+ useForm: typeof useForm;
865
901
  };
866
902
 
867
903
  type InputAlignType = 'left' | 'center' | 'right';
@@ -1140,6 +1176,7 @@ interface ShortPasswordProps extends BasicComponent {
1140
1176
  length: string | number;
1141
1177
  className: string;
1142
1178
  style?: CSSProperties;
1179
+ autoFocus?: boolean;
1143
1180
  onChange: (value: string | number) => void;
1144
1181
  onOk: (value: string | number) => void;
1145
1182
  onCancel: () => void;
@@ -1459,7 +1496,7 @@ interface SwipeProps {
1459
1496
  }
1460
1497
  declare const Swipe: React__default.ForwardRefExoticComponent<Partial<SwipeProps> & Omit<React__default.HTMLAttributes<HTMLDivElement>, "onTouchEnd" | "onTouchMove" | "onTouchStart"> & React__default.RefAttributes<SwipeInstance>>;
1461
1498
 
1462
- interface SwitchProps {
1499
+ interface SwitchProps extends BasicComponent {
1463
1500
  isAsync: boolean;
1464
1501
  checked: boolean;
1465
1502
  disable: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nutui/nutui-react",
3
- "version": "1.4.7",
3
+ "version": "1.4.8",
4
4
  "style": "dist/style.css",
5
5
  "main": "dist/nutui.react.umd.js",
6
6
  "module": "dist/esm/nutui-react.es.js",