antd-mobile 5.12.2 → 5.12.5

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 (122) hide show
  1. package/2x/cjs/components/action-sheet/action-sheet.css +22 -7
  2. package/2x/cjs/components/action-sheet/action-sheet.js +8 -16
  3. package/2x/cjs/components/badge/badge.d.ts +1 -1
  4. package/2x/cjs/components/badge/badge.js +3 -1
  5. package/2x/cjs/components/badge/index.d.ts +1 -1
  6. package/2x/cjs/components/button/button.d.ts +6 -4
  7. package/2x/cjs/components/button/button.js +5 -1
  8. package/2x/cjs/components/calendar/calendar.css +4 -0
  9. package/2x/cjs/components/calendar/calendar.d.ts +1 -0
  10. package/2x/cjs/components/calendar/calendar.js +2 -2
  11. package/2x/cjs/components/form/form-item.js +1 -4
  12. package/2x/cjs/components/image/broken-image-icon.d.ts +1 -0
  13. package/2x/cjs/components/image/broken-image-icon.js +21 -0
  14. package/2x/cjs/components/image/image-icon.d.ts +1 -0
  15. package/2x/cjs/components/image/image-icon.js +21 -0
  16. package/2x/cjs/components/image/image.css +4 -2
  17. package/2x/cjs/components/image/image.d.ts +1 -0
  18. package/2x/cjs/components/image/image.js +10 -6
  19. package/2x/cjs/components/image-uploader/image-uploader.js +1 -4
  20. package/2x/cjs/components/infinite-scroll/infinite-scroll.js +8 -6
  21. package/2x/cjs/components/popover/popover.css +1 -0
  22. package/2x/cjs/components/search-bar/search-bar.d.ts +1 -1
  23. package/2x/cjs/components/search-bar/search-bar.js +3 -0
  24. package/2x/cjs/components/side-bar/side-bar.d.ts +2 -1
  25. package/2x/cjs/components/swiper/index.d.ts +1 -1
  26. package/2x/cjs/components/swiper/swiper.d.ts +1 -1
  27. package/2x/cjs/components/text-area/text-area.js +2 -1
  28. package/2x/cjs/components/toast/toast.css +1 -1
  29. package/2x/cjs/utils/get-scroll-parent.js +1 -1
  30. package/2x/es/components/action-sheet/action-sheet.css +22 -7
  31. package/2x/es/components/action-sheet/action-sheet.js +8 -15
  32. package/2x/es/components/badge/badge.d.ts +1 -1
  33. package/2x/es/components/badge/badge.js +1 -1
  34. package/2x/es/components/badge/index.d.ts +1 -1
  35. package/2x/es/components/button/button.d.ts +6 -4
  36. package/2x/es/components/button/button.js +5 -1
  37. package/2x/es/components/calendar/calendar.css +4 -0
  38. package/2x/es/components/calendar/calendar.d.ts +1 -0
  39. package/2x/es/components/calendar/calendar.js +2 -2
  40. package/2x/es/components/form/form-item.js +1 -4
  41. package/2x/es/components/image/broken-image-icon.d.ts +1 -0
  42. package/2x/es/components/image/broken-image-icon.js +9 -0
  43. package/2x/es/components/image/image-icon.d.ts +1 -0
  44. package/2x/es/components/image/image-icon.js +9 -0
  45. package/2x/es/components/image/image.css +4 -2
  46. package/2x/es/components/image/image.d.ts +1 -0
  47. package/2x/es/components/image/image.js +8 -5
  48. package/2x/es/components/image-uploader/image-uploader.js +2 -5
  49. package/2x/es/components/infinite-scroll/infinite-scroll.js +8 -6
  50. package/2x/es/components/popover/popover.css +1 -0
  51. package/2x/es/components/search-bar/search-bar.d.ts +1 -1
  52. package/2x/es/components/search-bar/search-bar.js +3 -0
  53. package/2x/es/components/side-bar/side-bar.d.ts +2 -1
  54. package/2x/es/components/swiper/index.d.ts +1 -1
  55. package/2x/es/components/swiper/swiper.d.ts +1 -1
  56. package/2x/es/components/text-area/text-area.js +2 -1
  57. package/2x/es/components/toast/toast.css +1 -1
  58. package/2x/es/utils/get-scroll-parent.js +1 -1
  59. package/2x/package.json +5 -5
  60. package/bundle/antd-mobile.cjs.js +193 -177
  61. package/bundle/antd-mobile.es.js +195 -179
  62. package/bundle/style.css +99 -81
  63. package/cjs/components/action-sheet/action-sheet.css +19 -7
  64. package/cjs/components/action-sheet/action-sheet.js +8 -16
  65. package/cjs/components/badge/badge.d.ts +1 -1
  66. package/cjs/components/badge/badge.js +3 -1
  67. package/cjs/components/badge/index.d.ts +1 -1
  68. package/cjs/components/button/button.d.ts +6 -4
  69. package/cjs/components/button/button.js +5 -1
  70. package/cjs/components/calendar/calendar.css +3 -0
  71. package/cjs/components/calendar/calendar.d.ts +1 -0
  72. package/cjs/components/calendar/calendar.js +2 -2
  73. package/cjs/components/form/form-item.js +1 -4
  74. package/cjs/components/image/broken-image-icon.d.ts +1 -0
  75. package/cjs/components/image/broken-image-icon.js +21 -0
  76. package/cjs/components/image/image-icon.d.ts +1 -0
  77. package/cjs/components/image/image-icon.js +21 -0
  78. package/cjs/components/image/image.css +4 -2
  79. package/cjs/components/image/image.d.ts +1 -0
  80. package/cjs/components/image/image.js +10 -6
  81. package/cjs/components/image-uploader/image-uploader.js +1 -4
  82. package/cjs/components/infinite-scroll/infinite-scroll.js +8 -6
  83. package/cjs/components/popover/popover.css +1 -0
  84. package/cjs/components/search-bar/search-bar.d.ts +1 -1
  85. package/cjs/components/search-bar/search-bar.js +3 -0
  86. package/cjs/components/side-bar/side-bar.d.ts +2 -1
  87. package/cjs/components/swiper/index.d.ts +1 -1
  88. package/cjs/components/swiper/swiper.d.ts +1 -1
  89. package/cjs/components/text-area/text-area.js +2 -1
  90. package/cjs/components/toast/toast.css +1 -1
  91. package/cjs/utils/get-scroll-parent.js +1 -1
  92. package/es/components/action-sheet/action-sheet.css +19 -7
  93. package/es/components/action-sheet/action-sheet.js +8 -15
  94. package/es/components/badge/badge.d.ts +1 -1
  95. package/es/components/badge/badge.js +1 -1
  96. package/es/components/badge/index.d.ts +1 -1
  97. package/es/components/button/button.d.ts +6 -4
  98. package/es/components/button/button.js +5 -1
  99. package/es/components/calendar/calendar.css +3 -0
  100. package/es/components/calendar/calendar.d.ts +1 -0
  101. package/es/components/calendar/calendar.js +2 -2
  102. package/es/components/form/form-item.js +1 -4
  103. package/es/components/image/broken-image-icon.d.ts +1 -0
  104. package/es/components/image/broken-image-icon.js +9 -0
  105. package/es/components/image/image-icon.d.ts +1 -0
  106. package/es/components/image/image-icon.js +9 -0
  107. package/es/components/image/image.css +4 -2
  108. package/es/components/image/image.d.ts +1 -0
  109. package/es/components/image/image.js +8 -5
  110. package/es/components/image-uploader/image-uploader.js +2 -5
  111. package/es/components/infinite-scroll/infinite-scroll.js +8 -6
  112. package/es/components/popover/popover.css +1 -0
  113. package/es/components/search-bar/search-bar.d.ts +1 -1
  114. package/es/components/search-bar/search-bar.js +3 -0
  115. package/es/components/side-bar/side-bar.d.ts +2 -1
  116. package/es/components/swiper/index.d.ts +1 -1
  117. package/es/components/swiper/swiper.d.ts +1 -1
  118. package/es/components/text-area/text-area.js +2 -1
  119. package/es/components/toast/toast.css +1 -1
  120. package/es/utils/get-scroll-parent.js +1 -1
  121. package/package.json +5 -5
  122. package/umd/antd-mobile.js +1 -1
