@arco-design/mobile-react 2.28.1 → 2.29.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 (97) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.en-US.md +2 -2
  3. package/README.md +2 -2
  4. package/cjs/_helpers/hooks.d.ts +7 -1
  5. package/cjs/_helpers/hooks.js +9 -5
  6. package/cjs/form/form-item.js +109 -108
  7. package/cjs/grid/style/css/index.css +4 -0
  8. package/cjs/grid/style/index.less +6 -0
  9. package/cjs/index.d.ts +1 -0
  10. package/cjs/index.js +5 -1
  11. package/cjs/nav-bar/index.d.ts +3 -3
  12. package/cjs/picker-view/components/picker-cell.js +20 -6
  13. package/cjs/skeleton/demo/style/css/mobile.css +7 -0
  14. package/cjs/skeleton/demo/style/mobile.less +13 -0
  15. package/cjs/skeleton/elements.d.ts +7 -0
  16. package/cjs/skeleton/elements.js +302 -0
  17. package/cjs/skeleton/index.d.ts +18 -0
  18. package/cjs/skeleton/index.js +100 -0
  19. package/cjs/skeleton/skeleton-context.d.ts +3 -0
  20. package/cjs/skeleton/skeleton-context.js +15 -0
  21. package/cjs/skeleton/style/css/index.css +180 -0
  22. package/cjs/skeleton/style/css/index.d.ts +3 -0
  23. package/cjs/skeleton/style/css/index.js +7 -0
  24. package/cjs/skeleton/style/index.d.ts +3 -0
  25. package/cjs/skeleton/style/index.js +7 -0
  26. package/cjs/skeleton/style/index.less +147 -0
  27. package/cjs/skeleton/type.d.ts +104 -0
  28. package/cjs/skeleton/type.js +3 -0
  29. package/cjs/style.d.ts +1 -0
  30. package/cjs/style.js +2 -0
  31. package/cjs/tabs/index.js +8 -2
  32. package/dist/index.js +532 -147
  33. package/dist/index.min.js +5 -5
  34. package/dist/style.css +123 -0
  35. package/dist/style.min.css +1 -1
  36. package/esm/_helpers/hooks.d.ts +7 -1
  37. package/esm/_helpers/hooks.js +8 -2
  38. package/esm/form/form-item.js +109 -108
  39. package/esm/grid/style/css/index.css +4 -0
  40. package/esm/grid/style/index.less +6 -0
  41. package/esm/index.d.ts +1 -0
  42. package/esm/index.js +1 -0
  43. package/esm/nav-bar/index.d.ts +3 -3
  44. package/esm/picker-view/components/picker-cell.js +20 -6
  45. package/esm/skeleton/demo/style/css/mobile.css +7 -0
  46. package/esm/skeleton/demo/style/mobile.less +13 -0
  47. package/esm/skeleton/elements.d.ts +7 -0
  48. package/esm/skeleton/elements.js +281 -0
  49. package/esm/skeleton/index.d.ts +18 -0
  50. package/esm/skeleton/index.js +82 -0
  51. package/esm/skeleton/skeleton-context.d.ts +3 -0
  52. package/esm/skeleton/skeleton-context.js +5 -0
  53. package/esm/skeleton/style/css/index.css +180 -0
  54. package/esm/skeleton/style/css/index.d.ts +3 -0
  55. package/esm/skeleton/style/css/index.js +3 -0
  56. package/esm/skeleton/style/index.d.ts +3 -0
  57. package/esm/skeleton/style/index.js +3 -0
  58. package/esm/skeleton/style/index.less +147 -0
  59. package/esm/skeleton/type.d.ts +104 -0
  60. package/esm/skeleton/type.js +1 -0
  61. package/esm/style.d.ts +1 -0
  62. package/esm/style.js +1 -0
  63. package/esm/tabs/index.js +9 -3
  64. package/package.json +3 -3
  65. package/tokens/app/arcodesign/default/css-variables.less +16 -0
  66. package/tokens/app/arcodesign/default/index.d.ts +16 -0
  67. package/tokens/app/arcodesign/default/index.js +17 -1
  68. package/tokens/app/arcodesign/default/index.json +190 -0
  69. package/tokens/app/arcodesign/default/index.less +16 -0
  70. package/umd/_helpers/hooks.d.ts +7 -1
  71. package/umd/_helpers/hooks.js +9 -5
  72. package/umd/form/form-item.js +109 -108
  73. package/umd/grid/style/css/index.css +4 -0
  74. package/umd/grid/style/index.less +6 -0
  75. package/umd/index.d.ts +1 -0
  76. package/umd/index.js +7 -5
  77. package/umd/nav-bar/index.d.ts +3 -3
  78. package/umd/picker-view/components/picker-cell.js +20 -6
  79. package/umd/skeleton/demo/style/css/mobile.css +7 -0
  80. package/umd/skeleton/demo/style/mobile.less +13 -0
  81. package/umd/skeleton/elements.d.ts +7 -0
  82. package/umd/skeleton/elements.js +306 -0
  83. package/umd/skeleton/index.d.ts +18 -0
  84. package/umd/skeleton/index.js +104 -0
  85. package/umd/skeleton/skeleton-context.d.ts +3 -0
  86. package/umd/skeleton/skeleton-context.js +28 -0
  87. package/umd/skeleton/style/css/index.css +180 -0
  88. package/umd/skeleton/style/css/index.d.ts +3 -0
  89. package/umd/skeleton/style/css/index.js +15 -0
  90. package/umd/skeleton/style/index.d.ts +3 -0
  91. package/umd/skeleton/style/index.js +15 -0
  92. package/umd/skeleton/style/index.less +147 -0
  93. package/umd/skeleton/type.d.ts +104 -0
  94. package/umd/skeleton/type.js +17 -0
  95. package/umd/style.d.ts +1 -0
  96. package/umd/style.js +4 -4
  97. package/umd/tabs/index.js +8 -2
