@bifrostui/react 1.4.7-beta.0 → 1.4.7

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 (199) hide show
  1. package/dist/Calendar/Calendar.js +1 -5
  2. package/dist/Calendar/Calendar.types.d.ts +0 -5
  3. package/dist/Collapse/Collapse.css +1 -0
  4. package/dist/Collapse/Collapse.d.ts +1 -1
  5. package/dist/Collapse/Collapse.js +8 -11
  6. package/dist/CollapsePanel/CollapsePanel.css +2 -4
  7. package/dist/Dialog/FunctionalDialog.js +1 -1
  8. package/dist/Modal/Modal.miniapp.d.ts +1 -1
  9. package/dist/Picker/Picker.css +0 -5
  10. package/dist/Picker/Picker.js +5 -27
  11. package/dist/Picker/Picker.types.d.ts +2 -15
  12. package/dist/Picker/PickerPanel.css +0 -4
  13. package/dist/Picker/PickerPanel.js +6 -7
  14. package/dist/Popover/Popover.js +27 -70
  15. package/dist/Portal/Portal.miniapp.js +4 -7
  16. package/dist/ScrollView/ScrollView.js +11 -24
  17. package/dist/ScrollView/ScrollView.types.d.ts +1 -0
  18. package/dist/Select/Select.css +4 -1
  19. package/dist/Select/Select.js +40 -63
  20. package/dist/Slider/Slider.js +5 -13
  21. package/dist/Tabs/Tab.js +4 -13
  22. package/dist/Tabs/Tabs.js +15 -30
  23. package/dist/Tabs/utils/bound.d.ts +1 -0
  24. package/dist/{DesktopPicker/utils/calcAfterMounted.js → Tabs/utils/bound.js} +14 -7
  25. package/dist/Toast/FunctionalToast.js +1 -1
  26. package/dist/Toast/Toast.css +1 -0
  27. package/dist/Tooltip/Tooltip.js +27 -70
  28. package/dist/index.d.ts +0 -6
  29. package/dist/index.js +1 -13
  30. package/dist/locales/base.d.ts +0 -11
  31. package/dist/locales/en-US.js +0 -24
  32. package/dist/locales/zh-CN.js +0 -24
  33. package/dist/locales/zh-TW.js +0 -24
  34. package/es/Calendar/Calendar.js +1 -5
  35. package/es/Calendar/Calendar.types.d.ts +0 -5
  36. package/es/Collapse/Collapse.css +1 -0
  37. package/es/Collapse/Collapse.d.ts +1 -1
  38. package/es/Collapse/Collapse.js +8 -11
  39. package/es/CollapsePanel/CollapsePanel.css +2 -4
  40. package/es/Dialog/FunctionalDialog.js +2 -2
  41. package/es/Picker/Picker.css +0 -5
  42. package/es/Picker/Picker.js +5 -27
  43. package/es/Picker/Picker.types.d.ts +2 -15
  44. package/es/Picker/PickerPanel.css +0 -4
  45. package/es/Picker/PickerPanel.js +6 -7
  46. package/es/Popover/Popover.js +29 -73
  47. package/es/Portal/Portal.miniapp.js +5 -8
  48. package/es/ScrollView/ScrollView.js +11 -24
  49. package/es/ScrollView/ScrollView.types.d.ts +1 -0
  50. package/es/Select/Select.css +4 -1
  51. package/es/Select/Select.js +41 -63
  52. package/es/Slider/Slider.js +6 -16
  53. package/es/Tabs/Tab.js +4 -13
  54. package/es/Tabs/Tabs.js +15 -30
  55. package/es/Tabs/utils/bound.d.ts +1 -0
  56. package/es/Tabs/utils/bound.js +13 -0
  57. package/es/Toast/FunctionalToast.js +2 -2
  58. package/es/Toast/Toast.css +1 -0
  59. package/es/Tooltip/Tooltip.js +29 -73
  60. package/es/index.d.ts +0 -6
  61. package/es/index.js +0 -6
  62. package/es/locales/base.d.ts +0 -11
  63. package/es/locales/en-US.js +0 -24
  64. package/es/locales/zh-CN.js +0 -24
  65. package/es/locales/zh-TW.js +0 -24
  66. package/package.json +5 -5
  67. package/dist/Collapse/Collapse.miniapp.d.ts +0 -5
  68. package/dist/Collapse/Collapse.miniapp.js +0 -177
  69. package/dist/DatePicker/DatePicker.d.ts +0 -4
  70. package/dist/DatePicker/DatePicker.js +0 -335
  71. package/dist/DatePicker/DatePicker.types.d.ts +0 -43
  72. package/dist/DatePicker/DatePicker.types.js +0 -35
  73. package/dist/DatePicker/index.d.ts +0 -2
  74. package/dist/DatePicker/index.js +0 -41
  75. package/dist/DesktopDatePicker/DesktopDatePicker.d.ts +0 -5
  76. package/dist/DesktopDatePicker/DesktopDatePicker.js +0 -280
  77. package/dist/DesktopDatePicker/DesktopDatePicker.types.d.ts +0 -163
  78. package/dist/DesktopDatePicker/DesktopDatePicker.types.js +0 -15
  79. package/dist/DesktopDatePicker/deskTopPickerContainer.css +0 -100
  80. package/dist/DesktopDatePicker/index.css +0 -61
  81. package/dist/DesktopDatePicker/index.d.ts +0 -2
  82. package/dist/DesktopDatePicker/index.js +0 -41
  83. package/dist/DesktopDatePicker/useGetDatePickerContent.d.ts +0 -6
  84. package/dist/DesktopDatePicker/useGetDatePickerContent.js +0 -343
  85. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +0 -5
  86. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -322
  87. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +0 -163
  88. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.js +0 -15
  89. package/dist/DesktopDateTimePicker/index.css +0 -66
  90. package/dist/DesktopDateTimePicker/index.d.ts +0 -2
  91. package/dist/DesktopDateTimePicker/index.js +0 -41
  92. package/dist/DesktopPicker/DesktopPicker.d.ts +0 -5
  93. package/dist/DesktopPicker/DesktopPicker.js +0 -238
  94. package/dist/DesktopPicker/DesktopPicker.types.d.ts +0 -57
  95. package/dist/DesktopPicker/DesktopPicker.types.js +0 -15
  96. package/dist/DesktopPicker/index.css +0 -37
  97. package/dist/DesktopPicker/index.d.ts +0 -2
  98. package/dist/DesktopPicker/index.js +0 -41
  99. package/dist/DesktopPicker/utils/calcAfterMounted.d.ts +0 -2
  100. package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +0 -2
  101. package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.js +0 -38
  102. package/dist/DesktopTimePicker/DesktopTimePicker.d.ts +0 -5
  103. package/dist/DesktopTimePicker/DesktopTimePicker.js +0 -288
  104. package/dist/DesktopTimePicker/DesktopTimePicker.types.d.ts +0 -182
  105. package/dist/DesktopTimePicker/DesktopTimePicker.types.js +0 -15
  106. package/dist/DesktopTimePicker/DesktopTimePickerList.d.ts +0 -4
  107. package/dist/DesktopTimePicker/DesktopTimePickerList.js +0 -111
  108. package/dist/DesktopTimePicker/index.css +0 -170
  109. package/dist/DesktopTimePicker/index.d.ts +0 -2
  110. package/dist/DesktopTimePicker/index.js +0 -41
  111. package/dist/DesktopTimePicker/useGetTimePickerContent.d.ts +0 -6
  112. package/dist/DesktopTimePicker/useGetTimePickerContent.js +0 -246
  113. package/dist/DesktopTimePicker/utils/scrollUtil.d.ts +0 -2
  114. package/dist/DesktopTimePicker/utils/scrollUtil.js +0 -27
  115. package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +0 -2
  116. package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.js +0 -51
  117. package/dist/DesktopTimePicker/utils/utils.d.ts +0 -28
  118. package/dist/DesktopTimePicker/utils/utils.js +0 -408
  119. package/dist/SwipeAction/SwipeAction.css +0 -79
  120. package/dist/SwipeAction/SwipeAction.d.ts +0 -5
  121. package/dist/SwipeAction/SwipeAction.js +0 -349
  122. package/dist/SwipeAction/SwipeAction.types.d.ts +0 -83
  123. package/dist/SwipeAction/SwipeAction.types.js +0 -39
  124. package/dist/SwipeAction/SwipeActionContext.d.ts +0 -4
  125. package/dist/SwipeAction/SwipeActionContext.js +0 -30
  126. package/dist/SwipeAction/SwipeActionItem.css +0 -31
  127. package/dist/SwipeAction/SwipeActionItem.d.ts +0 -5
  128. package/dist/SwipeAction/SwipeActionItem.js +0 -105
  129. package/dist/SwipeAction/index.d.ts +0 -4
  130. package/dist/SwipeAction/index.js +0 -45
  131. package/dist/Tabs/utils/scroll.d.ts +0 -2
  132. package/dist/Tabs/utils/scroll.js +0 -55
  133. package/es/Collapse/Collapse.miniapp.d.ts +0 -5
  134. package/es/Collapse/Collapse.miniapp.js +0 -157
  135. package/es/DatePicker/DatePicker.d.ts +0 -4
  136. package/es/DatePicker/DatePicker.js +0 -310
  137. package/es/DatePicker/DatePicker.types.d.ts +0 -43
  138. package/es/DatePicker/DatePicker.types.js +0 -1
  139. package/es/DatePicker/index.d.ts +0 -2
  140. package/es/DatePicker/index.js +0 -6
  141. package/es/DesktopDatePicker/DesktopDatePicker.d.ts +0 -5
  142. package/es/DesktopDatePicker/DesktopDatePicker.js +0 -253
  143. package/es/DesktopDatePicker/DesktopDatePicker.types.d.ts +0 -163
  144. package/es/DesktopDatePicker/DesktopDatePicker.types.js +0 -1
  145. package/es/DesktopDatePicker/deskTopPickerContainer.css +0 -100
  146. package/es/DesktopDatePicker/index.css +0 -61
  147. package/es/DesktopDatePicker/index.d.ts +0 -2
  148. package/es/DesktopDatePicker/index.js +0 -6
  149. package/es/DesktopDatePicker/useGetDatePickerContent.d.ts +0 -6
  150. package/es/DesktopDatePicker/useGetDatePickerContent.js +0 -316
  151. package/es/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +0 -5
  152. package/es/DesktopDateTimePicker/DesktopDateTimePicker.js +0 -295
  153. package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +0 -163
  154. package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.js +0 -1
  155. package/es/DesktopDateTimePicker/index.css +0 -66
  156. package/es/DesktopDateTimePicker/index.d.ts +0 -2
  157. package/es/DesktopDateTimePicker/index.js +0 -9
  158. package/es/DesktopPicker/DesktopPicker.d.ts +0 -5
  159. package/es/DesktopPicker/DesktopPicker.js +0 -221
  160. package/es/DesktopPicker/DesktopPicker.types.d.ts +0 -57
  161. package/es/DesktopPicker/DesktopPicker.types.js +0 -1
  162. package/es/DesktopPicker/index.css +0 -37
  163. package/es/DesktopPicker/index.d.ts +0 -2
  164. package/es/DesktopPicker/index.js +0 -6
  165. package/es/DesktopPicker/utils/calcAfterMounted.d.ts +0 -2
  166. package/es/DesktopPicker/utils/calcAfterMounted.js +0 -6
  167. package/es/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +0 -2
  168. package/es/DesktopPicker/utils/calcAfterMounted.miniapp.js +0 -9
  169. package/es/DesktopTimePicker/DesktopTimePicker.d.ts +0 -5
  170. package/es/DesktopTimePicker/DesktopTimePicker.js +0 -261
  171. package/es/DesktopTimePicker/DesktopTimePicker.types.d.ts +0 -182
  172. package/es/DesktopTimePicker/DesktopTimePicker.types.js +0 -1
  173. package/es/DesktopTimePicker/DesktopTimePickerList.d.ts +0 -4
  174. package/es/DesktopTimePicker/DesktopTimePickerList.js +0 -84
  175. package/es/DesktopTimePicker/index.css +0 -170
  176. package/es/DesktopTimePicker/index.d.ts +0 -2
  177. package/es/DesktopTimePicker/index.js +0 -6
  178. package/es/DesktopTimePicker/useGetTimePickerContent.d.ts +0 -6
  179. package/es/DesktopTimePicker/useGetTimePickerContent.js +0 -223
  180. package/es/DesktopTimePicker/utils/scrollUtil.d.ts +0 -2
  181. package/es/DesktopTimePicker/utils/scrollUtil.js +0 -8
  182. package/es/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +0 -2
  183. package/es/DesktopTimePicker/utils/scrollUtil.miniapp.js +0 -22
  184. package/es/DesktopTimePicker/utils/utils.d.ts +0 -28
  185. package/es/DesktopTimePicker/utils/utils.js +0 -365
  186. package/es/SwipeAction/SwipeAction.css +0 -79
  187. package/es/SwipeAction/SwipeAction.d.ts +0 -5
  188. package/es/SwipeAction/SwipeAction.js +0 -337
  189. package/es/SwipeAction/SwipeAction.types.d.ts +0 -83
  190. package/es/SwipeAction/SwipeAction.types.js +0 -1
  191. package/es/SwipeAction/SwipeActionContext.d.ts +0 -4
  192. package/es/SwipeAction/SwipeActionContext.js +0 -11
  193. package/es/SwipeAction/SwipeActionItem.css +0 -31
  194. package/es/SwipeAction/SwipeActionItem.d.ts +0 -5
  195. package/es/SwipeAction/SwipeActionItem.js +0 -78
  196. package/es/SwipeAction/index.d.ts +0 -4
  197. package/es/SwipeAction/index.js +0 -9
  198. package/es/Tabs/utils/scroll.d.ts +0 -2
  199. package/es/Tabs/utils/scroll.js +0 -36
