@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
@@ -64,30 +64,6 @@ const enUS = {
64
64
  title: "Hot",
65
65
  code: "HOT"
66
66
  }
67
- },
68
- desktopDatePicker: {
69
- month: {
70
- 1: "Jan",
71
- 2: "Feb",
72
- 3: "Mar",
73
- 4: "Apr",
74
- 5: "May",
75
- 6: "Jun",
76
- 7: "Jul",
77
- 8: "Aug",
78
- 9: "Sep",
79
- 10: "Oct",
80
- 11: "Nov",
81
- 12: "Dec"
82
- }
83
- },
84
- datePicker: {
85
- year: "Year",
86
- month: "Month",
87
- day: "Day",
88
- hour: "Hour",
89
- minute: "Minute",
90
- second: "Second"
91
67
  }
92
68
  };
93
69
  var en_US_default = enUS;
@@ -46,30 +46,6 @@ 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"
73
49
  }
74
50
  };
75
51
  var zh_CN_default = zhCN;
@@ -46,30 +46,6 @@ 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"
73
49
  }
74
50
  };
75
51
  var zh_TW_default = zhTW;
@@ -34,13 +34,11 @@ 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";
38
37
  import React, { useMemo, useState } from "react";
39
38
  import { formatDate, isRange, isSame } from "./utils";
40
39
  import { useLocaleText } from "../locales";
41
40
  import "./Calendar.css";
42
41
  dayjs.extend(isoWeek);
43
- dayjs.extend(customParseFormat);
44
42
  const classes = {
45
43
  root: "bui-calendar",
46
44
  handler: "bui-calendar-handler",
@@ -63,7 +61,6 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
63
61
  headerBarRightIcon,
64
62
  disabledDate,
65
63
  highlightDate,
66
- headerVisible = false,
67
64
  dateRender,
68
65
  weekRender,
69
66
  onMonthChange,
@@ -81,7 +78,6 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
81
78
  "headerBarRightIcon",
82
79
  "disabledDate",
83
80
  "highlightDate",
84
- "headerVisible",
85
81
  "dateRender",
86
82
  "weekRender",
87
83
  "onMonthChange",
@@ -296,7 +292,7 @@ const Calendar = /* @__PURE__ */ React.forwardRef(
296
292
  }, others), {
297
293
  "data-mode": mode
298
294
  }), data),
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)),
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)),
300
296
  /* @__PURE__ */ React.createElement("div", { className: classes.week }, SUNDAY_WEEK_DATA == null ? void 0 : SUNDAY_WEEK_DATA.map((w) => {
301
297
  return weekRender ? weekRender(w) : /* @__PURE__ */ React.createElement("div", { key: w, className: `${classes.week}-item` }, w);
302
298
  })),
@@ -74,11 +74,6 @@ 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;
82
77
  /**
83
78
  * 自定义日期单元格的内容
84
79
  */
@@ -1,5 +1,6 @@
1
1
  .bui-collapse {
2
2
  overflow: hidden;
3
+ white-space: nowrap;
3
4
  height: fit-content;
4
5
  width: fit-content;
5
6
  }
@@ -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<HTMLElement>>;
4
+ declare const Collapse: React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<unknown>>;
5
5
  export default Collapse;
@@ -37,14 +37,12 @@ import {
37
37
  getTransitionProps,
38
38
  createTransitions
39
39
  } from "@bifrostui/utils";
40
- import clsx from "clsx";
41
40
  import { Transition } from "../Transition";
42
41
  import "./Collapse.css";
43
42
  const defaultEasing = {
44
43
  enter: easing.easeOut,
45
44
  exit: easing.sharp
46
45
  };
47
- const FIT_CONTENT = "fit-content";
48
46
  const defaultTimeout = {
49
47
  enter: duration.enteringScreen,
50
48
  exit: duration.leavingScreen
@@ -73,6 +71,7 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
73
71
  "className",
74
72
  "children"
75
73
  ]);
74
+ const nodeRef = useForkRef(ref);
76
75
  const wrapperRef = useRef(null);
77
76
  const collapseRef = useForkRef(wrapperRef, ref);
78
77
  const transitions = createTransitions();
