@power-xa/m-ui 0.0.6 → 0.0.8

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 (87) hide show
  1. package/README.md +37 -17
  2. package/dist/ActionSheet/index.js +5 -3
  3. package/dist/Breadcrumb/index.js +4 -2
  4. package/dist/Calendar/Date/index.d.ts +8 -0
  5. package/dist/Calendar/Date/index.js +246 -0
  6. package/dist/Calendar/Date/index.less +146 -0
  7. package/dist/Calendar/Month/index.d.ts +7 -0
  8. package/dist/Calendar/Month/index.js +199 -0
  9. package/dist/Calendar/Month/index.less +96 -0
  10. package/dist/Calendar/Week/index.d.ts +7 -0
  11. package/dist/Calendar/Week/index.js +200 -0
  12. package/dist/Calendar/Week/index.less +96 -0
  13. package/dist/Calendar/index.d.ts +10 -0
  14. package/dist/Calendar/index.js +9 -0
  15. package/dist/ConfigProvider/index.d.ts +1 -0
  16. package/dist/Drawer/index.d.ts +1 -0
  17. package/dist/Drawer/index.js +38 -20
  18. package/dist/Drawer/index.less +2 -1
  19. package/dist/Filter/index.d.ts +3 -0
  20. package/dist/Filter/index.js +8 -6
  21. package/dist/ProForm/Controls/Cascader/index.d.ts +28 -0
  22. package/dist/ProForm/Controls/Cascader/index.js +159 -0
  23. package/dist/ProForm/Controls/Cascader/index.less +106 -0
  24. package/dist/ProForm/Controls/Date/index.d.ts +6 -1
  25. package/dist/ProForm/Controls/Date/index.js +12 -4
  26. package/dist/ProForm/Controls/Date/index.less +18 -0
  27. package/dist/ProForm/Controls/List/index.d.ts +2 -8
  28. package/dist/ProForm/Controls/List/index.js +17 -9
  29. package/dist/ProForm/Controls/List/index.less +0 -0
  30. package/dist/ProForm/Controls/Select/index.d.ts +50 -1
  31. package/dist/ProForm/Controls/Select/index.js +289 -211
  32. package/dist/ProForm/Controls/Select/index.less +29 -0
  33. package/dist/ProForm/Controls/Stepper/index.d.ts +10 -0
  34. package/dist/ProForm/Controls/Stepper/index.js +72 -0
  35. package/dist/ProForm/Controls/Stepper/index.less +31 -0
  36. package/dist/ProForm/Controls/Switch/index.d.ts +5 -0
  37. package/dist/ProForm/Controls/Switch/index.js +21 -0
  38. package/dist/ProForm/Controls/Switch/index.less +3 -0
  39. package/dist/ProForm/Controls/Text/index.d.ts +9 -2
  40. package/dist/ProForm/Controls/Text/index.js +12 -12
  41. package/dist/ProForm/Controls/Text/index.less +0 -0
  42. package/dist/ProForm/Controls/TextArea/index.d.ts +6 -1
  43. package/dist/ProForm/Controls/TextArea/index.js +10 -11
  44. package/dist/ProForm/Controls/Upload/index.d.ts +32 -9
  45. package/dist/ProForm/Controls/Upload/index.js +14 -6
  46. package/dist/ProForm/Controls/Upload/index.less +0 -0
  47. package/dist/ProForm/Field/index.d.ts +27 -4
  48. package/dist/ProForm/Field/index.js +12 -13
  49. package/dist/ProForm/Field/index.less +0 -4
  50. package/dist/ProForm/Form/index.d.ts +41 -6
  51. package/dist/ProForm/Form/index.js +294 -172
  52. package/dist/ProForm/Form/index.less +0 -0
  53. package/dist/ProForm/Group/index.d.ts +22 -3
  54. package/dist/ProForm/Group/index.js +8 -30
  55. package/dist/ProForm/Group/index.less +0 -0
  56. package/dist/ProForm/index.d.ts +4 -4
  57. package/dist/ProForm/index.js +5 -5
  58. package/dist/ProList/index.d.ts +8 -2
  59. package/dist/ProList/index.js +6 -4
  60. package/dist/Tabbar/index.d.ts +4 -2
  61. package/dist/Tabbar/index.js +14 -5
  62. package/dist/Tabs/index.d.ts +8 -5
  63. package/dist/Tabs/index.js +6 -6
  64. package/dist/Tabs/index.less +4 -1
  65. package/dist/UserView/index.d.ts +15 -0
  66. package/dist/UserView/index.js +62 -0
  67. package/dist/UserView/index.less +41 -0
  68. package/dist/ValidMobilePopup/index.d.ts +9 -0
  69. package/dist/ValidMobilePopup/index.js +147 -0
  70. package/dist/ValidMobilePopup/index.less +58 -0
  71. package/dist/hooks/index.d.ts +22 -0
  72. package/dist/hooks/index.js +51 -0
  73. package/dist/index.d.ts +17 -2
  74. package/dist/index.js +9 -1
  75. package/dist/services/CommonController/index.d.ts +5 -0
  76. package/dist/services/CommonController/index.js +21 -0
  77. package/dist/services/CommonController/typings.d.ts +0 -0
  78. package/dist/services/index.d.ts +2 -1
  79. package/dist/services/index.js +2 -1
  80. package/package.json +6 -3
  81. package/dist/ProForm/typings.d.ts +0 -164
  82. package/dist/RefreshList/index.d.ts +0 -17
  83. package/dist/RefreshList/index.js +0 -43
  84. package/dist/RefreshList/index.less +0 -19
  85. package/dist/assets/fonts/PingFangSC-Light.ttf +0 -0
  86. package/dist/assets/fonts/PingFangSC-Medium.ttf +0 -0
  87. package/dist/assets/fonts/PingFangSC-Regular.ttf +0 -0
