@bifrostui/react 2.0.0-alpha.19 → 2.0.0-alpha.20

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.
package/dist/Tabs/Tab.js CHANGED
@@ -63,8 +63,8 @@ var import_react = __toESM(require("react"));
63
63
  var import_clsx = __toESM(require("clsx"));
64
64
  var import_utils = require("@bifrostui/utils");
65
65
  var import_TabsContext = __toESM(require("./TabsContext"));
66
+ var import_classes = require("./classes");
66
67
  var import_Tab2 = require("./Tab.css");
67
- const rootClass = "bui-tab";
68
68
  const Tab = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
69
69
  const _a = props, {
70
70
  className,
@@ -105,10 +105,10 @@ const Tab = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
105
105
  };
106
106
  }, [onRegister, onUnregister, index]);
107
107
  const rootCls = (0, import_clsx.default)(
108
- rootClass,
108
+ import_classes.tabRootClass,
109
109
  {
110
- [`${rootClass}-active`]: !import_utils.isMini && isActive,
111
- [`${rootClass}-disabled`]: disabled
110
+ [import_classes.tabActiveClass]: !import_utils.isMini && isActive,
111
+ [import_classes.tabDisabledClass]: disabled
112
112
  },
113
113
  className
114
114
  );
@@ -34,7 +34,7 @@ var import_react = __toESM(require("react"));
34
34
  var import_clsx = __toESM(require("clsx"));
35
35
  var import_utils = require("@bifrostui/utils");
36
36
  var import_scroll = __toESM(require("./utils/scroll"));
37
- const rootClass = "bui-tabs";
37
+ var import_classes = require("./classes");
38
38
  const duration = 300;
39
39
  const DEFAULT_INDICATOR_WIDTH = 24;
