@rainbow-oh/yee-c 0.4.4 → 0.4.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 (183) hide show
  1. package/dist/cjs/Button/button.d.ts +1 -1
  2. package/dist/cjs/CSV/download.d.ts +1 -1
  3. package/dist/cjs/Carousel/carousel.d.ts +2 -2
  4. package/dist/cjs/Carousel/carousel.js +9 -2
  5. package/dist/cjs/Carousel/interface.d.ts +5 -0
  6. package/dist/cjs/Drawer/style/index.less +4 -0
  7. package/dist/cjs/FloatButton/float-button.d.ts +1 -1
  8. package/dist/cjs/Form/demo/basic.js +2 -2
  9. package/dist/cjs/Form/style/index.less +15 -0
  10. package/dist/cjs/Input/style/index.less +0 -17
  11. package/dist/cjs/InputNumber/style/index.less +0 -29
  12. package/dist/cjs/PickerPanel/interface.d.ts +44 -2
  13. package/dist/cjs/PickerPanel/panels/DatePanel/DateBody.d.ts +2 -1
  14. package/dist/cjs/PickerPanel/panels/DatePanel/DateHeader.d.ts +2 -1
  15. package/dist/cjs/PickerPanel/panels/DatePanel/DateHeader.js +1 -1
  16. package/dist/cjs/PickerPanel/panels/DatePanel/index.d.ts +2 -1
  17. package/dist/cjs/PickerPanel/panels/DateTimePanel/index.d.ts +7 -1
  18. package/dist/cjs/PickerPanel/panels/DateTimePanel/index.js +18 -4
  19. package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeBody.d.ts +2 -1
  20. package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeBody.js +1 -1
  21. package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeHeader.d.ts +2 -1
  22. package/dist/cjs/PickerPanel/panels/DecadePanel/DecadeHeader.js +1 -1
  23. package/dist/cjs/PickerPanel/panels/DecadePanel/index.d.ts +2 -1
  24. package/dist/cjs/PickerPanel/panels/DecadePanel/index.js +1 -1
  25. package/dist/cjs/PickerPanel/panels/Header.d.ts +13 -1
  26. package/dist/cjs/PickerPanel/panels/MonthPanel/MonthBody.d.ts +2 -1
  27. package/dist/cjs/PickerPanel/panels/MonthPanel/MonthHeader.d.ts +2 -1
  28. package/dist/cjs/PickerPanel/panels/MonthPanel/MonthHeader.js +1 -1
  29. package/dist/cjs/PickerPanel/panels/MonthPanel/index.d.ts +2 -1
  30. package/dist/cjs/PickerPanel/panels/MonthPanel/index.js +1 -1
  31. package/dist/cjs/PickerPanel/panels/PanelBody.d.ts +21 -1
  32. package/dist/cjs/PickerPanel/panels/PanelBody.js +3 -3
  33. package/dist/cjs/PickerPanel/panels/QuarterPanel/QuarterBody.d.ts +2 -1
  34. package/dist/cjs/PickerPanel/panels/QuarterPanel/QuarterHeader.d.ts +2 -1
  35. package/dist/cjs/PickerPanel/panels/QuarterPanel/index.d.ts +2 -1
  36. package/dist/cjs/PickerPanel/panels/RangePanel/index.d.ts +2 -1
  37. package/dist/cjs/PickerPanel/panels/RangePanel/index.js +2 -2
  38. package/dist/cjs/PickerPanel/panels/RangePanel/interface.d.ts +5 -5
  39. package/dist/cjs/PickerPanel/panels/TimePanel/TimeBody.d.ts +17 -1
  40. package/dist/cjs/PickerPanel/panels/TimePanel/TimeCell.d.ts +7 -1
  41. package/dist/cjs/PickerPanel/panels/TimePanel/TimeCell.js +1 -1
  42. package/dist/cjs/PickerPanel/panels/TimePanel/TimeColumn.d.ts +14 -1
  43. package/dist/cjs/PickerPanel/panels/TimePanel/TimeColumn.js +1 -1
  44. package/dist/cjs/PickerPanel/panels/TimePanel/TimeHeader.d.ts +4 -1
  45. package/dist/cjs/PickerPanel/panels/TimePanel/index.d.ts +9 -1
  46. package/dist/cjs/PickerPanel/panels/WeekPanel/WeekBody.d.ts +2 -1
  47. package/dist/cjs/PickerPanel/panels/WeekPanel/WeekHeader.d.ts +2 -1
  48. package/dist/cjs/PickerPanel/panels/WeekPanel/index.d.ts +2 -1
  49. package/dist/cjs/PickerPanel/panels/YearPanel/YearBody.d.ts +2 -1
  50. package/dist/cjs/PickerPanel/panels/YearPanel/YearBody.js +2 -2
  51. package/dist/cjs/PickerPanel/panels/YearPanel/YearHeader.d.ts +2 -1
  52. package/dist/cjs/PickerPanel/panels/YearPanel/YearHeader.js +7 -1
  53. package/dist/cjs/PickerPanel/panels/YearPanel/index.d.ts +2 -1
  54. package/dist/cjs/PickerPanel/panels/YearPanel/index.js +1 -1
  55. package/dist/cjs/PickerPanel/utils/pickerUtils.d.ts +7 -7
  56. package/dist/cjs/PickerPanel/utils/pickerUtils.js +2 -2
  57. package/dist/cjs/Select/style/index.less +0 -13
  58. package/dist/cjs/Selector/style/index.less +2 -137
  59. package/dist/cjs/TextArea/style/index.less +0 -17
  60. package/dist/cjs/hooks/useEvent.js +4 -1
  61. package/dist/cjs/style/size.css +1 -0
  62. package/dist/cjs/style/themes.css +1 -1
  63. package/dist/cjs/style/variables.css +2 -1
  64. package/dist/cjs/version.d.ts +1 -1
  65. package/dist/cjs/version.js +1 -1
  66. package/dist/esm/Button/button.d.ts +1 -1
  67. package/dist/esm/CSV/download.d.ts +1 -1
  68. package/dist/esm/Carousel/carousel.d.ts +2 -2
  69. package/dist/esm/Carousel/carousel.js +5 -1
  70. package/dist/esm/Carousel/interface.d.ts +5 -0
  71. package/dist/esm/Drawer/style/index.less +4 -0
  72. package/dist/esm/FloatButton/float-button.d.ts +1 -1
  73. package/dist/esm/Form/demo/basic.js +4 -2
  74. package/dist/esm/Form/style/index.less +15 -0
  75. package/dist/esm/Input/style/index.less +0 -17
  76. package/dist/esm/InputNumber/style/index.less +0 -29
  77. package/dist/esm/PickerPanel/interface.d.ts +44 -2
  78. package/dist/esm/PickerPanel/panels/DatePanel/DateBody.d.ts +2 -1
  79. package/dist/esm/PickerPanel/panels/DatePanel/DateHeader.d.ts +2 -1
  80. package/dist/esm/PickerPanel/panels/DatePanel/DateHeader.js +1 -1
  81. package/dist/esm/PickerPanel/panels/DatePanel/index.d.ts +2 -1
  82. package/dist/esm/PickerPanel/panels/DateTimePanel/index.d.ts +7 -1
  83. package/dist/esm/PickerPanel/panels/DateTimePanel/index.js +11 -7
  84. package/dist/esm/PickerPanel/panels/DecadePanel/DecadeBody.d.ts +2 -1
  85. package/dist/esm/PickerPanel/panels/DecadePanel/DecadeBody.js +2 -1
  86. package/dist/esm/PickerPanel/panels/DecadePanel/DecadeHeader.d.ts +2 -1
  87. package/dist/esm/PickerPanel/panels/DecadePanel/DecadeHeader.js +2 -1
  88. package/dist/esm/PickerPanel/panels/DecadePanel/index.d.ts +2 -1
  89. package/dist/esm/PickerPanel/panels/DecadePanel/index.js +1 -1
  90. package/dist/esm/PickerPanel/panels/Header.d.ts +13 -1
  91. package/dist/esm/PickerPanel/panels/MonthPanel/MonthBody.d.ts +2 -1
  92. package/dist/esm/PickerPanel/panels/MonthPanel/MonthHeader.d.ts +2 -1
  93. package/dist/esm/PickerPanel/panels/MonthPanel/MonthHeader.js +2 -1
  94. package/dist/esm/PickerPanel/panels/MonthPanel/index.d.ts +2 -1
  95. package/dist/esm/PickerPanel/panels/MonthPanel/index.js +1 -1
  96. package/dist/esm/PickerPanel/panels/PanelBody.d.ts +21 -1
  97. package/dist/esm/PickerPanel/panels/PanelBody.js +2 -4
  98. package/dist/esm/PickerPanel/panels/QuarterPanel/QuarterBody.d.ts +2 -1
  99. package/dist/esm/PickerPanel/panels/QuarterPanel/QuarterHeader.d.ts +2 -1
  100. package/dist/esm/PickerPanel/panels/QuarterPanel/index.d.ts +2 -1
  101. package/dist/esm/PickerPanel/panels/RangePanel/index.d.ts +2 -1
  102. package/dist/esm/PickerPanel/panels/RangePanel/index.js +2 -2
  103. package/dist/esm/PickerPanel/panels/RangePanel/interface.d.ts +5 -5
  104. package/dist/esm/PickerPanel/panels/TimePanel/TimeBody.d.ts +17 -1
  105. package/dist/esm/PickerPanel/panels/TimePanel/TimeCell.d.ts +7 -1
  106. package/dist/esm/PickerPanel/panels/TimePanel/TimeCell.js +1 -1
  107. package/dist/esm/PickerPanel/panels/TimePanel/TimeColumn.d.ts +14 -1
  108. package/dist/esm/PickerPanel/panels/TimePanel/TimeColumn.js +1 -1
  109. package/dist/esm/PickerPanel/panels/TimePanel/TimeHeader.d.ts +4 -1
  110. package/dist/esm/PickerPanel/panels/TimePanel/index.d.ts +9 -1
  111. package/dist/esm/PickerPanel/panels/WeekPanel/WeekBody.d.ts +2 -1
  112. package/dist/esm/PickerPanel/panels/WeekPanel/WeekHeader.d.ts +2 -1
  113. package/dist/esm/PickerPanel/panels/WeekPanel/index.d.ts +2 -1
  114. package/dist/esm/PickerPanel/panels/YearPanel/YearBody.d.ts +2 -1
  115. package/dist/esm/PickerPanel/panels/YearPanel/YearBody.js +3 -2
  116. package/dist/esm/PickerPanel/panels/YearPanel/YearHeader.d.ts +2 -1
  117. package/dist/esm/PickerPanel/panels/YearPanel/YearHeader.js +2 -1
  118. package/dist/esm/PickerPanel/panels/YearPanel/index.d.ts +2 -1
  119. package/dist/esm/PickerPanel/panels/YearPanel/index.js +1 -1
  120. package/dist/esm/PickerPanel/picker-panel.js +3 -0
  121. package/dist/esm/PickerPanel/utils/pickerUtils.d.ts +7 -7
  122. package/dist/esm/PickerPanel/utils/pickerUtils.js +4 -10
  123. package/dist/esm/Select/style/index.less +0 -13
  124. package/dist/esm/Selector/style/index.less +2 -137
  125. package/dist/esm/TextArea/style/index.less +0 -17
  126. package/dist/esm/style/size.css +1 -0
  127. package/dist/esm/style/themes.css +1 -1
  128. package/dist/esm/style/variables.css +2 -1
  129. package/dist/esm/version.d.ts +1 -1
  130. package/dist/esm/version.js +1 -1
  131. package/dist/umd/yee-c.min.css +2 -2
  132. package/dist/umd/yee-c.min.js +1 -1
  133. package/package.json +1 -1
  134. package/src/Carousel/carousel.tsx +14 -3
  135. package/src/Carousel/interface.ts +6 -0
  136. package/src/Cascader/cascader.tsx +3 -1
  137. package/src/Cascader/column.tsx +1 -1
  138. package/src/Drawer/style/index.less +4 -0
  139. package/src/Dropdown/dropdown.tsx +1 -1
  140. package/src/FloatButton/float-button.tsx +5 -3
  141. package/src/Form/demo/basic.tsx +2 -2
  142. package/src/Form/style/index.less +15 -0
  143. package/src/Input/style/index.less +0 -17
  144. package/src/InputNumber/style/index.less +0 -29
  145. package/src/PickerPanel/interface.ts +43 -2
  146. package/src/PickerPanel/panels/DatePanel/DateBody.tsx +2 -1
  147. package/src/PickerPanel/panels/DatePanel/DateHeader.tsx +3 -2
  148. package/src/PickerPanel/panels/DatePanel/index.tsx +2 -1
  149. package/src/PickerPanel/panels/DateTimePanel/index.tsx +12 -5
  150. package/src/PickerPanel/panels/DecadePanel/DecadeBody.tsx +3 -2
  151. package/src/PickerPanel/panels/DecadePanel/DecadeHeader.tsx +3 -2
  152. package/src/PickerPanel/panels/DecadePanel/index.tsx +3 -2
  153. package/src/PickerPanel/panels/Header.tsx +14 -1
  154. package/src/PickerPanel/panels/MonthPanel/MonthBody.tsx +2 -1
  155. package/src/PickerPanel/panels/MonthPanel/MonthHeader.tsx +3 -2
  156. package/src/PickerPanel/panels/MonthPanel/index.tsx +3 -2
  157. package/src/PickerPanel/panels/PanelBody.tsx +27 -5
  158. package/src/PickerPanel/panels/QuarterPanel/QuarterBody.tsx +2 -1
  159. package/src/PickerPanel/panels/QuarterPanel/QuarterHeader.tsx +2 -1
  160. package/src/PickerPanel/panels/QuarterPanel/index.tsx +2 -1
  161. package/src/PickerPanel/panels/RangePanel/index.tsx +11 -9
  162. package/src/PickerPanel/panels/RangePanel/interface.ts +5 -5
  163. package/src/PickerPanel/panels/TimePanel/TimeBody.tsx +21 -5
  164. package/src/PickerPanel/panels/TimePanel/TimeCell.tsx +9 -2
  165. package/src/PickerPanel/panels/TimePanel/TimeColumn.tsx +15 -2
  166. package/src/PickerPanel/panels/TimePanel/TimeHeader.tsx +5 -1
  167. package/src/PickerPanel/panels/TimePanel/index.tsx +10 -1
  168. package/src/PickerPanel/panels/WeekPanel/WeekBody.tsx +2 -1
  169. package/src/PickerPanel/panels/WeekPanel/WeekHeader.tsx +2 -1
  170. package/src/PickerPanel/panels/WeekPanel/index.tsx +2 -1
  171. package/src/PickerPanel/panels/YearPanel/YearBody.tsx +4 -3
  172. package/src/PickerPanel/panels/YearPanel/YearHeader.tsx +9 -3
  173. package/src/PickerPanel/panels/YearPanel/index.tsx +3 -2
  174. package/src/PickerPanel/picker-panel.tsx +5 -3
  175. package/src/PickerPanel/utils/pickerUtils.ts +17 -8
  176. package/src/Select/style/index.less +0 -13
  177. package/src/Selector/style/index.less +2 -137
  178. package/src/Splitter/hooks/useMove.ts +2 -2
  179. package/src/TextArea/style/index.less +0 -17
  180. package/src/hooks/useEvent.ts +7 -4
  181. package/src/hooks/useMergedState.ts +6 -4
  182. package/src/style/size.css +1 -0
  183. package/src/version.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import type { ButtonProps } from './interface';
