@bifrostui/react 1.4.5 → 1.4.7-beta.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 (231) hide show
  1. package/dist/Calendar/Calendar.js +5 -1
  2. package/dist/Calendar/Calendar.types.d.ts +5 -0
  3. package/dist/CitySelector/CitySelectorCore.js +3 -3
  4. package/dist/Collapse/Collapse.css +0 -1
  5. package/dist/Collapse/Collapse.d.ts +1 -1
  6. package/dist/Collapse/Collapse.js +11 -8
  7. package/dist/Collapse/Collapse.miniapp.d.ts +5 -0
  8. package/dist/Collapse/Collapse.miniapp.js +177 -0
  9. package/dist/CollapsePanel/CollapsePanel.css +4 -2
  10. package/dist/DatePicker/DatePicker.d.ts +4 -0
  11. package/dist/DatePicker/DatePicker.js +335 -0
  12. package/dist/DatePicker/DatePicker.types.d.ts +43 -0
  13. package/dist/DatePicker/DatePicker.types.js +35 -0
  14. package/dist/DatePicker/index.d.ts +2 -0
  15. package/dist/DatePicker/index.js +41 -0
  16. package/dist/DesktopDatePicker/DesktopDatePicker.d.ts +5 -0
  17. package/dist/DesktopDatePicker/DesktopDatePicker.js +280 -0
  18. package/dist/DesktopDatePicker/DesktopDatePicker.types.d.ts +163 -0
  19. package/dist/DesktopDatePicker/DesktopDatePicker.types.js +15 -0
  20. package/dist/DesktopDatePicker/deskTopPickerContainer.css +100 -0
  21. package/dist/DesktopDatePicker/index.css +61 -0
  22. package/dist/DesktopDatePicker/index.d.ts +2 -0
  23. package/dist/DesktopDatePicker/index.js +41 -0
  24. package/dist/DesktopDatePicker/useGetDatePickerContent.d.ts +6 -0
  25. package/dist/DesktopDatePicker/useGetDatePickerContent.js +343 -0
  26. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +5 -0
  27. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.js +322 -0
  28. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +163 -0
  29. package/dist/DesktopDateTimePicker/DesktopDateTimePicker.types.js +15 -0
  30. package/dist/DesktopDateTimePicker/index.css +66 -0
  31. package/dist/DesktopDateTimePicker/index.d.ts +2 -0
  32. package/dist/DesktopDateTimePicker/index.js +41 -0
  33. package/dist/DesktopPicker/DesktopPicker.d.ts +5 -0
  34. package/dist/DesktopPicker/DesktopPicker.js +238 -0
  35. package/dist/DesktopPicker/DesktopPicker.types.d.ts +57 -0
  36. package/dist/DesktopPicker/DesktopPicker.types.js +15 -0
  37. package/dist/DesktopPicker/index.css +37 -0
  38. package/dist/DesktopPicker/index.d.ts +2 -0
  39. package/dist/DesktopPicker/index.js +41 -0
  40. package/dist/DesktopPicker/utils/calcAfterMounted.d.ts +2 -0
  41. package/dist/{Tabs/utils/bound.js → DesktopPicker/utils/calcAfterMounted.js} +7 -14
  42. package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +2 -0
  43. package/dist/DesktopPicker/utils/calcAfterMounted.miniapp.js +38 -0
  44. package/dist/DesktopTimePicker/DesktopTimePicker.d.ts +5 -0
  45. package/dist/DesktopTimePicker/DesktopTimePicker.js +288 -0
  46. package/dist/DesktopTimePicker/DesktopTimePicker.types.d.ts +182 -0
  47. package/dist/DesktopTimePicker/DesktopTimePicker.types.js +15 -0
  48. package/dist/DesktopTimePicker/DesktopTimePickerList.d.ts +4 -0
  49. package/dist/DesktopTimePicker/DesktopTimePickerList.js +111 -0
  50. package/dist/DesktopTimePicker/index.css +170 -0
  51. package/dist/DesktopTimePicker/index.d.ts +2 -0
  52. package/dist/DesktopTimePicker/index.js +41 -0
  53. package/dist/DesktopTimePicker/useGetTimePickerContent.d.ts +6 -0
  54. package/dist/DesktopTimePicker/useGetTimePickerContent.js +246 -0
  55. package/dist/DesktopTimePicker/utils/scrollUtil.d.ts +2 -0
  56. package/dist/DesktopTimePicker/utils/scrollUtil.js +27 -0
  57. package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +2 -0
  58. package/dist/DesktopTimePicker/utils/scrollUtil.miniapp.js +51 -0
  59. package/dist/DesktopTimePicker/utils/utils.d.ts +28 -0
  60. package/dist/DesktopTimePicker/utils/utils.js +408 -0
  61. package/dist/Dialog/FunctionalDialog.js +1 -1
  62. package/dist/ItemSelector/ItemSelector.css +120 -0
  63. package/dist/ItemSelector/ItemSelector.d.ts +4 -0
  64. package/dist/ItemSelector/ItemSelector.js +84 -0
  65. package/dist/ItemSelector/ItemSelector.miniapp.d.ts +5 -0
  66. package/dist/ItemSelector/ItemSelector.miniapp.js +125 -0
  67. package/dist/ItemSelector/ItemSelector.types.d.ts +40 -0
  68. package/dist/ItemSelector/ItemSelector.types.js +15 -0
  69. package/dist/ItemSelector/ItemSelectorCore.d.ts +5 -0
  70. package/dist/ItemSelector/ItemSelectorCore.js +217 -0
  71. package/dist/ItemSelector/Selector/index.css +11 -0
  72. package/dist/ItemSelector/Selector/index.d.ts +9 -0
  73. package/dist/ItemSelector/Selector/index.js +48 -0
  74. package/dist/ItemSelector/index.d.ts +2 -0
  75. package/dist/ItemSelector/index.js +41 -0
  76. package/dist/ItemSelector/miniapp.css +4 -0
  77. package/dist/Modal/Modal.miniapp.d.ts +1 -1
  78. package/dist/Picker/Picker.css +5 -0
  79. package/dist/Picker/Picker.js +27 -5
  80. package/dist/Picker/Picker.types.d.ts +15 -2
  81. package/dist/Picker/PickerPanel.css +4 -0
  82. package/dist/Picker/PickerPanel.js +7 -6
  83. package/dist/Popover/Popover.js +70 -27
  84. package/dist/Portal/Portal.miniapp.js +7 -4
  85. package/dist/ScrollView/ScrollView.js +24 -11
  86. package/dist/ScrollView/ScrollView.types.d.ts +0 -1
  87. package/dist/Select/Select.css +1 -4
  88. package/dist/Select/Select.js +63 -40
  89. package/dist/Slider/Slider.js +13 -5
  90. package/dist/SwipeAction/SwipeAction.css +79 -0
  91. package/dist/SwipeAction/SwipeAction.d.ts +5 -0
  92. package/dist/SwipeAction/SwipeAction.js +349 -0
  93. package/dist/SwipeAction/SwipeAction.types.d.ts +83 -0
  94. package/dist/SwipeAction/SwipeAction.types.js +39 -0
  95. package/dist/SwipeAction/SwipeActionContext.d.ts +4 -0
  96. package/dist/SwipeAction/SwipeActionContext.js +30 -0
  97. package/dist/SwipeAction/SwipeActionItem.css +31 -0
  98. package/dist/SwipeAction/SwipeActionItem.d.ts +5 -0
  99. package/dist/SwipeAction/SwipeActionItem.js +105 -0
  100. package/dist/SwipeAction/index.d.ts +4 -0
  101. package/dist/SwipeAction/index.js +45 -0
  102. package/dist/Tabs/Tab.js +13 -4
  103. package/dist/Tabs/Tabs.js +30 -15
  104. package/dist/Tabs/utils/scroll.d.ts +2 -0
  105. package/dist/Tabs/utils/scroll.js +55 -0
  106. package/dist/Toast/FunctionalToast.js +1 -1
  107. package/dist/Toast/Toast.css +0 -1
  108. package/dist/Tooltip/Tooltip.js +70 -27
  109. package/dist/index.d.ts +7 -0
  110. package/dist/index.js +15 -1
  111. package/dist/locales/base.d.ts +11 -0
  112. package/dist/locales/en-US.js +24 -0
  113. package/dist/locales/zh-CN.js +24 -0
  114. package/dist/locales/zh-TW.js +24 -0
  115. package/es/Calendar/Calendar.js +5 -1
  116. package/es/Calendar/Calendar.types.d.ts +5 -0
  117. package/es/CitySelector/CitySelectorCore.js +3 -3
  118. package/es/Collapse/Collapse.css +0 -1
  119. package/es/Collapse/Collapse.d.ts +1 -1
  120. package/es/Collapse/Collapse.js +11 -8
  121. package/es/Collapse/Collapse.miniapp.d.ts +5 -0
  122. package/es/Collapse/Collapse.miniapp.js +157 -0
  123. package/es/CollapsePanel/CollapsePanel.css +4 -2
  124. package/es/DatePicker/DatePicker.d.ts +4 -0
  125. package/es/DatePicker/DatePicker.js +310 -0
  126. package/es/DatePicker/DatePicker.types.d.ts +43 -0
  127. package/es/DatePicker/DatePicker.types.js +1 -0
  128. package/es/DatePicker/index.d.ts +2 -0
  129. package/es/DatePicker/index.js +6 -0
  130. package/es/DesktopDatePicker/DesktopDatePicker.d.ts +5 -0
  131. package/es/DesktopDatePicker/DesktopDatePicker.js +253 -0
  132. package/es/DesktopDatePicker/DesktopDatePicker.types.d.ts +163 -0
  133. package/es/DesktopDatePicker/DesktopDatePicker.types.js +1 -0
  134. package/es/DesktopDatePicker/deskTopPickerContainer.css +100 -0
  135. package/es/DesktopDatePicker/index.css +61 -0
  136. package/es/DesktopDatePicker/index.d.ts +2 -0
  137. package/es/DesktopDatePicker/index.js +6 -0
  138. package/es/DesktopDatePicker/useGetDatePickerContent.d.ts +6 -0
  139. package/es/DesktopDatePicker/useGetDatePickerContent.js +316 -0
  140. package/es/DesktopDateTimePicker/DesktopDateTimePicker.d.ts +5 -0
  141. package/es/DesktopDateTimePicker/DesktopDateTimePicker.js +295 -0
  142. package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.d.ts +163 -0
  143. package/es/DesktopDateTimePicker/DesktopDateTimePicker.types.js +1 -0
  144. package/es/DesktopDateTimePicker/index.css +66 -0
  145. package/es/DesktopDateTimePicker/index.d.ts +2 -0
  146. package/es/DesktopDateTimePicker/index.js +9 -0
  147. package/es/DesktopPicker/DesktopPicker.d.ts +5 -0
  148. package/es/DesktopPicker/DesktopPicker.js +221 -0
  149. package/es/DesktopPicker/DesktopPicker.types.d.ts +57 -0
  150. package/es/DesktopPicker/DesktopPicker.types.js +1 -0
  151. package/es/DesktopPicker/index.css +37 -0
  152. package/es/DesktopPicker/index.d.ts +2 -0
  153. package/es/DesktopPicker/index.js +6 -0
  154. package/es/DesktopPicker/utils/calcAfterMounted.d.ts +2 -0
  155. package/es/DesktopPicker/utils/calcAfterMounted.js +6 -0
  156. package/es/DesktopPicker/utils/calcAfterMounted.miniapp.d.ts +2 -0
  157. package/es/DesktopPicker/utils/calcAfterMounted.miniapp.js +9 -0
  158. package/es/DesktopTimePicker/DesktopTimePicker.d.ts +5 -0
  159. package/es/DesktopTimePicker/DesktopTimePicker.js +261 -0
  160. package/es/DesktopTimePicker/DesktopTimePicker.types.d.ts +182 -0
  161. package/es/DesktopTimePicker/DesktopTimePicker.types.js +1 -0
  162. package/es/DesktopTimePicker/DesktopTimePickerList.d.ts +4 -0
  163. package/es/DesktopTimePicker/DesktopTimePickerList.js +84 -0
  164. package/es/DesktopTimePicker/index.css +170 -0
  165. package/es/DesktopTimePicker/index.d.ts +2 -0
  166. package/es/DesktopTimePicker/index.js +6 -0
  167. package/es/DesktopTimePicker/useGetTimePickerContent.d.ts +6 -0
  168. package/es/DesktopTimePicker/useGetTimePickerContent.js +223 -0
  169. package/es/DesktopTimePicker/utils/scrollUtil.d.ts +2 -0
  170. package/es/DesktopTimePicker/utils/scrollUtil.js +8 -0
  171. package/es/DesktopTimePicker/utils/scrollUtil.miniapp.d.ts +2 -0
  172. package/es/DesktopTimePicker/utils/scrollUtil.miniapp.js +22 -0
  173. package/es/DesktopTimePicker/utils/utils.d.ts +28 -0
  174. package/es/DesktopTimePicker/utils/utils.js +365 -0
  175. package/es/Dialog/FunctionalDialog.js +2 -2
  176. package/es/ItemSelector/ItemSelector.css +120 -0
  177. package/es/ItemSelector/ItemSelector.d.ts +4 -0
  178. package/es/ItemSelector/ItemSelector.js +57 -0
  179. package/es/ItemSelector/ItemSelector.miniapp.d.ts +5 -0
  180. package/es/ItemSelector/ItemSelector.miniapp.js +98 -0
  181. package/es/ItemSelector/ItemSelector.types.d.ts +40 -0
  182. package/es/ItemSelector/ItemSelector.types.js +1 -0
  183. package/es/ItemSelector/ItemSelectorCore.d.ts +5 -0
  184. package/es/ItemSelector/ItemSelectorCore.js +190 -0
  185. package/es/ItemSelector/Selector/index.css +11 -0
  186. package/es/ItemSelector/Selector/index.d.ts +9 -0
  187. package/es/ItemSelector/Selector/index.js +19 -0
  188. package/es/ItemSelector/index.d.ts +2 -0
  189. package/es/ItemSelector/index.js +6 -0
  190. package/es/ItemSelector/miniapp.css +4 -0
  191. package/es/Picker/Picker.css +5 -0
  192. package/es/Picker/Picker.js +27 -5
  193. package/es/Picker/Picker.types.d.ts +15 -2
  194. package/es/Picker/PickerPanel.css +4 -0
  195. package/es/Picker/PickerPanel.js +7 -6
  196. package/es/Popover/Popover.js +73 -29
  197. package/es/Portal/Portal.miniapp.js +8 -5
  198. package/es/ScrollView/ScrollView.js +24 -11
  199. package/es/ScrollView/ScrollView.types.d.ts +0 -1
  200. package/es/Select/Select.css +1 -4
  201. package/es/Select/Select.js +63 -41
  202. package/es/Slider/Slider.js +16 -6
  203. package/es/SwipeAction/SwipeAction.css +79 -0
  204. package/es/SwipeAction/SwipeAction.d.ts +5 -0
  205. package/es/SwipeAction/SwipeAction.js +337 -0
  206. package/es/SwipeAction/SwipeAction.types.d.ts +83 -0
  207. package/es/SwipeAction/SwipeAction.types.js +1 -0
  208. package/es/SwipeAction/SwipeActionContext.d.ts +4 -0
  209. package/es/SwipeAction/SwipeActionContext.js +11 -0
  210. package/es/SwipeAction/SwipeActionItem.css +31 -0
  211. package/es/SwipeAction/SwipeActionItem.d.ts +5 -0
  212. package/es/SwipeAction/SwipeActionItem.js +78 -0
  213. package/es/SwipeAction/index.d.ts +4 -0
  214. package/es/SwipeAction/index.js +9 -0
  215. package/es/Tabs/Tab.js +13 -4
  216. package/es/Tabs/Tabs.js +30 -15
  217. package/es/Tabs/utils/scroll.d.ts +2 -0
  218. package/es/Tabs/utils/scroll.js +36 -0
  219. package/es/Toast/FunctionalToast.js +2 -2
  220. package/es/Toast/Toast.css +0 -1
  221. package/es/Tooltip/Tooltip.js +73 -29
  222. package/es/index.d.ts +7 -0
  223. package/es/index.js +7 -0
  224. package/es/locales/base.d.ts +11 -0
  225. package/es/locales/en-US.js +24 -0
  226. package/es/locales/zh-CN.js +24 -0
  227. package/es/locales/zh-TW.js +24 -0
  228. package/package.json +5 -5
  229. package/dist/Tabs/utils/bound.d.ts +0 -1
  230. package/es/Tabs/utils/bound.d.ts +0 -1
  231. package/es/Tabs/utils/bound.js +0 -13
