@douyinfe/semi-foundation 2.97.0 → 2.98.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 (171) hide show
  1. package/codeHighlight/codeHighlight.scss +1 -1
  2. package/datePicker/foundation.ts +7 -0
  3. package/datePicker/inputFoundation.ts +5 -0
  4. package/form/foundation.ts +48 -4
  5. package/inputNumber/foundation.ts +119 -3
  6. package/jsonViewer/jsonViewer.scss +2 -2
  7. package/lib/cjs/aiChatInput/aiChatInput.css +7 -7
  8. package/lib/cjs/anchor/anchor.css +3 -3
  9. package/lib/cjs/autoComplete/autoComplete.css +1 -1
  10. package/lib/cjs/avatar/avatar.css +5 -5
  11. package/lib/cjs/badge/badge.css +1 -1
  12. package/lib/cjs/breadcrumb/breadcrumb.css +2 -2
  13. package/lib/cjs/calendar/calendar.css +9 -9
  14. package/lib/cjs/cascader/cascader.css +6 -6
  15. package/lib/cjs/checkbox/checkbox.css +2 -2
  16. package/lib/cjs/codeHighlight/codeHighlight.css +1 -1
  17. package/lib/cjs/codeHighlight/codeHighlight.scss +1 -1
  18. package/lib/cjs/collapse/collapse.css +2 -2
  19. package/lib/cjs/datePicker/datePicker.css +8 -8
  20. package/lib/cjs/datePicker/foundation.d.ts +5 -0
  21. package/lib/cjs/datePicker/foundation.js +2 -0
  22. package/lib/cjs/datePicker/inputFoundation.d.ts +5 -0
  23. package/lib/cjs/descriptions/descriptions.css +6 -6
  24. package/lib/cjs/dropdown/dropdown.css +2 -2
  25. package/lib/cjs/form/form.css +4 -4
  26. package/lib/cjs/form/foundation.js +49 -3
  27. package/lib/cjs/hotKeys/hotKeys.css +2 -2
  28. package/lib/cjs/image/image.css +2 -2
  29. package/lib/cjs/input/input.css +8 -8
  30. package/lib/cjs/input/textarea.css +2 -2
  31. package/lib/cjs/inputNumber/foundation.d.ts +15 -0
  32. package/lib/cjs/inputNumber/foundation.js +113 -3
  33. package/lib/cjs/jsonViewer/jsonViewer.css +2 -2
  34. package/lib/cjs/jsonViewer/jsonViewer.scss +2 -2
  35. package/lib/cjs/list/list.css +1 -1
  36. package/lib/cjs/modal/modal.css +1 -1
  37. package/lib/cjs/navigation/navigation.css +2 -2
  38. package/lib/cjs/notification/notification.css +4 -4
  39. package/lib/cjs/pagination/pagination.css +5 -5
  40. package/lib/cjs/popconfirm/popconfirm.css +1 -1
  41. package/lib/cjs/popover/popover.css +1 -1
  42. package/lib/cjs/radio/radio.css +2 -2
  43. package/lib/cjs/scrollList/itemFoundation.js +12 -0
  44. package/lib/cjs/scrollList/scrollList.css +2 -2
  45. package/lib/cjs/select/select.css +6 -6
  46. package/lib/cjs/sideSheet/sideSheet.css +2 -2
  47. package/lib/cjs/sidebar/sidebar.css +11 -11
  48. package/lib/cjs/slider/foundation.js +46 -12
  49. package/lib/cjs/slider/rtl.scss +62 -0
  50. package/lib/cjs/slider/slider.css +45 -0
  51. package/lib/cjs/slider/slider.scss +2 -0
  52. package/lib/cjs/steps/steps.css +11 -11
  53. package/lib/cjs/table/foundation.d.ts +36 -0
  54. package/lib/cjs/table/foundation.js +162 -28
  55. package/lib/cjs/table/table.css +10 -2
  56. package/lib/cjs/table/table.scss +17 -0
  57. package/lib/cjs/tabs/tabs.css +2 -2
  58. package/lib/cjs/tag/tag.css +2 -2
  59. package/lib/cjs/tagInput/tagInput.css +2 -2
  60. package/lib/cjs/timePicker/timePicker.css +1 -1
  61. package/lib/cjs/timeline/timeline.css +2 -2
  62. package/lib/cjs/toast/toast.css +1 -1
  63. package/lib/cjs/tooltip/foundation.js +8 -5
  64. package/lib/cjs/tooltip/tooltip.css +1 -1
  65. package/lib/cjs/transfer/constants.d.ts +3 -1
  66. package/lib/cjs/transfer/constants.js +3 -1
  67. package/lib/cjs/transfer/foundation.d.ts +3 -0
  68. package/lib/cjs/transfer/foundation.js +4 -0
  69. package/lib/cjs/transfer/transfer.css +14 -5
  70. package/lib/cjs/transfer/transfer.scss +10 -0
  71. package/lib/cjs/tree/foundation.d.ts +3 -0
  72. package/lib/cjs/tree/foundation.js +31 -4
  73. package/lib/cjs/tree/tree.css +1 -1
  74. package/lib/cjs/treeSelect/foundation.d.ts +1 -0
  75. package/lib/cjs/treeSelect/foundation.js +8 -1
  76. package/lib/cjs/treeSelect/treeSelect.css +36 -4
  77. package/lib/cjs/treeSelect/treeSelect.scss +49 -1
  78. package/lib/cjs/typography/typography.css +8 -8
  79. package/lib/cjs/upload/upload.css +8 -8
  80. package/lib/cjs/utils/Store.d.ts +1 -1
  81. package/lib/cjs/utils/Store.js +1 -0
  82. package/lib/es/aiChatInput/aiChatInput.css +7 -7
  83. package/lib/es/anchor/anchor.css +3 -3
  84. package/lib/es/autoComplete/autoComplete.css +1 -1
  85. package/lib/es/avatar/avatar.css +5 -5
  86. package/lib/es/badge/badge.css +1 -1
  87. package/lib/es/breadcrumb/breadcrumb.css +2 -2
  88. package/lib/es/calendar/calendar.css +9 -9
  89. package/lib/es/cascader/cascader.css +6 -6
  90. package/lib/es/checkbox/checkbox.css +2 -2
  91. package/lib/es/codeHighlight/codeHighlight.css +1 -1
  92. package/lib/es/codeHighlight/codeHighlight.scss +1 -1
  93. package/lib/es/collapse/collapse.css +2 -2
  94. package/lib/es/datePicker/datePicker.css +8 -8
  95. package/lib/es/datePicker/foundation.d.ts +5 -0
  96. package/lib/es/datePicker/foundation.js +2 -0
  97. package/lib/es/datePicker/inputFoundation.d.ts +5 -0
  98. package/lib/es/descriptions/descriptions.css +6 -6
  99. package/lib/es/dropdown/dropdown.css +2 -2
  100. package/lib/es/form/form.css +4 -4
  101. package/lib/es/form/foundation.js +49 -3
  102. package/lib/es/hotKeys/hotKeys.css +2 -2
  103. package/lib/es/image/image.css +2 -2
  104. package/lib/es/input/input.css +8 -8
  105. package/lib/es/input/textarea.css +2 -2
  106. package/lib/es/inputNumber/foundation.d.ts +15 -0
  107. package/lib/es/inputNumber/foundation.js +113 -3
  108. package/lib/es/jsonViewer/jsonViewer.css +2 -2
  109. package/lib/es/jsonViewer/jsonViewer.scss +2 -2
  110. package/lib/es/list/list.css +1 -1
  111. package/lib/es/modal/modal.css +1 -1
  112. package/lib/es/navigation/navigation.css +2 -2
  113. package/lib/es/notification/notification.css +4 -4
  114. package/lib/es/pagination/pagination.css +5 -5
  115. package/lib/es/popconfirm/popconfirm.css +1 -1
  116. package/lib/es/popover/popover.css +1 -1
  117. package/lib/es/radio/radio.css +2 -2
  118. package/lib/es/scrollList/itemFoundation.js +12 -0
  119. package/lib/es/scrollList/scrollList.css +2 -2
  120. package/lib/es/select/select.css +6 -6
  121. package/lib/es/sideSheet/sideSheet.css +2 -2
  122. package/lib/es/sidebar/sidebar.css +11 -11
  123. package/lib/es/slider/foundation.js +46 -12
  124. package/lib/es/slider/rtl.scss +62 -0
  125. package/lib/es/slider/slider.css +45 -0
  126. package/lib/es/slider/slider.scss +2 -0
  127. package/lib/es/steps/steps.css +11 -11
  128. package/lib/es/table/foundation.d.ts +36 -0
  129. package/lib/es/table/foundation.js +162 -28
  130. package/lib/es/table/table.css +10 -2
  131. package/lib/es/table/table.scss +17 -0
  132. package/lib/es/tabs/tabs.css +2 -2
  133. package/lib/es/tag/tag.css +2 -2
  134. package/lib/es/tagInput/tagInput.css +2 -2
  135. package/lib/es/timePicker/timePicker.css +1 -1
  136. package/lib/es/timeline/timeline.css +2 -2
  137. package/lib/es/toast/toast.css +1 -1
  138. package/lib/es/tooltip/foundation.js +8 -5
  139. package/lib/es/tooltip/tooltip.css +1 -1
  140. package/lib/es/transfer/constants.d.ts +3 -1
  141. package/lib/es/transfer/constants.js +3 -1
  142. package/lib/es/transfer/foundation.d.ts +3 -0
  143. package/lib/es/transfer/foundation.js +4 -0
  144. package/lib/es/transfer/transfer.css +14 -5
  145. package/lib/es/transfer/transfer.scss +10 -0
  146. package/lib/es/tree/foundation.d.ts +3 -0
  147. package/lib/es/tree/foundation.js +31 -4
  148. package/lib/es/tree/tree.css +1 -1
  149. package/lib/es/treeSelect/foundation.d.ts +1 -0
  150. package/lib/es/treeSelect/foundation.js +8 -1
  151. package/lib/es/treeSelect/treeSelect.css +36 -4
  152. package/lib/es/treeSelect/treeSelect.scss +49 -1
  153. package/lib/es/typography/typography.css +8 -8
  154. package/lib/es/upload/upload.css +8 -8
  155. package/lib/es/utils/Store.d.ts +1 -1
  156. package/lib/es/utils/Store.js +1 -0
  157. package/package.json +19 -4
  158. package/scrollList/itemFoundation.ts +12 -0
  159. package/slider/foundation.ts +55 -15
  160. package/slider/rtl.scss +62 -0
  161. package/slider/slider.scss +2 -0
  162. package/table/foundation.ts +197 -29
  163. package/table/table.scss +17 -0
  164. package/tooltip/foundation.ts +8 -5
  165. package/transfer/constants.ts +3 -1
  166. package/transfer/foundation.ts +8 -1
  167. package/transfer/transfer.scss +10 -0
  168. package/tree/foundation.ts +34 -5
  169. package/treeSelect/foundation.ts +10 -1
  170. package/treeSelect/treeSelect.scss +49 -1
  171. package/utils/Store.ts +2 -1