package/bundle/style.css CHANGED
@@ -63,19 +63,31 @@ div.adm-px-tester {
63
63
  justify-content: center;
64
64
  color: var(--adm-color-weak);
65
65
  font-size: 15px;
66
- padding: 18px 16px;
66
+ padding: 18px 12px;
67
+ border-bottom: 1px solid var(--adm-border-color);
68
+ }
69
+ .adm-action-sheet-button-list {
67
70
  border-bottom: 1px solid var(--adm-border-color);
68
71
  }
69
72
  .adm-action-sheet-button-item-wrapper {
70
- background-color: #ffffff;
71
- border-top: 1px solid var(--adm-border-color);
73
+ border-bottom: 1px solid var(--adm-border-color);
72
74
  }
73
- .adm-action-sheet-button-item-wrapper:first-child {
74
- border-top: none;
75
+ .adm-action-sheet-button-item-wrapper:last-child {
76
+ border-bottom: none;
75
77
  }
76
78
  .adm-action-sheet-button-item {
77
- padding: 14px;
78
79
  text-align: center;
80
+ display: block;
81
+ background-color: #ffffff;
82
+ padding: 16px;
83
+ }
84
+ .adm-action-sheet-button-item:active {
85
+ background-color: #eeeeee;
86
+ }
87
+ .adm-action-sheet-button-item-disabled {
88
+ cursor: not-allowed;
89
+ pointer-events: none;
90
+ opacity: 0.4;
79
91
  }
80
92
  .adm-action-sheet-button-item-name {
81
93
  color: var(--adm-color-text);
@@ -84,7 +96,7 @@ div.adm-px-tester {
84
96
  .adm-action-sheet-button-item-description {
85
97
  font-size: 12px;
86
98
  color: var(--adm-color-weak);
87
- padding-top: 4px;
99
+ padding-top: 2px;
88
100
  }
89
101
  .adm-action-sheet-button-item-danger .adm-action-sheet-button-item-name {
90
102
  color: var(--adm-color-danger);
@@ -145,6 +157,77 @@ div.adm-px-tester {
145
157
  .adm-mask-content {
146
158
  z-index: 1;
147
159
  }
160
+ .adm-safe-area {
161
+ display: block;
162
+ width: 100%;
163
+ }
164
+ .adm-safe-area-position-top {
165
+ padding-top: calc(env(safe-area-inset-top) * var(--adm-hd));
166
+ }
167
+ .adm-safe-area-position-bottom {
168
+ padding-bottom: calc(env(safe-area-inset-bottom) * var(--adm-hd));
169
+ }
170
+ .adm-auto-center {
171
+ display: flex;
172
+ justify-content: center;
173
+ }
174
+ .adm-auto-center-content {
175
+ flex: 0 1 auto;
176
+ }
177
+ .adm-avatar {
178
+ --size: var(--adm-avatar-size, 44px);
179
+ --border-radius: var(--adm-avatar-border-radius, 4px);
180
+ border-radius: var(--border-radius);
181
+ }
182
+ .adm-avatar.adm-image {
183
+ --width: var(--size);
184
+ --height: var(--size);
185
+ }
186
+ .adm-avatar-fallback {
187
+ height: 100%;
188
+ width: 100%;
189
+ display: block;
190
+ }
191
+ .adm-badge-wrap {
192
+ display: inline-block;
193
+ position: relative;
194
+ }
195
+ .adm-badge {
196
+ display: inline-flex;
197
+ vertical-align: middle;
198
+ box-sizing: content-box;
199
+ border-radius: 100px;
200
+ background-color: var(--color);
201
+ --right: 0;
202
+ --top: 0;
203
+ --color: var(--adm-badge-color, #ff411c);
204
+ }
205
+ .adm-badge-content {
206
+ color: #fff;
207
+ box-sizing: border-box;
208
+ min-width: 8px;
209
+ padding: 1px 4px;
210
+ font-size: 9px;
211
+ line-height: 12px;
212
+ white-space: nowrap;
213
+ font-weight: normal;
214
+ text-align: center;
215
+ }
216
+ .adm-badge-fixed {
217
+ position: absolute;
218
+ right: var(--right);
219
+ top: var(--top);
220
+ transform: translate(50%, -50%);
221
+ }
222
+ .adm-badge-dot {
223
+ min-width: 10px;
224
+ width: 10px;
225
+ height: 10px;
226
+ border-radius: 5px;
227
+ }
228
+ .adm-badge-bordered {
229
+ border: solid 1px var(--adm-color-white);
230
+ }
148
231
  .adm-button {
149
232
  --color: var(--adm-color-white);
150
233
  --text-color: var(--adm-button-text-color, var(--adm-color-text));
@@ -275,77 +358,6 @@ div.adm-px-tester {
275
358
  .adm-dot-loading {
276
359
  display: inline-block;
277
360
  }
278
- .adm-safe-area {
279
- display: block;
280
- width: 100%;
281
- }
282
- .adm-safe-area-position-top {
283
- padding-top: calc(env(safe-area-inset-top) * var(--adm-hd));
284
- }
285
- .adm-safe-area-position-bottom {
286
- padding-bottom: calc(env(safe-area-inset-bottom) * var(--adm-hd));
287
- }
288
- .adm-auto-center {
289
- display: flex;
290
- justify-content: center;
291
- }
292
- .adm-auto-center-content {
293
- flex: 0 1 auto;
294
- }
295
- .adm-avatar {
296
- --size: var(--adm-avatar-size, 44px);
297
- --border-radius: var(--adm-avatar-border-radius, 4px);
298
- border-radius: var(--border-radius);
299
- }
300
- .adm-avatar.adm-image {
301
- --width: var(--size);
302
- --height: var(--size);
303
- }
304
- .adm-avatar-fallback {
305
- height: 100%;
306
- width: 100%;
307
- display: block;
308
- }
309
- .adm-badge-wrap {
310
- display: inline-block;
311
- position: relative;
312
- }
313
- .adm-badge {
314
- display: inline-flex;
315
- vertical-align: middle;
316
- box-sizing: content-box;
317
- border-radius: 100px;
318
- background-color: var(--color);
319
- --right: 0;
320
- --top: 0;
321
- --color: var(--adm-badge-color, #ff411c);
322
- }
323
- .adm-badge-content {
324
- color: #fff;
325
- box-sizing: border-box;
326
- min-width: 8px;
327
- padding: 1px 4px;
328
- font-size: 9px;
329
- line-height: 12px;
330
- white-space: nowrap;
331
- font-weight: normal;
332
- text-align: center;
333
- }
334
- .adm-badge-fixed {
335
- position: absolute;
336
- right: var(--right);
337
- top: var(--top);
338
- transform: translate(50%, -50%);
339
- }
340
- .adm-badge-dot {
341
- min-width: 10px;
342
- width: 10px;
343
- height: 10px;
344
- border-radius: 5px;
345
- }
346
- .adm-badge-bordered {
347
- border: solid 1px var(--adm-color-white);
348
- }
349
361
  .adm-calendar .adm-calendar-header {
350
362
  display: flex;
351
363
  flex-direction: row;
@@ -419,6 +431,9 @@ div.adm-px-tester {
419
431
  border-top-right-radius: 4px;
420
432
  border-bottom-right-radius: 4px;
421
433
  }
434
+ .adm-calendar-cell.adm-calendar-cell-disabled.adm-calendar-cell.adm-calendar-cell-selected {
435
+ color: var(--adm-color-light);
436
+ }
422
437
  .adm-calendar-cell .adm-calendar-cell-top {
423
438
  flex: none;
424
439
  font-size: 18px;
@@ -1186,12 +1201,14 @@ a.adm-list-item:active:not(.adm-list-item-disabled)::after {
1186
1201
  }
1187
1202
  .adm-image-tip {
1188
1203
  position: relative;
1189
- background-color: #f3f3f3;
1204
+ background-color: #f5f5f5;
1190
1205
  height: 100%;
1191
1206
  min-height: 24px;
1192
1207
  min-width: 24px;
1193
1208
  }
1194
- .adm-image-tip > .antd-mobile-icon {
1209
+ .adm-image-tip > svg {
1210
+ width: 24px;
1211
+ height: 24px;
1195
1212
  position: absolute;
1196
1213
  left: 50%;
1197
1214
  top: 50%;
@@ -1607,6 +1624,7 @@ a.adm-list-item:active:not(.adm-list-item-disabled)::after {
1607
1624
  border-radius: 8px;
1608
1625
  box-shadow: 0 0 30px 0 rgba(51, 51, 51, 0.2);
1609
1626
  font-size: 15px;
1627
+ width: max-content;
1610
1628
  min-width: 32px;
1611
1629
  max-width: calc(100vw - 24px);
1612
1630
  overflow-y: hidden;
@@ -3756,7 +3774,7 @@ a.adm-list-item:active:not(.adm-list-item-disabled)::after {
3756
3774
  transform: translate(-50%, -50%);
3757
3775
  width: auto;
3758
3776
  min-width: 96px;
3759
- max-width: 70%;
3777
+ max-width: 200px;
3760
3778
  max-height: 70%;
3761
3779
  overflow: auto;
3762
3780
  color: white;
@@ -8,19 +8,31 @@
8
8
  justify-content: center;
9
9
  color: var(--adm-color-weak);
10
10
  font-size: 15px;
11
- padding: 18px 16px;
11
+ padding: 18px 12px;
12
+ border-bottom: 1px solid var(--adm-border-color);
13
+ }
14
+ .adm-action-sheet-button-list {
12
15
  border-bottom: 1px solid var(--adm-border-color);
13
16
  }
14
17
  .adm-action-sheet-button-item-wrapper {
15
- background-color: #ffffff;
16
- border-top: 1px solid var(--adm-border-color);
18
+ border-bottom: 1px solid var(--adm-border-color);
17
19
  }
18
- .adm-action-sheet-button-item-wrapper:first-child {
19
- border-top: none;
20
+ .adm-action-sheet-button-item-wrapper:last-child {
21
+ border-bottom: none;
20
22
  }
21
23
  .adm-action-sheet-button-item {
22
- padding: 14px;
23
24
  text-align: center;
25
+ display: block;
26
+ background-color: #ffffff;
27
+ padding: 16px;
28
+ }
29
+ .adm-action-sheet-button-item:active {
30
+ background-color: #eeeeee;
31
+ }
32
+ .adm-action-sheet-button-item-disabled {
33
+ cursor: not-allowed;
34
+ pointer-events: none;
35
+ opacity: 0.4;
24
36
  }
25
37
  .adm-action-sheet-button-item-name {
26
38
  color: var(--adm-color-text);
@@ -29,7 +41,7 @@
29
41
  .adm-action-sheet-button-item-description {
30
42
  font-size: 12px;
31
43
  color: var(--adm-color-weak);
32
- padding-top: 4px;
44
+ padding-top: 2px;
33
45
  }
34
46
  .adm-action-sheet-button-item-danger .adm-action-sheet-button-item-name {
35
47
  color: var(--adm-color-danger);
@@ -16,8 +16,6 @@ var _classnames = _interopRequireDefault(require("classnames"));
16
16
 
17
17
  var _popup = _interopRequireDefault(require("../popup"));
18
18
 
19
- var _button = _interopRequireDefault(require("../button"));
20
-
21
19
  var _safeArea = _interopRequireDefault(require("../safe-area"));
22
20
 
23
21
  var _renderImperatively = require("../../utils/render-imperatively");
@@ -60,11 +58,11 @@ const ActionSheet = p => {
60
58
  }, props.actions.map((action, index) => _react.default.createElement("div", {
61
59
  key: action.key,
62
60
  className: `${classPrefix}-button-item-wrapper`
63
- }, _react.default.createElement(_button.default, {
64
- block: true,
65
- fill: 'none',
66
- shape: 'rectangular',
67
- disabled: action.disabled,
61
+ }, _react.default.createElement("a", {
62
+ className: (0, _classnames.default)('adm-plain-anchor', `${classPrefix}-button-item`, {
63
+ [`${classPrefix}-button-item-danger`]: action.danger,
64
+ [`${classPrefix}-button-item-disabled`]: action.disabled
65
+ }),
68
66
  onClick: () => {
69
67
  var _a, _b, _c;
70
68
 
@@ -74,10 +72,7 @@ const ActionSheet = p => {
74
72
  if (props.closeOnAction) {
75
73
  (_c = props.onClose) === null || _c === void 0 ? void 0 : _c.call(props);
76
74
  }
77
- },
78
- className: (0, _classnames.default)(`${classPrefix}-button-item`, {
79
- [`${classPrefix}-button-item-danger`]: action.danger
80
- })
75
+ }
81
76
  }, _react.default.createElement("div", {
82
77
  className: `${classPrefix}-button-item-name`
83
78
  }, action.text), action.description && _react.default.createElement("div", {
@@ -86,11 +81,8 @@ const ActionSheet = p => {
86
81
  className: `${classPrefix}-cancel`
87
82
  }, _react.default.createElement("div", {
88
83
  className: `${classPrefix}-button-item-wrapper`
89
- }, _react.default.createElement(_button.default, {
90
- block: true,
91
- fill: 'none',
92
- shape: 'rectangular',
93
- className: `${classPrefix}-button-item`,
84
+ }, _react.default.createElement("a", {
85
+ className: (0, _classnames.default)('adm-plain-anchor', `${classPrefix}-button-item`),
94
86
  onClick: () => {
95
87
  var _a;
96
88
 
@@ -1,6 +1,6 @@
1
1
  import React, { FC } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
- export declare const dot: unique symbol;
3
+ export declare const dot: JSX.Element;
4
4
  export declare type BadgeProps = {
5
5
  content?: React.ReactNode | typeof dot;
6
6
  color?: string;
@@ -14,7 +14,9 @@ var _nativeProps = require("../../utils/native-props");
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
 
16
16
  const classPrefix = `adm-badge`;
17
- const dot = Symbol();
17
+
18
+ const dot = _react.default.createElement(_react.default.Fragment, null);
19
+
18
20
  exports.dot = dot;
19
21
 
20
22
  const Badge = props => {
@@ -2,6 +2,6 @@
2
2
  import './badge.less';
3
3
  export type { BadgeProps } from './badge';
4
4
  declare const _default: import("react").FC<import("./badge").BadgeProps> & {
5
- dot: symbol;
5
+ dot: JSX.Element;
6
6
  };
7
7
  export default _default;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
+ declare type NativeButtonProps = React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>;
3
4
  export declare type ButtonProps = {
4
5
  color?: 'default' | 'primary' | 'success' | 'warning' | 'danger';
5
6
  fill?: 'solid' | 'outline' | 'none';
@@ -9,11 +10,11 @@ export declare type ButtonProps = {
9
10
  loadingText?: string;
10
11
  loadingIcon?: React.ReactNode;
11
12
  disabled?: boolean;
12
- onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void | Promise<void>;
13
+ onClick?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void | Promise<void> | unknown;
13
14
  type?: 'submit' | 'reset' | 'button';
14
15
  shape?: 'default' | 'rounded' | 'rectangular';
15
16
  children?: React.ReactNode;
16
- } & NativeProps<'--text-color' | '--background-color' | '--border-radius' | '--border-width' | '--border-style' | '--border-color'>;
17
+ } & Pick<NativeButtonProps, 'onMouseDown' | 'onMouseUp' | 'onTouchStart' | 'onTouchEnd'> & NativeProps<'--text-color' | '--background-color' | '--border-radius' | '--border-width' | '--border-style' | '--border-color'>;
17
18
  export declare type ButtonRef = {
18
19
  nativeElement: HTMLButtonElement | null;
19
20
  };
@@ -26,8 +27,9 @@ export declare const Button: React.ForwardRefExoticComponent<{
26
27
  loadingText?: string | undefined;
27
28
  loadingIcon?: React.ReactNode;
28
29
  disabled?: boolean | undefined;
29
- onClick?: ((event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void | Promise<void>) | undefined;
30
+ onClick?: ((event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void | Promise<void> | unknown) | undefined;
30
31
  type?: "reset" | "submit" | "button" | undefined;
31
32
  shape?: "default" | "rounded" | "rectangular" | undefined;
32
33
  children?: React.ReactNode;
33
- } & NativeProps<"--text-color" | "--background-color" | "--border-radius" | "--border-width" | "--border-style" | "--border-color"> & React.RefAttributes<ButtonRef>>;
34
+ } & Pick<NativeButtonProps, "onMouseDown" | "onMouseUp" | "onTouchEnd" | "onTouchStart"> & NativeProps<"--border-radius" | "--text-color" | "--background-color" | "--border-width" | "--border-style" | "--border-color"> & React.RefAttributes<ButtonRef>>;
35
+ export {};
@@ -81,7 +81,11 @@ const Button = (0, _react.forwardRef)((p, ref) => {
81
81
  [`${classPrefix}-large`]: props.size === 'large',
82
82
  [`${classPrefix}-loading`]: loading
83
83
  }, `${classPrefix}-shape-${props.shape}`),
84
- disabled: disabled
84
+ disabled: disabled,
85
+ onMouseDown: props.onMouseDown,
86
+ onMouseUp: props.onMouseUp,
87
+ onTouchStart: props.onTouchStart,
88
+ onTouchEnd: props.onTouchEnd
85
89
  }, loading ? _react.default.createElement("div", {
86
90
  className: `${classPrefix}-loading-wrapper`
87
91
  }, props.loadingIcon, props.loadingText) : props.children));
@@ -71,6 +71,9 @@
71
71
  border-top-right-radius: 4px;
72
72
  border-bottom-right-radius: 4px;
73
73
  }
74
+ .adm-calendar-cell.adm-calendar-cell-disabled.adm-calendar-cell.adm-calendar-cell-selected {
75
+ color: var(--adm-color-light);
76
+ }
74
77
  .adm-calendar-cell .adm-calendar-cell-top {
75
78
  flex: none;
76
79
  font-size: 18px;
@@ -19,6 +19,7 @@ export declare type CalendarProps = {
19
19
  allowClear?: boolean;
20
20
  max?: Date;
21
21
  min?: Date;
22
+ shouldDisableDate?: (date: Date) => boolean;
22
23
  } & ({
23
24
  selectionMode?: undefined;
24
25
  value?: undefined;
@@ -153,10 +153,10 @@ const Calendar = (0, _react.forwardRef)((p, ref) => {
153
153
  }
154
154
 
155
155
  const inThisMonth = d.month() === current.month();
156
- const disabled = !inThisMonth || maxDay && d.isAfter(maxDay, 'day') || minDay && d.isBefore(minDay, 'day');
156
+ const disabled = props.shouldDisableDate ? props.shouldDisableDate(d.toDate()) : maxDay && d.isAfter(maxDay, 'day') || minDay && d.isBefore(minDay, 'day');
157
157
  cells.push(_react.default.createElement("div", {
158
158
  key: d.valueOf(),
159
- className: (0, _classnames.default)(`${classPrefix}-cell`, disabled && `${classPrefix}-cell-disabled`, inThisMonth && {
159
+ className: (0, _classnames.default)(`${classPrefix}-cell`, (disabled || !inThisMonth) && `${classPrefix}-cell-disabled`, inThisMonth && {
160
160
  [`${classPrefix}-cell-today`]: d.isSame(today, 'day'),
161
161
  [`${classPrefix}-cell-selected`]: isSelect,
162
162
  [`${classPrefix}-cell-selected-begin`]: isBegin,
@@ -256,10 +256,7 @@ const FormItem = props => {
256
256
  }
257
257
 
258
258
  let Variables = {};
259
-
260
- if (typeof label === 'string') {
261
- Variables.label = label;
262
- }
259
+ Variables.label = typeof label === 'string' ? label : '';
263
260
 
264
261
  if (messageVariables) {
265
262
  Variables = Object.assign(Object.assign({}, Variables), messageVariables);
@@ -0,0 +1 @@
1
+ export declare const BrokenImageIcon: () => JSX.Element;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BrokenImageIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const BrokenImageIcon = () => _react.default.createElement("svg", {
13
+ viewBox: '0 0 48 48',
14
+ xmlns: 'http://www.w3.org/2000/svg'
15
+ }, _react.default.createElement("path", {
16
+ d: 'M19.233 6.233 17.42 9.08l-10.817.001a.665.665 0 0 0-.647.562l-.007.096V34.9l5.989-8.707a2.373 2.373 0 0 1 1.801-1.005 2.415 2.415 0 0 1 1.807.625l.126.127 4.182 4.525 2.267-3.292 5.461 7.841-4.065 7.375H6.604c-1.86 0-3.382-1.47-3.482-3.317l-.005-.192V9.744c0-1.872 1.461-3.405 3.296-3.505l.19-.005h12.63Zm22.163 0c1.86 0 3.382 1.472 3.482 3.314l.005.192v29.14a3.507 3.507 0 0 1-3.3 3.505l-.191.006H27.789l3.63-6.587.06-.119a1.87 1.87 0 0 0-.163-1.853l-6.928-9.949 3.047-4.422a2.374 2.374 0 0 1 1.96-1.01 2.4 2.4 0 0 1 1.86.87l.106.14L42.05 34.89V9.74a.664.664 0 0 0-.654-.658H21.855l1.812-2.848h17.73Zm-28.305 5.611c.794 0 1.52.298 2.07.788l-.843 1.325-.067.114a1.87 1.87 0 0 0 .11 1.959l.848 1.217c-.556.515-1.3.83-2.118.83a3.122 3.122 0 0 1-3.117-3.116 3.119 3.119 0 0 1 3.117-3.117Z',
17
+ fill: '#DBDBDB',
18
+ fillRule: 'nonzero'
19
+ }));
20
+
21
+ exports.BrokenImageIcon = BrokenImageIcon;
@@ -0,0 +1 @@
1
+ export declare const ImageIcon: () => JSX.Element;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ImageIcon = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ const ImageIcon = () => _react.default.createElement("svg", {
13
+ viewBox: '0 0 48 48',
14
+ xmlns: 'http://www.w3.org/2000/svg'
15
+ }, _react.default.createElement("path", {
16
+ d: 'M41.396 6.234c1.923 0 3.487 1.574 3.487 3.505v29.14c0 1.937-1.568 3.51-3.491 3.51H6.604c-1.923 0-3.487-1.573-3.487-3.51V9.745c0-1.936 1.564-3.51 3.487-3.51Zm0 2.847H6.604c-.355 0-.654.3-.654.658V34.9l5.989-8.707a2.373 2.373 0 0 1 1.801-1.005 2.405 2.405 0 0 1 1.933.752l4.182 4.525 7.58-11.005a2.374 2.374 0 0 1 1.96-1.01c.79 0 1.532.38 1.966 1.01L42.05 34.89V9.74a.664.664 0 0 0-.654-.658Zm-28.305 2.763a3.119 3.119 0 0 1 3.117 3.117 3.119 3.119 0 0 1-3.117 3.117 3.122 3.122 0 0 1-3.117-3.117 3.119 3.119 0 0 1 3.117-3.117Z',
17
+ fill: '#DBDBDB',
18
+ fillRule: 'nonzero'
19
+ }));
20
+
21
+ exports.ImageIcon = ImageIcon;
@@ -12,12 +12,14 @@
12
12
  }
13
13
  .adm-image-tip {
14
14
  position: relative;
15
- background-color: #f3f3f3;
15
+ background-color: #f5f5f5;
16
16
  height: 100%;
17
17
  min-height: 24px;
18
18
  min-width: 24px;
19
19
  }
20
- .adm-image-tip > .antd-mobile-icon {
20
+ .adm-image-tip > svg {
21
+ width: 24px;
22
+ height: 24px;
21
23
  position: absolute;
22
24
  left: 50%;
23
25
  top: 50%;
@@ -9,6 +9,7 @@ export declare type ImageProps = {
9
9
  placeholder?: ReactNode;
10
10
  fallback?: ReactNode;
11
11
  lazy?: boolean;
12
+ draggable?: boolean;
12
13
  onClick?: (event: React.MouseEvent<HTMLImageElement, Event>) => void;
13
14
  onError?: (event: React.SyntheticEvent<HTMLImageElement, Event>) => void;
14
15
  onLoad?: (event: React.SyntheticEvent<HTMLImageElement, Event>) => void;
@@ -11,8 +11,6 @@ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _nativeProps = require("../../utils/native-props");
13
13
 
14
- var _antdMobileIcons = require("antd-mobile-icons");
15
-
16
14
  var _stagedComponents = require("staged-components");
17
15
 
18
16
  var _toCssLength = require("../../utils/to-css-length");
@@ -21,6 +19,10 @@ var _lazyDetector = require("./lazy-detector");
21
19
 
22
20
  var _useIsomorphicUpdateLayoutEffect = require("../../utils/use-isomorphic-update-layout-effect");
23
21
 
22
+ var _imageIcon = require("./image-icon");
23
+
24
+ var _brokenImageIcon = require("./broken-image-icon");
25
+
24
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
27
 
26
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -30,11 +32,12 @@ const defaultProps = {
30
32
  fit: 'fill',
31
33
  placeholder: _react.default.createElement("div", {
32
34
  className: `${classPrefix}-tip`
33
- }, _react.default.createElement(_antdMobileIcons.PictureOutline, null)),
35
+ }, _react.default.createElement(_imageIcon.ImageIcon, null)),
34
36
  fallback: _react.default.createElement("div", {
35
37
  className: `${classPrefix}-tip`
36
- }, _react.default.createElement(_antdMobileIcons.PictureWrongOutline, null)),
37
- lazy: false
38
+ }, _react.default.createElement(_brokenImageIcon.BrokenImageIcon, null)),
39
+ lazy: false,
40
+ draggable: false
38
41
  };
39
42
  const Image = (0, _stagedComponents.staged)(p => {
40
43
  const props = (0, _withDefaultProps.mergeProps)(defaultProps, p);
@@ -83,7 +86,8 @@ const Image = (0, _stagedComponents.staged)(p => {
83
86
  referrerPolicy: props.referrerPolicy,
84
87
  sizes: props.sizes,
85
88
  srcSet: srcSet,
86
- useMap: props.useMap
89
+ useMap: props.useMap,
90
+ draggable: props.draggable
87
91
  });
88
92
 
89
93
  return _react.default.createElement(_react.default.Fragment, null, !loaded && props.placeholder, img);
@@ -53,9 +53,6 @@ const ImageUploader = p => {
53
53
  } = (0, _configProvider.useConfig)();
54
54
  const props = (0, _withDefaultProps.mergeProps)(defaultProps, p);
55
55
  const [value, setValue] = (0, _usePropsValue.usePropsValue)(props);
56
- const updateValue = (0, _ahooks.useMemoizedFn)(updater => {
57
- setValue(updater(value));
58
- });
59
56
  const [tasks, setTasks] = (0, _react.useState)([]);
60
57
  (0, _ahooks.useIsomorphicLayoutEffect)(() => {
61
58
  setTasks(prev => prev.filter(task => {
@@ -134,7 +131,7 @@ const ImageUploader = p => {
134
131
  return task;
135
132
  });
136
133
  });
137
- updateValue(prev => {
134
+ setValue(prev => {
138
135
  const newVal = Object.assign({}, result);
139
136
  return [...prev, newVal];
140
137
  });
@@ -47,9 +47,11 @@ const InfiniteScroll = p => {
47
47
  threshold: 250
48
48
  }, p);
49
49
  const doLoadMore = (0, _ahooks.useLockFn)(() => props.loadMore());
50
- const elementRef = (0, _react.useRef)(null);
50
+ const elementRef = (0, _react.useRef)(null); // Prevent duplicated trigger of `check` function
51
+
51
52
  const [flag, setFlag] = (0, _react.useState)({});
52
53
  const nextFlagRef = (0, _react.useRef)(flag);
54
+ const [scrollParent, setScrollParent] = (0, _react.useState)();
53
55
  const check = (0, _ahooks.useMemoizedFn)(() => (0, _tslib.__awaiter)(void 0, void 0, void 0, function* () {
54
56
  if (nextFlagRef.current !== flag) return;
55
57
  if (!props.hasMore) return;
@@ -57,6 +59,7 @@ const InfiniteScroll = p => {
57
59
  if (!element) return;
58
60
  if (!element.offsetParent) return;
59
61
  const parent = (0, _getScrollParent.getScrollParent)(element);
62
+ setScrollParent(parent);
60
63
  if (!parent) return;
61
64
  const rect = element.getBoundingClientRect();
62
65
  const elementTop = rect.top;
@@ -76,18 +79,17 @@ const InfiniteScroll = p => {
76
79
  (0, _react.useEffect)(() => {
77
80
  const element = elementRef.current;
78
81
  if (!element) return;
79
- const parent = (0, _getScrollParent.getScrollParent)(element);
80
- if (!parent) return;
82
+ if (!scrollParent) return;
81
83
 
82
84
  function onScroll() {
83
85
  check();
84
86
  }
85
87
 
86
- parent.addEventListener('scroll', onScroll);
88
+ scrollParent.addEventListener('scroll', onScroll);
87
89
  return () => {
88
- parent.removeEventListener('scroll', onScroll);
90
+ scrollParent.removeEventListener('scroll', onScroll);
89
91
  };
90
- }, []);
92
+ }, [scrollParent]);
91
93
  return (0, _nativeProps.withNativeProps)(props, _react.default.createElement("div", {
92
94
  className: classPrefix,
93
95
  ref: elementRef
@@ -35,6 +35,7 @@
35
35
  border-radius: 8px;
36
36
  box-shadow: 0 0 30px 0 rgba(51, 51, 51, 0.2);
37
37
  font-size: 15px;
38
+ width: max-content;
38
39
  min-width: 32px;
39
40
  max-width: calc(100vw - 24px);
40
41
  overflow-y: hidden;
@@ -31,4 +31,4 @@ export declare const SearchBar: React.ForwardRefExoticComponent<Pick<InputProps,
31
31
  onSearch?: ((val: string) => void) | undefined;
32
32
  onChange?: ((val: string) => void) | undefined;
33
33
  onCancel?: (() => void) | undefined;
34
- } & NativeProps<"--border-radius" | "--height" | "--padding-left" | "--background" | "--placeholder-color"> & React.RefAttributes<InputRef>>;
34
+ } & NativeProps<"--height" | "--border-radius" | "--padding-left" | "--background" | "--placeholder-color"> & React.RefAttributes<InputRef>>;