@arco-design/mobile-react 2.19.1-7cada34.0 → 2.19.2-ee92494.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 (157) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/README.en-US.md +2 -2
  3. package/README.md +4 -4
  4. package/cjs/_helpers/type.d.ts +1 -1
  5. package/cjs/button/demo/style/mobile.less +4 -0
  6. package/cjs/button/index.d.ts +12 -0
  7. package/cjs/button/index.js +15 -3
  8. package/cjs/circle-progress/index.js +5 -3
  9. package/cjs/collapse/collapse.js +2 -2
  10. package/cjs/count-down/demo/style/mobile.less +1 -1
  11. package/cjs/grid/index.js +13 -12
  12. package/cjs/image/index.d.ts +0 -1
  13. package/cjs/image/index.js +9 -7
  14. package/cjs/image-picker/add-icon.d.ts +2 -0
  15. package/cjs/image-picker/add-icon.js +22 -0
  16. package/cjs/image-picker/demo/style/css/mobile.css +40 -0
  17. package/cjs/image-picker/demo/style/mobile.less +42 -0
  18. package/cjs/image-picker/index.d.ts +184 -0
  19. package/cjs/image-picker/index.js +307 -0
  20. package/cjs/image-picker/style/css/index.css +147 -0
  21. package/cjs/image-picker/style/css/index.d.ts +2 -0
  22. package/cjs/image-picker/style/css/index.js +5 -0
  23. package/cjs/image-picker/style/index.d.ts +2 -0
  24. package/cjs/image-picker/style/index.js +5 -0
  25. package/cjs/image-picker/style/index.less +116 -0
  26. package/cjs/image-preview/index.d.ts +2 -2
  27. package/cjs/index.d.ts +1 -0
  28. package/cjs/index.js +5 -1
  29. package/cjs/nav-bar/back-icon.d.ts +2 -2
  30. package/cjs/nav-bar/back-icon.js +2 -2
  31. package/cjs/notify/index.d.ts +1 -0
  32. package/cjs/notify/index.js +12 -0
  33. package/cjs/notify/type.d.ts +1 -0
  34. package/cjs/progress/index.js +3 -1
  35. package/cjs/slider/hooks/index.d.ts +1 -1
  36. package/cjs/slider/marks.d.ts +5 -5
  37. package/cjs/slider/marks.js +4 -4
  38. package/cjs/slider/popover.d.ts +2 -2
  39. package/cjs/slider/popover.js +3 -5
  40. package/cjs/steps/demo/style/css/mobile.css +1 -1
  41. package/cjs/steps/demo/style/mobile.less +1 -1
  42. package/cjs/steps/step.js +3 -1
  43. package/cjs/steps/style/css/index.css +19 -20
  44. package/cjs/steps/style/index.less +11 -16
  45. package/cjs/style.d.ts +1 -0
  46. package/cjs/style.js +2 -0
  47. package/cjs/swipe-load/index.js +2 -2
  48. package/cjs/switch/index.js +1 -1
  49. package/cjs/tab-bar/item.js +2 -2
  50. package/cjs/tab-bar/tab-bar.js +2 -2
  51. package/cjs/transition/index.js +4 -2
  52. package/dist/index.js +577 -251
  53. package/dist/index.min.js +3 -4
  54. package/dist/style.css +126 -16
  55. package/dist/style.min.css +1 -1
  56. package/esm/_helpers/type.d.ts +1 -1
  57. package/esm/button/demo/style/mobile.less +4 -0
  58. package/esm/button/index.d.ts +12 -0
  59. package/esm/button/index.js +15 -3
  60. package/esm/circle-progress/index.js +5 -3
  61. package/esm/collapse/collapse.js +1 -1
  62. package/esm/count-down/demo/style/mobile.less +1 -1
  63. package/esm/grid/index.js +13 -12
  64. package/esm/image/index.d.ts +0 -1
  65. package/esm/image/index.js +10 -8
  66. package/esm/image-picker/add-icon.d.ts +2 -0
  67. package/esm/image-picker/add-icon.js +14 -0
  68. package/esm/image-picker/demo/style/css/mobile.css +40 -0
  69. package/esm/image-picker/demo/style/mobile.less +42 -0
  70. package/esm/image-picker/index.d.ts +184 -0
  71. package/esm/image-picker/index.js +288 -0
  72. package/esm/image-picker/style/css/index.css +147 -0
  73. package/esm/image-picker/style/css/index.d.ts +2 -0
  74. package/esm/image-picker/style/css/index.js +2 -0
  75. package/esm/image-picker/style/index.d.ts +2 -0
  76. package/esm/image-picker/style/index.js +2 -0
  77. package/esm/image-picker/style/index.less +116 -0
  78. package/esm/image-preview/index.d.ts +2 -2
  79. package/esm/index.d.ts +1 -0
  80. package/esm/index.js +1 -0
  81. package/esm/nav-bar/back-icon.d.ts +2 -2
  82. package/esm/nav-bar/back-icon.js +2 -2
  83. package/esm/notify/index.d.ts +1 -0
  84. package/esm/notify/index.js +1 -0
  85. package/esm/notify/type.d.ts +1 -0
  86. package/esm/progress/index.js +3 -1
  87. package/esm/slider/hooks/index.d.ts +1 -1
  88. package/esm/slider/marks.d.ts +5 -5
  89. package/esm/slider/marks.js +3 -3
  90. package/esm/slider/popover.d.ts +2 -2
  91. package/esm/slider/popover.js +2 -2
  92. package/esm/steps/demo/style/css/mobile.css +1 -1
  93. package/esm/steps/demo/style/mobile.less +1 -1
  94. package/esm/steps/step.js +3 -1
  95. package/esm/steps/style/css/index.css +19 -20
  96. package/esm/steps/style/index.less +11 -16
  97. package/esm/style.d.ts +1 -0
  98. package/esm/style.js +1 -0
  99. package/esm/swipe-load/index.js +1 -1
  100. package/esm/switch/index.js +1 -1
  101. package/esm/tab-bar/item.js +1 -1
  102. package/esm/tab-bar/tab-bar.js +1 -1
  103. package/esm/transition/index.js +4 -2
  104. package/package.json +5 -5
  105. package/tokens/app/arcodesign/default/css-variables.less +17 -2
  106. package/tokens/app/arcodesign/default/index.d.ts +17 -2
  107. package/tokens/app/arcodesign/default/index.js +18 -3
  108. package/tokens/app/arcodesign/default/index.json +204 -24
  109. package/tokens/app/arcodesign/default/index.less +17 -2
  110. package/umd/_helpers/type.d.ts +1 -1
  111. package/umd/button/demo/style/mobile.less +4 -0
  112. package/umd/button/index.d.ts +12 -0
  113. package/umd/button/index.js +15 -3
  114. package/umd/circle-progress/index.js +5 -3
  115. package/umd/collapse/collapse.js +4 -4
  116. package/umd/count-down/demo/style/mobile.less +1 -1
  117. package/umd/grid/index.js +13 -12
  118. package/umd/image/index.d.ts +0 -1
  119. package/umd/image/index.js +9 -7
  120. package/umd/image-picker/add-icon.d.ts +2 -0
  121. package/umd/image-picker/add-icon.js +35 -0
  122. package/umd/image-picker/demo/style/css/mobile.css +40 -0
  123. package/umd/image-picker/demo/style/mobile.less +42 -0
  124. package/umd/image-picker/index.d.ts +184 -0
  125. package/umd/image-picker/index.js +310 -0
  126. package/umd/image-picker/style/css/index.css +147 -0
  127. package/umd/image-picker/style/css/index.d.ts +2 -0
  128. package/umd/image-picker/style/css/index.js +15 -0
  129. package/umd/image-picker/style/index.d.ts +2 -0
  130. package/umd/image-picker/style/index.js +15 -0
  131. package/umd/image-picker/style/index.less +116 -0
  132. package/umd/image-preview/index.d.ts +2 -2
  133. package/umd/index.d.ts +1 -0
  134. package/umd/index.js +7 -5
  135. package/umd/nav-bar/back-icon.d.ts +2 -2
  136. package/umd/nav-bar/back-icon.js +2 -2
  137. package/umd/notify/index.d.ts +1 -0
  138. package/umd/notify/index.js +13 -4
  139. package/umd/notify/type.d.ts +1 -0
  140. package/umd/progress/index.js +3 -1
  141. package/umd/slider/hooks/index.d.ts +1 -1
  142. package/umd/slider/marks.d.ts +5 -5
  143. package/umd/slider/marks.js +6 -6
  144. package/umd/slider/popover.d.ts +2 -2
  145. package/umd/slider/popover.js +3 -5
  146. package/umd/steps/demo/style/css/mobile.css +1 -1
  147. package/umd/steps/demo/style/mobile.less +1 -1
  148. package/umd/steps/step.js +3 -1
  149. package/umd/steps/style/css/index.css +19 -20
  150. package/umd/steps/style/index.less +11 -16
  151. package/umd/style.d.ts +1 -0
  152. package/umd/style.js +4 -4
  153. package/umd/swipe-load/index.js +4 -4
  154. package/umd/switch/index.js +1 -1
  155. package/umd/tab-bar/item.js +4 -4
  156. package/umd/tab-bar/tab-bar.js +4 -4
  157. package/umd/transition/index.js +4 -2