3
3
  import './style/index.less';
4
- declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
4
+ declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement>>;
5
5
  export default Button;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import type { CSVDownloderProps } from './interface';
3
- declare const Link: React.ForwardRefExoticComponent<CSVDownloderProps & React.RefAttributes<HTMLAnchorElement | HTMLButtonElement>>;
3
+ declare const Link: React.ForwardRefExoticComponent<CSVDownloderProps & React.RefAttributes<HTMLButtonElement | HTMLAnchorElement>>;
4
4
  export default Link;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import type { CarouselProps } from './interface';
2
+ import type { CarouselContextProps, CarouselProps } from './interface';
3
3
  import './style/index.less';
4
- export declare const CarouselCtx: React.Context<any>;
4
+ export declare const CarouselCtx: React.Context<CarouselContextProps>;
5
5
  declare const Carousel: React.ForwardRefExoticComponent<CarouselProps & React.RefAttributes<HTMLDivElement>>;
6
6
  export default Carousel;
@@ -71,7 +71,11 @@ var import_mergeContextToProps = __toESM(require("../utils/mergeContextToProps")
71
71
  var import_carousel_item = __toESM(require("./carousel-item"));
72
72
  var import_style = require("./style/index.less");
73
73
  var DEFAULT_ANIMATION_DURATION = 500;
74
- var CarouselCtx = import_react.default.createContext({});
74
+ var CarouselCtx = import_react.default.createContext({
75
+ prefixCls: "yee-carousel",
76
+ effect: "scrollx",
77
+ current: 1
78
+ });
75
79
  var Carousel = import_react.default.forwardRef(
76
80
  (baseprops, ref) => {
77
81
  const { carousel } = (0, import_react.useContext)(import_Config_Provider.GlobalContext);
@@ -283,7 +287,10 @@ var Carousel = import_react.default.forwardRef(
283
287
  };
284
288
  const renderFadeChilds = () => {
285
289
  return import_react.default.Children.map(children, (child, index) => {
286
- return import_react.default.cloneElement(child, { index });
290
+ return import_react.default.cloneElement(
291
+ child,
292
+ { index }
293
+ );
287
294
  });
288
295
  };
289
296
  const renderWrapedChilds = () => {
@@ -1,5 +1,10 @@
1
1
  /// <reference types="react" />
2
2
  export type SemanticDOM = 'dot' | 'prev' | 'next';
3
+ export interface CarouselContextProps {
4
+ prefixCls: string;
5
+ effect: 'fade' | 'scrollx';
6
+ current: number;
7
+ }
3
8
  export interface CarouselItemProps {
4
9
  index: number;
5
10
  style?: React.CSSProperties;
@@ -37,6 +37,10 @@
37
37
  padding: var(--yee-drawer-header-padding);
38
38
  }
39
39
 
40
+ &-title {
41
+ font-weight: var(--yee-drawer-title-font-weight);
42
+ }
43
+
40
44
  &-body {
41
45
  flex: 1;
42
46
  padding: var(--yee-drawer-body-padding);
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import type { FloatButtonProps } from './interface';
3
3
  import './style/index.less';
4
- declare const FloatButton: React.ForwardRefExoticComponent<FloatButtonProps & React.RefAttributes<unknown>>;
4
+ declare const FloatButton: React.ForwardRefExoticComponent<FloatButtonProps & React.RefAttributes<HTMLButtonElement>>;
5
5
  export default FloatButton;
@@ -79,7 +79,7 @@ var basic_default = () => {
79
79
  ]
80
80
  },
81
81
  /* @__PURE__ */ import_react.default.createElement(import_yee_c.Input.Password, { placeholder: "Please input your password" })
82
- )), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Form.Field, { name: "gender", label: "Gender", initialValue: "male" }, /* @__PURE__ */ import_react.default.createElement(
82
+ )), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Form.Field, { name: "gender", label: "Gender", initialValue: "male", required: true }, /* @__PURE__ */ import_react.default.createElement(
83
83
  import_yee_c.Select,
84
84
  {
85
85
  options: [
@@ -88,7 +88,7 @@ var basic_default = () => {
88
88
  { label: "other", value: "other" }
89
89
  ]
90
90
  }
91
- ))), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Form.Field, { name: "birthday", label: "Birthday" }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.DatePicker, null))), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(
91
+ ))), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Form.Field, { name: "birthday", label: "Birthday", required: true }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.DatePicker, null))), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(
92
92
  import_yee_c.Form.Field,
93
93
  {
94
94
  name: ["address", 0, "one"],
@@ -56,5 +56,20 @@
56
56
  color: var(--yee-error-color);
57
57
  }
58
58
  }