@@ -803,7 +803,23 @@ var tokens = {
803
803
  "divider-left-width": "0.56rem",
804
804
  "divider-right-width": "0.56rem",
805
805
  "divider-content-padding": "0.24rem",
806
- "divider-padding": "0.32rem"
806
+ "divider-padding": "0.32rem",
807
+ "skeleton-border-radius": "0",
808
+ "skeleton-background-color": "#F2F3F5",
809
+ "skeleton-gradient-animation-color": "rgba(255, 255, 255, 0.6)",
810
+ "skeleton-breath-opacity": "0.4",
811
+ "skeleton-gradient-animation-timing-function": "cubic-bezier(0.42, 0, 0.58, 1)",
812
+ "skeleton-gradient-animation-duration": "1.5s",
813
+ "skeleton-breath-animation-duration": "1.5s",
814
+ "skeleton-title-height": "0.32rem",
815
+ "skeleton-paragraph-height": "0.32rem",
816
+ "skeleton-paragraph-margin-top": "0.24rem",
817
+ "skeleton-avatar-size": "0.64rem",
818
+ "skeleton-grid-icon-size": "0.64rem",
819
+ "skeleton-grid-text-width": "1.28rem",
820
+ "skeleton-grid-text-height": "0.32rem",
821
+ "skeleton-medium-gutter": "0.16rem",
822
+ "skeleton-large-gutter": "0.4rem"
807
823
  };
808
824
  var _default = tokens;
809
825
  exports["default"] = _default;
@@ -6629,6 +6629,196 @@
6629
6629
  "en": "Size of the rounded corners of the square SearchBar"
6630
6630
  }
6631
6631
  },