@@ -3359,6 +3359,198 @@
3359
3359
  "en": "Default mask background color when image loads or retries"
3360
3360
  }
3361
3361
  },
3362
+ "imagePickerAddBackground": {
3363
+ "cssKey": "image-picker-add-background",
3364
+ "desc": "图片选择器添加图片按钮的背景色",
3365
+ "override": "",
3366
+ "value": "#f7f8fa",
3367
+ "jsValue": "#f7f8fa",
3368
+ "staticValue": "#f7f8fa",
3369
+ "localeDesc": {
3370
+ "ch": "图片选择器添加图片按钮的背景色",
3371
+ "en": "Background of the add button of ImagePicker"
3372
+ }
3373
+ },
3374
+ "imagePickerAddIconColor": {
3375
+ "cssKey": "image-picker-add-icon-color",
3376
+ "desc": "图片选择器添加图片按钮的图标颜色",
3377
+ "override": "",
3378
+ "value": "#d8d8d8",
3379
+ "jsValue": "#d8d8d8",
3380
+ "staticValue": "#d8d8d8",
3381
+ "localeDesc": {
3382
+ "ch": "图片选择器添加图片按钮的图标颜色",
3383
+ "en": "Icon color of the add button of ImagePicker"
3384
+ }
3385
+ },
3386
+ "imagePickerAddIconFontSize": {
3387
+ "cssKey": "image-picker-add-icon-font-size",
3388
+ "desc": "图片选择器添加图片按钮的图标大小",
3389
+ "override": "",
3390
+ "value": "~`pxtorem(30)`",
3391
+ "jsValue": "@getRem@30",
3392
+ "staticValue": "0.6rem",
3393
+ "localeDesc": {
3394
+ "ch": "图片选择器添加图片按钮的图标大小",
3395
+ "en": "Icon size of the add button of ImagePicker"
3396
+ }
3397
+ },
3398
+ "imagePickerAddTextColor": {
3399
+ "cssKey": "image-picker-add-text-color",
3400
+ "desc": "图片选择器添加图片按钮的字体颜色",
3401
+ "override": "",
3402
+ "value": "@sub-info-font-color",
3403
+ "jsValue": "@global@subInfoFontColor",
3404
+ "staticValue": "#86909c",
3405
+ "localeDesc": {
3406
+ "ch": "图片选择器添加图片按钮的字体颜色",
3407
+ "en": "Font color of the add button of ImagePicker"
3408
+ }
3409
+ },
3410
+ "imagePickerAddTextFontSize": {
3411
+ "cssKey": "image-picker-add-text-font-size",
3412
+ "desc": "图片选择器添加图片按钮的字体大小",
3413
+ "override": "",
3414
+ "value": "~`pxtorem(12)`",
3415
+ "jsValue": "@getRem@12",
3416
+ "staticValue": "0.24rem",
3417
+ "localeDesc": {
3418
+ "ch": "图片选择器添加图片按钮的字体大小",
3419
+ "en": "Font size of the add button of ImagePicker"
3420
+ }
3421
+ },
3422
+ "imagePickerBorderRadius": {
3423
+ "cssKey": "image-picker-border-radius",
3424
+ "desc": "图片选择器中图片的圆角值",
3425
+ "override": "",
3426
+ "value": "~`pxtorem(2)`",
3427
+ "jsValue": "@getRem@2",
3428
+ "staticValue": "0.04rem",
3429
+ "localeDesc": {
3430
+ "ch": "图片选择器中图片的圆角值",
3431
+ "en": "Border radius of the image in ImagePicker"
3432
+ }
3433
+ },
3434
+ "imagePickerCloseBackground": {
3435
+ "cssKey": "image-picker-close-background",
3436
+ "desc": "图片选择器关闭按钮背景色",
3437
+ "override": "",
3438
+ "value": "rgba(0, 0, 0, 0.3)",
3439
+ "jsValue": "rgba(0, 0, 0, 0.3)",
3440
+ "staticValue": "rgba(0, 0, 0, 0.3)",
3441
+ "localeDesc": {
3442
+ "ch": "图片选择器关闭按钮背景色",
3443
+ "en": "Background of the close button of ImagePicker"
3444
+ }
3445
+ },
3446
+ "imagePickerCloseBorderRadius": {
3447
+ "cssKey": "image-picker-close-border-radius",
3448
+ "desc": "图片选择器关闭按钮圆角值",
3449
+ "override": "",
3450
+ "value": "0 ~`pxtorem(2)`",
3451
+ "jsValue": "0 @getRem@2",
3452
+ "staticValue": "0 0.04rem",
3453
+ "localeDesc": {
3454
+ "ch": "图片选择器关闭按钮圆角值",
3455
+ "en": "Border radius of the close button of ImagePicker"
3456
+ }
3457
+ },
3458
+ "imagePickerCloseColor": {
3459
+ "cssKey": "image-picker-close-color",
3460
+ "desc": "图片选择器关闭按钮字体颜色",
3461
+ "override": "",
3462
+ "value": "#ffffff",
3463
+ "jsValue": "#ffffff",
3464
+ "staticValue": "#ffffff",
3465
+ "localeDesc": {
3466
+ "ch": "图片选择器关闭按钮字体颜色",
3467
+ "en": "Font color of the close button of ImagePicker"
3468
+ }
3469
+ },
3470
+ "imagePickerCloseFontSize": {
3471
+ "cssKey": "image-picker-close-font-size",
3472
+ "desc": "图片选择器关闭按钮字体大小",
3473
+ "override": "",
3474
+ "value": "~`pxtorem(12)`",
3475
+ "jsValue": "@getRem@12",
3476
+ "staticValue": "0.24rem",
3477
+ "localeDesc": {
3478
+ "ch": "图片选择器关闭按钮字体大小",
3479
+ "en": "Font size of the close button of ImagePicker"
3480
+ }
3481
+ },
3482
+ "imagePickerCloseHeight": {
3483
+ "cssKey": "image-picker-close-height",
3484
+ "desc": "图片选择器关闭按钮高度",
3485
+ "override": "",
3486
+ "value": "~`pxtorem(18)`",
3487
+ "jsValue": "@getRem@18",
3488
+ "staticValue": "0.36rem",
3489
+ "localeDesc": {
3490
+ "ch": "图片选择器关闭按钮高度",
3491
+ "en": "Height of the close button of ImagePicker"
3492
+ }
3493
+ },
3494
+ "imagePickerCloseWidth": {
3495
+ "cssKey": "image-picker-close-width",
3496
+ "desc": "图片选择器关闭按钮宽度",
3497
+ "override": "",
3498
+ "value": "~`pxtorem(18)`",
3499
+ "jsValue": "@getRem@18",
3500
+ "staticValue": "0.36rem",
3501
+ "localeDesc": {
3502
+ "ch": "图片选择器关闭按钮宽度",
3503
+ "en": "Width of the close button of ImagePicker"
3504
+ }
3505
+ },
3506
+ "imagePickerDisabledOpacity": {
3507
+ "cssKey": "image-picker-disabled-opacity",
3508
+ "desc": "图片选择器禁用状态下的透明度",
3509
+ "override": "",
3510
+ "value": "0.7",
3511
+ "jsValue": "0.7",
3512
+ "staticValue": "0.7",
3513
+ "localeDesc": {
3514
+ "ch": "图片选择器禁用状态下的透明度",
3515
+ "en": "Opacity of disabled ImagePicker"
3516
+ }
3517
+ },
3518
+ "imagePickerErrorBackground": {
3519
+ "cssKey": "image-picker-error-background",
3520
+ "desc": "图片选择器中图片错误状态下的背景色",
3521
+ "override": "",
3522
+ "value": "rgba(0, 0, 0, 0.5)",
3523
+ "jsValue": "rgba(0, 0, 0, 0.5)",
3524
+ "staticValue": "rgba(0, 0, 0, 0.5)",
3525
+ "localeDesc": {
3526
+ "ch": "图片选择器中图片错误状态下的背景色",
3527
+ "en": "Background for image error state in the image picker"
3528
+ }
3529
+ },
3530
+ "imagePickerErrorColor": {
3531
+ "cssKey": "image-picker-error-color",
3532
+ "desc": "图片选择器中图片错误状态下的文字颜色",
3533
+ "override": "",
3534
+ "value": "#ffffff",
3535
+ "jsValue": "#ffffff",
3536
+ "staticValue": "#ffffff",
3537
+ "localeDesc": {
3538
+ "ch": "图片选择器中图片错误状态下的文字颜色",
3539
+ "en": "Text color for image error state in the image picker"
3540
+ }
3541
+ },
3542
+ "imagePickerFontSize": {
3543
+ "cssKey": "image-picker-font-size",
3544
+ "desc": "图片选择器内部字体大小",
3545
+ "override": "",
3546
+ "value": "~`pxtorem(14)`",
3547
+ "jsValue": "@getRem@14",
3548
+ "staticValue": "0.28rem",
3549
+ "localeDesc": {
3550
+ "ch": "图片选择器内部字体大小",
3551
+ "en": "Font size of ImagePicker"
3552
+ }
3553
+ },
3362
3554
  "imagePlaceholderBackground": {
3363
3555
  "cssKey": "image-placeholder-background",
3364
3556
  "desc": "图片 placeholder 背景色",
@@ -5699,30 +5891,6 @@
5699
5891
  "en": "Label distance of horizoverticalntal slider from the right of the mark"
5700
5892
  }