59
+
60
+ // 表单校验态:在此重定义控件读取的 border / box-shadow 变量,
61
+ // 后代里的 Input / Selector / InputNumber / TextArea 等通过 CSS 变量继承自动变色,
62
+ // 无需在每个组件里重复 .yee-form-item-error 块,也不存在 specificity / !important 问题。
63
+ &&-error {
64
+ --yee-input-border-color: var(--yee-error-color);
65
+ --yee-input-hover-border-color: var(--yee-error-color-hover);
66
+ --yee-input-focus-bs-color: var(--yee-error-color-border);
67
+ }
68
+
69
+ &&-warning {
70
+ --yee-input-border-color: var(--yee-warning-color);
71
+ --yee-input-hover-border-color: var(--yee-warning-color-hover);
72
+ --yee-input-focus-bs-color: var(--yee-warning-color-border);
73
+ }
59
74
  }
60
75
  }
@@ -110,20 +110,3 @@ input[type='number']::-webkit-outer-spin-button {
110
110
  input::placeholder {
111
111
  color: var(--yee-placeholder-color);
112
112
  }
113
-
114
- // form error status
115
- .yee-form-item-error {
116
- @{pls} {
117
- border-color: var(--yee-error-color);
118
-
119
- &:hover {
120
- border-color: var(--yee-error-color-hover);
121
- }
122
- }
123
- }
124
-
125
- .yee-form-item-warning {
126
- @{pls} {
127
- border-color: var(--yee-warning-color);
128
- }
129
- }
@@ -185,32 +185,3 @@
185
185
  padding-right: 0;
186
186
  }