6632
+ "skeletonAvatarSize": {
6633
+ "cssKey": "skeleton-avatar-size",
6634
+ "desc": "骨架屏头像大小",
6635
+ "override": "",
6636
+ "value": "~`pxtorem(32)`",
6637
+ "jsValue": "@getRem@32",
6638
+ "staticValue": "0.64rem",
6639
+ "localeDesc": {
6640
+ "ch": "骨架屏头像大小",
6641
+ "en": "Skeleton avatar size"
6642
+ }
6643
+ },
6644
+ "skeletonBackgroundColor": {
6645
+ "cssKey": "skeleton-background-color",
6646
+ "desc": "骨架屏元素背景色",
6647
+ "override": "",
6648
+ "value": "#F2F3F5",
6649
+ "jsValue": "#F2F3F5",
6650
+ "staticValue": "#F2F3F5",
6651
+ "localeDesc": {
6652
+ "ch": "骨架屏元素背景色",
6653
+ "en": "Skeleton element background color"
6654
+ }
6655
+ },
6656
+ "skeletonBorderRadius": {
6657
+ "cssKey": "skeleton-border-radius",
6658
+ "desc": "骨架屏元素圆角",
6659
+ "override": "",
6660
+ "value": "~`pxtorem(0)`",
6661
+ "jsValue": "@getRem@0",
6662
+ "staticValue": "0",
6663
+ "localeDesc": {
6664
+ "ch": "骨架屏元素圆角",
6665
+ "en": "Skeleton element border radius"
6666
+ }
6667
+ },
6668
+ "skeletonBreathAnimationDuration": {
6669
+ "cssKey": "skeleton-breath-animation-duration",
6670
+ "desc": "骨架屏呼吸动效时间",
6671
+ "override": "",
6672
+ "value": "1.5s",
6673
+ "jsValue": "1.5s",
6674
+ "staticValue": "1.5s",
6675
+ "localeDesc": {
6676
+ "ch": "骨架屏呼吸动效时间",
6677
+ "en": "Skeleton element breath animation duration"
6678
+ }
6679
+ },
6680
+ "skeletonBreathOpacity": {
6681
+ "cssKey": "skeleton-breath-opacity",
6682
+ "desc": "骨架屏呼吸动效透明度",
6683
+ "override": "",
6684
+ "value": "0.4",
6685
+ "jsValue": "0.4",
6686
+ "staticValue": "0.4",
6687
+ "localeDesc": {
6688
+ "ch": "骨架屏呼吸动效透明度",
6689
+ "en": "Skeleton element breath animation opacity"
6690
+ }
6691
+ },
6692
+ "skeletonGradientAnimationColor": {
6693
+ "cssKey": "skeleton-gradient-animation-color",
6694
+ "desc": "骨架屏扫光动效高亮色",
6695
+ "override": "",
6696
+ "value": "rgba(255, 255, 255, 0.6)",
6697
+ "jsValue": "rgba(255, 255, 255, 0.6)",
6698
+ "staticValue": "rgba(255, 255, 255, 0.6)",
6699
+ "localeDesc": {
6700
+ "ch": "骨架屏扫光动效高亮色",
6701
+ "en": "Skeleton element gradient animation highlight color"
6702
+ }
6703
+ },
6704
+ "skeletonGradientAnimationDuration": {
6705
+ "cssKey": "skeleton-gradient-animation-duration",
6706
+ "desc": "骨架屏扫光动效时间",
6707
+ "override": "",
6708
+ "value": "1.5s",
6709
+ "jsValue": "1.5s",
6710
+ "staticValue": "1.5s",
6711
+ "localeDesc": {
6712
+ "ch": "骨架屏扫光动效时间",
6713
+ "en": "Skeleton element gradient animation duration"
6714
+ }
6715
+ },
6716
+ "skeletonGradientAnimationTimingFunction": {
6717
+ "cssKey": "skeleton-gradient-animation-timing-function",
6718
+ "desc": "骨架屏扫光动效曲线",
6719
+ "override": "",
6720
+ "value": "cubic-bezier(0.42, 0, 0.58, 1)",
6721
+ "jsValue": "cubic-bezier(0.42, 0, 0.58, 1)",
6722
+ "staticValue": "cubic-bezier(0.42, 0, 0.58, 1)",
6723
+ "localeDesc": {
6724
+ "ch": "骨架屏扫光动效曲线",
6725
+ "en": "Skeleton element gradient animation timing function"
6726
+ }
6727
+ },
6728
+ "skeletonGridIconSize": {
6729
+ "cssKey": "skeleton-grid-icon-size",
6730
+ "desc": "骨架屏金刚位图标区宽度",
6731
+ "override": "",
6732
+ "value": "~`pxtorem(32)`",
6733
+ "jsValue": "@getRem@32",
6734
+ "staticValue": "0.64rem",
6735
+ "localeDesc": {
6736
+ "ch": "骨架屏金刚位图标区宽度",
6737
+ "en": "Skeleton grid item icon width"
6738
+ }
6739
+ },
6740
+ "skeletonGridTextHeight": {
6741
+ "cssKey": "skeleton-grid-text-height",
6742
+ "desc": "骨架屏金刚位文字区高度",
6743
+ "override": "",
6744
+ "value": "~`pxtorem(16)`",
6745
+ "jsValue": "@getRem@16",
6746
+ "staticValue": "0.32rem",
6747
+ "localeDesc": {
6748
+ "ch": "骨架屏金刚位文字区高度",
6749
+ "en": "Skeleton grid item text height"
6750
+ }
6751
+ },
6752
+ "skeletonGridTextWidth": {
6753
+ "cssKey": "skeleton-grid-text-width",
6754
+ "desc": "骨架屏金刚位文字区宽度",
6755
+ "override": "",
6756
+ "value": "~`pxtorem(64)`",
6757
+ "jsValue": "@getRem@64",
6758
+ "staticValue": "1.28rem",
6759
+ "localeDesc": {
6760
+ "ch": "骨架屏金刚位文字区宽度",
6761
+ "en": "Skeleton grid item text width"
6762
+ }
6763
+ },
6764
+ "skeletonLargeGutter": {
6765
+ "cssKey": "skeleton-large-gutter",
6766
+ "desc": "骨架屏元素外边距,大尺寸",
6767
+ "override": "",
6768
+ "value": "~`pxtorem(20)`",
6769
+ "jsValue": "@getRem@20",
6770
+ "staticValue": "0.4rem",
6771
+ "localeDesc": {
6772
+ "ch": "骨架屏元素外边距,大尺寸"
6773
+ }
6774
+ },
6775
+ "skeletonMediumGutter": {
6776
+ "cssKey": "skeleton-medium-gutter",
6777
+ "desc": "骨架屏元素外边距,中尺寸",
6778
+ "override": "",
6779
+ "value": "~`pxtorem(8)`",
6780
+ "jsValue": "@getRem@8",
6781
+ "staticValue": "0.16rem",
6782
+ "localeDesc": {
6783
+ "ch": "骨架屏元素外边距,中尺寸"
6784
+ }
6785
+ },
6786
+ "skeletonParagraphHeight": {
6787
+ "cssKey": "skeleton-paragraph-height",
6788
+ "desc": "骨架屏段落行高度",
6789
+ "override": "",
6790
+ "value": "~`pxtorem(16)`",
6791
+ "jsValue": "@getRem@16",
6792
+ "staticValue": "0.32rem",
6793
+ "localeDesc": {
6794
+ "ch": "骨架屏段落行高度",
6795
+ "en": "Skeleton paragraph line height"
6796
+ }
6797
+ },
6798
+ "skeletonParagraphMarginTop": {
6799
+ "cssKey": "skeleton-paragraph-margin-top",
6800
+ "desc": "骨架屏各段落行间距",
6801
+ "override": "",
6802
+ "value": "~`pxtorem(12)`",
6803
+ "jsValue": "@getRem@12",
6804
+ "staticValue": "0.24rem",
6805
+ "localeDesc": {
6806
+ "ch": "骨架屏各段落行间距",
6807
+ "en": "Margin top between skeleton paragraph lines"
6808
+ }
6809
+ },
6810
+ "skeletonTitleHeight": {
6811
+ "cssKey": "skeleton-title-height",
6812
+ "desc": "骨架屏标题高度",
6813
+ "override": "",
6814
+ "value": "~`pxtorem(16)`",
6815
+ "jsValue": "@getRem@16",
6816
+ "staticValue": "0.32rem",
6817
+ "localeDesc": {
6818
+ "ch": "骨架屏标题高度",
6819
+ "en": "Skeleton title height"
6820
+ }
6821
+ },
6632
6822
  "sliderHasMarkPaddingBottom": {
6633
6823
  "cssKey": "slider-has-mark-padding-bottom",
6634
6824
  "desc": "slider 有标记时的底部内边距",
@@ -792,4 +792,20 @@
792
792
  @divider-right-width: ~`pxtorem(28)`;
793
793
  @divider-content-padding: ~`pxtorem(12)`;
794
794
  @divider-padding: ~`pxtorem(16)`;
795
+ @skeleton-border-radius: ~`pxtorem(0)`;
796
+ @skeleton-background-color: #F2F3F5;
797
+ @skeleton-gradient-animation-color: rgba(255, 255, 255, 0.6);
798
+ @skeleton-breath-opacity: 0.4;
799
+ @skeleton-gradient-animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);
800
+ @skeleton-gradient-animation-duration: 1.5s;
801
+ @skeleton-breath-animation-duration: 1.5s;
802
+ @skeleton-title-height: ~`pxtorem(16)`;
803
+ @skeleton-paragraph-height: ~`pxtorem(16)`;
804
+ @skeleton-paragraph-margin-top: ~`pxtorem(12)`;
805
+ @skeleton-avatar-size: ~`pxtorem(32)`;
806
+ @skeleton-grid-icon-size: ~`pxtorem(32)`;
807
+ @skeleton-grid-text-width: ~`pxtorem(64)`;
808
+ @skeleton-grid-text-height: ~`pxtorem(16)`;
809
+ @skeleton-medium-gutter: ~`pxtorem(8)`;
810
+ @skeleton-large-gutter: ~`pxtorem(20)`;
795
811
 