5701
5893
  },
5702
- "stepsCustomIconHeight": {
5703
- "cssKey": "steps-custom-icon-height",
5704
- "desc": "steps 步骤自定义图标高度",
5705
- "override": "",
5706
- "value": "20PX",
5707
- "jsValue": "20PX",
5708
- "staticValue": "20PX",
5709
- "localeDesc": {
5710
- "ch": "steps 步骤自定义图标高度",
5711
- "en": "Steps custom icon height"
5712
- }
5713
- },
5714
- "stepsCustomIconWidth": {
5715
- "cssKey": "steps-custom-icon-width",
5716
- "desc": "steps 步骤自定义图标宽度",
5717
- "override": "",
5718
- "value": "20PX",
5719
- "jsValue": "20PX",
5720
- "staticValue": "20PX",
5721
- "localeDesc": {
5722
- "ch": "steps 步骤自定义图标宽度",
5723
- "en": "Steps custom icon width"
5724
- }
5725
- },
5726
5894
  "stepsDescriptionColor": {
5727
5895
  "cssKey": "steps-description-color",
5728
5896
  "desc": "steps 步骤默认描述文字颜色",
@@ -6119,6 +6287,18 @@
6119
6287
  "en": "Left and right spacing of the vertical dividing line of Steps"
6120
6288
  }