40
40
  const TabIndicator = ({
@@ -44,7 +44,6 @@ const TabIndicator = ({
44
44
  }) => {
45
45
  const indicatorRef = (0, import_react.useRef)(null);
46
46
  const hasRenderedOnce = (0, import_react.useRef)(false);
47
- const indicatorWidthCache = (0, import_react.useRef)(null);
48
47
  const [indicatorStyle, setIndicatorStyle] = (0, import_react.useState)(
49
48
  null
50
49
  );
@@ -68,19 +67,11 @@ const TabIndicator = ({
68
67
  }
69
68
  );
70
69
  const getIndicatorWidth = (0, import_utils.useEventCallback)(() => {
71
- if (indicatorWidthCache.current !== null) {
72
- return indicatorWidthCache.current;
73
- }
74
70
  const indicator = indicatorRef.current;
75
71
  if (!indicator)
76
72
  return DEFAULT_INDICATOR_WIDTH;
77
- const cssValue = getComputedStyle(indicator).getPropertyValue(
78
- "--bui-tabs-indicator-width"
79
- );
80
- const parsed = Number.parseFloat(cssValue);
81
- const width = Number.isNaN(parsed) ? DEFAULT_INDICATOR_WIDTH : parsed;
82
- indicatorWidthCache.current = width;
83
- return width;
73
+ const rect = indicator.getBoundingClientRect();
74
+ return rect.width > 0 ? rect.width : DEFAULT_INDICATOR_WIDTH;
84
75
  });
85
76
  const getTabsMeta = (0, import_utils.useEventCallback)(() => {
86
77
  const tabsNode = tabsContainerRef.current;
@@ -135,15 +126,48 @@ const TabIndicator = ({
135
126
  updateIndicatorState();
136
127
  });
137
128
  (0, import_react.useEffect)(() => {
129
+ const tabsContainer = tabsContainerRef.current;
130
+ if (!tabsContainer)
131
+ return void 0;
138
132
  const handleResize = (0, import_utils.debounce)(() => {
139
- indicatorWidthCache.current = null;
140
- updateIndicatorState();
133
+ if (tabsContainerRef.current) {
134
+ updateIndicatorState();
135
+ }
141
136
  }, 100);
142
137
  window.addEventListener("resize", handleResize);
138
+ let resizeObserver;
139
+ let mutationObserver;
140
+ if (typeof ResizeObserver !== "undefined") {
141
+ resizeObserver = new ResizeObserver(handleResize);
142
+ Array.from(tabsContainer.children).forEach((child) => {
143
+ resizeObserver == null ? void 0 : resizeObserver.observe(child);
144
+ });
145
+ }
146
+ if (typeof MutationObserver !== "undefined") {
147
+ const handleMutation = (records) => {
148
+ records.forEach((record) => {
149
+ record.removedNodes.forEach((item) => {
150
+ if (item instanceof Element) {
151
+ resizeObserver == null ? void 0 : resizeObserver.unobserve(item);
152
+ }
153
+ });
154
+ record.addedNodes.forEach((item) => {
155
+ if (item instanceof Element) {
156
+ resizeObserver == null ? void 0 : resizeObserver.observe(item);
157
+ }
158
+ });
159
+ });
160
+ handleResize();
161
+ };
162
+ mutationObserver = new MutationObserver(handleMutation);
163
+ mutationObserver.observe(tabsContainer, { childList: true });
164
+ }
143
165
  return () => {
144
166
  window.removeEventListener("resize", handleResize);
167
+ mutationObserver == null ? void 0 : mutationObserver.disconnect();
168
+ resizeObserver == null ? void 0 : resizeObserver.disconnect();
145
169
  };
146
- }, [updateIndicatorState]);
170
+ }, [updateIndicatorState, tabsContainerRef]);
147
171
  if (!indicatorStyle) {
148
172
  return null;
149
173
  }
@@ -151,7 +175,7 @@ const TabIndicator = ({
151
175
  "div",
152
176
  {
153
177
  ref: indicatorRef,
154
- className: (0, import_clsx.default)(`${rootClass}-indicator`),
178
+ className: (0, import_clsx.default)(import_classes.tabIndicatorClass),
155
179
  style: indicatorStyle,
156
180
  "aria-hidden": "true"
157
181
  }
@@ -58,8 +58,8 @@ __export(TabPanel_exports, {
58
58
  module.exports = __toCommonJS(TabPanel_exports);
59
59
  var import_react = __toESM(require("react"));
60
60
  var import_clsx = __toESM(require("clsx"));
61
+ var import_classes = require("./classes");
61
62
  var import_TabPanel2 = require("./TabPanel.css");
62
- const prefixCls = "bui-tabpanel";
63
63
  const TabPanel = (0, import_react.forwardRef)((props, ref) => {
64
64
  const _a = props, {
65
65
  className,
@@ -83,9 +83,9 @@ const TabPanel = (0, import_react.forwardRef)((props, ref) => {
83
83
  "aria-hidden": !isActive,
84
84
  tabIndex: 0,
85
85
  ref,
86
- className: (0, import_clsx.default)(prefixCls, className, {
87
- [`${prefixCls}-active`]: isActive,
88
- [`${prefixCls}-inactive`]: !isActive
86
+ className: (0, import_clsx.default)(import_classes.tabPanelRootClass, className, {
87
+ [import_classes.tabPanelActiveClass]: isActive,
88
+ [import_classes.tabPanelInactiveClass]: !isActive
89
89
  })
90
90
  }, others),
91
91
  isActive ? children : keepActiveDom
package/dist/Tabs/Tabs.js CHANGED
@@ -72,15 +72,15 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
72
72
  const _a = props, {
73
73
  children,
74
74
  className,
75
- value,
76
75
  defaultValue,
76
+ value,
77
77
  tabs = [],
78
78
  onChange
79
79
  } = _a, others = __objRest(_a, [
80
80
  "children",
81
81
  "className",
82
- "value",
83
82
  "defaultValue",
83
+ "value",
84
84
  "tabs",
85
85
  "onChange"
86
86
  ]);
@@ -151,11 +151,14 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
151
151
  (0, import_react.useEffect)(() => {
152
152
  const tabsEl = tabsRef.current;
153
153
  if (!tabsEl)
154
- return;
154
+ return void 0;
155
155
  const checkScrollable = () => {
156
156
  setIsScrollable(tabsEl.scrollWidth > tabsEl.offsetWidth);
157
157
  };
158
158
  checkScrollable();
159
+ if (typeof ResizeObserver === "undefined") {
160
+ return void 0;
161
+ }
159
162
  const resizeObserver = new ResizeObserver(checkScrollable);
160
163
  resizeObserver.observe(tabsEl);
161
164
  return () => {
@@ -165,7 +168,7 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
165
168
  return /* @__PURE__ */ import_react.default.createElement("div", __spreadProps(__spreadValues({ className: (0, import_clsx.default)(import_classes.tabsRootClass, className) }, others), { ref }), isScrollable && /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_TabMask.default, { position: "left" }), /* @__PURE__ */ import_react.default.createElement(import_TabMask.default, { position: "right" })), /* @__PURE__ */ import_react.default.createElement(
166
169
  "div",
167
170
  {
168
- className: `${import_classes.tabsRootClass}-tabs`,
171
+ className: import_classes.tabsScrollClass,
169
172
  ref: tabsRef,
170
173
  role: "tablist",
171
174
  "aria-orientation": "horizontal"
@@ -1,5 +1,6 @@
1
1
  export declare const tabsRootClass = "bui-tabs";
2
2
  export declare const tabRootClass = "bui-tab";
3
+ export declare const tabPanelRootClass = "bui-tabpanel";
3
4
  export declare const tabsScrollClass: string;
4
5
  export declare const tabsScrollWrapperClass: string;
5
6
  export declare const tabActiveClass: string;
@@ -8,3 +9,5 @@ export declare const tabIndicatorClass: string;
8
9
  export declare const tabMaskClass: string;
9
10
  export declare const tabMaskLeftClass: string;
10
11
  export declare const tabMaskRightClass: string;
12
+ export declare const tabPanelActiveClass: string;
13
+ export declare const tabPanelInactiveClass: string;
@@ -23,6 +23,9 @@ __export(classes_exports, {
23
23
  tabMaskClass: () => tabMaskClass,
24
24
  tabMaskLeftClass: () => tabMaskLeftClass,
25
25
  tabMaskRightClass: () => tabMaskRightClass,
26
+ tabPanelActiveClass: () => tabPanelActiveClass,
27
+ tabPanelInactiveClass: () => tabPanelInactiveClass,
28
+ tabPanelRootClass: () => tabPanelRootClass,
26
29
  tabRootClass: () => tabRootClass,
27
30
  tabsRootClass: () => tabsRootClass,
28
31
  tabsScrollClass: () => tabsScrollClass,
@@ -31,6 +34,7 @@ __export(classes_exports, {
31
34
  module.exports = __toCommonJS(classes_exports);
32
35
  const tabsRootClass = "bui-tabs";
33
36
  const tabRootClass = "bui-tab";
37
+ const tabPanelRootClass = "bui-tabpanel";
34
38
  const tabsScrollClass = `${tabsRootClass}-tabs`;
35
39
  const tabsScrollWrapperClass = `${tabsRootClass}-scroll-wrapper`;
36
40
  const tabActiveClass = `${tabRootClass}-active`;
@@ -39,6 +43,8 @@ const tabIndicatorClass = `${tabsRootClass}-indicator`;
39
43
  const tabMaskClass = `${tabsRootClass}-mask`;
40
44
  const tabMaskLeftClass = `${tabMaskClass}-left`;
41
45
  const tabMaskRightClass = `${tabMaskClass}-right`;
46
+ const tabPanelActiveClass = `${tabPanelRootClass}-active`;
47
+ const tabPanelInactiveClass = `${tabPanelRootClass}-inactive`;
42
48
  // Annotate the CommonJS export names for ESM import in node:
43
49
  0 && (module.exports = {
44
50
  tabActiveClass,
@@ -47,6 +53,9 @@ const tabMaskRightClass = `${tabMaskClass}-right`;
47
53
  tabMaskClass,
48
54
  tabMaskLeftClass,
49
55
  tabMaskRightClass,
56
+ tabPanelActiveClass,
57
+ tabPanelInactiveClass,
58
+ tabPanelRootClass,
50
59
  tabRootClass,
51
60
  tabsRootClass,
52
61
  tabsScrollClass,
@@ -12,5 +12,5 @@ declare const Modal: React.ForwardRefExoticComponent<Omit<ViewProps & {
12
12
  keepMounted?: boolean;
13
13
  } & import("@bifrostui/types").ICommonProps & Omit<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
14
14
  ref?: React.Ref<HTMLDivElement>;
15
- }, keyof import("@bifrostui/types").ICommonProps | "keepMounted" | "container" | "disablePortal" | "open" | "hideBackdrop" | "BackdropProps" | "onClose" | "disableScrollLock">, "ref"> & React.RefAttributes<HTMLDivElement>>;
15
+ }, keyof import("@bifrostui/types").ICommonProps | "open" | "container" | "disablePortal" | "hideBackdrop" | "BackdropProps" | "onClose" | "disableScrollLock" | "keepMounted">, "ref"> & React.RefAttributes<HTMLDivElement>>;
16
16
  export default Modal;
package/es/Tabs/Tab.js CHANGED
@@ -33,8 +33,8 @@ import React, { useEffect, useRef } from "react";
33
33
  import clsx from "clsx";
34
34
  import { isMini, useContextSelector, useForkRef } from "@bifrostui/utils";
35
35
  import TabsContext from "./TabsContext";
36
+ import { tabRootClass, tabActiveClass, tabDisabledClass } from "./classes";
36
37
  import "./Tab.css";
37
- const rootClass = "bui-tab";
38
38
  const Tab = /* @__PURE__ */ React.forwardRef((props, ref) => {
39
39
  const _a = props, {
40
40
  className,
@@ -75,10 +75,10 @@ const Tab = /* @__PURE__ */ React.forwardRef((props, ref) => {
75
75
  };
76
76
  }, [onRegister, onUnregister, index]);
77
77
  const rootCls = clsx(
78
- rootClass,
78
+ tabRootClass,
79
79
  {
80
- [`${rootClass}-active`]: !isMini && isActive,
81
- [`${rootClass}-disabled`]: disabled
80
+ [tabActiveClass]: !isMini && isActive,
81
+ [tabDisabledClass]: disabled
82
82
  },
83
83
  className
84
84
  );
@@ -2,7 +2,7 @@ import React, { useEffect, useRef, useState } from "react";
2
2
  import clsx from "clsx";
3
3
  import { debounce, isMini, useEventCallback } from "@bifrostui/utils";
4
4
  import scrollLeftTo from "./utils/scroll";
5
- const rootClass = "bui-tabs";
5
+ import { tabIndicatorClass } from "./classes";
6
6
  const duration = 300;
7
7
  const DEFAULT_INDICATOR_WIDTH = 24;
8
8
  const TabIndicator = ({
@@ -12,7 +12,6 @@ const TabIndicator = ({
12
12
  }) => {
13
13
  const indicatorRef = useRef(null);
14
14
  const hasRenderedOnce = useRef(false);
15
- const indicatorWidthCache = useRef(null);
16
15
  const [indicatorStyle, setIndicatorStyle] = useState(
17
16
  null
18
17
  );
@@ -36,19 +35,11 @@ const TabIndicator = ({
36
35
  }
37
36
  );
38
37
  const getIndicatorWidth = useEventCallback(() => {
39
- if (indicatorWidthCache.current !== null) {
40
- return indicatorWidthCache.current;
41
- }
42
38
  const indicator = indicatorRef.current;
43
39
  if (!indicator)
44
40
  return DEFAULT_INDICATOR_WIDTH;
45
- const cssValue = getComputedStyle(indicator).getPropertyValue(
46
- "--bui-tabs-indicator-width"
47
- );
48
- const parsed = Number.parseFloat(cssValue);
49
- const width = Number.isNaN(parsed) ? DEFAULT_INDICATOR_WIDTH : parsed;
50
- indicatorWidthCache.current = width;
51
- return width;
41
+ const rect = indicator.getBoundingClientRect();
42
+ return rect.width > 0 ? rect.width : DEFAULT_INDICATOR_WIDTH;
52
43
  });
53
44
  const getTabsMeta = useEventCallback(() => {
54
45
  const tabsNode = tabsContainerRef.current;
@@ -103,15 +94,48 @@ const TabIndicator = ({
103
94
  updateIndicatorState();
104
95
  });
105
96
  useEffect(() => {
97
+ const tabsContainer = tabsContainerRef.current;
98
+ if (!tabsContainer)
99
+ return void 0;
106
100
  const handleResize = debounce(() => {
107
- indicatorWidthCache.current = null;
108
- updateIndicatorState();
101
+ if (tabsContainerRef.current) {
102
+ updateIndicatorState();
103
+ }
109
104
  }, 100);
110
105
  window.addEventListener("resize", handleResize);
106
+ let resizeObserver;
107
+ let mutationObserver;
108
+ if (typeof ResizeObserver !== "undefined") {
109
+ resizeObserver = new ResizeObserver(handleResize);
110
+ Array.from(tabsContainer.children).forEach((child) => {
111
+ resizeObserver == null ? void 0 : resizeObserver.observe(child);
112
+ });
113
+ }
114
+ if (typeof MutationObserver !== "undefined") {
115
+ const handleMutation = (records) => {
116
+ records.forEach((record) => {
117
+ record.removedNodes.forEach((item) => {
118
+ if (item instanceof Element) {
119
+ resizeObserver == null ? void 0 : resizeObserver.unobserve(item);
120
+ }
121
+ });
122
+ record.addedNodes.forEach((item) => {
123
+ if (item instanceof Element) {
124
+ resizeObserver == null ? void 0 : resizeObserver.observe(item);
125
+ }
126
+ });
127
+ });
128
+ handleResize();
129
+ };
130
+ mutationObserver = new MutationObserver(handleMutation);
131
+ mutationObserver.observe(tabsContainer, { childList: true });
132
+ }
111
133
  return () => {
112
134
  window.removeEventListener("resize", handleResize);
135
+ mutationObserver == null ? void 0 : mutationObserver.disconnect();
136
+ resizeObserver == null ? void 0 : resizeObserver.disconnect();
113
137
  };
114
- }, [updateIndicatorState]);
138
+ }, [updateIndicatorState, tabsContainerRef]);
115
139
  if (!indicatorStyle) {
116
140
  return null;
117
141
  }
@@ -119,7 +143,7 @@ const TabIndicator = ({
119
143
  "div",
120
144
  {
121
145
  ref: indicatorRef,
122
- className: clsx(`${rootClass}-indicator`),
146
+ className: clsx(tabIndicatorClass),
123
147
  style: indicatorStyle,
124
148
  "aria-hidden": "true"
125
149
  }
@@ -28,8 +28,12 @@ var __objRest = (source, exclude) => {
28
28
  };
29
29
  import React, { forwardRef } from "react";
30
30
  import clsx from "clsx";
31
+ import {
32
+ tabPanelRootClass,
33
+ tabPanelActiveClass,
34
+ tabPanelInactiveClass
35
+ } from "./classes";
31
36
  import "./TabPanel.css";
32
- const prefixCls = "bui-tabpanel";
33
37
  const TabPanel = forwardRef((props, ref) => {
34
38
  const _a = props, {
35
39
  className,
@@ -53,9 +57,9 @@ const TabPanel = forwardRef((props, ref) => {
53
57
  "aria-hidden": !isActive,
54
58
  tabIndex: 0,
55
59
  ref,
56
- className: clsx(prefixCls, className, {
57
- [`${prefixCls}-active`]: isActive,
58
- [`${prefixCls}-inactive`]: !isActive
60
+ className: clsx(tabPanelRootClass, className, {
61
+ [tabPanelActiveClass]: isActive,
62
+ [tabPanelInactiveClass]: !isActive
59
63
  })
60
64
  }, others),
61
65
  isActive ? children : keepActiveDom
package/es/Tabs/Tabs.js CHANGED
@@ -36,21 +36,21 @@ import Tab from "./Tab";
36
36
  import TabIndicator from "./TabIndicator";
37
37
  import TabMask from "./TabMask";
38
38
  import { TabsContextProvider } from "./TabsContext";
39
- import { tabsRootClass } from "./classes";
39
+ import { tabsRootClass, tabsScrollClass } from "./classes";
40
40
  import "./Tabs.css";
41
41
  const Tabs = /* @__PURE__ */ React.forwardRef((props, ref) => {
42
42
  const _a = props, {
43
43
  children,
44
44
  className,
45
- value,
46
45
  defaultValue,
46
+ value,
47
47
  tabs = [],
48
48
  onChange
49
49
  } = _a, others = __objRest(_a, [
50
50
  "children",
51
51
  "className",
52
- "value",
53
52
  "defaultValue",
53
+ "value",
54
54
  "tabs",
55
55
  "onChange"
56
56
  ]);
@@ -121,11 +121,14 @@ const Tabs = /* @__PURE__ */ React.forwardRef((props, ref) => {
121
121
  useEffect(() => {
122
122
  const tabsEl = tabsRef.current;
123
123
  if (!tabsEl)
124
- return;
124
+ return void 0;
125
125
  const checkScrollable = () => {
126
126
  setIsScrollable(tabsEl.scrollWidth > tabsEl.offsetWidth);
127
127
  };
128
128
  checkScrollable();
129
+ if (typeof ResizeObserver === "undefined") {
130
+ return void 0;
131
+ }
129
132
  const resizeObserver = new ResizeObserver(checkScrollable);
130
133
  resizeObserver.observe(tabsEl);
131
134
  return () => {
@@ -135,7 +138,7 @@ const Tabs = /* @__PURE__ */ React.forwardRef((props, ref) => {
135
138
  return /* @__PURE__ */ React.createElement("div", __spreadProps(__spreadValues({ className: clsx(tabsRootClass, className) }, others), { ref }), isScrollable && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(TabMask, { position: "left" }), /* @__PURE__ */ React.createElement(TabMask, { position: "right" })), /* @__PURE__ */ React.createElement(
136
139
  "div",
137
140
  {
138
- className: `${tabsRootClass}-tabs`,
141
+ className: tabsScrollClass,
139
142
  ref: tabsRef,
140
143
  role: "tablist",
141
144
  "aria-orientation": "horizontal"
@@ -1,5 +1,6 @@
1
1
  export declare const tabsRootClass = "bui-tabs";
2
2
  export declare const tabRootClass = "bui-tab";
3
+ export declare const tabPanelRootClass = "bui-tabpanel";
3
4
  export declare const tabsScrollClass: string;
4
5
  export declare const tabsScrollWrapperClass: string;
5
6
  export declare const tabActiveClass: string;
@@ -8,3 +9,5 @@ export declare const tabIndicatorClass: string;
8
9
  export declare const tabMaskClass: string;
9
10
  export declare const tabMaskLeftClass: string;
10
11
  export declare const tabMaskRightClass: string;
12
+ export declare const tabPanelActiveClass: string;
13
+ export declare const tabPanelInactiveClass: string;
@@ -1,5 +1,6 @@
1
1
  const tabsRootClass = "bui-tabs";
2
2
  const tabRootClass = "bui-tab";
3
+ const tabPanelRootClass = "bui-tabpanel";
3
4
  const tabsScrollClass = `${tabsRootClass}-tabs`;
4
5
  const tabsScrollWrapperClass = `${tabsRootClass}-scroll-wrapper`;
5
6
  const tabActiveClass = `${tabRootClass}-active`;
@@ -8,6 +9,8 @@ const tabIndicatorClass = `${tabsRootClass}-indicator`;
8
9
  const tabMaskClass = `${tabsRootClass}-mask`;
9
10
  const tabMaskLeftClass = `${tabMaskClass}-left`;
10
11
  const tabMaskRightClass = `${tabMaskClass}-right`;
12
+ const tabPanelActiveClass = `${tabPanelRootClass}-active`;
13
+ const tabPanelInactiveClass = `${tabPanelRootClass}-inactive`;
11
14
  export {
12
15
  tabActiveClass,
13
16
  tabDisabledClass,
@@ -15,6 +18,9 @@ export {
15
18
  tabMaskClass,
16
19
  tabMaskLeftClass,
17
20
  tabMaskRightClass,
21
+ tabPanelActiveClass,
22
+ tabPanelInactiveClass,
23
+ tabPanelRootClass,
18
24
  tabRootClass,
19
25
  tabsRootClass,
20
26
  tabsScrollClass,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bifrostui/react",
3
- "version": "2.0.0-alpha.19",
3
+ "version": "2.0.0-alpha.20",
4
4
  "description": "React components for building mobile application",
5
5
  "homepage": "http://bui.taopiaopiao.com",
6
6
  "license": "MIT",
@@ -43,10 +43,10 @@
43
43
  "clsx": "^2.1.1",
44
44
  "dayjs": "^1.11.7",
45
45
  "swiper": "^8.1.5",
46
- "@bifrostui/icons": "2.0.0-alpha.19",
47
- "@bifrostui/styles": "2.0.0-alpha.19",
48
- "@bifrostui/types": "2.0.0-alpha.19",
49
- "@bifrostui/utils": "2.0.0-alpha.19"
46
+ "@bifrostui/icons": "2.0.0-alpha.20",
47
+ "@bifrostui/styles": "2.0.0-alpha.20",
48
+ "@bifrostui/utils": "2.0.0-alpha.20",
49
+ "@bifrostui/types": "2.0.0-alpha.20"
50
50
  },
51
51
  "peerDependencies": {
52
52
  "@tarojs/components": "^3.0.0",