187
187
  }
188
-
189
- // Form error status
190
- .yee-form-item-error {
191
- @{pls} {
192
- border-color: var(--yee-error-color);
193
-
194
- &:not(@{pls}-disabled):hover {
195
- border-color: var(--yee-error-color);
196
- }
197
-
198
- &-focused {
199
- box-shadow: 0 0 0 2px var(--yee-input-content-error-focus-bs-color);
200
- }
201
- }
202
- }
203
-
204
- .yee-form-item-warning {
205
- @{pls} {
206
- border-color: var(--yee-warning-color);
207
-
208
- &:not(@{pls}-disabled):hover {
209
- border-color: var(--yee-warning-color);
210
- }
211
-
212
- &-focused {
213
- box-shadow: 0 0 0 2px var(--yee-input-content-warning-focus-bs-color);
214
- }
215
- }
216
- }
@@ -1,8 +1,11 @@
1
1
  /// <reference types="react" />
2
2
  import { Dayjs } from 'dayjs';
3
+ import type { usePanelConfigs } from './configs/locale-adapter';
3
4
  export type PickerType = 'date' | 'week' | 'month' | 'quarter' | 'year' | 'decade' | 'datetime' | 'time';
4
5
  export type SemanticType = 'prevIcon' | 'nextIcon' | 'superPrevIcon' | 'superNextIcon' | 'footer';
