antd-mobile 5.14.1 → 5.15.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 (139) hide show
  1. package/2x/README.md +1 -2
  2. package/2x/bundle/antd-mobile.cjs.js +216 -197
  3. package/2x/bundle/antd-mobile.es.js +211 -192
  4. package/2x/bundle/css-vars-patch.css +53 -53
  5. package/2x/bundle/style.css +9 -6
  6. package/2x/cjs/components/badge/badge.css +1 -1
  7. package/2x/cjs/components/badge/badge.d.ts +2 -0
  8. package/2x/cjs/components/badge/badge.js +2 -1
  9. package/2x/cjs/components/checkbox/checkbox.d.ts +18 -2
  10. package/2x/cjs/components/checkbox/checkbox.js +14 -4
  11. package/2x/cjs/components/checkbox/index.d.ts +13 -2
  12. package/2x/cjs/components/form/form-item.js +2 -4
  13. package/2x/cjs/components/form/form-subscribe.d.ts +7 -2
  14. package/2x/cjs/components/form/form-subscribe.js +28 -16
  15. package/2x/cjs/components/form/form.d.ts +1 -1
  16. package/2x/cjs/components/form/index.d.ts +2 -2
  17. package/2x/cjs/components/infinite-scroll/infinite-scroll.js +13 -4
  18. package/2x/cjs/components/list/list.css +3 -0
  19. package/2x/cjs/components/list/list.d.ts +1 -1
  20. package/2x/cjs/components/rate/rate.css +2 -2
  21. package/2x/cjs/components/rate/rate.js +3 -3
  22. package/2x/cjs/components/rate/star.d.ts +2 -0
  23. package/2x/cjs/components/rate/star.js +37 -0
  24. package/2x/cjs/components/safe-area/safe-area.css +3 -2
  25. package/2x/cjs/components/text-area/text-area.d.ts +1 -0
  26. package/2x/cjs/components/text-area/text-area.js +5 -0
  27. package/2x/cjs/components/toast/methods.js +32 -73
  28. package/2x/cjs/components/toast/toast.js +6 -2
  29. package/2x/cjs/components/water-mark/water-mark.js +3 -2
  30. package/2x/cjs/global/css-vars-patch.css +53 -53
  31. package/2x/cjs/global/global.css +0 -1
  32. package/2x/cjs/global/theme-default.css +0 -1
  33. package/2x/cjs/utils/render-imperatively.d.ts +4 -1
  34. package/2x/cjs/utils/render-imperatively.js +23 -11
  35. package/2x/cjs/utils/use-props-value.js +2 -6
  36. package/2x/es/components/badge/badge.css +1 -1
  37. package/2x/es/components/badge/badge.d.ts +2 -0
  38. package/2x/es/components/badge/badge.js +2 -1
  39. package/2x/es/components/checkbox/checkbox.d.ts +18 -2
  40. package/2x/es/components/checkbox/checkbox.js +15 -3
  41. package/2x/es/components/checkbox/index.d.ts +13 -2
  42. package/2x/es/components/form/form-item.js +2 -2
  43. package/2x/es/components/form/form-subscribe.d.ts +7 -2
  44. package/2x/es/components/form/form-subscribe.js +21 -14
  45. package/2x/es/components/form/form.d.ts +1 -1
  46. package/2x/es/components/form/index.d.ts +2 -2
  47. package/2x/es/components/infinite-scroll/infinite-scroll.js +14 -5
  48. package/2x/es/components/list/list.css +3 -0
  49. package/2x/es/components/list/list.d.ts +1 -1
  50. package/2x/es/components/rate/rate.css +2 -2
  51. package/2x/es/components/rate/rate.js +2 -2
  52. package/2x/es/components/rate/star.d.ts +2 -0
  53. package/2x/es/components/rate/star.js +25 -0
  54. package/2x/es/components/safe-area/safe-area.css +3 -2
  55. package/2x/es/components/text-area/text-area.d.ts +1 -0
  56. package/2x/es/components/text-area/text-area.js +5 -0
  57. package/2x/es/components/toast/methods.js +29 -67
  58. package/2x/es/components/toast/toast.js +6 -2
  59. package/2x/es/components/water-mark/water-mark.js +3 -2
  60. package/2x/es/global/css-vars-patch.css +53 -53
  61. package/2x/es/global/global.css +0 -1
  62. package/2x/es/global/theme-default.css +0 -1
  63. package/2x/es/utils/render-imperatively.d.ts +4 -1
  64. package/2x/es/utils/render-imperatively.js +23 -11
  65. package/2x/es/utils/use-props-value.js +2 -6
  66. package/2x/package.json +5 -5
  67. package/2x/umd/antd-mobile.js +1 -1
  68. package/README.md +1 -2
  69. package/bundle/antd-mobile.cjs.js +216 -197
  70. package/bundle/antd-mobile.es.js +211 -192
  71. package/bundle/style.css +9 -6
  72. package/cjs/components/badge/badge.css +1 -1
  73. package/cjs/components/badge/badge.d.ts +2 -0
  74. package/cjs/components/badge/badge.js +2 -1
  75. package/cjs/components/checkbox/checkbox.d.ts +18 -2
  76. package/cjs/components/checkbox/checkbox.js +14 -4
  77. package/cjs/components/checkbox/index.d.ts +13 -2
  78. package/cjs/components/form/form-item.js +2 -4
  79. package/cjs/components/form/form-subscribe.d.ts +7 -2
  80. package/cjs/components/form/form-subscribe.js +28 -16
  81. package/cjs/components/form/form.d.ts +1 -1
  82. package/cjs/components/form/index.d.ts +2 -2
  83. package/cjs/components/infinite-scroll/infinite-scroll.js +13 -4
  84. package/cjs/components/list/list.css +3 -0
  85. package/cjs/components/list/list.d.ts +1 -1
  86. package/cjs/components/rate/rate.css +2 -2
  87. package/cjs/components/rate/rate.js +3 -3
  88. package/cjs/components/rate/star.d.ts +2 -0
  89. package/cjs/components/rate/star.js +37 -0
  90. package/cjs/components/safe-area/safe-area.css +3 -2
  91. package/cjs/components/text-area/text-area.d.ts +1 -0
  92. package/cjs/components/text-area/text-area.js +5 -0
  93. package/cjs/components/toast/methods.js +32 -73
  94. package/cjs/components/toast/toast.js +6 -2
  95. package/cjs/components/water-mark/water-mark.js +3 -2
  96. package/cjs/global/global.css +0 -1
  97. package/cjs/global/theme-default.css +0 -1
  98. package/cjs/utils/render-imperatively.d.ts +4 -1
  99. package/cjs/utils/render-imperatively.js +23 -11
  100. package/cjs/utils/use-props-value.js +2 -6
  101. package/es/components/badge/badge.css +1 -1
  102. package/es/components/badge/badge.d.ts +2 -0
  103. package/es/components/badge/badge.js +2 -1
  104. package/es/components/checkbox/checkbox.d.ts +18 -2
  105. package/es/components/checkbox/checkbox.js +15 -3
  106. package/es/components/checkbox/index.d.ts +13 -2
  107. package/es/components/form/form-item.js +2 -2
  108. package/es/components/form/form-subscribe.d.ts +7 -2
  109. package/es/components/form/form-subscribe.js +21 -14
  110. package/es/components/form/form.d.ts +1 -1
  111. package/es/components/form/index.d.ts +2 -2
  112. package/es/components/infinite-scroll/infinite-scroll.js +14 -5
  113. package/es/components/list/list.css +3 -0
  114. package/es/components/list/list.d.ts +1 -1
  115. package/es/components/rate/rate.css +2 -2
  116. package/es/components/rate/rate.js +2 -2
  117. package/es/components/rate/star.d.ts +2 -0
  118. package/es/components/rate/star.js +25 -0
  119. package/es/components/safe-area/safe-area.css +3 -2
  120. package/es/components/text-area/text-area.d.ts +1 -0
  121. package/es/components/text-area/text-area.js +5 -0
  122. package/es/components/toast/methods.js +29 -67
  123. package/es/components/toast/toast.js +6 -2
  124. package/es/components/water-mark/water-mark.js +3 -2
  125. package/es/global/global.css +0 -1
  126. package/es/global/theme-default.css +0 -1
  127. package/es/utils/render-imperatively.d.ts +4 -1
  128. package/es/utils/render-imperatively.js +23 -11
  129. package/es/utils/use-props-value.js +2 -6
  130. package/package.json +5 -5
  131. package/umd/antd-mobile.js +1 -1
  132. package/2x/cjs/components/form/form-imperative-item.d.ts +0 -5
  133. package/2x/cjs/components/form/form-imperative-item.js +0 -57
  134. package/2x/es/components/form/form-imperative-item.d.ts +0 -5
  135. package/2x/es/components/form/form-imperative-item.js +0 -38
  136. package/cjs/components/form/form-imperative-item.d.ts +0 -5
  137. package/cjs/components/form/form-imperative-item.js +0 -57
  138. package/es/components/form/form-imperative-item.d.ts +0 -5
  139. package/es/components/form/form-imperative-item.js +0 -38