@@ -46,6 +46,30 @@ const zhCN = {
46
46
  located: "\u5B9A\u4F4D",
47
47
  current: "\u5F53\u524D",
48
48
  hot: "\u70ED\u95E8"
49
+ },
50
+ desktopDatePicker: {
51
+ month: {
52
+ 1: "1\u6708",
53
+ 2: "2\u6708",
54
+ 3: "3\u6708",
55
+ 4: "4\u6708",
56
+ 5: "5\u6708",
57
+ 6: "6\u6708",
58
+ 7: "7\u6708",
59
+ 8: "8\u6708",
60
+ 9: "9\u6708",
61
+ 10: "10\u6708",
62
+ 11: "11\u6708",
63
+ 12: "12\u6708"
64
+ }
65
+ },
66
+ datePicker: {
67
+ year: "\u5E74",
68
+ month: "\u6708",
69
+ day: "\u65E5",
70
+ hour: "\u65F6",
71
+ minute: "\u5206",
72
+ second: "\u79D2"
49
73
  }
50
74
  };
51
75
  var zh_CN_default = zhCN;
@@ -46,6 +46,30 @@ const zhTW = {
46
46
  located: "\u5B9A\u4F4D",
47
47
  current: "\u76EE\u524D",
48
48
  hot: "\u71B1\u9580"
49
+ },
50
+ desktopDatePicker: {
51
+ month: {
52
+ 1: "1\u6708",
53
+ 2: "2\u6708",
54
+ 3: "3\u6708",
55
+ 4: "4\u6708",
56
+ 5: "5\u6708",
57
+ 6: "6\u6708",
58
+ 7: "7\u6708",
59
+ 8: "8\u6708",
60
+ 9: "9\u6708",
61
+ 10: "10\u6708",
62
+ 11: "11\u6708",
63
+ 12: "12\u6708"
64
+ }
65
+ },
66
+ datePicker: {
67
+ year: "\u5E74",
68
+ month: "\u6708",
69
+ day: "\u65E5",
70
+ hour: "\u6642",
71
+ minute: "\u5206",
72
+ second: "\u79D2"
49
73
  }