5
6
  export type UnitType = 'day' | 'hour' | 'minute' | 'second';
7
+ /** Hour/minute/second granularity used by the time sub-panels. */
8
+ export type TimeUnit = 'hour' | 'minute' | 'second';
6
9
  interface HeaderProps {
7
10
  showPrevIcon?: boolean;
8
11
  showNextIcon?: boolean;
@@ -103,14 +106,53 @@ export interface PickerPanelProps extends HeaderProps {
103
106
  /**
104
107
  * Hover range dates [start date, end date]
105
108
  */
106
- hoverRange?: Array<Dayjs | null>;
109
+ hoverRange?: Array<Dayjs | null | undefined>;
107
110
  /**
108
111
  * Selected range dates [start date, end date]
109
112
  */
110
- selectedRange?: Array<Dayjs | null>;
113
+ selectedRange?: Array<Dayjs | null | undefined>;
111
114
  /**
112
115
  * Disabled date function
113
116
  */
114
117
  disabledDate?: (current: Dayjs) => boolean;
115
118
  }
119
+ /**
120
+ * Locale/config bag produced by `usePanelConfigs`, shared by every panel.
121
+ */
122
+ export type PanelConfigs = ReturnType<typeof usePanelConfigs>;
123
+ /**
124
+ * The `panelProps` bag shared by all date-picking panels, headers and bodies.
125
+ *
126
+ * Standalone (does not extend `PickerPanelProps`) so each panel only declares
127
+ * the fields it actually reads while still receiving the full bag via
128
+ * `{...props}` spreads (JSX spreads do not trigger excess-property checks).
129
+ */
130
+ export interface PanelSharedProps {
131
+ prefixCls?: string;
132
+ picker?: PickerType;
133
+ offset?: {
134
+ year?: number;
135
+ month?: number;
136
+ day?: number;
137
+ };
138
+ viewDate: Dayjs;
139
+ selectedDate?: Dayjs;
140
+ panelConfigs: PanelConfigs;
141
+ handleMouseChange?: (date: Dayjs | '') => void;
142
+ onViewDateChange: (date: Dayjs) => void;
143
+ onPanelChange: (view: PickerType) => void;
144
+ onSelect?: (date: Dayjs) => void;
145
+ offsetYear?: number;
146
+ /** Never set in `panelProps`, so always `undefined` at runtime. */
147
+ nowDate?: Dayjs;
148
+ weekStart?: number;
149
+ showHeader?: boolean;
150
+ cellRender?: (date: Dayjs, panel: PickerType) => React.ReactNode;
151
+ prefixColumn?: (currentDate: Dayjs) => React.ReactNode;
152
+ getRowClassName?: (currentDate: Dayjs) => string;
153
+ hoverRange?: Array<Dayjs | null | undefined>;
154
+ selectedRange?: Array<Dayjs | null | undefined>;
155
+ maxDate?: Dayjs;
156
+ minDate?: Dayjs;
157
+ }
116
158
  export {};
@@ -1,3 +1,4 @@
1
1
  import React from 'react';
2
- declare function DateBody(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ declare function DateBody(props: PanelSharedProps): React.JSX.Element;
3
4
  export default DateBody;
@@ -1,2 +1,3 @@
1
1
  import React from 'react';
2
- export default function DateHeader(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DateHeader(props: PanelSharedProps): React.JSX.Element;
@@ -74,7 +74,7 @@ function DateHeader(props) {
74
74
  let year = import_pickerUtils.default.getYear(viewDate);
75
75
  const month = import_pickerUtils.default.getMonth(viewDate);
76
76
  if (offset == null ? void 0 : offset.year) {
77
- year = year + parseInt(offset.year);
77
+ year = year + offset.year;
78
78
  }
79
79
  const onSuperPrevClick = (0, import_useEvent.default)(() => {
80
80
  const newViewDate = import_pickerUtils.default.addYear(viewDate, -1);
@@ -1,2 +1,3 @@
1
1
  import React from 'react';
2
- export default function DatePanel(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DatePanel(props: PanelSharedProps): React.JSX.Element;
@@ -1,3 +1,9 @@
1
+ import { Dayjs } from 'dayjs';
1
2
  import * as React from 'react';
2
- declare function DateTimePanel(props: any): React.JSX.Element;
3
+ import type { PickerType, PanelSharedProps } from '../../interface';
4
+ interface DateTimePanelProps extends Omit<PanelSharedProps, 'onSelect'> {
5
+ onSelect?: (panel: PickerType, date: Dayjs) => void;
6
+ showTime?: boolean;
7
+ }
8
+ declare function DateTimePanel(props: DateTimePanelProps): React.JSX.Element;
3
9
  export default DateTimePanel;
@@ -21,6 +21,18 @@ var __spreadValues = (a, b) => {
21
21
  return a;
22
22
  };
23
23
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
+ var __objRest = (source, exclude) => {
25
+ var target = {};
26
+ for (var prop in source)
27
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
28
+ target[prop] = source[prop];
29
+ if (source != null && __getOwnPropSymbols)
30
+ for (var prop of __getOwnPropSymbols(source)) {
31
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
32
+ target[prop] = source[prop];
33
+ }
34
+ return target;
35
+ };
24
36
  var __export = (target, all) => {
25
37
  for (var name in all)
26
38
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -53,18 +65,20 @@ var React = __toESM(require("react"));
53
65
  var import_DatePanel = __toESM(require("../DatePanel"));
54
66
  var import_TimePanel = __toESM(require("../TimePanel"));
55
67
  function DateTimePanel(props) {
56
- const { prefixCls = "yee-picker", onSelect, showTime } = props;
68
+ var _b;
69
+ const _a = props, { onSelect, showTime } = _a, rest = __objRest(_a, ["onSelect", "showTime"]);
70
+ const prefixCls = (_b = rest.prefixCls) != null ? _b : "yee-picker";
57
71
  const handleSelect = (type, date) => {
58
- onSelect(type, date);
72
+ onSelect == null ? void 0 : onSelect(type, date);
59
73
  };
60
74
  return /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-datetime-panel` }, /* @__PURE__ */ React.createElement(
61
75
  import_DatePanel.default,
62
- __spreadProps(__spreadValues({}, props), {
76
+ __spreadProps(__spreadValues({}, rest), {
63
77
  onSelect: (date) => handleSelect("date", date)
64
78
  })
65
79
  ), showTime ? /* @__PURE__ */ React.createElement(
66
80
  import_TimePanel.default,
67
- __spreadProps(__spreadValues({}, props), {
81
+ __spreadProps(__spreadValues({}, rest), {
68
82
  onSelect: (date) => handleSelect("datetimetime", date),
69
83
  showHeader: true
70
84
  })
@@ -1,3 +1,4 @@
1
1
  import * as React from 'react';
2
- declare function DecadeBody(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ declare function DecadeBody(props: PanelSharedProps): React.JSX.Element;
3
4
  export default DecadeBody;
@@ -55,7 +55,7 @@ var import_useEvent = __toESM(require("../../../hooks/useEvent"));
55
55
  var import_pickerUtils = __toESM(require("../../utils/pickerUtils"));
56
56
  var import_PanelBody = __toESM(require("../PanelBody"));
57
57
  function DecadeBody(props) {
58
- const { prefixCls, viewDate, offsetYear } = props;
58
+ const { prefixCls, viewDate, offsetYear = 0 } = props;
59
59
  const baseDate = import_pickerUtils.default.getBaseDate("decade", viewDate);
60
60
  const getCellDate = (0, import_useEvent.default)((baseDate2, offset) => {
61
61
  return import_pickerUtils.default.addYear(baseDate2, offset * 10);
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function DecadeHeader(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DecadeHeader(props: PanelSharedProps): React.JSX.Element;
@@ -54,7 +54,7 @@ var import_useEvent = __toESM(require("../../../hooks/useEvent"));
54
54
  var import_pickerUtils = __toESM(require("../../utils/pickerUtils"));
55
55
  var import_Header = __toESM(require("../Header"));
56
56
  function DecadeHeader(props) {
57
- const { viewDate, offsetYear, onViewDateChange } = props;
57
+ const { viewDate, offsetYear = 0, onViewDateChange } = props;
58
58
  const onSuperPrevClick = (0, import_useEvent.default)(() => {
59
59
  onViewDateChange(import_pickerUtils.default.addYear(viewDate, -100));
60
60
  });
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function DecadePanel(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DecadePanel(props: PanelSharedProps): React.JSX.Element;
@@ -56,7 +56,7 @@ function DecadePanel(props) {
56
56
  const { prefixCls, offset } = props;
57
57
  let offsetYear = 0;
58
58
  if (offset == null ? void 0 : offset.year) {
59
- offsetYear = parseInt(offset.year);
59
+ offsetYear = offset.year;
60
60
  }
61
61
  return /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-decade-panel` }, /* @__PURE__ */ React.createElement(import_DecadeHeader.default, __spreadProps(__spreadValues({}, props), { offsetYear })), /* @__PURE__ */ React.createElement(import_DecadeBody.default, __spreadProps(__spreadValues({}, props), { offsetYear })));
62
62
  }
@@ -1,2 +1,14 @@
1
1
  import React from 'react';
2
- export default function Header(props: any): React.JSX.Element;
2
+ export interface PanelHeaderProps {
3
+ prefixCls?: string;
4
+ onPrevClick?: () => void;
5
+ onSuperPrevClick?: () => void;
6
+ onNextClick?: () => void;
7
+ onSuperNextClick?: () => void;
8
+ showPrevIcon?: boolean;
9
+ showNextIcon?: boolean;
10
+ showSuperPrevIcon?: boolean;
11
+ showSuperNextIcon?: boolean;
12
+ children?: React.ReactNode;
13
+ }
14
+ export default function Header(props: PanelHeaderProps): React.JSX.Element;
@@ -1,3 +1,4 @@
1
1
  import * as React from 'react';
2
- declare function MonthBody(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ declare function MonthBody(props: PanelSharedProps): React.JSX.Element;
3
4
  export default MonthBody;
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function MonthHeader(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function MonthHeader(props: PanelSharedProps): React.JSX.Element;
@@ -55,7 +55,7 @@ var import_useEvent = __toESM(require("../../../hooks/useEvent"));
55
55
  var import_pickerUtils = __toESM(require("../../utils/pickerUtils"));
56
56
  var import_Header = __toESM(require("../Header"));
57
57
  function MonthHeader(props) {
58
- const { prefixCls, viewDate, offsetYear, onViewDateChange, onPanelChange } = props;
58
+ const { prefixCls, viewDate, offsetYear = 0, onViewDateChange, onPanelChange } = props;
59
59
  const year = import_pickerUtils.default.getYear(viewDate) + offsetYear;
60
60
  const onSuperPrevClick = (0, import_useEvent.default)(() => {
61
61
  const newViewDate = import_pickerUtils.default.addYear(viewDate, -1);
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function DecadePanel(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DecadePanel(props: PanelSharedProps): React.JSX.Element;
@@ -56,7 +56,7 @@ function DecadePanel(props) {
56
56
  const { prefixCls, offset, showHeader = true } = props;
57
57
  let offsetYear = 0;
58
58
  if (offset == null ? void 0 : offset.year) {
59
- offsetYear = parseInt(offset.year);
59
+ offsetYear = offset.year;
60
60
  }
61
61
  return /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-month-panel` }, showHeader ? /* @__PURE__ */ React.createElement(import_MonthHeader.default, __spreadProps(__spreadValues({}, props), { offsetYear })) : null, /* @__PURE__ */ React.createElement(import_MonthBody.default, __spreadValues({}, props)));
62
62
  }
@@ -1,3 +1,23 @@
1
+ import { Dayjs } from 'dayjs';
1
2
  import * as React from 'react';
2
- declare function PanelBody(props: any): React.JSX.Element;
3
+ import type { PickerType } from '../interface';
4
+ export interface PanelBodyProps {
5
+ prefixCls?: string;
6
+ picker?: PickerType;
7
+ rowCount: number;
8
+ colCount: number;
9
+ baseDate?: Dayjs | number;
10
+ onSelect?: (date: Dayjs) => void;
11
+ handleMouseChange?: (date: Dayjs | '') => void;
12
+ headerCells?: React.ReactNode;
13
+ getCellNode?: (currentDate: Dayjs) => React.ReactNode;
14
+ getCellDate: (baseDate: Dayjs, offset: number) => Dayjs;
15
+ getCellText: (currentDate: Dayjs) => number | string;
16
+ getCellTitle?: (currentDate: Dayjs) => string;
17
+ getCellClassName?: (currentDate: Dayjs) => string;
18
+ prefixColumn?: (currentDate: Dayjs) => React.ReactNode;
19
+ getRowClassName?: (currentDate: Dayjs) => string;
20
+ cellRender?: (date: Dayjs, panel: PickerType) => React.ReactNode;
21
+ }
22
+ declare function PanelBody(props: PanelBodyProps): React.JSX.Element;
3
23
  export default PanelBody;
@@ -84,8 +84,8 @@ function PanelBody(props) {
84
84
  className: (0, import_clsx.default)(
85
85
  cellPrefixCls,
86
86
  {
87
- [`${cellPrefixCls}-start`]: getCellText(currentDate) === 1 || picker === "year" && getCellText(currentDate) % 10 === 0,
88
- [`${cellPrefixCls}-end`]: getCellText(currentDate) === import_pickerUtils.default.getDate(currentDate.endOf("month")) || picker === "year" && getCellText(currentDate) % 10 === 9
87
+ [`${cellPrefixCls}-start`]: getCellText(currentDate) === 1 || picker === "year" && Number(getCellText(currentDate)) % 10 === 0,
88
+ [`${cellPrefixCls}-end`]: getCellText(currentDate) === import_pickerUtils.default.getDate(currentDate.endOf("month")) || picker === "year" && Number(getCellText(currentDate)) % 10 === 9
89
89
  },
90
90
  cls
91
91
  ),
@@ -105,7 +105,7 @@ function PanelBody(props) {
105
105
  handleMouseChange == null ? void 0 : handleMouseChange("");
106
106
  }
107
107
  },
108
- getCellNode ? getCellNode(currentDate) : /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-inner` }, /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-value` }, getCellText(currentDate)), cellRender ? /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-content` }, cellRender(currentDate, { mode: picker })) : null)
108
+ getCellNode ? getCellNode(currentDate) : /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-inner` }, /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-value` }, getCellText(currentDate)), cellRender ? /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cell-content` }, cellRender(currentDate, picker)) : null)
109
109
  )
110
110
  );
111
111
  }
@@ -1,3 +1,4 @@
1
1
  import React from 'react';
2
- declare function QuarterBody(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ declare function QuarterBody(props: PanelSharedProps): React.JSX.Element;
3
4
  export default QuarterBody;
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function QuarterHeader(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function QuarterHeader(props: PanelSharedProps): React.JSX.Element;
@@ -1,2 +1,3 @@
1
1
  import * as React from 'react';
2
- export default function DecadePanel(props: any): React.JSX.Element;
2
+ import type { PanelSharedProps } from '../../interface';
3
+ export default function DecadePanel(props: PanelSharedProps): React.JSX.Element;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
- declare function RangePanel(props: any): React.JSX.Element;
2
+ import type { RangePanelProps } from './interface';
3
+ declare function RangePanel(props: RangePanelProps): React.JSX.Element;
3
4
  declare const _default: React.MemoExoticComponent<typeof RangePanel>;
4
5
  export default _default;
@@ -85,7 +85,7 @@ function RangePanel(props) {
85
85
  value: startValue,
86
86
  pickerView: startViewDate,
87
87
  onChange,
88
- onPanelChange: (viewDate) => onPanelChange(viewDate, "start"),
88
+ onPanelChange: (viewDate) => onPanelChange == null ? void 0 : onPanelChange(viewDate, "start"),
89
89
  onCellMouse,
90
90
  hoverRange,
91
91
  selectedRange,
@@ -102,7 +102,7 @@ function RangePanel(props) {
102
102
  value: endValue,
103
103
  pickerView: endViewDate,
104
104
  onChange,
105
- onPanelChange: (viewDate) => onPanelChange(viewDate, "end"),
105
+ onPanelChange: (viewDate) => onPanelChange == null ? void 0 : onPanelChange(viewDate, "end"),
106
106
  onCellMouse,
107
107
  hoverRange,
108
108
  selectedRange,
@@ -5,17 +5,17 @@ export type PickerType = 'date' | 'datetime' | 'month' | 'year' | 'decade' | 'qu
5
5
  export interface RangePanelProps {
6
6
  prefixCls?: string;
7
7
  panel?: 'start' | 'end';
8
- value?: Array<Dayjs | string | undefined>;
9
- viewDate?: string;
8
+ value: Array<Dayjs | undefined>;
9
+ pickerView: [Dayjs, Dayjs];
10
10
  picker?: PickerType;
11
11
  mode?: PickerMode;
12
12
  format?: string;
13
13
  saveFormat?: string;
14
14
  onChange?: (date: Dayjs, panel: string) => void;
15
- onPanelChange?: (dates: Dayjs[]) => void;
15
+ onPanelChange?: (date: Dayjs, type?: 'start' | 'end') => void;
16
16
  onCellMouse?: (date: Dayjs | string) => void;
17
- hoverRange?: Array<Dayjs | null>;
18
- selectedRange?: Array<Dayjs | null>;
17
+ hoverRange?: Array<Dayjs | null | undefined>;
18
+ selectedRange?: Array<Dayjs | null | undefined>;
19
19
  disabledDate?: (current: Dayjs, type: 'start' | 'end') => boolean;
20
20
  showNextIcon?: boolean;
21
21
  showSuperNextIcon?: boolean;
@@ -1,3 +1,19 @@
1
+ import { Dayjs } from 'dayjs';
1
2
  import * as React from 'react';
2
- declare function TimeBody(props: any): React.JSX.Element;
3
+ import type { PanelSharedProps } from '../../interface';
4
+ interface TimeBodyProps extends PanelSharedProps {
5
+ value?: Dayjs;
6
+ showTitle?: boolean;
7
+ showHour?: boolean;
8
+ showMinute?: boolean;
9
+ showSecond?: boolean;
10
+ disabledHours?: boolean;
11
+ disabledMinutes?: boolean;
12
+ disabledSeconds?: boolean;
13
+ is12hour?: boolean;
14
+ hourStep?: number;
15
+ minuteStep?: number;
16
+ secondStep?: number;
17
+ }
18
+ declare function TimeBody(props: TimeBodyProps): React.JSX.Element;
3
19
  export default TimeBody;
@@ -1,3 +1,9 @@
1
1
  import React from 'react';
2
- declare function TimeCell(props: any): React.JSX.Element;
2
+ interface TimeCellProps {
3
+ prefixCls?: string;
4
+ value: number;
5
+ onSelect?: (value: number) => void;
6
+ active?: boolean;
7
+ }
8
+ declare function TimeCell(props: TimeCellProps): React.JSX.Element;
3
9
  export default TimeCell;
@@ -40,6 +40,6 @@ function TimeCell(props) {
40
40
  [`${prefixCls}-time-panel-cell-selected`]: active
41
41
  });
42
42
  const renderValue = value < 10 ? "0" + value : value;
43
- return /* @__PURE__ */ import_react.default.createElement("li", { className: cls, onClick: () => onSelect(value) }, /* @__PURE__ */ import_react.default.createElement("div", { className: `${prefixCls}-time-panel-cell-inner` }, renderValue));
43
+ return /* @__PURE__ */ import_react.default.createElement("li", { className: cls, onClick: () => onSelect == null ? void 0 : onSelect(value) }, /* @__PURE__ */ import_react.default.createElement("div", { className: `${prefixCls}-time-panel-cell-inner` }, renderValue));
44
44
  }
45
45
  var TimeCell_default = TimeCell;
@@ -1,3 +1,16 @@
1
+ import { Dayjs } from 'dayjs';
1
2
  import React from 'react';
2
- declare function TimeColumn(props: any): React.JSX.Element;
3
+ import type { TimeUnit } from '../../interface';
4
+ interface TimeColumnProps {
5
+ prefixCls?: string;
6
+ type: TimeUnit;
7
+ value?: Dayjs;
8
+ cells: Dayjs[];
9
+ disabled?: boolean;
10
+ onSelect?: (date: Dayjs) => void;
11
+ viewDate?: Dayjs;
12
+ maxDate?: Dayjs;
13
+ minDate?: Dayjs;
14
+ }
15
+ declare function TimeColumn(props: TimeColumnProps): React.JSX.Element;
3
16
  export default TimeColumn;
@@ -52,7 +52,7 @@ function TimeColumn(props) {
52
52
  const [selectedCell, setSelectedCell] = import_react.default.useState();
53
53
  import_react.default.useLayoutEffect(() => {
54
54
  var _a, _b;
55
- if (value !== -1 && selectedRef.current) {
55
+ if (value !== void 0 && selectedRef.current) {
56
56
  (_b = ref.current) == null ? void 0 : _b.scrollTo({
57
57
  top: (_a = selectedRef.current) == null ? void 0 : _a.offsetTop,
58
58
  behavior: "smooth"