package/README.md CHANGED
@@ -1,5 +1,41 @@
1
1
  # m-ui
2
2
 
3
+ # 0.0.8 2026-01-14
4
+ 1.增加VaildCodePopup,用户身份验证
5
+ 2.移除RefreshList组件
6
+ 3.开放ProTabs属性及Instance(ProTabItemProps, ProTabsInstance, ProTabsProps)
7
+ 4.开放ProList属性及Instance(ProListInstance, ProListProps)
8
+ 5.开放useConfig,无需从dist引入
9
+ 6.增加日历统计组件,使用见项目打卡
10
+ 7.增加UserView组件,CreateEdit升级版,同时CreateEdit做废弃准备
11
+ 8.优化ProForm系列组件,并开放ProForm一系列属性及ProFormInstance,可设置及获取指定字段
12
+ 9.增加Hooks(usePageParams,useDelayGoBack,useNavigateTo)
13
+ 10.开放部分公共Controller
14
+
15
+ # 0.0.7 2025-12-05
16
+ 1.ConfigProvider 增加 env 参数,用于判断当前环境
17
+ 2.Popup/Drawer 组件Bug修改
18
+ 3.Filter默认值场景增加
19
+ 4.ProFormList组件优化
20
+ 5.ProFormGroup子组件赋值操作修改
21
+ 6.Tabs修改非swiperable下children无法更新
22
+
23
+ # 0.0.6
24
+ 1.CreatorEdit 增加 companyUserId 参数
25
+ 2.Popup 组件增加默认头部,可自定义头部内容
26
+ 3.ProFormField 组件暴露
27
+ 4.ProFormList组件优化
28
+ 5.ProFormSelect 内部Popup增加扩展内容
29
+ 6.Tabs组件增加ref属性,可通过ref刷新指定Tab
30
+
31
+ # 0.0.5
32
+ ProFormUpload/ProList 增加文件预览
33
+
34
+ # 0.0.4
35
+ 1.Tabs修改(子组件内容更新后未重新渲染)
36
+ 2.PageContainer增加footer属性,可自定义底部内容
37
+ 3.Filter Children属性修改
38
+
3
39
  # 0.0.1
4
40
  1.增加request方法
5
41
  2.增加组件:
@@ -18,20 +54,4 @@
18
54
  - ConfigProvider
19
55
  - CreatorEdit
20
56
  - Empty
21
- - ActionSheet
22
-
23
- # 0.0.4
24
- 1.Tabs修改(子组件内容更新后未重新渲染)
25
- 2.PageContainer增加footer属性,可自定义底部内容
26
- 3.Filter Children属性修改
27
-
28
- # 0.0.5
29
- ProFormUpload/ProList 增加文件预览
30
-
31
- # 0.0.6
32
- 1.CreatorEdit 增加 companyUserId 参数
33
- 2.Popup 组件增加默认头部,可自定义头部内容
34
- 3.ProFormField 组件暴露
35
- 4.ProFormList组件优化
36
- 5.ProFormSelect 内部Popup增加扩展内容
37
- 6.Tabs组件增加ref属性,可通过ref刷新指定Tab
57
+ - ActionSheet
@@ -31,8 +31,9 @@ var ActionSheet = function ActionSheet(_ref) {
31
31
  }, [show]);