50
74
  };
51
75
  var zh_TW_default = zhTW;
@@ -34,11 +34,13 @@ import { useDidMountEffect, useValue } from "@bifrostui/utils";
34
34
  import clsx from "clsx";
35
35
  import dayjs from "dayjs";
36
36
  import isoWeek from "dayjs/plugin/isoWeek";
37
+ import customParseFormat from "dayjs/plugin/customParseFormat";
37
38
  import React, { useMemo, useState } from "react";
38
39
  import { formatDate, isRange, isSame } from "./utils";
39
40
  import { useLocaleText } from "../locales";
40
41
  import "./Calendar.css";
41
42
  dayjs.extend(isoWeek);
43
+ dayjs.extend(customParseFormat);
42
44
  const classes = {
43
45
  root: "bui-calendar",
44
46
  handler: "bui-calendar-handler",
@@ -61,6 +63,7 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
61
63
  headerBarRightIcon,
62
64
  disabledDate,
63
65
  highlightDate,
66
+ headerVisible = false,
64
67
  dateRender,
65
68
  weekRender,
66
69
  onMonthChange,
@@ -78,6 +81,7 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
78
81
  "headerBarRightIcon",
79
82
  "disabledDate",
80
83
  "highlightDate",
84
+ "headerVisible",
81
85
  "dateRender",
82
86
  "weekRender",
83
87
  "onMonthChange",
@@ -292,7 +296,7 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
292
296
  }, others), {
293
297
  "data-mode": mode
294
298
  }), data),