@@ -13,6 +13,12 @@ export declare function useListenResize(resizeHandler: () => void, deps?: any[],
13
13
  * @desc {en} Tips: Use in scenarios where asynchronous processing is not completed after unmount. It is not recommended to replace useState without brains
14
14
  * @param initialState 初始状态
15
15
  * @param initialState {en} Initial State
16
+ * @example
17
+ * ```
18
+ * import { useMountedState } from '@arco-design/mobile-react/esm/_helpers/hooks';
19
+ *
20
+ * const [scrollValue, setScrollValue] = useMountedState(value);
21
+ * ```
16
22
  */
17
23
  export declare function useMountedState<S>(initialState: S | (() => S)): [S, React.Dispatch<React.SetStateAction<S>>];
18
24
  export declare function useSameRefState<T>(initialValue: T): [T, React.MutableRefObject<T>, (data: T) => void];
@@ -37,7 +43,7 @@ export declare function useAddListener(dom: HTMLDivElement | null, event: string
37
43
  capture: boolean;
38
44
  }): void;
39
45
  export declare function usePreventBodyScroll(visible: boolean, preventBodyScroll: boolean, initialBodyOverflow?: string): void;
40
- export declare const useProgress: (mountedTransition: boolean, percentage: number, duration: number, mountedBezier: BezierType, step: number) => [number, boolean];
46
+ export declare function useProgress(mountedTransition: boolean, percentage: number, duration: number, mountedBezier: BezierType, step: number): [number, boolean];
41
47
  export declare function useSingleAndDoubleClick(onClick: (e: React.MouseEvent) => void, onDoubleClick: (e: React.MouseEvent) => void, delay?: number): (e: React.MouseEvent) => void;
42
48
  export declare function useGenSvgKey(userSetSvgKey: string): {
43
49
  svgKey: string;
@@ -22,7 +22,7 @@
22
22
  _exports.useMountedState = useMountedState;
23
23
  _exports.usePopupScroll = usePopupScroll;
24
24
  _exports.usePreventBodyScroll = usePreventBodyScroll;
25
- _exports.useProgress = void 0;
25
+ _exports.useProgress = useProgress;
26
26
  _exports.useRefMountedState = useRefMountedState;
27
27
  _exports.useRefState = useRefState;
28
28
  _exports.useSameRefState = useSameRefState;
@@ -66,6 +66,12 @@
66
66
  * @desc {en} Tips: Use in scenarios where asynchronous processing is not completed after unmount. It is not recommended to replace useState without brains
67
67
  * @param initialState 初始状态
68
68
  * @param initialState {en} Initial State
69
+ * @example
70
+ * ```
71
+ * import { useMountedState } from '@arco-design/mobile-react/esm/_helpers/hooks';
72
+ *
73
+ * const [scrollValue, setScrollValue] = useMountedState(value);
74
+ * ```
69
75
  */
70
76
 
71
77
 
@@ -494,7 +500,7 @@
494
500
  }, [visible]);
495
501
  }
496
502
 
497
- var useProgress = function useProgress(mountedTransition, percentage, duration, mountedBezier, step) {
503
+ function useProgress(mountedTransition, percentage, duration, mountedBezier, step) {
498
504
  var _useState8 = (0, _react.useState)(0),
499
505
  currentPercentage = _useState8[0],
500
506
  setCurrentPercentage = _useState8[1];
@@ -528,9 +534,7 @@
528
534
  percentage === 100 ? setCurrentPercentage(100) : setCurrentPercentage(count * step);
529
535
  }, [count, percentage, step]);
530
536
  return [currentPercentage, transitionControl];
531
- };
532
-
533
- _exports.useProgress = useProgress;
537
+ }
534
538
 