@@ -80,11 +79,11 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
80
79
  const collapsedSize = typeof collapsedSizeProp === "number" ? `${collapsedSizeProp}px` : collapsedSizeProp;
81
80
  const size = isHorizontal ? "width" : "height";
82
81
  const getCollapseWrapperSize = (reactNode) => {
83
- return reactNode ? `${reactNode[isHorizontal ? "clientWidth" : "clientHeight"]}px` : FIT_CONTENT;
82
+ return reactNode ? `${reactNode[isHorizontal ? "clientWidth" : "clientHeight"]}px` : "fit-content";
84
83
  };
85
84
  useEffect(() => {
86
85
  var _a2, _b, _c, _d;
87
- if (appear === false && inProp === true && ((_b = (_a2 = wrapperRef.current) == null ? void 0 : _a2.style) == null ? void 0 : _b[size]) === FIT_CONTENT) {
86
+ if (appear === false && inProp === true && ((_b = (_a2 = wrapperRef.current) == null ? void 0 : _a2.style) == null ? void 0 : _b[size]) === "fit-content") {
88
87
  wrapperRef.current.style[size] = getCollapseWrapperSize(
89
88
  (_d = (_c = wrapperRef.current) == null ? void 0 : _c.children) == null ? void 0 : _d[0]
90
89
  );
@@ -95,6 +94,7 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
95
94
  return /* @__PURE__ */ React.createElement(
96
95
  Transition,
97
96
  __spreadProps(__spreadValues({}, other), {
97
+ ref: nodeRef,
98
98
  in: inProp,
99
99
  timeout,
100
100
  delay,
@@ -122,17 +122,14 @@ const Collapse = /* @__PURE__ */ React.forwardRef((props, ref) => {
122
122
  };
123
123
  return React.createElement(
124
124
  "div",
125
- __spreadProps(__spreadValues({
126
- className: clsx("bui-collapse", {
127
- className
128
- }),
125
+ {
126
+ className: `bui-collapse ${className}`,
129
127
  style: __spreadValues(__spreadProps(__spreadValues({}, style), {
130
128
  transition,
131
129
  WebkitTransition: transition
132
- }), wrapperSize())
133
- }, childProps), {
130
+ }), wrapperSize()),
134
131
  ref: collapseRef
135
- }),
132
+ },
136
133
  React.cloneElement(children, __spreadValues({
137
134
  style: __spreadValues({}, (_a2 = children.props) == null ? void 0 : _a2.style)
138
135
  }, childProps))
@@ -2,8 +2,6 @@
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));
7
5
  width: var(--width);
8
6
  background-color: var(--bui-color-bg-view);
9
7
  color: var(--bui-color-fg-default);
@@ -17,7 +15,7 @@
17
15
  }
18
16
  .bui-collapse-panel-item-header-label {
19
17
  padding: var(--header-padding);
20
- font-size: var(--title-font-size);
18
+ font-size: var(--bui-title-size-2);
21
19
  }
22
20
  .bui-collapse-panel-item-header-icon-arrow {
23
21
  transform: rotate(0deg);
@@ -28,7 +26,7 @@
28
26
  }
29
27
  .bui-collapse-panel-item-content {
30
28
  padding: var(--content-padding);
31
- font-size: var(--content-font-size);
29
+ font-size: var(--bui-text-size-1);
32
30
  transition: height 0.5s ease;
33
31
  overflow: hidden;
34
32
  }
@@ -50,7 +50,7 @@ var __async = (__this, __arguments, generator) => {
50
50
  });
51
51
  };
52
52
  import React, { useCallback, useEffect, useState } from "react";
53
- import { getRootContainer, render, unmount } from "@bifrostui/utils";
53
+ import { getRootElement, render, unmount } from "@bifrostui/utils";
54
54
  import Popup from "./Dialog";
55
55
  const { isValidElement, Component } = React;
56
56
  const formatProps = (props) => {
@@ -61,7 +61,7 @@ const formatProps = (props) => {
61
61
  };
62
62
  const DialogGenerator = (options) => {
63
63
  const rootWrapper = document.createElement("div");
64
- const rootElement = getRootContainer();
64
+ const rootElement = getRootElement();
65
65
  rootElement.appendChild(rootWrapper);
66
66
  const DialogComponent = () => {
67
67
  const _a = options, { onConfirm, onCancel, ref } = _a, others = __objRest(_a, ["onConfirm", "onCancel", "ref"]);
@@ -8,7 +8,6 @@
8
8
  --panel-container-height: var(--bui-picker-panel-height, 260px);
9
9
  --indicator-top: var(--bui-picker-indicator-top, 108px);
10
10
  --option-height: var(--bui-picker-option-height, 36px);
11
- --bui-picker-confirm-disabled-opacity: 0.38;
12
11
  font-family: var(--bui-font-family);
13
12
  }
14
13
  .bui-picker .bui-drawer-content {
@@ -42,10 +41,6 @@
42
41
  line-height: var(--confirm-line-height);
43
42
  color: var(--bui-color-primary);
44
43
  }
45
- .bui-picker-confirm-disabled {
46
- color: var(--bui-color-fg-default);
47
- opacity: var(--bui-picker-confirm-disabled-opacity);
48
- }
49
44
  .bui-picker-container {
50
45
  width: 100%;
51
46
  height: var(--panel-container-height);
@@ -37,12 +37,6 @@ import { useLocaleText } from "../locales";
37
37
  import { formatOptions, pickerPanelType, safeData } from "./utils";
38
38
  import "./Picker.css";
39
39
  const prefixCls = "bui-picker";
40
- const checkDisabled = (values, columns) => values.find(
41
- (value, index) => {
42
- var _a, _b;
43
- return (_b = (_a = columns == null ? void 0 : columns[index]) == null ? void 0 : _a.find((column) => (column == null ? void 0 : column.value) === value)) == null ? void 0 : _b.disabled;
44
- }
45
- );
46
40
  const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
47
41
  const _a = props, {
48
42
  className,
@@ -50,8 +44,6 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
50
44
  title,
51
45
  options = [],
52
46
  value,
53
- confirmText: propConfirmText,
54
- cancelText: propCancelText,
55
47
  contentProps,
56
48
  onConfirm,
57
49
  onOptionChange,
@@ -63,8 +55,6 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
63
55
  "title",
64
56
  "options",
65
57
  "value",
66
- "confirmText",
67
- "cancelText",
68
58
  "contentProps",
69
59
  "onConfirm",
70
60
  "onOptionChange",
@@ -76,7 +66,6 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
76
66
  const [columns, setColumns] = useState([]);
77
67
  const [internalValue, setInternalValue] = useState([]);
78
68
  const { cancel: cancelText, confirm: confirmText } = useLocaleText("picker");
79
- const disabled = checkDisabled(internalValue, columns);
80
69
  useEffect(() => {
81
70
  if (!open)
82
71
  return;
@@ -99,7 +88,7 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
99
88
  }, [value, options]);
100
89
  const confirm = (e) => {
101
90
  const isMoving = rollerRefs.current.some((roller) => roller == null ? void 0 : roller.isMoving);
102
- if (isMoving || disabled)
91
+ if (isMoving)
103
92
  return;
104
93
  const { safeValue } = safeData({
105
94
  value: internalValue,
@@ -158,8 +147,7 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
158
147
  onOptionChange == null ? void 0 : onOptionChange(e, {
159
148
  value: conbineValues,
160
149
  options: formatted,
161
- currentOption: columnOption,
162
- columnIndex
150
+ currentOption: columnOption
163
151
  });
164
152
  } else {
165
153
  const result = [...internalValue];
@@ -168,8 +156,7 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
168
156
  onOptionChange == null ? void 0 : onOptionChange(e, {
169
157
  value: result,
170
158
  options,
171
- currentOption: columnOption,
172
- columnIndex
159
+ currentOption: columnOption
173
160
  });
174
161
  }
175
162
  }
@@ -211,16 +198,7 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
211
198
  __spreadProps(__spreadValues({}, contentProps), {
212
199
  className: clsx(`${prefixCls}-content`, contentProps == null ? void 0 : contentProps.className)
213
200
  }),
214
- /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-header` }, /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cancel`, onClick: cancel }, propCancelText || cancelText), title && /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-title` }, title), /* @__PURE__ */ React.createElement(
215
- "div",
216
- {
217
- className: clsx(`${prefixCls}-confirm`, {
218
- [`${prefixCls}-confirm-disabled`]: disabled
219
- }),
220
- onClick: confirm
221
- },
222
- propConfirmText || confirmText
223
- )),
201
+ /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-header` }, /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-cancel`, onClick: cancel }, cancelText), title && /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-title` }, title), /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-confirm`, onClick: confirm }, confirmText)),
224
202
  /* @__PURE__ */ React.createElement("div", { className: `${prefixCls}-container` }, columns.map((column, index) => /* @__PURE__ */ React.createElement(
225
203
  PickerPanel,
226
204
  {
@@ -228,7 +206,7 @@ const Picker = /* @__PURE__ */ React.forwardRef((props, ref) => {
228
206
  key: index,
229
207
  options: column,
230
208
  columnIndex: index,
231
- value: internalValue == null ? void 0 : internalValue[index],
209
+ defaultValue: internalValue == null ? void 0 : internalValue[index],
232
210
  onSelect: handleSelect,
233
211
  pickerStyle: others == null ? void 0 : others.style
234
212
  }
@@ -10,10 +10,6 @@ export interface IPickerOptionItem {
10
10
  * 选项对应唯一的值
11
11
  */
12
12
  value: string | number;
13
- /**
14
- * 是否禁用
15
- */
16
- disabled?: boolean;
17
13
  }
18
14
  export type ICascadePickerChildOptionItem = IPickerOptionItem & {
19
15
  /**
@@ -38,14 +34,6 @@ export type PickerProps<D extends React.ElementType = 'div', P = DrawerProps> =
38
34
  * 标题
39
35
  */
40
36
  title?: string;
41
- /**
42
- * 确认文本内容
43
- */
44
- confirmText?: string;
45
- /**
46
- * 取消文本内容
47
- */
48
- cancelText?: string;
49
37
  /**
50
38
  * 列表数据
51
39
  * @default []
@@ -73,7 +61,6 @@ export type PickerProps<D extends React.ElementType = 'div', P = DrawerProps> =
73
61
  value: (string | number)[];
74
62
  options: ICascadePickerChildOptionItem[][];
75
63
  currentOption: ICascadePickerChildOptionItem;
76
- columnIndex: number;
77
64
  }) => void;
78
65
  /**
79
66
  * 点击取消按钮时候回调
@@ -98,9 +85,9 @@ export type PickerPanelProps<D extends React.ElementType = 'div', P = {}> = Over
98
85
  */
99
86
  options?: ICascadePickerChildOptionItem[];
100
87
  /**
101
- * 选中值
88
+ * 默认值
102
89
  */
103
- value?: string | number;
90
+ defaultValue?: string | number;
104
91
  /**
105
92
  * 列索引
106
93
  */
@@ -1,5 +1,4 @@
1
1
  .bui-picker-panel {
2
- --bui-picker-option-disabled-opacity: 0.38;
3
2
  flex: 1;
4
3
  flex-shrink: 0;
5
4
  position: relative;
@@ -57,9 +56,6 @@
57
56
  white-space: nowrap;
58
57
  width: 100%;
59
58
  }
60
- .bui-picker-panel-option-disabled {
61
- opacity: var(--bui-picker-option-disabled-opacity);
62
- }
63
59
  .bui-picker-panel-option-hidden {
64
60
  visibility: hidden;
65
61
  opacity: 0;
@@ -36,13 +36,13 @@ const PickerPanel = /* @__PURE__ */ React.forwardRef(
36
36
  var _b;
37
37
  const _a = props, {
38
38
  options = [],
39
- value,
39
+ defaultValue,
40
40
  onSelect,
41
41
  columnIndex,
42
42
  pickerStyle
43
43
  } = _a, others = __objRest(_a, [
44
44
  "options",
45
- "value",
45
+ "defaultValue",
46
46
  "onSelect",
47
47
  "columnIndex",
48
48
  "pickerStyle"
@@ -72,9 +72,9 @@ const PickerPanel = /* @__PURE__ */ React.forwardRef(
72
72
  useTouchEmulator(PickerPanelRef.current);
73
73
  const updateSelect = () => {
74
74
  let index = -1;
75
- if (value) {
75
+ if (defaultValue) {
76
76
  options.some((item, idx) => {
77
- if (item.value === value) {
77
+ if (item.value === defaultValue) {
78
78
  index = idx;
79
79
  return true;
80
80
  }
@@ -92,7 +92,7 @@ const PickerPanel = /* @__PURE__ */ React.forwardRef(
92
92
  return () => {
93
93
  clearTimeout(timer);
94
94
  };
95
- }, [options, value]);
95
+ }, [options]);
96
96
  const setTransform = (type, deg, time = DEFAULT_DURATION, translateY = 0) => {
97
97
  let nTime = time;
98
98
  if (type !== TOUCH_END) {
@@ -225,8 +225,7 @@ const PickerPanel = /* @__PURE__ */ React.forwardRef(
225
225
  "div",
226
226
  {
227
227
  className: clsx(`${prefixCls}-option`, {
228
- [`${prefixCls}-option-hidden`]: i + 1 <= currIndex - 8 || i + 1 >= currIndex + 8,
229
- [`${prefixCls}-option-disabled`]: item == null ? void 0 : item.disabled
228
+ [`${prefixCls}-option-hidden`]: i + 1 <= currIndex - 8 || i + 1 >= currIndex + 8
230
229
  }),
231
230
  key: `${item == null ? void 0 : item.value}-${i}`,
232
231
  style: {
@@ -26,35 +26,14 @@ var __objRest = (source, exclude) => {
26
26
  }
27
27
  return target;
28
28
  };
29
- var __async = (__this, __arguments, generator) => {
30
- return new Promise((resolve, reject) => {
31
- var fulfilled = (value) => {
32
- try {
33
- step(generator.next(value));
34
- } catch (e) {
35
- reject(e);
36
- }
37
- };
38
- var rejected = (value) => {
39
- try {
40
- step(generator.throw(value));
41
- } catch (e) {
42
- reject(e);
43
- }
44
- };
45
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
46
- step((generator = generator.apply(__this, __arguments)).next());
47
- });
48
- };
49
29
  import clsx from "clsx";
50
30
  import React, { useState, useRef, useEffect } from "react";
51
31
  import {
52
32
  getStylesAndLocation,
53
33
  triggerEventTransform,
54
34
  parsePlacement,
55
- throttle,
56
- useForkRef,
57
- isMini
35
+ useUniqueId,
36
+ throttle
58
37
  } from "@bifrostui/utils";
59
38
  import Portal from "../Portal";
60
39
  import "./Popover.css";
@@ -70,9 +49,9 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
70
49
  offsetSpacing = 0,
71
50
  placement = "top",
72
51
  trigger = "click",
52
+ onOpenChange,
73
53
  open,
74
- hideArrow,
75
- onOpenChange
54
+ hideArrow
76
55
  } = _a, others = __objRest(_a, [
77
56
  "className",
78
57
  "style",
@@ -83,9 +62,9 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
83
62
  "offsetSpacing",
84
63
  "placement",
85
64
  "trigger",
65
+ "onOpenChange",
86
66
  "open",
87
- "hideArrow",
88
- "onOpenChange"
67
+ "hideArrow"
89
68
  ]);
90
69
  const controlByUser = typeof open !== "undefined";
91
70
  const { direction, location = "center" } = parsePlacement(placement);
@@ -93,18 +72,11 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
93
72
  const [openStatus, setOpenStatus] = useState(defaultOpen);
94
73
  const [arrowDirection, setArrowDirection] = useState(direction);
95
74
  const [arrowLocation, setArrowLocation] = useState(location);
96
- const [toolStyles, setToolStyles] = useState({});
97
- const tipRef = useRef(null);
98
- const nodeRef = useForkRef(ref, tipRef);
99
- const clearRef = (status) => {
100
- if (status === false) {
101
- tipRef.current = null;
102
- }
103
- };
75
+ const [tooltyles, setTooltyles] = useState({});
76
+ const ttId = useUniqueId();
104
77
  const changeOpenStatus = (event, status) => {
105
78
  if (controlByUser)
106
79
  return;
107
- clearRef(status);
108
80
  setOpenStatus(status);
109
81
  onOpenChange == null ? void 0 : onOpenChange(event, { open: status });
110
82
  };
@@ -123,33 +95,23 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
123
95
  if (!controlByUser)
124
96
  return;
125
97
  setOpenStatus(open);
126
- clearRef(open);
127
98
  }, [open]);
128
- useEffect(() => {
129
- if (!openStatus) {
130
- setToolStyles({
131
- visibility: "hidden"
132
- });
133
- }
134
- }, [openStatus]);
135
99
  const clickEventHandler = (event) => {
136
100
  if (trigger === "hover" || (trigger == null ? void 0 : trigger.length) === 1 && (trigger == null ? void 0 : trigger[0]) === "hover")
137
101
  return;
138
102
  hidePopover(event);
139
103
  };
140
- const onRootElementMouted = throttle(() => __async(void 0, null, function* () {
141
- if (!tipRef.current)
142
- return;
104
+ const onRootElementMouted = throttle(() => {
143
105
  const {
144
106
  direction: newParsedDirection,
145
107
  location: newParsedLocation = "center"
146
108
  } = parsePlacement(placement);
147
- const result = yield getStylesAndLocation({
109
+ const result = getStylesAndLocation({
148
110
  childrenRef,
149
111
  arrowDirection: newParsedDirection,
150
112
  arrowLocation: newParsedLocation,
151
113
  offsetSpacing,
152
- tipRef
114
+ selector: `[data-id="tt_${ttId}"]`
153
115
  });
154
116
  if (!result)
155
117
  return;
@@ -160,32 +122,26 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
160
122
  if (newArrowLocation !== arrowLocation) {
161
123
  setArrowLocation(newArrowLocation);
162
124
  }
163
- setToolStyles(styles);
164
- }), 100);
125
+ setTooltyles(styles);
126
+ }, 100);
127
+ const bindEvent = () => {
128
+ if (!controlByUser) {
129
+ document.addEventListener("click", clickEventHandler);
130
+ }
131
+ window.addEventListener("resize", onRootElementMouted);
132
+ };
133
+ const unbindEvent = () => {
134
+ if (!controlByUser) {
135
+ document.removeEventListener("click", clickEventHandler);
136
+ }
137
+ window.removeEventListener("resize", onRootElementMouted);
138
+ };
165
139
  useEffect(() => {
166
- const bindEvent = () => {
167
- if (!tipRef.current)
168
- return;
169
- if (!controlByUser) {
170
- document.addEventListener("click", clickEventHandler);
171
- }
172
- if (!isMini) {
173
- window.addEventListener("resize", onRootElementMouted);
174
- }
175
- };
176
- const unbindEvent = () => {
177
- if (!controlByUser) {
178
- document.removeEventListener("click", clickEventHandler);
179
- }
180
- if (!isMini) {
181
- window.removeEventListener("resize", onRootElementMouted);
182
- }
183
- };
184
140
  bindEvent();
185
141
  return () => {
186
142
  unbindEvent();
187
143
  };
188
- }, [openStatus]);
144
+ }, []);
189
145
  if (!title && !content)
190
146
  return null;
191
147
  let triggerEventOption;
@@ -200,14 +156,14 @@ const Popover = /* @__PURE__ */ React.forwardRef((props, ref) => {
200
156
  const childrenOptions = __spreadValues({
201
157
  ref: childrenRef
202
158
  }, triggerEventOption);
203
- return /* @__PURE__ */ React.createElement(React.Fragment, null, open || openStatus ? /* @__PURE__ */ React.createElement(Portal, { onRootElementMouted }, /* @__PURE__ */ React.createElement(
159
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, open || openStatus ? /* @__PURE__ */ React.createElement(Portal, { onRootElementMouted, ref }, /* @__PURE__ */ React.createElement(
204
160
  "div",
205
161
  __spreadValues({
206
162
  className: clsx(prefixCls, className, `popover-${arrowDirection}`, {
207
163
  "bui-popover-arrow-hide": hideArrow
208
164
  }),
209
- style: __spreadValues(__spreadValues({}, style), toolStyles),
210
- ref: nodeRef
165
+ "data-id": `tt_${ttId}`,
166
+ style: __spreadValues(__spreadValues({}, style), tooltyles)
211
167
  }, others),
212
168
  !hideArrow ? /* @__PURE__ */ React.createElement(
213
169
  "div",