295
- /* @__PURE__ */ React.createElement("div", { className: classes.handler }, /* @__PURE__ */ React.createElement("div", { onClick: onClickPrev, className: `${classes.handler}-btn` }, headerBarIcon.left), /* @__PURE__ */ React.createElement("div", { className: `${classes.handler}-text` }, dayjs(renderMonth).format(headerBarFormat)), /* @__PURE__ */ React.createElement("div", { onClick: onClickNext, className: `${classes.handler}-btn` }, headerBarIcon.right)),
299
+ !headerVisible && /* @__PURE__ */ React.createElement("div", { className: classes.handler }, /* @__PURE__ */ React.createElement("div", { onClick: onClickPrev, className: `${classes.handler}-btn` }, headerBarIcon.left), /* @__PURE__ */ React.createElement("div", { className: `${classes.handler}-text` }, dayjs(renderMonth).format(headerBarFormat)), /* @__PURE__ */ React.createElement("div", { onClick: onClickNext, className: `${classes.handler}-btn` }, headerBarIcon.right)),
296
300
  /* @__PURE__ */ React.createElement("div", { className: classes.week }, SUNDAY_WEEK_DATA == null ? void 0 : SUNDAY_WEEK_DATA.map((w) => {
297
301
  return weekRender ? weekRender(w) : /* @__PURE__ */ React.createElement("div", { key: w, className: `${classes.week}-item` }, w);
298
302
  })),