535
539
  function useSingleAndDoubleClick(onClick, onDoubleClick, delay) {
536
540
  if (delay === void 0) {
@@ -40,15 +40,96 @@
40
40
  _this._errors = [];
41
41
  _this._touched = false;
42
42
 
43
+ _this.onValueChange = function (preStore, curStore) {
44
+ _this._touched = true;
45
+ var shouldUpdate = _this.props.shouldUpdate;
46
+
47
+ if (typeof shouldUpdate === 'function') {
48
+ shouldUpdate({
49
+ preStore: preStore,
50
+ curStore: curStore
51
+ }) && _this.forceUpdate();
52
+ return;
53
+ }
54
+
55
+ _this.forceUpdate();
56
+ };
57
+
58
+ _this.getFieldError = function () {
59
+ return _this._errors;
60
+ };
61
+
62
+ _this.isFieldTouched = function () {
63
+ return _this._touched;
64
+ };
65
+
66
+ _this.validateField = function () {
67
+ var validateMessages = _this.context.validateMessages;
68
+ var getFieldValue = _this.context.form.getFieldValue;
69
+ var _this$props = _this.props,
70
+ field = _this$props.field,
71
+ rules = _this$props.rules,
72
+ onValidateStatusChange = _this$props.onValidateStatusChange;
73
+ var value = getFieldValue(field);
74
+
75
+ if (rules != null && rules.length && field) {
76
+ var _Validator;
77
+
78
+ var fieldDom = _this.props.getFormItemRef();
79
+
80
+ var fieldValidator = new _mobileUtils.Validator((_Validator = {}, _Validator[field] = rules, _Validator), {
81
+ validateMessages: validateMessages
82
+ });
83
+ return new Promise(function (resolve) {
84
+ var _fieldValidator$valid;
85
+
86
+ fieldValidator.validate((_fieldValidator$valid = {}, _fieldValidator$valid[field] = value, _fieldValidator$valid), function (errorsMap) {
87
+ var _getErrorAndWarnings = (0, _utils.getErrorAndWarnings)((errorsMap == null ? void 0 : errorsMap[field]) || []),
88
+ errors = _getErrorAndWarnings.errors,
89
+ warnings = _getErrorAndWarnings.warnings;
90
+
91
+ _this._errors = errors;
92
+ onValidateStatusChange({
93
+ errors: _this._errors,
94
+ warnings: warnings
95
+ });
96
+ return resolve({
97
+ errors: _this._errors,
98
+ warnings: warnings,
99
+ value: value,
100
+ field: field,
101
+ dom: fieldDom
102
+ });
103
+ });
104
+ });
105
+ }
106
+
107
+ return Promise.resolve({
108
+ errors: [],
109
+ warnings: [],
110
+ value: value,
111
+ field: field,
112
+ dom: null
113
+ });
114
+ };
115
+
116
+ _this.setFieldData = function (value) {
117
+ var field = _this.props.field;
118
+ var setFieldValue = _this.context.form.setFieldValue;
119
+ setFieldValue(field, value);
120
+
121
+ _this.validateField();
122
+ };
123
+
43
124
  _this.innerTriggerFunction = function (_, value) {
44
125
  var _children$props;
45
126
 
46
127
  _this.setFieldData(value);
47
128
 
48
- var _this$props = _this.props,
49
- children = _this$props.children,
50
- _this$props$trigger = _this$props.trigger,
51
- trigger = _this$props$trigger === void 0 ? 'onChange' : _this$props$trigger;
129
+ var _this$props2 = _this.props,
130
+ children = _this$props2.children,
131
+ _this$props2$trigger = _this$props2.trigger,
132
+ trigger = _this$props2$trigger === void 0 ? 'onChange' : _this$props2$trigger;
52
133
 
53
134
  if (trigger && (_children$props = children.props) != null && _children$props[trigger]) {
54
135
  var _children$props2;
@@ -66,10 +147,10 @@
66
147
 
67
148
  _this.setFieldData(value);
68
149
 
69
- var _this$props2 = _this.props,
70
- children = _this$props2.children,
71
- _this$props2$trigger = _this$props2.trigger,
72
- trigger = _this$props2$trigger === void 0 ? 'onChange' : _this$props2$trigger;
150
+ var _this$props3 = _this.props,
151
+ children = _this$props3.children,
152
+ _this$props3$trigger = _this$props3.trigger,
153
+ trigger = _this$props3$trigger === void 0 ? 'onChange' : _this$props3$trigger;
73
154
 
74
155
  if (trigger && (_children$props3 = children.props) != null && _children$props3[trigger]) {
75
156
  var _children$props4;
@@ -82,6 +163,24 @@
82
163
  }
83
164
  };
84
165
 
166
+ _this.innerClearFunction = function () {
167
+ var _children$props5;
168
+
169
+ var children = _this.props.children;
170
+
171
+ _this.setFieldData('');
172
+
173
+ if ((_children$props5 = children.props) != null && _children$props5.onClear) {
174
+ var _children$props6;
175
+
176
+ for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
177
+ args[_key3] = arguments[_key3];
178
+ }
179
+
180
+ (_children$props6 = children.props) == null ? void 0 : _children$props6.onClear.apply(_children$props6, args);
181
+ }
182
+ };
183
+
85
184
  _this.destroyField = function () {};
86
185
 
87
186
  if (props != null && props.initialValue && props.field) {
@@ -109,108 +208,10 @@
109
208
  this.destroyField();
110
209
  };
111
210
 
112
- _proto.onValueChange = function onValueChange(preStore, curStore) {
113
- this._touched = true;
114
- var shouldUpdate = this.props.shouldUpdate;
115
-
116
- if (typeof shouldUpdate === 'function') {
117
- shouldUpdate({
118
- preStore: preStore,
119
- curStore: curStore
120
- }) && this.forceUpdate();
121
- return;
122
- }
123
-
124
- this.forceUpdate();
125
- };
126
-
127
- _proto.getFieldError = function getFieldError() {
128
- return this._errors;
129
- };
130
-
131
- _proto.isFieldTouched = function isFieldTouched() {
132
- return this._touched;
133
- };
134
-
135
- _proto.validateField = function validateField() {
136
- var _this2 = this;
137
-
138
- var validateMessages = this.context.validateMessages;
139
- var getFieldValue = this.context.form.getFieldValue;
140
- var _this$props3 = this.props,
141
- field = _this$props3.field,
142
- rules = _this$props3.rules,
143
- onValidateStatusChange = _this$props3.onValidateStatusChange;
144
- var value = getFieldValue(field);
145
-
146
- if (rules != null && rules.length && field) {
147
- var _Validator;
148
-
149
- var fieldDom = this.props.getFormItemRef();
150
- var fieldValidator = new _mobileUtils.Validator((_Validator = {}, _Validator[field] = rules, _Validator), {
151
- validateMessages: validateMessages
152
- });
153
- return new Promise(function (resolve) {
154
- var _fieldValidator$valid;
155
-
156
- fieldValidator.validate((_fieldValidator$valid = {}, _fieldValidator$valid[field] = value, _fieldValidator$valid), function (errorsMap) {
157
- var _getErrorAndWarnings = (0, _utils.getErrorAndWarnings)((errorsMap == null ? void 0 : errorsMap[field]) || []),
158
- errors = _getErrorAndWarnings.errors,
159
- warnings = _getErrorAndWarnings.warnings;
160
-
161
- _this2._errors = errors;
162
- onValidateStatusChange({
163
- errors: _this2._errors,
164
- warnings: warnings
165
- });
166
- return resolve({
167
- errors: _this2._errors,
168
- warnings: warnings,
169
- value: value,
170
- field: field,
171
- dom: fieldDom
172
- });
173
- });
174
- });
175
- }
176
-
177
- return Promise.resolve({
178
- errors: [],
179
- warnings: [],
180
- value: value,
181
- field: field,
182
- dom: null
183
- });
184
- };
185
-
186
- _proto.setFieldData = function setFieldData(value) {
187
- var field = this.props.field;
188
- var setFieldValue = this.context.form.setFieldValue;
189
- setFieldValue(field, value);
190
- this.validateField();
191
- };
192
-
193
- _proto.innerClearFunction = function innerClearFunction() {
194
- var _children$props5;
195
-
196
- var children = this.props.children;
197
- this.setFieldData('');
198
-
199
- if ((_children$props5 = children.props) != null && _children$props5.onClear) {
200
- var _children$props6;
201
-
202
- for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
203
- args[_key3] = arguments[_key3];
204
- }
205
-
206
- (_children$props6 = children.props) == null ? void 0 : _children$props6.onClear.apply(_children$props6, args);
207
- }
208
- };
209
-
210
211
  _proto.renderChildren = function renderChildren() {
211
212
  var _props,
212
213
  _children$type,
213
- _this3 = this;
214
+ _this2 = this;
214
215
 
215
216
  var _this$props4 = this.props,
216
217
  children = _this$props4.children,
@@ -285,7 +286,7 @@
285
286
  props.error = this._errors;
286
287
 
287
288
  props[trigger] = function (newValue) {
288
- _this3.setFieldData(newValue);
289
+ _this2.setFieldData(newValue);
289
290
 
290
291
  for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {
291
292
  args[_key4 - 1] = arguments[_key4];
@@ -113,3 +113,7 @@
113
113
  display: none;
114
114
  /* Chrome Safari */
115
115
  }
116
+ .arco-grid .arco-image-picker {
117
+ width: 100%;
118
+ /* 兼容grid和image-picker组合使用 */
119
+ }
@@ -101,3 +101,9 @@
101
101
  .@{prefix}-grid.sliding::-webkit-scrollbar {
102
102
  display: none; /* Chrome Safari */
103
103
  }
104
+
105
+ .@{prefix}-grid {
106
+ .@{prefix}-image-picker {
107
+ width: 100%; /* 兼容grid和image-picker组合使用 */
108
+ }
109
+ }
package/umd/index.d.ts CHANGED
@@ -43,6 +43,7 @@ export { default as PullRefresh } from './pull-refresh';
43
43
  export { default as Radio } from './radio';
44
44
  export { default as Rate } from './rate';
45
45
  export { default as SearchBar } from './search-bar';
46
+ export { default as Skeleton } from './skeleton';
46
47
  export { default as ShowMonitor } from './show-monitor';
47
48
  export { default as Slider } from './slider';
48
49
  export { default as Stepper } from './stepper';
package/umd/index.js CHANGED
@@ -1,22 +1,22 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "./tabs", "./sticky", "./load-more", "./cell", "./action-sheet", "./avatar", "./badge", "./button", "./carousel", "./checkbox", "./circle-progress", "./collapse", "./context-provider", "./count-down", "./date-picker", "./dialog", "./divider", "./dropdown", "./dropdown-menu", "./ellipsis", "./form", "./grid", "./image", "./image-picker", "./image-preview", "./index-bar", "./input", "./keyboard", "./loading", "./masking", "./nav-bar", "./notice-bar", "./notify", "./pagination", "./picker", "./picker-view", "./popover", "./popup", "./popup-swiper", "./portal", "./progress", "./pull-refresh", "./radio", "./rate", "./search-bar", "./show-monitor", "./slider", "./stepper", "./steps", "./swipe-action", "./swipe-load", "./switch", "./tab-bar", "./tag", "./textarea", "./toast", "./transition"], factory);
3
+ define(["exports", "./tabs", "./sticky", "./load-more", "./cell", "./action-sheet", "./avatar", "./badge", "./button", "./carousel", "./checkbox", "./circle-progress", "./collapse", "./context-provider", "./count-down", "./date-picker", "./dialog", "./divider", "./dropdown", "./dropdown-menu", "./ellipsis", "./form", "./grid", "./image", "./image-picker", "./image-preview", "./index-bar", "./input", "./keyboard", "./loading", "./masking", "./nav-bar", "./notice-bar", "./notify", "./pagination", "./picker", "./picker-view", "./popover", "./popup", "./popup-swiper", "./portal", "./progress", "./pull-refresh", "./radio", "./rate", "./search-bar", "./skeleton", "./show-monitor", "./slider", "./stepper", "./steps", "./swipe-action", "./swipe-load", "./switch", "./tab-bar", "./tag", "./textarea", "./toast", "./transition"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("./tabs"), require("./sticky"), require("./load-more"), require("./cell"), require("./action-sheet"), require("./avatar"), require("./badge"), require("./button"), require("./carousel"), require("./checkbox"), require("./circle-progress"), require("./collapse"), require("./context-provider"), require("./count-down"), require("./date-picker"), require("./dialog"), require("./divider"), require("./dropdown"), require("./dropdown-menu"), require("./ellipsis"), require("./form"), require("./grid"), require("./image"), require("./image-picker"), require("./image-preview"), require("./index-bar"), require("./input"), require("./keyboard"), require("./loading"), require("./masking"), require("./nav-bar"), require("./notice-bar"), require("./notify"), require("./pagination"), require("./picker"), require("./picker-view"), require("./popover"), require("./popup"), require("./popup-swiper"), require("./portal"), require("./progress"), require("./pull-refresh"), require("./radio"), require("./rate"), require("./search-bar"), require("./show-monitor"), require("./slider"), require("./stepper"), require("./steps"), require("./swipe-action"), require("./swipe-load"), require("./switch"), require("./tab-bar"), require("./tag"), require("./textarea"), require("./toast"), require("./transition"));
5
+ factory(exports, require("./tabs"), require("./sticky"), require("./load-more"), require("./cell"), require("./action-sheet"), require("./avatar"), require("./badge"), require("./button"), require("./carousel"), require("./checkbox"), require("./circle-progress"), require("./collapse"), require("./context-provider"), require("./count-down"), require("./date-picker"), require("./dialog"), require("./divider"), require("./dropdown"), require("./dropdown-menu"), require("./ellipsis"), require("./form"), require("./grid"), require("./image"), require("./image-picker"), require("./image-preview"), require("./index-bar"), require("./input"), require("./keyboard"), require("./loading"), require("./masking"), require("./nav-bar"), require("./notice-bar"), require("./notify"), require("./pagination"), require("./picker"), require("./picker-view"), require("./popover"), require("./popup"), require("./popup-swiper"), require("./portal"), require("./progress"), require("./pull-refresh"), require("./radio"), require("./rate"), require("./search-bar"), require("./skeleton"), require("./show-monitor"), require("./slider"), require("./stepper"), require("./steps"), require("./swipe-action"), require("./swipe-load"), require("./switch"), require("./tab-bar"), require("./tag"), require("./textarea"), require("./toast"), require("./transition"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.tabs, global.sticky, global.loadMore, global.cell, global.actionSheet, global.avatar, global.badge, global.button, global.carousel, global.checkbox, global.circleProgress, global.collapse, global.contextProvider, global.countDown, global.datePicker, global.dialog, global.divider, global.dropdown, global.dropdownMenu, global.ellipsis, global.form, global.grid, global.image, global.imagePicker, global.imagePreview, global.indexBar, global.input, global.keyboard, global.loading, global.masking, global.navBar, global.noticeBar, global.notify, global.pagination, global.picker, global.pickerView, global.popover, global.popup, global.popupSwiper, global.portal, global.progress, global.pullRefresh, global.radio, global.rate, global.searchBar, global.showMonitor, global.slider, global.stepper, global.steps, global.swipeAction, global.swipeLoad, global._switch, global.tabBar, global.tag, global.textarea, global.toast, global.transition);
10
+ factory(mod.exports, global.tabs, global.sticky, global.loadMore, global.cell, global.actionSheet, global.avatar, global.badge, global.button, global.carousel, global.checkbox, global.circleProgress, global.collapse, global.contextProvider, global.countDown, global.datePicker, global.dialog, global.divider, global.dropdown, global.dropdownMenu, global.ellipsis, global.form, global.grid, global.image, global.imagePicker, global.imagePreview, global.indexBar, global.input, global.keyboard, global.loading, global.masking, global.navBar, global.noticeBar, global.notify, global.pagination, global.picker, global.pickerView, global.popover, global.popup, global.popupSwiper, global.portal, global.progress, global.pullRefresh, global.radio, global.rate, global.searchBar, global.skeleton, global.showMonitor, global.slider, global.stepper, global.steps, global.swipeAction, global.swipeLoad, global._switch, global.tabBar, global.tag, global.textarea, global.toast, global.transition);
11
11
  global.index = mod.exports;
12
12
  }
13
- })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _tabs, _sticky, _loadMore, _cell, _actionSheet, _avatar, _badge, _button, _carousel, _checkbox, _circleProgress, _collapse, _contextProvider, _countDown, _datePicker, _dialog, _divider, _dropdown, _dropdownMenu, _ellipsis, _form, _grid, _image, _imagePicker, _imagePreview, _indexBar, _input, _keyboard, _loading, _masking, _navBar, _noticeBar, _notify, _pagination, _picker, _pickerView, _popover, _popup, _popupSwiper, _portal, _progress, _pullRefresh, _radio, _rate, _searchBar, _showMonitor, _slider, _stepper, _steps, _swipeAction, _swipeLoad, _switch, _tabBar, _tag, _textarea, _toast, _transition) {
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _tabs, _sticky, _loadMore, _cell, _actionSheet, _avatar, _badge, _button, _carousel, _checkbox, _circleProgress, _collapse, _contextProvider, _countDown, _datePicker, _dialog, _divider, _dropdown, _dropdownMenu, _ellipsis, _form, _grid, _image, _imagePicker, _imagePreview, _indexBar, _input, _keyboard, _loading, _masking, _navBar, _noticeBar, _notify, _pagination, _picker, _pickerView, _popover, _popup, _popupSwiper, _portal, _progress, _pullRefresh, _radio, _rate, _searchBar, _skeleton, _showMonitor, _slider, _stepper, _steps, _swipeAction, _swipeLoad, _switch, _tabBar, _tag, _textarea, _toast, _transition) {
14
14
  "use strict";
15
15
 
16
16
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
17
 
18
18
  _exports.__esModule = true;
19
- _exports.Transition = _exports.Toast = _exports.Textarea = _exports.Tag = _exports.Tabs = _exports.TabBar = _exports.Switch = _exports.SwipeLoad = _exports.SwipeAction = _exports.Sticky = _exports.Steps = _exports.Stepper = _exports.Slider = _exports.ShowMonitor = _exports.SearchBar = _exports.Rate = _exports.Radio = _exports.PullRefresh = _exports.Progress = _exports.Portal = _exports.PopupSwiper = _exports.Popup = _exports.Popover = _exports.PickerView = _exports.Picker = _exports.Pagination = _exports.Notify = _exports.NoticeBar = _exports.NavBar = _exports.Masking = _exports.Loading = _exports.LoadMore = _exports.Keyboard = _exports.Input = _exports.IndexBar = _exports.ImagePreview = _exports.ImagePicker = _exports.Image = _exports.Grid = _exports.Form = _exports.Ellipsis = _exports.DropdownMenu = _exports.Dropdown = _exports.Divider = _exports.Dialog = _exports.DatePicker = _exports.CountDown = _exports.ContextProvider = _exports.Collapse = _exports.CircleProgress = _exports.Checkbox = _exports.Cell = _exports.Carousel = _exports.Button = _exports.Badge = _exports.Avatar = _exports.ActionSheet = void 0;
19
+ _exports.Transition = _exports.Toast = _exports.Textarea = _exports.Tag = _exports.Tabs = _exports.TabBar = _exports.Switch = _exports.SwipeLoad = _exports.SwipeAction = _exports.Sticky = _exports.Steps = _exports.Stepper = _exports.Slider = _exports.Skeleton = _exports.ShowMonitor = _exports.SearchBar = _exports.Rate = _exports.Radio = _exports.PullRefresh = _exports.Progress = _exports.Portal = _exports.PopupSwiper = _exports.Popup = _exports.Popover = _exports.PickerView = _exports.Picker = _exports.Pagination = _exports.Notify = _exports.NoticeBar = _exports.NavBar = _exports.Masking = _exports.Loading = _exports.LoadMore = _exports.Keyboard = _exports.Input = _exports.IndexBar = _exports.ImagePreview = _exports.ImagePicker = _exports.Image = _exports.Grid = _exports.Form = _exports.Ellipsis = _exports.DropdownMenu = _exports.Dropdown = _exports.Divider = _exports.Dialog = _exports.DatePicker = _exports.CountDown = _exports.ContextProvider = _exports.Collapse = _exports.CircleProgress = _exports.Checkbox = _exports.Cell = _exports.Carousel = _exports.Button = _exports.Badge = _exports.Avatar = _exports.ActionSheet = void 0;
20
20
  _tabs = _interopRequireDefault(_tabs);
21
21
  _exports.Tabs = _tabs.default;
22
22
  _sticky = _interopRequireDefault(_sticky);
@@ -107,6 +107,8 @@
107
107
  _exports.Rate = _rate.default;
108
108
  _searchBar = _interopRequireDefault(_searchBar);
109
109
  _exports.SearchBar = _searchBar.default;
110
+ _skeleton = _interopRequireDefault(_skeleton);
111
+ _exports.Skeleton = _skeleton.default;
110
112
  _showMonitor = _interopRequireDefault(_showMonitor);
111
113
  _exports.ShowMonitor = _showMonitor.default;
112
114
  _slider = _interopRequireDefault(_slider);
@@ -32,13 +32,13 @@ export interface NavBarProps {
32
32
  */
33
33
  rightContent?: React.ReactNode;
34
34
  /**
35
- * 自定义样式,背景和文字颜色可在此定义
35
+ * 自定义样式,最外层元素的背景文字颜色可在此定义
36
36
  * @en Custom stylesheet, background and text colors can be defined here
37
37
  */
38
38
  style?: React.CSSProperties;
39
39
  /**
40
- * 自定义类名
41
- * @en Custom classname
40
+ * 内层自定义类名
41
+ * @en Inner custom classname
42
42
  */
43
43
  className?: string;
44
44
  /**