32
32
  return /*#__PURE__*/React.createElement(Fragment, null, typeof open !== "boolean" && /*#__PURE__*/React.createElement(View, {
33
33
  className: "p-action-sheet-target-container",
34
- onTap: function onTap() {
35
- return setShow(true);
34
+ onTap: function onTap(e) {
35
+ e.stopPropagation();
36
+ setShow(true);
36
37
  }
37
38
  }, children), /*#__PURE__*/React.createElement(Popup, {
38
39
  open: show,
@@ -49,8 +50,9 @@ var ActionSheet = function ActionSheet(_ref) {
49
50
  return /*#__PURE__*/React.createElement(View, {
50
51
  className: "p-action-sheet-option",
51
52
  key: item.key,
52
- onTap: function onTap() {
53
+ onTap: function onTap(e) {
53
54
  var _item$onTap;
55
+ e.stopPropagation();
54
56
  if (!item.onTap) return false;
55
57
  onOpenChange === null || onOpenChange === void 0 || onOpenChange();
56
58
  (_item$onTap = item.onTap) === null || _item$onTap === void 0 || _item$onTap.call(item, item.key);
@@ -1,5 +1,6 @@
1
1
  import React, { Fragment } from "react";
2
2
  import { ScrollView, Text, View } from "@tarojs/components";
3
+ import { getUUID } from "../utils/tools";
3
4
  import "./index.less";
4
5
  var Breadcrumb = function Breadcrumb(_ref) {
5
6
  var items = _ref.items,
@@ -14,9 +15,10 @@ var Breadcrumb = function Breadcrumb(_ref) {
14
15
  }, /*#__PURE__*/React.createElement(View, {
15
16
  className: "p-breadcrumb-content"
16
17
  }, items.map(function (item, index) {
17
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(View, {
18
+ return /*#__PURE__*/React.createElement(Fragment, {
19
+ key: item.key || getUUID()
20
+ }, /*#__PURE__*/React.createElement(View, {
18
21
  className: "p-breadcrumb-item",
19
- key: item.key,
20
22
  onTap: function onTap() {
21
23
  var _item$onTap;
22
24
  return (_item$onTap = item.onTap) === null || _item$onTap === void 0 ? void 0 : _item$onTap.call(item, item.key);
@@ -0,0 +1,8 @@
1
+ import { FC, ReactNode } from "react";
2
+ import "./index.less";
3
+ type CalendarDateProps = {
4
+ renderContent?: (date: string) => ReactNode;
5
+ onChange?: (date: string) => void;
6
+ };
7
+ declare const CalendarDate: FC<CalendarDateProps>;
8
+ export default CalendarDate;
@@ -0,0 +1,246 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import React, { useCallback, useEffect, useState } from "react";
8
+ import { createSelectorQuery } from "@tarojs/taro";
9
+ import { Text, View } from "@tarojs/components";
10
+ import dayjs from "dayjs";
11
+ import "./index.less";
12
+ var CalendarDate = function CalendarDate(_ref) {
13
+ var onChange = _ref.onChange,
14
+ renderContent = _ref.renderContent;
15
+ var today = dayjs();
16
+ var _useState = useState(dayjs()),
17
+ _useState2 = _slicedToArray(_useState, 2),
18
+ current = _useState2[0],
19
+ setCurrent = _useState2[1];
20
+ var _useState3 = useState([]),
21
+ _useState4 = _slicedToArray(_useState3, 2),
22
+ dateList = _useState4[0],
23
+ setDateList = _useState4[1];
24
+ var _useState5 = useState({}),
25
+ _useState6 = _slicedToArray(_useState5, 2),
26
+ rect = _useState6[0],
27
+ setRect = _useState6[1];
28
+ var _useState7 = useState({
29
+ x: 0,
30
+ y: 0
31
+ }),
32
+ _useState8 = _slicedToArray(_useState7, 2),
33
+ position = _useState8[0],
34
+ setPosition = _useState8[1];
35
+ var _useState9 = useState({
36
+ x: 0,
37
+ y: 0
38
+ }),
39
+ _useState10 = _slicedToArray(_useState9, 2),
40
+ startPosition = _useState10[0],
41
+ setStartPosition = _useState10[1];
42
+ var _useState11 = useState(false),
43
+ _useState12 = _slicedToArray(_useState11, 2),
44
+ touching = _useState12[0],
45
+ setTouching = _useState12[1];
46
+ var _useState13 = useState(0),
47
+ _useState14 = _slicedToArray(_useState13, 2),
48
+ index = _useState14[0],
49
+ setIndex = _useState14[1];
50
+ var _useState15 = useState(false),
51
+ _useState16 = _slicedToArray(_useState15, 2),
52
+ expand = _useState16[0],
53
+ setExpand = _useState16[1];
54
+ useEffect(function () {
55
+ var query = createSelectorQuery();
56
+ query.select("#p-calendar-date-content").boundingClientRect(function (rect) {
57
+ if (!(rect instanceof Array)) {
58
+ setRect(rect);
59
+ }
60
+ }).exec();
61
+ }, []);
62
+ useEffect(function () {
63
+ if (expand) {
64
+ setDateList(formatMonthList(current));
65
+ } else {
66
+ setDateList(formatWeekList(current));
67
+ }
68
+ }, [expand]);
69
+ useEffect(function () {
70
+ if (current) onChange === null || onChange === void 0 || onChange(current.format("YYYY-MM-DD"));
71
+ }, [current]);
72
+ var returnToday = useCallback(function () {
73
+ setCurrent(today);
74
+ setIndex(0);
75
+ if (expand) {
76
+ setDateList(formatMonthList(today));
77
+ } else {
78
+ setDateList(formatWeekList(today));
79
+ }
80
+ }, [expand]);
81
+ var _onTouchStart = useCallback(function (e) {
82
+ e.stopPropagation();
83
+ var x = e.touches[0].clientX;
84
+ var y = e.touches[0].clientY;
85
+ /* 判断是左右滑动还是上下滑动 */
86
+ setStartPosition({
87
+ x: x,
88
+ y: y
89
+ });
90
+ setTouching(true);
91
+ }, []);
92
+ var _onTouchMove = useCallback(function (e) {
93
+ e.stopPropagation();
94
+ var x = e.touches[0].clientX - startPosition.x;
95
+ var y = e.touches[0].clientY - startPosition.y;
96
+ /* 判断是左右滑动还是上下滑动 */
97
+ if (Math.abs(x) > Math.abs(y)) {
98
+ setPosition({
99
+ x: x / rect.width,
100
+ y: 0
101
+ });
102
+ }
103
+ }, [startPosition, rect]);
104
+ var _onTouchEnd = useCallback(function (e) {
105
+ e.stopPropagation();
106
+ setTouching(false);
107
+ var x = Math.abs(position.x);
108
+ var y = Math.abs(position.y);
109
+ if (x > y) {
110
+ var currentIndex = position.x > 0 ? index + 1 : index - 1;
111
+ setIndex(currentIndex);
112
+ if (expand) {
113
+ var _date = current[position.x > 0 ? "subtract" : "add"](1, "month").startOf("month");
114
+ setDateList(formatMonthList(_date));
115
+ setCurrent(_date);
116
+ } else {
117
+ var _date2 = current[position.x > 0 ? "subtract" : "add"](1, "week").startOf("week");
118
+ setDateList(formatWeekList(_date2));
119
+ setCurrent(_date2);
120
+ }
121
+ }
122
+ setPosition({
123
+ x: 0,
124
+ y: 0
125
+ });
126
+ }, [position, index, current, expand]);
127
+ return /*#__PURE__*/React.createElement(View, {
128
+ className: "p-calendar-date-container"
129
+ }, /*#__PURE__*/React.createElement(View, {
130
+ className: "p-calendar-date-header"
131
+ }, /*#__PURE__*/React.createElement(View, {
132
+ className: "current-date"
133
+ }, /*#__PURE__*/React.createElement(Text, {
134
+ className: "sub-text"
135
+ }, current.format("YYYY年")), /*#__PURE__*/React.createElement(Text, {
136
+ className: "text"
137
+ }, current.format("MM月DD日"))), !current.isSame(today, 'date') && /*#__PURE__*/React.createElement(View, {
138
+ className: "button",
139
+ onTap: returnToday
140
+ }, /*#__PURE__*/React.createElement(Text, {
141
+ className: "text"
142
+ }, "\u56DE\u5230\u4ECA\u5929"))), /*#__PURE__*/React.createElement(View, {
143
+ className: "p-calendar-date-table-header"
144
+ }, ["日", "一", "二", "三", "四", "五", "六"].map(function (t, i) {
145
+ return /*#__PURE__*/React.createElement(View, {
146
+ className: "p-calendar-date-table-header-column",
147
+ key: 'p-calendar-date-table-header-' + i
148
+ }, /*#__PURE__*/React.createElement(Text, {
149
+ className: "text"
150
+ }, t));
151
+ })), /*#__PURE__*/React.createElement(View, {
152
+ className: "p-calendar-date-content",
153
+ id: "p-calendar-date-content",
154
+ onTouchStart: function onTouchStart(e) {
155
+ return _onTouchStart(e);
156
+ },
157
+ onTouchMove: function onTouchMove(e) {
158
+ return _onTouchMove(e);
159
+ },
160
+ onTouchEnd: function onTouchEnd(e) {
161
+ return _onTouchEnd(e);
162
+ }
163
+ }, /*#__PURE__*/React.createElement(View, {
164
+ className: "p-calendar-date-content-body ".concat(expand ? 'expand' : ''),
165
+ style: {
166
+ transform: "translateX(".concat(-index * 100, "%)")
167
+ }
168
+ }, dateList.map(function (list, i) {
169
+ return /*#__PURE__*/React.createElement(View, {
170
+ className: "p-calendar-date-cell",
171
+ key: 'calendar-cell-' + i,
172
+ style: {
173
+ transform: "translateX(".concat((i - 1 + index + (touching ? position.x : 0)) * 100, "%)"),
174
+ transitionDuration: "".concat(touching ? 0 : .3, "s")
175
+ }
176
+ }, list.map(function (d, di) {
177
+ var selected = d.isSame(current, "date");
178
+ var isToday = d.isSame(today, "date");
179
+ var grey = !d.startOf("month").isSame(current.startOf("month"));
180
+ var disabled = d.isAfter(today);
181
+ return /*#__PURE__*/React.createElement(View, {
182
+ className: "p-calendar-date-view ".concat(isToday ? 'today' : '', " ").concat(selected ? 'selected' : '', " ").concat(disabled ? 'disabled' : '', " ").concat(grey ? 'grey' : ''),
183
+ key: 'calendar-view-' + di,
184
+ onTap: function onTap() {
185
+ if (disabled) return false;
186
+ setCurrent(d);
187
+ setDateList(expand ? formatMonthList(d) : formatWeekList(d));
188
+ }
189
+ }, /*#__PURE__*/React.createElement(Text, {
190
+ className: "p-calendar-date-view-text"
191
+ }, d.format("DD")), !disabled && (renderContent === null || renderContent === void 0 ? void 0 : renderContent(d.format("YYYY-MM-DD"))));
192
+ }));
193
+ }))), /*#__PURE__*/React.createElement(View, {
194
+ className: "p-calendar-date-footer",
195
+ onTap: function onTap() {
196
+ return setExpand(!expand);
197
+ }
198
+ }, /*#__PURE__*/React.createElement(View, {
199
+ className: "border"
200
+ }), /*#__PURE__*/React.createElement(View, {
201
+ className: "iconfont icon-icon-xiala",
202
+ style: expand ? {
203
+ transform: "rotate(180deg)"
204
+ } : {}
205
+ }), /*#__PURE__*/React.createElement(View, {
206
+ className: "border"
207
+ })));
208
+ };
209
+ export default CalendarDate;
210
+ var formatWeekList = function formatWeekList(date) {
211
+ var current = date.startOf("week");
212
+ var prev = current.subtract(1, "week");
213
+ var next = current.add(1, "week");
214
+ return [Array.from({
215
+ length: 7
216
+ }, function (_, i) {
217
+ return prev.add(i, "day");
218
+ }), Array.from({
219
+ length: 7
220
+ }, function (_, i) {
221
+ return current.add(i, "day");
222
+ }), Array.from({
223
+ length: 7
224
+ }, function (_, i) {
225
+ return next.add(i, "day");
226
+ })];
227
+ };
228
+ var formatMonthList = function formatMonthList(date) {
229
+ var start = date.startOf("month");
230
+ var startWeek = start.startOf("week").subtract(1, "day");
231
+ var prev = start.subtract(1, "month").startOf("week").subtract(1, "day");
232
+ var next = start.add(1, "month").startOf("week").subtract(1, "day");
233
+ return [Array.from({
234
+ length: 42
235
+ }, function (_, i) {
236
+ return prev.add(i, "day");
237
+ }), Array.from({
238
+ length: 42
239
+ }, function (_, i) {
240
+ return startWeek.add(i, "day");
241
+ }), Array.from({
242
+ length: 42
243
+ }, function (_, i) {
244
+ return next.add(i, "day");
245
+ })];
246
+ };
@@ -0,0 +1,146 @@
1
+ @import "@power-xa/m-ui/dist/assets/less/mixins.less";
2
+
3
+ .p-calendar-date-container {
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: 16px;
7
+
8
+ .p-calendar-date-header {
9
+ display: flex;
10
+ align-items: center;
11
+ justify-content: space-between;
12
+
13
+ .current-date {
14
+ display: flex;
15
+ align-items: center;
16
+ gap: 24px;
17
+
18
+ .sub-text {
19
+ .font(28, #999);
20
+ position: relative;
21
+
22
+ &::after {
23
+ position: absolute;
24
+ content: "";
25
+ width: 1px;
26
+ height: 20px;
27
+ background: #999;
28
+ top: 50%;
29
+ margin-top: -10px;
30
+ right: -12px;
31
+ }
32
+ }
33
+
34
+ .text {
35
+ .font(28)
36
+ }
37
+ }
38
+
39
+ .button {
40
+ display: flex;
41
+ align-items: center;
42
+
43
+ .text {
44
+ .font(28, #999)
45
+ }
46
+ }
47
+ }
48
+
49
+ .p-calendar-date-table-header {
50
+ display: flex;
51
+ align-items: center;
52
+ gap: 24px;
53
+
54
+ .p-calendar-date-table-header-column {
55
+ flex: 1;
56
+ flex-shrink: 0;
57
+ display: flex;
58
+ align-items: center;
59
+ justify-content: center;
60
+
61
+ .text {
62
+ .font(24, #999)
63
+ }
64
+ }
65
+ }
66
+
67
+ .p-calendar-date-content {
68
+ overflow: hidden;
69
+
70
+ .p-calendar-date-content-body {
71
+ display: flex;
72
+ align-items: center;
73
+ flex-wrap: nowrap;
74
+ height: 50px;
75
+ transition: .3s height;
76
+
77
+ .p-calendar-date-cell {
78
+ display: flex;
79
+ align-items: center;
80
+ justify-content: space-around;
81
+ flex-wrap: wrap;
82
+ gap: 24px;
83
+ width: 100%;
84
+ flex-shrink: 0;
85
+ will-change: transform;
86
+ position: absolute;
87
+
88
+ .p-calendar-date-view {
89
+ width: 10%;
90
+ flex-shrink: 0;
91
+ display: flex;
92
+ align-items: center;
93
+ justify-content: center;
94
+ border-radius: 25px;
95
+ padding: 8px 0;
96
+ position: relative;
97
+
98
+ .p-calendar-date-view-text {
99
+ .font(24);
100
+ }
101
+
102
+ &.today {
103
+ background: #F6F7F9;
104
+ }
105
+
106
+ &.selected {
107
+ background: #333437;
108
+
109
+ .p-calendar-date-view-text {
110
+ color: #fff;
111
+ }
112
+ }
113
+
114
+ &.disabled,
115
+ &.grey {
116
+ .p-calendar-date-view-text {
117
+ color: #999;
118
+ }
119
+ }
120
+ }
121
+ }
122
+
123
+ &.expand {
124
+ height: 420px;
125
+ }
126
+ }
127
+ }
128
+
129
+ .p-calendar-date-footer {
130
+ display: flex;
131
+ align-items: center;
132
+ gap: 24px;
133
+
134
+ .border {
135
+ flex: 1;
136
+ height: 1px;
137
+ width: 0;
138
+ background: #F6F7F9;
139
+ }
140
+
141
+ .iconfont {
142
+ font-size: 24px;
143
+ color: #999;
144
+ }
145
+ }
146
+ }
@@ -0,0 +1,7 @@
1
+ import { FC } from "react";
2
+ import "./index.less";
3
+ type CalendarMonthProps = {
4
+ onChange?: (start: string, end: string) => void;
5
+ };
6
+ declare const CalendarMonth: FC<CalendarMonthProps>;
7
+ export default CalendarMonth;