@@ -74,6 +74,11 @@ export type CalendarProps<D extends React.ElementType = 'div', P = {}> = Overrid
74
74
  * weekend 可选的周末高亮显示
75
75
  */
76
76
  highlightDate?: 'today' | 'weekend';
77
+ /**
78
+ * 是否隐藏头部
79
+ * default: false
80
+ */
81
+ headerVisible?: boolean;
77
82
  /**
78
83
  * 自定义日期单元格的内容
79
84
  */
@@ -144,12 +144,12 @@ const CitySelector = /* @__PURE__ */ React.forwardRef(
144
144
  const closeHandler = (e) => {
145
145
  onClose == null ? void 0 : onClose(e);
146
146
  };
147
- const renderTitile = (title, titleCode) => {
147
+ const renderTitle = (title, titleCode) => {
148
148
  const parseTitle = (titleCode || title).toUpperCase();
149
149
  return /* @__PURE__ */ React.createElement("div", { className: "select-city-title", id: disableIndex ? "" : parseTitle }, title == null ? void 0 : title.toUpperCase());
150
150
  };
151
151
  const renderCity = (citys, title, titleCode) => {
152
- return /* @__PURE__ */ React.createElement("div", null, renderTitile(title, titleCode), /* @__PURE__ */ React.createElement("div", { className: "select-city-buttons" }, citys.map((city, index) => {
152
+ return /* @__PURE__ */ React.createElement("div", null, renderTitle(title, titleCode), /* @__PURE__ */ React.createElement("div", { className: "select-city-buttons" }, citys.map((city, index) => {
153
153
  return /* @__PURE__ */ React.createElement(Selector, { key: index, city, onSelect: selectHandler });
154
154
  })));
155
155
  };
@@ -170,7 +170,7 @@ const CitySelector = /* @__PURE__ */ React.forwardRef(
170
170
  ) : null, currentCity ? renderCity([currentCity], currentCityGroupName, GPS_TYPE.code) : null, (hotCities == null ? void 0 : hotCities.length) > 0 ? renderCity(hotCities, hotCitiesGroupName, HOT_CITY_TYPE.code) : null, (cities == null ? void 0 : cities.length) > 0 ? /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-list-container` }, cities.map((item, cityGroupIndex) => {
171
171
  if (!(item == null ? void 0 : item.groupName))
172
172
  return null;
173
- return /* @__PURE__ */ React.createElement("div", { key: cityGroupIndex }, renderTitile(item.groupName, item.groupName), /* @__PURE__ */ React.createElement("ul", { className: `${prefixCls}-list` }, item.cities.map((city, cityIndex) => {
173
+ return /* @__PURE__ */ React.createElement("div", { key: cityGroupIndex }, renderTitle(item.groupName, item.groupName), /* @__PURE__ */ React.createElement("ul", { className: `${prefixCls}-list` }, item.cities.map((city, cityIndex) => {
174
174
  return /* @__PURE__ */ React.createElement(
175
175
  "li",
176
176
  {
@@ -1,6 +1,5 @@
1
1
  .bui-collapse {
2
2
  overflow: hidden;
3
- white-space: nowrap;
4
3
  height: fit-content;
5
4
  width: fit-content;
6
5
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
  import { CollapseProps } from './Collapse.types';
3
3
  import './Collapse.less';
4
- declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<unknown>>;
4
+ declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<HTMLElement>>;
5
5
  export default Collapse;
@@ -37,12 +37,14 @@ import {
37
37
  getTransitionProps,
38
38
  createTransitions
39
39
  } from "@bifrostui/utils";
40
+ import clsx from "clsx";
40
41
  import { Transition } from "../Transition";
41
42
  import "./Collapse.css";
42
43
  const defaultEasing = {
43
44
  enter: easing.easeOut,
44
45
  exit: easing.sharp
45
46
  };
47
+ const FIT_CONTENT = "fit-content";
46
48
  const defaultTimeout = {
47
49
  enter: duration.enteringScreen,
48
50
  exit: duration.leavingScreen
@@ -71,7 +73,6 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
71
73
  "className",
72
74
  "children"
73
75
  ]);
74
- const nodeRef = useForkRef(ref);
75
76
  const wrapperRef = useRef(null);
76
77
  const collapseRef = useForkRef(wrapperRef, ref);
77
78
  const transitions = createTransitions();
@@ -79,11 +80,11 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
79
80
  const collapsedSize = typeof collapsedSizeProp === "number" ? `${collapsedSizeProp}px` : collapsedSizeProp;
80
81
  const size = isHorizontal ? "width" : "height";
81
82
  const getCollapseWrapperSize = (reactNode) => {
82
- return reactNode ? `${reactNode[isHorizontal ? "clientWidth" : "clientHeight"]}px` : "fit-content";
83
+ return reactNode ? `${reactNode[isHorizontal ? "clientWidth" : "clientHeight"]}px` : FIT_CONTENT;
83
84
  };
84
85
  useEffect(() => {
85
86
  var _a2, _b, _c, _d;
86
- if (appear === false && inProp === true && ((_b = (_a2 = wrapperRef.current) == null ? void 0 : _a2.style) == null ? void 0 : _b[size]) === "fit-content") {
87
+ if (appear === false && inProp === true && ((_b = (_a2 = wrapperRef.current) == null ? void 0 : _a2.style) == null ? void 0 : _b[size]) === FIT_CONTENT) {
87
88
  wrapperRef.current.style[size] = getCollapseWrapperSize(
88
89
  (_d = (_c = wrapperRef.current) == null ? void 0 : _c.children) == null ? void 0 : _d[0]
89
90
  );
@@ -94,7 +95,6 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
94
95
  return /* @__PURE__ */ React.createElement(
95
96
  Transition,
96
97
  __spreadProps(__spreadValues({}, other), {
97
- ref: nodeRef,
98
98
  in: inProp,
99
99
  timeout,
100
100
  delay,
@@ -122,14 +122,17 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
122
122
  };
123
123
  return React.createElement(
124
124
  "div",
125
- {
126
- className: `bui-collapse ${className}`,
125
+ __spreadProps(__spreadValues({
126
+ className: clsx("bui-collapse", {
127
+ className
128
+ }),
127
129
  style: __spreadValues(__spreadProps(__spreadValues({}, style), {
128
130
  transition,
129
131
  WebkitTransition: transition
130
- }), wrapperSize()),
132
+ }), wrapperSize())
133
+ }, childProps), {
131
134
  ref: collapseRef
132
- },
135
+ }),
133
136
  React.cloneElement(children, __spreadValues({
134
137
  style: __spreadValues({}, (_a2 = children.props) == null ? void 0 : _a2.style)
135
138
  }, childProps))
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { CollapseProps } from './Collapse.types';
3
+ import './Collapse.less';
4
+ declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<HTMLElement>>;
5
+ export default Collapse;
@@ -0,0 +1,157 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import React, { useEffect, useRef, useState } from "react";
33
+ import {
34
+ useForkRef,
35
+ duration,
36
+ easing,
37
+ getTransitionProps,
38
+ createTransitions,
39
+ getBoundingClientRect
40
+ } from "@bifrostui/utils";
41
+ import { Transition } from "../Transition";
42
+ import "./Collapse.css";
43
+ const defaultEasing = {
44
+ enter: easing.easeOut,
45
+ exit: easing.sharp
46
+ };
47
+ const defaultTimeout = {
48
+ enter: duration.enteringScreen,
49
+ exit: duration.leavingScreen
50
+ };
51
+ const FIT_CONTENT = "fit-content";
52
+ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
53
+ const _a = props, {
54
+ appear = false,
55
+ in: inProp,
56
+ easing: easingProp = defaultEasing,
57
+ direction = "vertical",
58
+ timeout = defaultTimeout,
59
+ delay = 0,
60
+ collapsedSize: collapsedSizeProp = 0,
61
+ style,
62
+ className,
63
+ children
64
+ } = _a, other = __objRest(_a, [
65
+ "appear",
66
+ "in",
67
+ "easing",
68
+ "direction",
69
+ "timeout",
70
+ "delay",
71
+ "collapsedSize",
72
+ "style",
73
+ "className",
74
+ "children"
75
+ ]);
76
+ const wrapperRef = useRef(null);
77
+ const collapseRef = useForkRef(wrapperRef, ref);
78
+ const [wrapperSize, setWrapperSize] = useState("");
79
+ const transitions = createTransitions();
80
+ const isHorizontal = direction === "horizontal";
81
+ const collapsedSize = typeof collapsedSizeProp === "number" ? `${collapsedSizeProp}px` : collapsedSizeProp;
82
+ const size = isHorizontal ? "width" : "height";
83
+ const getCollapseWrapperSize = (reactNode) => {
84
+ return new Promise((resolve) => {
85
+ var _a2;
86
+ const reactNodeChild = (_a2 = reactNode == null ? void 0 : reactNode.children) == null ? void 0 : _a2[0];
87
+ if (!reactNodeChild) {
88
+ resolve(FIT_CONTENT);
89
+ }
90
+ getBoundingClientRect(reactNodeChild).then((res) => {
91
+ if (!res) {
92
+ resolve(FIT_CONTENT);
93
+ setWrapperSize(FIT_CONTENT);
94
+ } else {
95
+ setWrapperSize(isHorizontal ? `${res == null ? void 0 : res.width}px` : `${res == null ? void 0 : res.height}px`);
96
+ }
97
+ });
98
+ });
99
+ };
100
+ useEffect(() => {
101
+ if (appear === false && inProp === true && wrapperSize === FIT_CONTENT) {
102
+ getCollapseWrapperSize(wrapperRef.current).then((res) => {
103
+ setWrapperSize(res);
104
+ });
105
+ }
106
+ }, [appear, inProp]);
107
+ if (!children)
108
+ return null;
109
+ return /* @__PURE__ */ React.createElement(
110
+ Transition,
111
+ __spreadProps(__spreadValues({}, other), {
112
+ in: inProp,
113
+ timeout,
114
+ delay,
115
+ appear
116
+ }),
117
+ (state, childProps) => {
118
+ var _a2;
119
+ const transition = transitions.create(
120
+ size,
121
+ getTransitionProps(
122
+ { timeout, style, easing: easingProp, delay },
123
+ { mode: state }
124
+ )
125
+ );
126
+ if (state === "entering" || state === "entered") {
127
+ getCollapseWrapperSize(wrapperRef.current).then(
128
+ (res = FIT_CONTENT) => {
129
+ setWrapperSize(res);
130
+ }
131
+ );
132
+ } else {
133
+ setWrapperSize(collapsedSize);
134
+ }
135
+ return React.createElement(
136
+ "div",
137
+ __spreadProps(__spreadValues({
138
+ className: `bui-collapse ${className || ""}`,
139
+ style: __spreadValues(__spreadProps(__spreadValues({}, style), {
140
+ transition,
141
+ WebkitTransition: transition
142
+ }), isHorizontal ? { width: wrapperSize, WebKitWidth: wrapperSize } : { height: wrapperSize, WebKitHeight: wrapperSize })
143
+ }, childProps), {
144
+ ref: collapseRef
145
+ }),
146
+ React.cloneElement(children, {
147
+ style: __spreadValues({}, (_a2 = children.props) == null ? void 0 : _a2.style)
148
+ })
149
+ );
150
+ }
151
+ );
152
+ });
153
+ Collapse.displayName = "BuiCollapse";
154
+ var Collapse_miniapp_default = Collapse;
155
+ export {
156
+ Collapse_miniapp_default as default
157
+ };
@@ -2,6 +2,8 @@
2
2
  --width: var(--bui-collapse-panel-width, 100%);
3
3
  --header-padding: var(--bui-collapse-panel-header-padding, var(--bui-spacing-lg) 0);
4
4
  --content-padding: var(--bui-collapse-panel-content-padding, var(--bui-spacing-lg) 0);
5
+ --title-font-size: var(--bui-collapse-panel-title-font-size, var(--bui-title-size-3));
6
+ --content-font-size: var(--bui-collapse-panel-content-font-size, var(--bui-text-size-1));
5
7
  width: var(--width);
6
8
  background-color: var(--bui-color-bg-view);
7
9
  color: var(--bui-color-fg-default);
@@ -15,7 +17,7 @@
15
17
  }
16
18
  .bui-collapse-panel-item-header-label {
17
19
  padding: var(--header-padding);
18
- font-size: var(--bui-title-size-2);
20
+ font-size: var(--title-font-size);
19
21
  }
20
22
  .bui-collapse-panel-item-header-icon-arrow {
21
23
  transform: rotate(0deg);
@@ -26,7 +28,7 @@
26
28
  }
27
29
  .bui-collapse-panel-item-content {
28
30
  padding: var(--content-padding);
29
- font-size: var(--bui-text-size-1);
31
+ font-size: var(--content-font-size);
30
32
  transition: height 0.5s ease;
31
33
  overflow: hidden;
32
34
  }
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { DatePickerProps } from './DatePicker.types';
3
+ declare const DatePicker: React.ForwardRefExoticComponent<Omit<DatePickerProps<"div", Omit<import("../Picker").PickerProps<"div", import("..").DrawerProps>, "value" | "defaultValue" | "onChange" | "onClose" | "onConfirm">>, "ref"> & React.RefAttributes<HTMLDivElement>>;
4
+ export default DatePicker;