@@ -23,10 +23,14 @@ export const InternalToast = p => {
23
23
 
24
24
  switch (icon) {
25
25
  case 'success':
26
- return React.createElement(CheckOutline, null);
26
+ return React.createElement(CheckOutline, {
27
+ className: `${classPrefix}-icon-success`
28
+ });
27
29
 
28
30
  case 'fail':
29
- return React.createElement(CloseOutline, null);
31
+ return React.createElement(CloseOutline, {
32
+ className: `${classPrefix}-icon-fail`
33
+ });
30
34
 
31
35
  case 'loading':
32
36
  return React.createElement(SpinLoading, {
@@ -44,13 +44,14 @@ export const WaterMark = p => {
44
44
  const img = new Image();
45
45
  img.crossOrigin = 'anonymous';
46
46
  img.referrerPolicy = 'no-referrer';
47
- img.src = image;
48
47
 
49
48
  img.onload = () => {
50
49
  ctx.drawImage(img, -imageWidth * ratio / 2, -imageHeight * ratio / 2, imageWidth * ratio, imageHeight * ratio);
51
50
  ctx.restore();
52
51
  setBase64Url(canvas.toDataURL());
53
52
  };
53
+
54
+ img.src = image;
54
55
  } else if (content) {
55
56
  ctx.textBaseline = 'middle';
56
57
  ctx.textAlign = 'center'; // 文字绕中间旋转
@@ -65,7 +66,7 @@ export const WaterMark = p => {
65
66
  setBase64Url(canvas.toDataURL());
66
67
  }
67
68
  } else {
68
- throw new Error('当前环境不支持Canvas');
69
+ throw new Error('Canvas is not supported in the current environment');
69
70
  }
70
71
  }, [gapX, gapY, rotate, fontStyle, fontWeight, width, height, fontFamily, fontColor, image, content, fontSize]);
71
72
  return withNativeProps(props, React.createElement("div", {
@@ -12,7 +12,6 @@
12
12
  --adm-font-size-8: 16px;
13
13
  --adm-font-size-9: 17px;
14
14
  --adm-font-size-10: 18px;
15
- --adm-hd: 1;
16
15
  --adm-color-primary: #1677ff;
17
16
  --adm-color-success: #00b578;
18
17
  --adm-color-warning: #ff8f1f;
@@ -12,7 +12,6 @@
12
12
  --adm-font-size-8: 16px;
13
13
  --adm-font-size-9: 17px;
14
14
  --adm-font-size-10: 18px;
15
- --adm-hd: 1;
16
15
  --adm-color-primary: #1677ff;
17
16
  --adm-color-success: #00b578;
18
17
  --adm-color-warning: #ff8f1f;
@@ -4,7 +4,10 @@ declare type ImperativeProps = {
4
4
  onClose?: () => void;
5
5
  afterClose?: () => void;
6
6
  };
7
- export declare function renderImperatively(element: ReactElement<ImperativeProps>): {
7
+ declare type TargetElement = ReactElement<ImperativeProps>;
8
+ export declare type ImperativeHandler = {
8
9
  close: () => void;
10
+ replace: (element: TargetElement) => void;
9
11
  };
12
+ export declare function renderImperatively(element: TargetElement): ImperativeHandler;
10
13
  export {};
@@ -4,6 +4,8 @@ export function renderImperatively(element) {
4
4
  const Wrapper = React.forwardRef((_, ref) => {
5
5
  const [visible, setVisible] = useState(false);
6
6
  const closedRef = useRef(false);
7
+ const [elementToRender, setElementToRender] = useState(element);
8
+ const keyRef = useRef(0);
7
9
  useEffect(() => {
8
10
  if (!closedRef.current) {
9
11
  setVisible(true);
@@ -17,20 +19,28 @@ export function renderImperatively(element) {
17
19
 
18
20
  closedRef.current = true;
19
21
  setVisible(false);
20
- (_b = (_a = element.props).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
22
+ (_b = (_a = elementToRender.props).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
21
23
  }
22
24
 
23
25
  function afterClose() {
24
26
  var _a, _b;
25
27
 
26
28
  unmount();
27
- (_b = (_a = element.props).afterClose) === null || _b === void 0 ? void 0 : _b.call(_a);
29
+ (_b = (_a = elementToRender.props).afterClose) === null || _b === void 0 ? void 0 : _b.call(_a);
28
30
  }
29
31
 
30
32
  useImperativeHandle(ref, () => ({
31
- close: onClose
33
+ close: onClose,
34
+ replace: element => {
35
+ var _a, _b;
36
+
37
+ keyRef.current++;
38
+ (_b = (_a = elementToRender.props).afterClose) === null || _b === void 0 ? void 0 : _b.call(_a);
39
+ setElementToRender(element);
40
+ }
32
41
  }));
33
- return React.cloneElement(element, Object.assign(Object.assign({}, element.props), {
42
+ return React.cloneElement(elementToRender, Object.assign(Object.assign({}, elementToRender.props), {
43
+ key: keyRef.current,
34
44
  visible,
35
45
  onClose,
36
46
  afterClose
@@ -40,14 +50,16 @@ export function renderImperatively(element) {
40
50
  const unmount = renderToBody(React.createElement(Wrapper, {
41
51
  ref: wrapperRef
42
52
  }));
53
+ return {
54
+ close: () => {
55
+ var _a;
43
56
 
44
- function close() {
45
- var _a;
46
-
47
- (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.close();
48
- }
57
+ (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.close();
58
+ },
59
+ replace: element => {
60
+ var _a;
49
61
 
50
- return {
51
- close
62
+ (_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.replace(element);
63
+ }
52
64
  };
53
65
  }
@@ -15,12 +15,8 @@ export function usePropsValue(options) {
15
15
 
16
16
  const setState = useMemoizedFn(v => {
17
17
  const nextValue = typeof v === 'function' ? v(stateRef.current) : v;
18
-
19
- if (value === undefined) {
20
- stateRef.current = nextValue;
21
- update();
22
- }
23
-
18
+ stateRef.current = nextValue;
19
+ update();
24
20
  onChange === null || onChange === void 0 ? void 0 : onChange(nextValue);
25
21
  });
26
22
  return [stateRef.current, setState];
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "antd-mobile",
3
- "version": "5.14.1",
3
+ "version": "5.15.0",
4
4
  "dependencies": {
5
5
  "@floating-ui/dom": "^0.5.2",
6
6
  "@react-spring/web": "^9.4.5",
7
7
  "@use-gesture/react": "10.2.15",
8
- "ahooks": "^3.4.0",
9
- "antd-mobile-icons": "^0.2.2",
8
+ "ahooks": "^3.4.1",
9
+ "antd-mobile-icons": "^0.3.0",
10
10
  "antd-mobile-v5-count": "^1.0.1",
11
11
  "big.js": "^6.1.1",
12
12
  "classnames": "^2.3.1",
13
- "dayjs": "^1.11.2",
13
+ "dayjs": "^1.11.3",
14
14
  "lodash": "^4.17.21",
15
- "rc-field-form": "^1.26.6",
15
+ "rc-field-form": "~1.26.7",
16
16
  "react-is": "^17.0.2",
17
17
  "staged-components": "^1.1.3",
18
18
  "tslib": "^2.4.0",