6121
6289
  },
6290
+ "stepsTailVerticalTop": {
6291
+ "cssKey": "steps-tail-vertical-top",
6292
+ "desc": "steps 垂直分割线的向下偏移距离,一般是 stepsIconHeight 值的一半",
6293
+ "override": "",
6294
+ "value": "~`pxtorem(9)`",
6295
+ "jsValue": "@getRem@9",
6296
+ "staticValue": "0.18rem",
6297
+ "localeDesc": {
6298
+ "ch": "steps 垂直分割线的向下偏移距离,一般是 stepsIconHeight 值的一半",
6299
+ "en": "Left and right spacing of the vertical dividing line of Steps"
6300
+ }
6301
+ },
6122
6302
  "stepsTitleFontSize": {
6123
6303
  "cssKey": "steps-title-font-size",
6124
6304
  "desc": "steps 标题文字大小",
@@ -517,6 +517,7 @@
517
517
  @steps-padding: ~`pxtorem(16)` 0;
518
518
  @steps-tail-horizontal-padding: 0 ~`pxtorem(18)`;
519
519
  @steps-tail-vertical-padding: ~`pxtorem(14)` 0;
520
+ @steps-tail-vertical-top: ~`pxtorem(9)`;
520
521
  @steps-tail-standard-size: 1PX;
521
522
  @steps-tail-standard-background: @line-color;
522
523
  @steps-tail-finish-background: @primary-color;
@@ -543,8 +544,6 @@
543
544
  @steps-wait-description-color: @sub-info-font-color;
544
545
  @steps-icon-width: 18PX;
545
546
  @steps-icon-height: 18PX;
546
- @steps-custom-icon-width: 20PX;
547
- @steps-custom-icon-height: 20PX;
548
547
  @steps-dot-width: 8PX;
549
548
  @steps-dot-height: 8PX;
550
549
  @steps-dot-border-width: 1.5PX;
@@ -646,4 +645,20 @@
646
645
  @action-sheet-header-padding: ~`pxtorem(16)`;
647
646
  @action-sheet-title-font-size: ~`pxtorem(16)`;
648
647
  @action-sheet-sub-title-font-size: ~`pxtorem(14)`;
648
+ @image-picker-font-size: ~`pxtorem(14)`;
649
+ @image-picker-disabled-opacity: 0.7;
650
+ @image-picker-border-radius: ~`pxtorem(2)`;
651
+ @image-picker-add-background: #f7f8fa;
652
+ @image-picker-add-icon-font-size: ~`pxtorem(30)`;
653
+ @image-picker-add-icon-color: #d8d8d8;
654
+ @image-picker-add-text-font-size: ~`pxtorem(12)`;
655
+ @image-picker-add-text-color: @sub-info-font-color;
656
+ @image-picker-error-color: #ffffff;
657
+ @image-picker-error-background: rgba(0, 0, 0, 0.5);
658
+ @image-picker-close-color: #ffffff;
659
+ @image-picker-close-font-size: ~`pxtorem(12)`;
660
+ @image-picker-close-width: ~`pxtorem(18)`;
661
+ @image-picker-close-height: ~`pxtorem(18)`;
662
+ @image-picker-close-background: rgba(0, 0, 0, 0.3);
663
+ @image-picker-close-border-radius: 0 ~`pxtorem(2)`;
649
664
 
@@ -25,6 +25,6 @@ export interface BaseRef {
25
25
  /**
26
26
  * 组件外层dom元素
27
27
  * @en The outer DOM element of the component
28
- * */
28
+ */
29
29
  dom: HTMLDivElement | null;
30
30
  }
@@ -17,3 +17,7 @@
17
17
  }