@@ -25,7 +25,7 @@
25
25
  align-items: center;
26
26
  font-size: 14px;
27
27
  line-height: 20px;
28
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
28
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
29
29
  font-weight: 600;
30
30
  }
31
31
  .semi-avatar-content {
@@ -65,7 +65,7 @@
65
65
  .semi-avatar-small .semi-avatar-label {
66
66
  font-size: 12px;
67
67
  line-height: 16px;
68
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
68
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
69
69
  }
70
70
  .semi-avatar-default {
71
71
  width: 40px;
@@ -75,7 +75,7 @@
75
75
  .semi-avatar-default .semi-avatar-label {
76
76
  font-size: 18px;
77
77
  line-height: 24px;
78
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
78
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
79
79
  }
80
80
  .semi-avatar-medium {
81
81
  width: 48px;
@@ -85,7 +85,7 @@
85
85
  .semi-avatar-medium .semi-avatar-label {
86
86
  font-size: 20px;
87
87
  line-height: 28px;
88
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
88
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
89
89
  }
90
90
  .semi-avatar-large {
91
91
  width: 72px;
@@ -95,7 +95,7 @@
95
95
  .semi-avatar-large .semi-avatar-label {
96
96
  font-size: 32px;
97
97
  line-height: 44px;
98
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
98
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
99
99
  }
100
100
  .semi-avatar-extra-large {
101
101
  width: 128px;
@@ -26,7 +26,7 @@
26
26
  text-align: center;
27
27
  font-size: 12px;
28
28
  line-height: 16px;
29
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
29
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
30
30
  font-weight: 400;
31
31
  color: var(--semi-color-bg-2);
32
32
  }
@@ -11,13 +11,13 @@
11
11
  .semi-breadcrumb-wrapper-loose {
12
12
  font-size: 14px;
13
13
  line-height: 20px;
14
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
14
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
15
15
  font-size: 14px;
16
16
  }
17
17
  .semi-breadcrumb-wrapper-compact {
18
18
  font-size: 12px;
19
19
  line-height: 16px;
20
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
20
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
21
21
  font-size: 12px;
22
22
  }
23
23
  .semi-breadcrumb-item-wrap {
@@ -72,7 +72,7 @@
72
72
  .semi-calendar-week .semi-calendar-tag {
73
73
  font-size: 14px;
74
74
  line-height: 20px;
75
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
75
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
76
76
  min-width: 70px;
77
77
  color: var(--semi-color-text-2);
78
78
  }
@@ -188,7 +188,7 @@
188
188
  .semi-calendar-week .semi-calendar-time-item span {
189
189
  font-size: 14px;
190
190
  line-height: 20px;
191
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
191
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
192
192
  display: block;
193
193
  position: relative;
194
194
  top: -10px;
@@ -239,7 +239,7 @@
239
239
  align-items: flex-start;
240
240
  font-size: 14px;
241
241
  line-height: 20px;
242
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
242
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
243
243
  color: var(--semi-color-text-2);
244
244
  }
245
245
  .semi-calendar-week-header {
@@ -301,7 +301,7 @@
301
301
  .semi-calendar-week .semi-calendar-all-day .semi-calendar-event-items .semi-calendar-event-allday > * {
302
302
  font-size: 14px;
303
303
  line-height: 20px;
304
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
304
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
305
305
  }
306
306
  .semi-calendar-week .semi-calendar-week-tag {
307
307
  text-align: right;
@@ -318,7 +318,7 @@
318
318
  overflow: hidden;
319
319
  font-size: 14px;
320
320
  line-height: 20px;
321
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
321
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
322
322
  }
323
323
  .semi-calendar-month-grid-wrapper {
324
324
  height: calc(100% - 27px);
@@ -372,7 +372,7 @@
372
372
  .semi-calendar-month-skeleton li span {
373
373
  font-size: 14px;
374
374
  line-height: 20px;
375
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
375
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
376
376
  }
377
377
  .semi-calendar-month-skeleton li:last-child {
378
378
  border-right: none;
@@ -383,7 +383,7 @@
383
383
  .semi-calendar-month-skeleton .semi-calendar-month-event-card-wrapper {
384
384
  font-size: 14px;
385
385
  line-height: 20px;
386
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
386
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
387
387
  display: block;
388
388
  position: absolute;
389
389
  right: 8px;
@@ -420,7 +420,7 @@
420
420
  .semi-calendar-month-weekrow .semi-calendar-event-items .semi-calendar-event-month > * {
421
421
  font-size: 14px;
422
422
  line-height: 20px;
423
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
423
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
424
424
  }
425
425
  .semi-calendar-month-date {
426
426
  position: absolute;
@@ -460,7 +460,7 @@
460
460
  .semi-calendar-month-event-card-header-info-date {
461
461
  font-size: 20px;
462
462
  line-height: 28px;
463
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
463
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
464
464
  margin-top: 4px;
465
465
  }
466
466
  .semi-calendar-month-event-card-body {
@@ -48,7 +48,7 @@
48
48
  .semi-cascader-large .semi-cascader-selection {
49
49
  font-size: 16px;
50
50
  line-height: 22px;
51
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
51
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
52
52
  }
53
53
  .semi-cascader-large .semi-cascader-selection {
54
54
  padding-left: 12px;
@@ -104,7 +104,7 @@
104
104
  .semi-cascader-selection {
105
105
  font-size: 14px;
106
106
  line-height: 20px;
107
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
107
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
108
108
  height: 100%;
109
109
  display: inline-flex;
110
110
  align-items: center;
@@ -218,7 +218,7 @@
218
218
  font-weight: 600;
219
219
  font-size: 14px;
220
220
  line-height: 20px;
221
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
221
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
222
222
  color: var(--semi-color-text-2);
223
223
  }
224
224
  .semi-cascader-prefix-icon, .semi-cascader-suffix-icon {
@@ -231,7 +231,7 @@
231
231
  font-weight: 600;
232
232
  font-size: 14px;
233
233
  line-height: 20px;
234
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
234
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
235
235
  color: var(--semi-color-text-2);
236
236
  flex-shrink: 0;
237
237
  white-space: nowrap;
@@ -275,7 +275,7 @@
275
275
  .semi-cascader-popover .semi-cascader-option-lists .semi-cascader-option-empty {
276
276
  font-size: 14px;
277
277
  line-height: 20px;
278
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
278
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
279
279
  border-radius: var(--semi-border-radius-medium);
280
280
  color: var(--semi-color-disabled-text);
281
281
  margin: 0;
@@ -369,7 +369,7 @@
369
369
  transition: background-color var(--semi-transition_duration-none) var(--semi-transition_function-easeIn) var(--semi-transition_delay-none);
370
370
  font-size: 14px;
371
371
  line-height: 20px;
372
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
372
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
373
373
  min-width: min-content;
374
374
  word-break: break-all;
375
375
  color: var(--semi-color-text-0);
@@ -8,7 +8,7 @@
8
8
  align-items: flex-start;
9
9
  font-size: 14px;
10
10
  line-height: 20px;
11
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
11
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
12
12
  cursor: pointer;
13
13
  transition: background-color var(--semi-transition_duration-none) var(--semi-transition_function-easeIn) var(--semi-transition_delay-none), border var(--semi-transition_duration-none) var(--semi-transition_function-easeIn) var(--semi-transition_delay-none);
14
14
  transform: scale(var(--semi-transform_scale-none));
@@ -269,7 +269,7 @@
269
269
  .semi-checkboxGroup {
270
270
  font-size: 14px;
271
271
  line-height: 20px;
272
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
272
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
273
273
  line-height: 14px;
274
274
  }
275
275
  .semi-checkboxGroup .semi-checkbox.semi-checkbox-vertical {
@@ -13,7 +13,7 @@
13
13
  color: var(--semi-color-text-0);
14
14
  font-size: 13px;
15
15
  text-shadow: none;
16
- font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
16
+ font-family: ui-monospace, "SFMono-Regular", "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace;
17
17
  direction: ltr;
18
18
  text-align: left;
19
19
  white-space: pre;
@@ -16,7 +16,7 @@ $module: #{$prefix}-codeHighlight;
16
16
  font-size: 13px;
17
17
  text-shadow: none;
18
18
  // font-family: 'Inconsolata', Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
19
- font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
19
+ font-family: ui-monospace, 'SFMono-Regular', 'SF Mono', Menlo, Monaco, Consolas, 'Liberation Mono', 'DejaVu Sans Mono', 'Courier New', monospace;
20
20
  direction: ltr;
21
21
  text-align: left;
22
22
  white-space: pre;
@@ -17,7 +17,7 @@
17
17
  font-weight: 600;
18
18
  font-size: 14px;
19
19
  line-height: 20px;
20
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
20
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
21
21
  }
22
22
  .semi-collapse-header-right {
23
23
  display: flex;
@@ -61,7 +61,7 @@
61
61
  color: var(--semi-color-text-1);
62
62
  font-size: 14px;
63
63
  line-height: 20px;
64
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
64
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
65
65
  }
66
66
  .semi-collapse-content p {
67
67
  margin: 0;
@@ -110,7 +110,7 @@
110
110
  padding: 0;
111
111
  font-size: 14px;
112
112
  line-height: 20px;
113
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
113
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
114
114
  min-height: 24px;
115
115
  line-height: 24px;
116
116
  }
@@ -199,7 +199,7 @@
199
199
  .semi-datepicker-navigation-month {
200
200
  font-size: 16px;
201
201
  line-height: 22px;
202
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
202
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
203
203
  flex-grow: 1;
204
204
  text-align: center;
205
205
  font-weight: 600;
@@ -217,7 +217,7 @@
217
217
  .semi-datepicker-weekday {
218
218
  font-size: 12px;
219
219
  line-height: 16px;
220
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
220
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
221
221
  font-weight: 600;
222
222
  color: var(--semi-color-text-2);
223
223
  border-bottom: 1px solid var(--semi-color-border);
@@ -737,7 +737,7 @@
737
737
  font-weight: 600;
738
738
  font-size: 14px;
739
739
  line-height: 20px;
740
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
740
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
741
741
  white-space: nowrap;
742
742
  color: var(--semi-color-text-2);
743
743
  }
@@ -763,7 +763,7 @@
763
763
  .semi-datepicker-compact {
764
764
  font-size: 12px;
765
765
  line-height: 16px;
766
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
766
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
767
767
  line-height: 20px;
768
768
  display: inline-block;
769
769
  max-width: calc(100vw - 32px);
@@ -834,7 +834,7 @@
834
834
  .semi-datepicker-compact .semi-datepicker-month-grid .semi-scrolllist {
835
835
  font-size: 12px;
836
836
  line-height: 16px;
837
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
837
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
838
838
  line-height: 20px;
839
839
  }
840
840
  .semi-datepicker-compact .semi-datepicker-month-grid .semi-scrolllist-header {
@@ -878,7 +878,7 @@
878
878
  .semi-datepicker-compact.semi-datepicker-panel-yam .semi-scrolllist {
879
879
  font-size: 12px;
880
880
  line-height: 16px;
881
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
881
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
882
882
  line-height: 20px;
883
883
  }
884
884
  .semi-datepicker-compact .semi-datepicker-tpk {
@@ -907,7 +907,7 @@
907
907
  .semi-datepicker-compact .semi-datepicker-navigation-month .semi-button {
908
908
  font-size: 12px;
909
909
  line-height: 16px;
910
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
910
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
911
911
  line-height: 20px;
912
912
  max-width: 100%;
913
913
  }
@@ -138,6 +138,11 @@ export interface DatePickerFoundationProps extends ElementProps, RenderProps, Ev
138
138
  dateFnsLocale?: any;
139
139
  localeCode?: string;
140
140
  rangeSeparator?: string;
141
+ /**
142
+ * Only for UI render. Keep `semi-foundation` framework-agnostic (no React types).
143
+ * `semi-ui` layer should declare this as `React.ReactNode`.
144
+ */
145
+ rangeSeparatorNode?: any;
141
146
  insetInput?: DateInputFoundationProps['insetInput'];
142
147
  preventScroll?: boolean;
143
148
  }
@@ -46,6 +46,8 @@ export default class DatePickerFoundation extends BaseFoundation {
46
46
  this._isRangeValueComplete = value => {
47
47
  let result = false;
48
48
  if (Array.isArray(value)) {
49
+ // Note: empty array should be treated as "complete" (not partially selected)
50
+ // to keep behaviors such as clear/confirm/change consistent.
49
51
  result = !value.some(date => isNullOrUndefined(date));
50
52
  }
51
53
  return result;
@@ -40,6 +40,11 @@ export interface DateInputFoundationProps extends DateInputElementProps, DateInp
40
40
  validateStatus?: ValidateStatus;
41
41
  prefixCls?: string;
42
42
  rangeSeparator?: string;
43
+ /**
44
+ * Only for UI render. Keep `semi-foundation` framework-agnostic (no React types).
45
+ * `semi-ui` layer should declare this as `React.ReactNode`.
46
+ */
47
+ rangeSeparatorNode?: any;
43
48
  panelType?: PanelType;
44
49
  insetInput?: boolean | InsetInputProps;
45
50
  insetInputValue?: InsetInputValue;
@@ -25,7 +25,7 @@
25
25
  font-weight: normal;
26
26
  font-size: 14px;
27
27
  line-height: 20px;
28
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
28
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
29
29
  min-height: 14px;
30
30
  white-space: nowrap;
31
31
  color: var(--semi-color-text-2);
@@ -34,7 +34,7 @@
34
34
  font-weight: normal;
35
35
  font-size: 14px;
36
36
  line-height: 20px;
37
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
37
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
38
38
  color: var(--semi-color-text-0);
39
39
  }
40
40
  .semi-descriptions-center .semi-descriptions-item-th {
@@ -84,14 +84,14 @@
84
84
  .semi-descriptions-double-small .semi-descriptions-key {
85
85
  font-size: 12px;
86
86
  line-height: 16px;
87
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
87
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
88
88
  padding-bottom: 0;
89
89
  font-size: 12px;
90
90
  }
91
91
  .semi-descriptions-double-small .semi-descriptions-value {
92
92
  font-size: 16px;
93
93
  line-height: 22px;
94
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
94
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
95
95
  font-size: 16px;
96
96
  }
97
97
  .semi-descriptions-double-medium .semi-descriptions-item {
@@ -104,7 +104,7 @@
104
104
  .semi-descriptions-double-medium .semi-descriptions-value {
105
105
  font-size: 20px;
106
106
  line-height: 28px;
107
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
107
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
108
108
  font-size: 20px;
109
109
  }
110
110
  .semi-descriptions-double-large .semi-descriptions-item {
@@ -117,7 +117,7 @@
117
117
  .semi-descriptions-double-large .semi-descriptions-value {
118
118
  font-size: 28px;
119
119
  line-height: 40px;
120
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
120
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
121
121
  font-size: 28px;
122
122
  }
123
123
  .semi-descriptions-horizontal table {
@@ -4,7 +4,7 @@
4
4
  .semi-dropdown {
5
5
  font-size: 14px;
6
6
  line-height: 20px;
7
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
7
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
8
8
  }
9
9
  .semi-dropdown-wrapper {
10
10
  overflow-y: auto;
@@ -35,7 +35,7 @@
35
35
  padding-right: 16px;
36
36
  font-size: 12px;
37
37
  line-height: 16px;
38
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
38
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
39
39
  cursor: default;
40
40
  }
41
41
  .semi-dropdown-title-withTick {
@@ -54,7 +54,7 @@
54
54
  vertical-align: middle;
55
55
  font-size: 14px;
56
56
  line-height: 20px;
57
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
57
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
58
58
  flex-shrink: 0;
59
59
  }
60
60
  .semi-form-field-label-disabled {
@@ -89,7 +89,7 @@
89
89
  .semi-form-field-error-message, .semi-form-field-help-text {
90
90
  font-size: 14px;
91
91
  line-height: 20px;
92
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
92
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
93
93
  display: flex;
94
94
  align-items: center;
95
95
  margin-top: 4px;
@@ -176,7 +176,7 @@
176
176
  color: var(--semi-color-tertiary);
177
177
  font-size: 14px;
178
178
  line-height: 20px;
179
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
179
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
180
180
  }
181
181
 
182
182
  .semi-form-vertical .semi-form-field-group {
@@ -210,7 +210,7 @@
210
210
  margin-block-end: 0;
211
211
  font-size: 18px;
212
212
  line-height: 24px;
213
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
213
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
214
214
  font-weight: 600;
215
215
  width: 100%;
216
216
  padding-bottom: 8px;
@@ -70,14 +70,60 @@ export default class FormFoundation extends BaseFoundation {
70
70
  const registered = this.registered[field];
71
71
  this.registered[field] = true;
72
72
  this.fields.set(field, fieldStuff);
73
- if (fieldStuff.keepState) {
74
- // TODO support keepState
73
+ if (fieldStuff.keepState && registered) {
74
+ // When keepState is true and the field was previously registered (remounting),
75
+ // restore the saved state from formState instead of using the initial value
76
+ const hasSavedValue = ObjectUtil.has(this.data.values, field);
77
+ const savedValue = ObjectUtil.get(this.data.values, field);
78
+ const hasSavedError = ObjectUtil.has(this.data.errors, field);
79
+ const savedError = ObjectUtil.get(this.data.errors, field);
80
+ const hasSavedTouched = ObjectUtil.has(this.data.touched, field);
81
+ const savedTouched = ObjectUtil.get(this.data.touched, field);
82
+ const allowEmpty = fieldStuff.allowEmpty || false;
83
+ const opts = {
84
+ notNotify: true,
85
+ notUpdate: false,
86
+ // updateStateValue reads `fieldAllowEmpty` (field-level override)
87
+ fieldAllowEmpty: allowEmpty
88
+ };
89
+ // Restore value from formState if it exists
90
+ if (hasSavedValue) {
91
+ // Keep formState as source of truth; still trigger a forceUpdate so that
92
+ // consumers of formState can get the latest snapshot when field remounts.
93
+ this.updateStateValue(field, savedValue, opts);
94
+ // Sync the restored value back to the field component's local state.
95
+ // Avoid a second forceUpdate/notify from FieldApi.
96
+ fieldStuff.fieldApi.setValue(savedValue, Object.assign(Object.assign({}, opts), {
97
+ notUpdate: true
98
+ }));
99
+ } else {
100
+ // No saved value, use initial value
101
+ let fieldValue = fieldState.value;
102
+ if (!allowEmpty && fieldValue === '') {
103
+ fieldValue = undefined;
104
+ }
105
+ this.updateStateValue(field, fieldValue, opts);
106
+ }
107
+ // Restore error from formState if it exists
108
+ if (hasSavedError) {
109
+ this.updateStateError(field, savedError, opts);
110
+ fieldStuff.fieldApi.setError(savedError, Object.assign(Object.assign({}, opts), {
111
+ notUpdate: true
112
+ }));
113
+ }
114
+ // Restore touched from formState if it exists
115
+ if (hasSavedTouched) {
116
+ this.updateStateTouched(field, savedTouched, opts);
117
+ fieldStuff.fieldApi.setTouched(savedTouched, Object.assign(Object.assign({}, opts), {
118
+ notUpdate: true
119
+ }));
120
+ }
75
121
  } else {
76
122
  const allowEmpty = fieldStuff.allowEmpty || false;
77
123
  const opts = {
78
124
  notNotify: true,
79
125
  notUpdate: false,
80
- allowEmpty
126
+ fieldAllowEmpty: allowEmpty
81
127
  };
82
128
  let fieldValue = fieldState.value;
83
129
  // When allowEmpty is false, 'is equivalent to undefined, and the key of the field does not need to be reflected on values
@@ -15,7 +15,7 @@
15
15
  .semi-hotKeys-content {
16
16
  font-size: 12px;
17
17
  line-height: 16px;
18
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
18
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
19
19
  border-radius: 2px;
20
20
  height: 20px;
21
21
  padding: 2px 8px;
@@ -26,7 +26,7 @@
26
26
  .semi-hotKeys-split {
27
27
  font-size: 12px;
28
28
  line-height: 16px;
29
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
29
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
30
30
  margin: 0 3px;
31
31
  color: var(--semi-color-text-0);
32
32
  }
@@ -96,7 +96,7 @@
96
96
  font-weight: normal;
97
97
  font-size: 14px;
98
98
  line-height: 20px;
99
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
99
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
100
100
  color: var(--semi-color-white);
101
101
  height: 60px;
102
102
  display: flex;
@@ -143,7 +143,7 @@
143
143
  color: var(--semi-color-white);
144
144
  font-size: 16px;
145
145
  line-height: 22px;
146
- font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
146
+ font-family: "Inter", -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Helvetica, Arial, sans-serif;
147
147
  margin: 0 12px;
148
148
  }
149
149
  .semi-image-preview-footer .semi-icon {