@@ -1,335 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
- var __getProtoOf = Object.getPrototypeOf;
9
- var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
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
- };
36
- var __export = (target, all) => {
37
- for (var name in all)
38
- __defProp(target, name, { get: all[name], enumerable: true });
39
- };
40
- var __copyProps = (to, from, except, desc) => {
41
- if (from && typeof from === "object" || typeof from === "function") {
42
- for (let key of __getOwnPropNames(from))
43
- if (!__hasOwnProp.call(to, key) && key !== except)
44
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
45
- }
46
- return to;
47
- };
48
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
49
- // If the importer is in node compatibility mode or this is not an ESM
50
- // file that has been converted to a CommonJS file using a Babel-
51
- // compatible transform (i.e. "__esModule" has not been set), then set
52
- // "default" to the CommonJS "module.exports" for node compatibility.
53
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
54
- mod
55
- ));
56
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
57
- var DatePicker_exports = {};
58
- __export(DatePicker_exports, {
59
- default: () => DatePicker_default
60
- });
61
- module.exports = __toCommonJS(DatePicker_exports);
62
- var import_react = __toESM(require("react"));
63
- var import_clsx = __toESM(require("clsx"));
64
- var import_utils = require("@bifrostui/utils");
65
- var import_DatePicker = require("./DatePicker.types");
66
- var import_Picker = __toESM(require("../Picker"));
67
- var import_locales = require("../locales");
68
- const MIN_DATE = new Date((/* @__PURE__ */ new Date()).getFullYear() - 10, 0, 1);
69
- const MAX_DATE = new Date((/* @__PURE__ */ new Date()).getFullYear() + 10, 11, 31);
70
- const DEFAULT_PICKER = [
71
- import_DatePicker.DatePickerType.YEAR,
72
- import_DatePicker.DatePickerType.MONTH,
73
- import_DatePicker.DatePickerType.DAY
74
- ];
75
- function isValidDate(value) {
76
- return value instanceof Date && !Number.isNaN(value.getTime());
77
- }
78
- const padZero = (num, targetLength = 2) => {
79
- let str = `${num}`;
80
- while (str.length < targetLength) {
81
- str = `0${str}`;
82
- }
83
- return str;
84
- };
85
- const getMaxDay = (year, monthIndex) => {
86
- return new Date(year, monthIndex + 1, 0).getDate();
87
- };
88
- const getDateTypeValue = (date, type) => {
89
- switch (type) {
90
- case import_DatePicker.DatePickerType.YEAR:
91
- return date.getFullYear();
92
- case import_DatePicker.DatePickerType.MONTH:
93
- return date.getMonth() + 1;
94
- case import_DatePicker.DatePickerType.DAY:
95
- return date.getDate();
96
- case import_DatePicker.DatePickerType.HOUR:
97
- return date.getHours();
98
- case import_DatePicker.DatePickerType.MINUTE:
99
- return date.getMinutes();
100
- case import_DatePicker.DatePickerType.SECOND:
101
- return date.getSeconds();
102
- default:
103
- throw new Error(`\u9519\u8BEF\u7684picker\u7C7B\u578B\uFF1A${type}`);
104
- }
105
- };
106
- const DatePicker = (0, import_react.forwardRef)((props, ref) => {
107
- const _a = props, {
108
- className,
109
- value: propValue,
110
- defaultValue,
111
- views = DEFAULT_PICKER,
112
- minDate: propMinDate = MIN_DATE,
113
- maxDate: propMaxDate = MAX_DATE,
114
- showUnit = false,
115
- formatter,
116
- filter,
117
- disableDateTimeView,
118
- dateTimeStep,
119
- onConfirm,
120
- onClose,
121
- onChange
122
- } = _a, others = __objRest(_a, [
123
- "className",
124
- "value",
125
- "defaultValue",
126
- "views",
127
- "minDate",
128
- "maxDate",
129
- "showUnit",
130
- "formatter",
131
- "filter",
132
- "disableDateTimeView",
133
- "dateTimeStep",
134
- "onConfirm",
135
- "onClose",
136
- "onChange"
137
- ]);
138
- const [options, setOptions] = (0, import_react.useState)([]);
139
- const [pickerValue, setPickerValue] = (0, import_react.useState)([]);
140
- const datePickerText = (0, import_locales.useLocaleText)("datePicker");
141
- const formatDate = (date) => {
142
- let formattedDate = date;
143
- if (!formattedDate || !isValidDate(date) || formattedDate.getTime() < propMinDate.getTime()) {
144
- formattedDate = propMinDate;
145
- }
146
- if (formattedDate.getTime() > propMaxDate.getTime()) {
147
- formattedDate = propMaxDate;
148
- }
149
- return formattedDate;
150
- };
151
- const [currentDate, triggerChange] = (0, import_utils.useValue)({
152
- value: propValue && formatDate(propValue),
153
- defaultValue: formatDate(defaultValue)
154
- });
155
- const handleConfirm = (e) => {
156
- onConfirm == null ? void 0 : onConfirm(e, { value: currentDate });
157
- };
158
- const handleClose = (e) => {
159
- onClose == null ? void 0 : onClose(e, { value: currentDate });
160
- };
161
- const handleChange = (e, { value, columnIndex }) => {
162
- if (value[columnIndex] === null)
163
- return;
164
- const current = new Date(currentDate);
165
- switch (views[columnIndex]) {
166
- case import_DatePicker.DatePickerType.YEAR:
167
- current.setFullYear(value[columnIndex]);
168
- break;
169
- case import_DatePicker.DatePickerType.MONTH: {
170
- const selectedMaxDay = getMaxDay(
171
- current.getFullYear(),
172
- Number(value[columnIndex]) - 1
173
- );
174
- if (current.getDate() > selectedMaxDay) {
175
- current.setDate(selectedMaxDay);
176
- }
177
- current.setMonth(value[columnIndex] - 1);
178
- break;
179
- }
180
- case import_DatePicker.DatePickerType.DAY:
181
- current.setDate(value[columnIndex]);
182
- break;
183
- case import_DatePicker.DatePickerType.HOUR:
184
- current.setHours(value[columnIndex]);
185
- break;
186
- case import_DatePicker.DatePickerType.MINUTE:
187
- current.setMinutes(value[columnIndex]);
188
- break;
189
- case import_DatePicker.DatePickerType.SECOND:
190
- current.setSeconds(value[columnIndex]);
191
- break;
192
- default:
193
- throw new Error(`\u9519\u8BEF\u7684picker\u7C7B\u578B\uFF1A${views[columnIndex]}`);
194
- }
195
- triggerChange(e, formatDate(current));
196
- onChange == null ? void 0 : onChange(e, { type: views[columnIndex], value: current });
197
- };
198
- const formatOption = (type, value) => {
199
- let label = padZero(value);
200
- if (formatter) {
201
- return formatter(type, {
202
- value,
203
- label
204
- });
205
- }
206
- if (showUnit) {
207
- label += datePickerText[type];
208
- }
209
- return { value, label };
210
- };
211
- const generateOptions = (min, max, type, columnIndex) => {
212
- const step = (dateTimeStep == null ? void 0 : dateTimeStep[type]) || 1;
213
- let valueIndex = 0;
214
- const optionsArray = Array.from(
215
- { length: (max - min + 1) / step || 1 },
216
- (_, index) => {
217
- const value = index * step + min;
218
- if (value <= getDateTypeValue(currentDate, type)) {
219
- valueIndex = index;
220
- }
221
- return formatOption(type, value);
222
- }
223
- );
224
- pickerValue[columnIndex] = optionsArray[valueIndex].value;
225
- setPickerValue([...pickerValue]);
226
- if ((disableDateTimeView == null ? void 0 : disableDateTimeView[type]) && typeof disableDateTimeView[type] === "function") {
227
- const disabledOptionsValue = disableDateTimeView[type](
228
- optionsArray.map((i) => i.value)
229
- );
230
- return optionsArray.map((option) => {
231
- if (disabledOptionsValue.includes(option.value)) {
232
- return __spreadProps(__spreadValues({}, option), {
233
- disabled: true
234
- });
235
- }
236
- return option;
237
- });
238
- }
239
- if (filter) {
240
- return filter(type, optionsArray);
241
- }
242
- return optionsArray;
243
- };
244
- const getBoundary = (type, value) => {
245
- const boundary = type === "min" ? propMinDate : propMaxDate;
246
- const year = boundary.getFullYear();
247
- let month = 1;
248
- let date = 1;
249
- let hour = 0;
250
- let minute = 0;
251
- let seconds = 0;
252
- if (type === "max") {
253
- month = 12;
254
- date = getMaxDay(value.getFullYear(), value.getMonth());
255
- hour = 23;
256
- minute = 59;
257
- seconds = 59;
258
- }
259
- if (value.getFullYear() === year) {
260
- month = boundary.getMonth() + 1;
261
- if (value.getMonth() + 1 === month) {
262
- date = boundary.getDate();
263
- if (value.getDate() === date) {
264
- hour = boundary.getHours();
265
- if (value.getHours() === hour) {
266
- minute = boundary.getMinutes();
267
- if (value.getMinutes() === minute) {
268
- seconds = boundary.getSeconds();
269
- }
270
- }
271
- }
272
- }
273
- }
274
- return {
275
- [`${type}Year`]: year,
276
- [`${type}Month`]: month,
277
- [`${type}Date`]: date,
278
- [`${type}Hour`]: hour,
279
- [`${type}Minute`]: minute,
280
- [`${type}Seconds`]: seconds
281
- };
282
- };
283
- const generateRanges = () => {
284
- const ranges = [];
285
- const { minYear, minMonth, minDate, minHour, minMinute, minSeconds } = getBoundary("min", currentDate);
286
- const { maxYear, maxMonth, maxDate, maxHour, maxMinute, maxSeconds } = getBoundary("max", currentDate);
287
- for (let i = 0; i < views.length; i += 1) {
288
- const type = views[i];
289
- switch (type) {
290
- case import_DatePicker.DatePickerType.YEAR:
291
- ranges.push([minYear, maxYear]);
292
- break;
293
- case import_DatePicker.DatePickerType.MONTH:
294
- ranges.push([minMonth, maxMonth]);
295
- break;
296
- case import_DatePicker.DatePickerType.DAY:
297
- ranges.push([minDate, maxDate]);
298
- break;
299
- case import_DatePicker.DatePickerType.HOUR:
300
- ranges.push([minHour, maxHour]);
301
- break;
302
- case import_DatePicker.DatePickerType.MINUTE:
303
- ranges.push([minMinute, maxMinute]);
304
- break;
305
- case import_DatePicker.DatePickerType.SECOND:
306
- ranges.push([minSeconds, maxSeconds]);
307
- break;
308
- default:
309
- throw new Error(`\u9519\u8BEF\u7684picker\u7C7B\u578B\uFF1A${type}`);
310
- }
311
- }
312
- return ranges;
313
- };
314
- const generateRangeOptions = () => generateRanges().map(
315
- (range, index) => generateOptions(range[0], range[1], views[index], index)
316
- );
317
- (0, import_react.useEffect)(() => {
318
- setOptions(generateRangeOptions());
319
- }, [currentDate, views, propMinDate, propMaxDate]);
320
- return /* @__PURE__ */ import_react.default.createElement(
321
- import_Picker.default,
322
- __spreadProps(__spreadValues({}, others), {
323
- "data-selected": currentDate ? currentDate.getTime() : "",
324
- className: (0, import_clsx.default)("bui-date-picker", className),
325
- ref,
326
- options,
327
- value: pickerValue,
328
- onConfirm: handleConfirm,
329
- onClose: handleClose,
330
- onOptionChange: handleChange
331
- })
332
- );
333
- });
334
- DatePicker.displayName = "BuiDatePicker";
335
- var DatePicker_default = DatePicker;
@@ -1,43 +0,0 @@
1
- import React from 'react';
2
- import { OverrideProps } from '@bifrostui/types';
3
- import { PickerProps, IPickerOptionItem } from '../Picker';
4
- export declare enum DatePickerType {
5
- YEAR = "year",
6
- MONTH = "month",
7
- DAY = "day",
8
- HOUR = "hour",
9
- MINUTE = "minute",
10
- SECOND = "second"
11
- }
12
- export type DatePickerOption = IPickerOptionItem & {
13
- value: number;
14
- };
15
- export type DatePickerProps<D extends React.ElementType = 'div', P = Omit<PickerProps, 'value' | 'defaultValue' | 'onChange' | 'onConfirm' | 'onClose'>> = OverrideProps<{
16
- props: P & {
17
- defaultValue?: Date;
18
- value?: Date;
19
- views?: DatePickerType[];
20
- minDate?: Date;
21
- maxDate?: Date;
22
- showUnit?: boolean;
23
- disableDateTimeView?: Partial<{
24
- [key in DatePickerType]: (options: number[]) => number[];
25
- }>;
26
- dateTimeStep?: Partial<{
27
- [key in DatePickerType]: number;
28
- }>;
29
- formatter?: (type: DatePickerType, option: DatePickerOption) => DatePickerOption;
30
- filter?: (type: DatePickerType, options: DatePickerOption[]) => DatePickerOption[];
31
- onConfirm?: (e: React.SyntheticEvent, { value }: {
32
- value: Date;
33
- }) => void;
34
- onClose?: (e: React.SyntheticEvent, { value }: {
35
- value: Date;
36
- }) => void;
37
- onChange?: (e: React.SyntheticEvent, { value }: {
38
- type: DatePickerType;
39
- value: Date;
40
- }) => void;
41
- };
42
- defaultComponent: D;
43
- }, D>;
@@ -1,35 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
- var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __export = (target, all) => {
6
- for (var name in all)
7
- __defProp(target, name, { get: all[name], enumerable: true });
8
- };
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") {
11
- for (let key of __getOwnPropNames(from))
12
- if (!__hasOwnProp.call(to, key) && key !== except)
13
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
- }
15
- return to;
16
- };
17
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
- var DatePicker_types_exports = {};
19
- __export(DatePicker_types_exports, {
20
- DatePickerType: () => DatePickerType
21
- });
22
- module.exports = __toCommonJS(DatePicker_types_exports);
23
- var DatePickerType = /* @__PURE__ */ ((DatePickerType2) => {
24
- DatePickerType2["YEAR"] = "year";
25
- DatePickerType2["MONTH"] = "month";
26
- DatePickerType2["DAY"] = "day";
27
- DatePickerType2["HOUR"] = "hour";
28
- DatePickerType2["MINUTE"] = "minute";
29
- DatePickerType2["SECOND"] = "second";
30
- return DatePickerType2;
31
- })(DatePickerType || {});
32
- // Annotate the CommonJS export names for ESM import in node:
33
- 0 && (module.exports = {
34
- DatePickerType
35
- });
@@ -1,2 +0,0 @@
1
- export { default, default as DatePicker } from './DatePicker';
2
- export * from './DatePicker.types';
@@ -1,41 +0,0 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var DatePicker_exports = {};
30
- __export(DatePicker_exports, {
31
- DatePicker: () => import_DatePicker.default,
32
- default: () => import_DatePicker.default
33
- });
34
- module.exports = __toCommonJS(DatePicker_exports);
35
- var import_DatePicker = __toESM(require("./DatePicker"));
36
- __reExport(DatePicker_exports, require("./DatePicker.types"), module.exports);
37
- // Annotate the CommonJS export names for ESM import in node:
38
- 0 && (module.exports = {
39
- DatePicker,
40
- ...require("./DatePicker.types")
41
- });
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- import { DesktopDatePickerProps } from './DesktopDatePicker.types';
3
- import './index.less';
4
- declare const DesktopDatePicker: React.ForwardRefExoticComponent<Omit<DesktopDatePickerProps<"div", {}>, "ref"> & React.RefAttributes<HTMLDivElement>>;
5
- export default DesktopDatePicker;