18
18
  }
19
19
  }
20
+
21
+ #demo-order-6 {
22
+
23
+ }
@@ -109,6 +109,18 @@ export interface ButtonProps {
109
109
  * @en Callback function when disabling button
110
110
  */
111
111
  onClickDisabled?: (e: React.MouseEvent) => void;
112
+ /**
113
+ * 加载中是否禁用按钮操作
114
+ * @en Disable button when loading
115
+ * @default true
116
+ */
117
+ disableWhenLoading?: boolean;
118
+ /**
119
+ * 加载中是否覆盖Icon
120
+ * @en Whether to override Icon during loading
121
+ * @default false
122
+ */
123
+ coverIconWhenLoading?: boolean;
112
124
  }
113
125
  export interface ButtonRef {
114
126
  /**
@@ -49,6 +49,8 @@
49
49
  loading = _props$loading === void 0 ? false : _props$loading,
50
50
  _props$disabled = props.disabled,
51
51
  disabled = _props$disabled === void 0 ? false : _props$disabled,
52
+ _props$disableWhenLoa = props.disableWhenLoading,
53
+ disableWhenLoading = _props$disableWhenLoa === void 0 ? true : _props$disableWhenLoa,
52
54
  _props$shape = props.shape,
53
55
  shape = _props$shape === void 0 ? 'semi' : _props$shape,
54
56
  _props$halfBorder = props.halfBorder,
@@ -69,7 +71,9 @@
69
71
  children = _props$children === void 0 ? null : _props$children,
70
72
  loadingIcon = props.loadingIcon,
71
73
  onClick = props.onClick,
72
- onClickDisabled = props.onClickDisabled;
74
+ onClickDisabled = props.onClickDisabled,
75
+ _props$coverIconWhenL = props.coverIconWhenLoading,
76
+ coverIconWhenLoading = _props$coverIconWhenL === void 0 ? false : _props$coverIconWhenL;
73
77
  var domRef = (0, _react.useRef)(null);
74
78
  (0, _react.useImperativeHandle)(ref, function () {
75
79
  return {
@@ -97,6 +101,14 @@
97
101
  setActive(false);
98
102
  };
99
103
 
104
+ var renderIcon = function renderIcon() {
105
+ if (coverIconWhenLoading) {
106
+ return loading ? null : icon;
107
+ }
108
+
109
+ return icon;
110
+ };
111
+
100
112
  return /*#__PURE__*/_react.default.createElement(_contextProvider.ContextLayout, null, function (_ref) {
101
113
  var prefixCls = _ref.prefixCls;
102
114
  return /*#__PURE__*/_react.default.createElement("button", {
@@ -115,10 +127,10 @@
115
127
  onTouchCancel: handleTouchEnd,
116
128
  onMouseDown: handleTouchStart,
117
129
  onMouseUp: handleTouchEnd,
118
- onClick: disabled ? onClickDisabled : onClick
130
+ onClick: disabled || loading && disableWhenLoading ? onClickDisabled : onClick
119
131
  }, /*#__PURE__*/_react.default.createElement("div", {
120
132
  className: "btn-icon"
121
- }, icon, loading && (loadingIcon === void 0 ? /*#__PURE__*/_react.default.createElement(_loading.default, {
133
+ }, renderIcon(), loading && (loadingIcon === void 0 ? /*#__PURE__*/_react.default.createElement(_loading.default, {
122
134
  className: "loading-icon",
123
135
  radius: 6,
124
136
  type: "circle"
@@ -94,11 +94,13 @@
94
94
  if (isRenderNormal) {
95
95
  if (progressColorStart) {
96
96
  return progressColorStart;
97
- } else if (progressColorEnd) {
97
+ }
98
+
99
+ if (progressColorEnd) {
98
100
  return progressColorEnd;
99
- } else {
100
- return progressColor;
101
101
  }
102
+
103
+ return progressColor;
102
104
  }
103
105
  }, [progressColorStart, progressColorEnd, progressColor]);
104
106
 
@@ -1,16 +1,16 @@
1
1
  (function (global, factory) {
2
2
  if (typeof define === "function" && define.amd) {
3
- define(["exports", "react", "../context-provider", "@arco-design/mobile-utils", "../_helpers", "../icon/IconArrowDown", "./utils"], factory);
3
+ define(["exports", "react", "@arco-design/mobile-utils", "../context-provider", "../_helpers", "../icon/IconArrowDown", "./utils"], factory);
4
4
  } else if (typeof exports !== "undefined") {
5
- factory(exports, require("react"), require("../context-provider"), require("@arco-design/mobile-utils"), require("../_helpers"), require("../icon/IconArrowDown"), require("./utils"));
5
+ factory(exports, require("react"), require("@arco-design/mobile-utils"), require("../context-provider"), require("../_helpers"), require("../icon/IconArrowDown"), require("./utils"));
6
6
  } else {
7
7
  var mod = {
8
8
  exports: {}
9
9
  };
10
- factory(mod.exports, global.react, global.contextProvider, global.mobileUtils, global._helpers, global.IconArrowDown, global.utils);
10
+ factory(mod.exports, global.react, global.mobileUtils, global.contextProvider, global._helpers, global.IconArrowDown, global.utils);
11
11
  global.collapse = mod.exports;
12
12
  }
13
- })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _react, _contextProvider, _mobileUtils, _helpers, _IconArrowDown, _utils) {
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _react, _mobileUtils, _contextProvider, _helpers, _IconArrowDown, _utils) {
14
14
  "use strict";
15
15
 
16
16
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
@@ -32,7 +32,7 @@
32
32
  .btn-wrap {
33
33
  display: flex;
34
34
 
35
- .arco-button.type-primary {
35
+ .@{prefix}-button.type-primary {
36
36
  display: flex;
37
37
  flex-direction: row;
38
38
  align-items: center;
package/umd/grid/index.js CHANGED
@@ -57,14 +57,21 @@
57
57
  });
58
58
 
59
59
  var getRows = function getRows(prefix, rowsData, rows, row) {
60
- var fakeGrids = new Array(!isSliding && columns && rowsData.length % columns ? columns - rowsData.length % columns : 0).fill('');
61
- var widthStyle = {
62
- minWidth: 1 / columns * 100 + "%"
63
- };
60
+ var placeholders = !isSliding && rowsData.length % columns;
61
+ var renderData = rowsData;
62
+
63
+ if (placeholders) {
64
+ var fakeGrids = new Array(columns - placeholders).fill({
65
+ img: null,
66
+ title: ''
67
+ });
68
+ renderData = rowsData.concat(fakeGrids);
69
+ }
70
+
64
71
  return /*#__PURE__*/_react.default.createElement("div", {
65
72
  className: prefix + "-rows",
66
73
  key: row
67
- }, rowsData.map(function (item, index) {
74
+ }, renderData.map(function (item, index) {
68
75
  var img = item.img,
69
76
  title = item.title,
70
77
  content = item.content,
@@ -78,7 +85,7 @@
78
85
  }
79
86
 
80
87
  var marginBottom = row + 1 === rows ? 0 : typeof gutter === 'number' ? gutter : (gutter == null ? void 0 : gutter.y) || 0;
81
- var rowLen = rowsData.length;
88
+ var rowLen = renderData.length;
82
89
  var marginRight = index + 1 === rowLen ? 0 : typeof gutter === 'number' ? gutter : (gutter == null ? void 0 : gutter.x) || 0;
83
90
  return /*#__PURE__*/_react.default.createElement("div", {
84
91
  key: index,
@@ -107,12 +114,6 @@
107
114
  }) : null, (row + 1) % rows !== 0 ? /*#__PURE__*/_react.default.createElement("i", {
108
115
  className: "horizontal-border"
109
116
  }) : null);
110
- }), fakeGrids.map(function (_, i) {
111
- return /*#__PURE__*/_react.default.createElement("div", {
112
- className: (0, _mobileUtils.cls)(prefix + "-rows-item fake-col"),
113
- key: i,
114
- style: widthStyle
115
- });
116
117
  }));
117
118
  };
118
119
 
@@ -14,7 +14,6 @@ export interface ImageProps {
14
14
  /**
15
15
  * 指定图片状态,staticLabel=false时有效
16
16
  * @en The specified image state, valid when staticLabel=false
17
- * @default "init"
18
17
  */
19
18
  status?: ImageStatus;
20
19
  /**
@@ -59,8 +59,7 @@
59
59
  var loadingImageRef = (0, _react.useRef)(null);
60
60
  var style = props.style,
61
61
  className = props.className,
62
- _props$status = props.status,
63
- status = _props$status === void 0 ? 'init' : _props$status,
62
+ status = props.status,
64
63
  src = props.src,
65
64
  width = props.width,
66
65
  height = props.height,
@@ -100,6 +99,7 @@
100
99
  var isPreview = Boolean(fit.indexOf('preview') >= 0);
101
100
  var actualBoxWidth = boxWidth || windowWidth;
102
101
  var actualBoxHeight = boxHeight || windowHeight;
102
+ var validStatus = status === undefined ? imageStatus : status;
103
103
  var attrs = (0, _react.useMemo)(function () {
104
104
  var imageStyle = {};
105
105
 
@@ -275,7 +275,9 @@
275
275
  }
276
276
 
277
277
  return /*#__PURE__*/_react.default.createElement(_contextProvider.ContextLayout, null, function (_ref) {
278
- var prefixCls = _ref.prefixCls;
278
+ var prefixCls = _ref.prefixCls,
279
+ _ref$locale = _ref.locale,
280
+ locale = _ref$locale === void 0 ? _mobileUtils.defaultLocale : _ref$locale;
279
281
  return /*#__PURE__*/_react.default.createElement("div", {
280
282
  className: (0, _mobileUtils.cls)(prefixCls + "-image all-border-box", {
281
283
  preview: isPreview
@@ -290,7 +292,7 @@
290
292
  }, bottomOverlap || /*#__PURE__*/_react.default.createElement("div", {
291
293
  className: "image-placeholder"
292
294
  })) : null, /*#__PURE__*/_react.default.createElement("div", {
293
- className: (0, _mobileUtils.cls)('image-container', imageStatus, {
295
+ className: (0, _mobileUtils.cls)('image-container', validStatus, {
294
296
  animate: Boolean(animateDuration),
295
297
  'static-label': staticLabel
296
298
  }),
@@ -305,7 +307,7 @@
305
307
  return _onLoad && _onLoad(e.nativeEvent, imageDomRef.current);
306
308
  },
307
309
  onError: handleStaticImageError
308
- })) : null), showLoading && (status === 'loading' || imageStatus === 'loading') ? /*#__PURE__*/_react.default.createElement("div", {
310
+ })) : null), showLoading && validStatus === 'loading' ? /*#__PURE__*/_react.default.createElement("div", {
309
311
  className: "image-content image-loading-container",
310
312
  style: {
311
313
  borderRadius: radius
@@ -317,7 +319,7 @@
317
319
  className: "loading-icon",
318
320
  radius: 8.5,
319
321
  stroke: 3
320
- }))) : null, showError && (status === 'error' || imageStatus === 'error') ? /*#__PURE__*/_react.default.createElement("div", {
322
+ }))) : null, showError && validStatus === 'error' ? /*#__PURE__*/_react.default.createElement("div", {
321
323
  className: "image-content image-error-container",
322
324
  onClick: function onClick(e) {
323
325
  e.stopPropagation();
@@ -328,7 +330,7 @@
328
330
  }
329
331
  }, errorArea || /*#__PURE__*/_react.default.createElement("div", {
330
332
  className: "image-retry-load"
331
- }, "\u91CD\u8BD5")) : null, topOverlap ? /*#__PURE__*/_react.default.createElement("div", {
333
+ }, locale.Image.loadError)) : null, topOverlap ? /*#__PURE__*/_react.default.createElement("div", {
332
334
  className: "image-content image-top-overlap",
333
335
  style: {
334
336
  borderRadius: radius
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export default function AddIcon(): JSX.Element;
@@ -0,0 +1,35 @@
1
+ (function (global, factory) {
2
+ if (typeof define === "function" && define.amd) {
3
+ define(["exports", "react"], factory);
4
+ } else if (typeof exports !== "undefined") {
5
+ factory(exports, require("react"));
6
+ } else {
7
+ var mod = {
8
+ exports: {}
9
+ };
10
+ factory(mod.exports, global.react);
11
+ global.addIcon = mod.exports;
12
+ }
13
+ })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports, _react) {
14
+ "use strict";
15
+
16
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
17
+
18
+ _exports.__esModule = true;
19
+ _exports.default = AddIcon;
20
+ _react = _interopRequireDefault(_react);
21
+
22
+ function AddIcon() {
23
+ return /*#__PURE__*/_react.default.createElement("svg", {
24
+ width: "30",
25
+ height: "30",
26
+ viewBox: "0 0 30 30",
27
+ fill: "none"
28
+ }, /*#__PURE__*/_react.default.createElement("path", {
29
+ fillRule: "evenodd",
30
+ clipRule: "evenodd",
31
+ d: "M14.5 0C14.2239 0 14 0.223857 14 0.5V14H0.5C0.223858 14 0 14.2239 0 14.5V15.5C0 15.7761 0.223857 16 0.5 16H14V29.5C14 29.7761 14.2239 30 14.5 30H15.5C15.7761 30 16 29.7761 16 29.5V16H29.5C29.7761 16 30 15.7761 30 15.5V14.5C30 14.2239 29.7761 14 29.5 14H16V0.5C16 0.223858 15.7761 0 15.5 0H14.5Z",
32
+ fill: "#C9CDD4"
33
+ }));
34
+ }
35
+ });
@@ -0,0 +1,40 @@
1
+ #demo-image-picker .demo-space {
2
+ font-size: 14px;
3
+ line-height: 1;
4
+ margin: 8px 0;
5
+ }
6
+ #demo-image-picker #demo-order-5 .custom-delete {
7
+ top: 4px;
8
+ right: 4px;
9
+ font-size: 18px;
10
+ position: absolute;
11
+ border-radius: 50%;
12
+ width: 18px;
13
+ height: 18px;
14
+ line-height: 16px;
15
+ text-align: center;
16
+ }
17
+ #demo-image-picker #demo-order-5 .custom-delete-bg {
18
+ background-color: #0000004d;
19
+ }
20
+ #demo-image-picker #demo-order-6 .loading,
21
+ #demo-image-picker #demo-order-6 .loading1,
22
+ #demo-image-picker #demo-order-6 .load-error,
23
+ #demo-image-picker #demo-order-6 .load-error1 {
24
+ background: rgba(0, 0, 0, 0.5);
25
+ text-align: center;
26
+ line-height: 1.5;
27
+ font-size: 14px;
28
+ color: #fff;
29
+ width: 100%;
30
+ height: 100%;
31
+ display: -webkit-box;
32
+ display: -webkit-flex;
33
+ display: flex;
34
+ -webkit-box-align: center;
35
+ -webkit-align-items: center;
36
+ align-items: center;
37
+ -webkit-box-pack: center;
38
+ -webkit-justify-content: center;
39
+ justify-content: center;
40
+ }
@@ -0,0 +1,42 @@
1
+ @import '../../../../style/mixin.less';
2
+
3
+ #demo-image-picker {
4
+ .demo-space{
5
+ font-size: 14px;
6
+ line-height: 1;
7
+ margin: 8px 0;
8
+ }
9
+ #demo-order-5 {
10
+ .custom-delete {
11
+ top: 4px;
12
+ right: 4px;
13
+ font-size: 18px;
14
+ position: absolute;
15
+ border-radius: 50%;
16
+ width: 18px;
17
+ height: 18px;
18
+ line-height: 16px;
19
+ text-align: center;
20
+ }
21
+ .custom-delete-bg {
22
+ background-color: #0000004d;
23
+ }
24
+ }
25
+ #demo-order-6 {
26
+ .loading,
27
+ .loading1,
28
+ .load-error,
29
+ .load-error1 {
30
+ background: rgba(0, 0, 0, 0.5);
31
+ text-align: center;
32
+ line-height: 1.5;
33
+ font-size: 14px;
34
+ color: #fff;
35
+ width: 100%;
36
+ height: 100%;
37
+ display: flex;
38
+ align-items: center;
39
+ justify-content: center;
40
+ }
41
+ }
42
+ }