@bifrostui/react 1.4.5-beta.2 → 1.4.5

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/Tabs.js CHANGED
@@ -64,11 +64,8 @@ var import_TabsContext = require("./TabsContext");
64
64
  var import_bound = __toESM(require("./utils/bound"));
65
65
  var import_Tabs2 = require("./Tabs.css");
66
66
  const prefixCls = "bui-tabs";
67
- const defaultProps = {
68
- tabs: []
69
- };
70
67
  const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
71
- const _a = __spreadValues(__spreadValues({}, defaultProps), props), { children, className, value, tabs, onChange } = _a, others = __objRest(_a, ["children", "className", "value", "tabs", "onChange"]);
68
+ const _a = props, { children, className, value, tabs, align, onChange } = _a, others = __objRest(_a, ["children", "className", "value", "tabs", "align", "onChange"]);
72
69
  const [active, setActive] = (0, import_react.useState)("");
73
70
  const tabsRef = (0, import_react.useRef)(null);
74
71
  const activeLineRef = (0, import_react.useRef)(null);
@@ -133,6 +130,25 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
133
130
  tabsRef.current.scrollLeft = nextScrollLeft;
134
131
  }
135
132
  };
133
+ (0, import_react.useEffect)(() => {
134
+ setActive(value);
135
+ }, [value]);
136
+ (0, import_react.useLayoutEffect)(() => {
137
+ animate({ transitionInUse: false });
138
+ }, []);
139
+ (0, import_react.useEffect)(() => {
140
+ const handleResize = (0, import_utils.debounce)(() => {
141
+ animate({ transitionInUse: true });
142
+ updateMask();
143
+ }, 100);
144
+ window.addEventListener("resize", handleResize);
145
+ return () => {
146
+ window.removeEventListener("resize", handleResize);
147
+ };
148
+ }, [active]);
149
+ (0, import_utils.useDidMountEffect)(() => {
150
+ animate({ transitionInUse: true });
151
+ }, [active, tabs, children]);
136
152
  const updateMask = (0, import_react.useMemo)(
137
153
  () => (0, import_utils.throttle)(
138
154
  () => {
@@ -155,25 +171,6 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
155
171
  ),
156
172
  []
157
173
  );
158
- (0, import_react.useEffect)(() => {
159
- setActive(value);
160
- }, [value]);
161
- (0, import_react.useLayoutEffect)(() => {
162
- animate({ transitionInUse: false });
163
- }, []);
164
- (0, import_react.useEffect)(() => {
165
- const handleResize = (0, import_utils.debounce)(() => {
166
- animate({ transitionInUse: true });
167
- updateMask();
168
- }, 100);
169
- window.addEventListener("resize", handleResize);
170
- return () => {
171
- window.removeEventListener("resize", handleResize);
172
- };
173
- }, [active]);
174
- (0, import_utils.useDidMountEffect)(() => {
175
- animate({ transitionInUse: true });
176
- }, [active, tabs, children]);
177
174
  (0, import_react.useLayoutEffect)(() => {
178
175
  updateMask();
179
176
  }, []);
@@ -192,8 +189,8 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
192
189
  }
193
190
  };
194
191
  const providerValue = (0, import_react.useMemo)(() => {
195
- return { value, triggerChange: handleClick };
196
- }, [value, children, handleClick]);
192
+ return { value, align, triggerChange: handleClick };
193
+ }, [value, align, children, handleClick]);
197
194
  return /* @__PURE__ */ import_react.default.createElement("div", __spreadValues({ ref, className: (0, import_clsx.default)(prefixCls, className) }, others), /* @__PURE__ */ import_react.default.createElement(
198
195
  "div",
199
196
  {
@@ -214,11 +211,11 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
214
211
  "div",
215
212
  {
216
213
  ref: activeLineRef,
217
- className: (0, import_clsx.default)(`${prefixCls}-indicator`, {
218
- "bui-indicator-invisible": import_utils.isMini || !lineData.hasActiveTab
214
+ className: (0, import_clsx.default)(`${prefixCls}-tabline`, {
215
+ "bui-tabline-invisible": import_utils.isMini || !lineData.hasActiveTab
219
216
  }),
220
217
  style: {
221
- transition: lineData.transitionInUse ? "transform 0.3s ease-in-out" : void 0,
218
+ transition: lineData.transitionInUse ? "transform 0.25s ease-in-out" : void 0,
222
219
  transform: `translate3d(${lineData.x}px, 0px, 0px)`
223
220
  }
224
221
  }
@@ -235,4 +232,8 @@ const Tabs = /* @__PURE__ */ import_react.default.forwardRef((props, ref) => {
235
232
  }), children)));
236
233
  });
237
234
  Tabs.displayName = "BuiTabs";
235
+ Tabs.defaultProps = {
236
+ align: "center",
237
+ tabs: []
238
+ };
238
239
  var Tabs_default = Tabs;
@@ -3,6 +3,9 @@ import React, { SyntheticEvent } from 'react';
3
3
  export interface TabHeaderItem {
4
4
  title: React.ReactNode;
5
5
  index: string;
6
+ /**
7
+ * 是否禁止点击
8
+ */
6
9
  disabled?: boolean;
7
10
  }
8
11
  export interface ITabsChangeData {
@@ -11,8 +14,11 @@ export interface ITabsChangeData {
11
14
  }
12
15
  export type TabChangeEvent = (e?: SyntheticEvent, data?: ITabsChangeData) => void;
13
16
  export interface ITabItem {
17
+ /** 面板标题 */
14
18
  title: React.ReactNode;
19
+ /** 面板的索引值 */
15
20
  index: string;
21
+ /** 面板是否禁用 */
16
22
  disabled?: boolean;
17
23
  }
18
24
  export type ITabAlign = 'start' | 'center';
@@ -26,6 +32,10 @@ export type TabsProps<D extends React.ElementType = 'div', P = {}> = OverridePro
26
32
  * 切换面板的数据
27
33
  */
28
34
  tabs?: ITabItem[];
35
+ /**
36
+ * 对齐方式,默认为center
37
+ */
38
+ align?: ITabAlign;
29
39
  /**
30
40
  * 切换面板的回调
31
41
  */
package/dist/Tag/Tag.css CHANGED
@@ -47,7 +47,7 @@
47
47
  border: 1px solid var(--bui-color-border-danger);
48
48
  }
49
49
  .bui-tag-outlined.bui-tag-vip {
50
- color: var(--bui-color-primary);
50
+ color: var(--bui-color-red);
51
51
  border: 1px solid var(--bui-color-border-primary);
52
52
  }
53
53
  .bui-tag-contained {
@@ -1,6 +1,6 @@
1
1
  .bui-tooltip {
2
2
  --arrow-size: var(--bui-tooltip-arrow-size, 8PX);
3
- --location-position: var(--bui-tooltip-location-position, 8PX);
3
+ --localtion-position: var(--bui-tooltip-localtion-position, 8PX);
4
4
  --max-width: var(--bui-tooltip-max-width, 350px);
5
5
  --content-min-width: var(--bui-tooltip-content-min-width, 30px);
6
6
  --content-min-height: var(--bui-tooltip-content-min-height, 32px);
@@ -17,16 +17,16 @@
17
17
  position: absolute;
18
18
  }
19
19
  .bui-tooltip .bui-tooltip-arrow.location-left {
20
- left: var(--location-position);
20
+ left: var(--localtion-position);
21
21
  }
22
22
  .bui-tooltip .bui-tooltip-arrow.location-right {
23
- right: var(--location-position);
23
+ right: var(--localtion-position);
24
24
  }
25
25
  .bui-tooltip .bui-tooltip-arrow.location-top {
26
- top: var(--location-position);
26
+ top: var(--localtion-position);
27
27
  }
28
28
  .bui-tooltip .bui-tooltip-arrow.location-bottom {
29
- bottom: var(--location-position);
29
+ bottom: var(--localtion-position);
30
30
  }
31
31
  .bui-tooltip.tooltip-top .location-center,
32
32
  .bui-tooltip.tooltip-bottom .location-center {
@@ -1,7 +1,7 @@
1
1
  .bui-action-sheet {
2
2
  --extra-line-height: var(--bui-action-sheet-extra-line-height, 23px);
3
3
  --extra-padding: var(--bui-action-sheet-extra-padding, var(--bui-spacing-xl));
4
- --extra-margin: var(--bui-action-sheet-extra-margin, 0 var(--bui-spacing-xl));
4
+ --extra-magin: var(--bui-action-sheet-extra-magin, 0 var(--bui-spacing-xl));
5
5
  font-family: var(--bui-font-family);
6
6
  }
7
7
  .bui-action-sheet-content {
@@ -26,5 +26,5 @@
26
26
  background: var(--bui-color-bg-view);
27
27
  text-align: center;
28
28
  border-bottom: 1px solid var(--bui-color-border-default);
29
- margin: var(--extra-margin);
29
+ margin: var(--extra-magin);
30
30
  }
@@ -1,16 +1,27 @@
1
1
  .bui-btn {
2
- --bui-btn-font-size: var(--bui-text-size-3);
3
- --bui-btn-font-weight: var(--bui-font-weight-medium);
4
- --bui-btn-border-radius: 120px;
5
- --bui-btn-height: 27px;
6
- --bui-btn-color: var(--bui-color-fg-muted);
7
- --bui-btn-bg: var(--bui-color-bg-view);
8
- --bui-btn-opacity: 1;
9
- --bui-btn-padding: 0 14px;
10
- --bui-btn-border: 0;
11
- --bui-btn-font-family: var(--bui-font-family);
2
+ --border-radius: var(--bui-button-border-radius, 100px);
3
+ --text-color: var(--bui-button-text-color, var(--bui-color-fg-muted));
4
+ --bg-color: var(--bui-button-default-bg-color, var(--bui-color-neutral-5));
5
+ --border-color: var(--bui-button-border-color, var(--bui-color-neutral-4));
6
+ --height: var(--bui-button-height, 27px);
7
+ --icon-start-margin-right: var(--bui-button-icon-start-margin-right, var(--bui-spacing-xs));
8
+ --icon-start-margin-left: var(--bui-button-icon-start-margin-left, var(--bui-spacing-xs));
9
+ --default-border: var(--bui-button-default-border, 1px solid transparent);
10
+ --light-border: var(--bui-button-light-border, 1px solid transparent);
11
+ --outlined-default-border: var(--bui-button-outlined-default-border, 1px solid var(--bui-color-neutral-4));
12
+ --disabled-opacity: var(--bui-button-disabled-opacity, 0.5);
13
+ --small-padding: var(--bui-button-small-padding, 0 11px);
14
+ --small-height: var(--bui-button-small-height, 24px);
15
+ --medium-padding: var(--bui-button-medium-padding, 0 14px);
16
+ --large-padding: var(--bui-button-large-padding, 0 14px);
17
+ --large-height: var(--bui-button-large-height, 33px);
18
+ --full-font-size: var(--bui-button-full-font-size, var(--bui-title-size-4));
19
+ --full-height: var(--bui-button-full-height, 42px);
20
+ border: var(--default-border);
12
21
  outline: 0;
22
+ background-color: transparent;
13
23
  cursor: pointer;
24
+ color: var(--text-color);
14
25
  box-sizing: border-box;
15
26
  position: relative;
16
27
  display: inline-flex;
@@ -18,17 +29,12 @@
18
29
  align-items: center;
19
30
  justify-content: center;
20
31
  white-space: nowrap;
21
- color: var(--bui-btn-color);
22
- background: var(--bui-btn-bg);
23
- font-size: var(--bui-btn-font-size);
24
- font-weight: var(--bui-btn-font-weight);
25
- border: var(--bui-btn-border);
26
- border-radius: var(--bui-btn-border-radius);
27
- height: var(--bui-btn-height);
28
- padding: var(--bui-btn-padding);
32
+ font-size: var(--bui-text-size-3);
33
+ font-weight: var(--bui-font-weight-medium);
34
+ border-radius: var(--border-radius);
35
+ height: var(--height);
29
36
  line-height: var(--bui-line-height);
30
- font-family: var(--bui-btn-font-family);
31
- opacity: var(--bui-btn-opacity);
37
+ font-family: var(--bui-font-family);
32
38
  }
33
39
  @keyframes spin {
34
40
  from {
@@ -62,61 +68,57 @@
62
68
  display: inline-flex;
63
69
  align-self: center;
64
70
  flex-shrink: 0;
65
- margin-right: var(--bui-spacing-xs);
71
+ margin-right: var(--icon-start-margin-right);
66
72
  }
67
73
  .bui-btn-icon-end {
68
74
  display: inline-flex;
69
75
  align-self: center;
70
76
  flex-shrink: 0;
71
- margin-left: var(--bui-spacing-xs);
77
+ margin-left: var(--icon-start-margin-left);
72
78
  }
73
79
  .bui-btn-disabled {
74
80
  pointer-events: none;
75
- --bui-btn-opacity: 0.5;
81
+ opacity: var(--disabled-opacity);
76
82
  }
77
83
  .bui-btn-small {
78
- --bui-btn-height: 24px;
79
- --bui-btn-font-size: var(--bui-text-size-4);
80
- --bui-btn-padding: 0 11px;
84
+ font-size: var(--bui-text-size-4);
85
+ padding: var(--small-padding);
86
+ height: var(--small-height);
87
+ }
88
+ .bui-btn-medium {
89
+ padding: var(--medium-padding);
90
+ height: var(--height);
81
91
  }
82
92
  .bui-btn-large {
83
- --bui-btn-height: 33px;
84
- --bui-btn-font-size: var(--bui-text-size-2);
93
+ font-size: var(--bui-text-size-2);
94
+ padding: var(--large-padding);
95
+ height: var(--large-height);
85
96
  }
86
97
  .bui-btn-full {
87
- --bui-btn-height: 42px;
88
- --bui-btn-font-size: var(--bui-title-size-4);
98
+ font-size: var(--full-font-size);
89
99
  width: 100%;
90
- }
91
- .bui-btn-text {
92
- --bui-btn-bg: none;
100
+ height: var(--full-height);
93
101
  }
94
102
  .bui-btn-text.bui-btn-primary {
95
- --bui-btn-color: var(--bui-color-primary);
103
+ color: var(--bui-color-primary);
96
104
  }
97
105
  .bui-btn-text.bui-btn-success {
98
- --bui-btn-color: var(--bui-color-success);
106
+ color: var(--bui-color-success);
99
107
  }
100
108
  .bui-btn-text.bui-btn-info {
101
- --bui-btn-color: var(--bui-color-info);
109
+ color: var(--bui-color-info);
102
110
  }
103
111
  .bui-btn-text.bui-btn-warning {
104
- --bui-btn-color: var(--bui-color-warning);
112
+ color: var(--bui-color-warning);
105
113
  }
106
114
  .bui-btn-text.bui-btn-danger {
107
- --bui-btn-color: var(--bui-color-danger);
108
- }
109
- .bui-btn-text.bui-btn-light {
110
- --bui-btn-color: var(--bui-color-bg-view);
111
- }
112
- .bui-btn-text.bui-btn-dark {
113
- --bui-btn-color: var(--bui-color-fg-default);
115
+ color: var(--bui-color-danger);
114
116
  }
115
117
  .bui-btn-text.bui-btn-vip {
116
- --bui-btn-color: var(--bui-color-vip);
118
+ color: var(--bui-color-vip);
117
119
  }
118
120
  .bui-btn-contained {
119
- --bui-btn-bg: var(--bui-color-neutral-5);
121
+ background-color: var(--bg-color);
120
122
  }
121
123
  .bui-btn-contained.bui-btn-primary {
122
124
  color: var(--bui-color-white);
@@ -158,25 +160,16 @@
158
160
  var(--bui-color-danger-start) 0%,
159
161
  var(--bui-color-danger-end) 100%);
160
162
  }
161
- .bui-btn-contained.bui-btn-light {
162
- --bui-btn-color: var(--bui-color-fg-default);
163
- --bui-btn-bg: var(--bui-color-bg-view);
164
- }
165
- .bui-btn-contained.bui-btn-dark {
166
- --bui-btn-color: var(--bui-color-bg-view);
167
- --bui-btn-bg: var(--bui-color-fg-default);
168
- }
169
163
  .bui-btn-contained.bui-btn-vip {
170
- --bui-btn-color: #582331;
171
- --bui-btn-bg:
164
+ color: #582331;
165
+ background-image:
172
166
  linear-gradient(
173
167
  90deg,
174
168
  var(--bui-color-vip-start) 3%,
175
169
  var(--bui-color-vip-end) 100%);
176
170
  }
177
171
  .bui-btn-outlined {
178
- --bui-btn-bg: transparent;
179
- --bui-btn-border: 1px solid var(--bui-color-neutral-4);
172
+ border: var(--outlined-default-border);
180
173
  }
181
174
  .bui-btn-outlined.bui-btn-primary {
182
175
  color: var(--bui-color-primary);
@@ -198,49 +191,47 @@
198
191
  color: var(--bui-color-danger);
199
192
  border-color: var(--bui-color-danger);
200
193
  }
201
- .bui-btn-outlined.bui-btn-light {
202
- --bui-btn-color: var(--bui-color-bg-view);
203
- --bui-btn-border: solid 1px var(--bui-color-bg-view);
204
- }
205
- .bui-btn-outlined.bui-btn-dark {
206
- --bui-btn-color: var(--bui-color-fg-default);
207
- --bui-btn-border: solid 1px var(--bui-color-fg-default);
208
- }
209
194
  .bui-btn-outlined.bui-btn-vip {
210
195
  color: var(--bui-color-vip);
211
196
  border-color: var(--bui-color-vip);
212
197
  }
213
- .bui-btn-subtle {
214
- --bui-btn-bg: var(--bui-color-gray-light);
198
+ .bui-btn-light {
199
+ background-image: none;
200
+ background-color: var(--bui-color-gray-light);
201
+ border: var(--light-border);
215
202
  }
216
- .bui-btn-subtle.bui-btn-warning {
203
+ .bui-btn-light.bui-btn-warning {
204
+ background-image: none;
205
+ border: var(--light-border);
217
206
  color: var(--bui-color-warning);
218
- background: var(--bui-color-warning-light);
207
+ background-color: var(--bui-color-warning-light);
219
208
  }
220
- .bui-btn-subtle.bui-btn-primary {
209
+ .bui-btn-light.bui-btn-primary {
210
+ background-image: none;
211
+ border: var(--light-border);
221
212
  color: var(--bui-color-primary);
222
- background: var(--bui-color-primary-light);
213
+ background-color: var(--bui-color-primary-light);
223
214
  }
224
- .bui-btn-subtle.bui-btn-info {
215
+ .bui-btn-light.bui-btn-info {
216
+ background-image: none;
217
+ border: var(--light-border);
225
218
  color: var(--bui-color-info);
226
- background: var(--bui-color-info-light);
219
+ background-color: var(--bui-color-info-light);
227
220
  }
228
- .bui-btn-subtle.bui-btn-success {
221
+ .bui-btn-light.bui-btn-success {
222
+ background-image: none;
223
+ border: var(--light-border);
229
224
  color: var(--bui-color-success);
230
- background: var(--bui-color-success-light);
225
+ background-color: var(--bui-color-success-light);
231
226
  }
232
- .bui-btn-subtle.bui-btn-danger {
227
+ .bui-btn-light.bui-btn-danger {
228
+ background-image: none;
229
+ border: var(--light-border);
233
230
  color: var(--bui-color-danger);
234
- background: var(--bui-color-danger-light);
235
- }
236
- .bui-btn-subtle.bui-btn-light {
237
- --bui-btn-color: var(--bui-color-bg-view);
231
+ background-color: var(--bui-color-danger-light);
238
232
  }
239
- .bui-btn-subtle.bui-btn-dark {
240
- --bui-btn-color: var(--bui-color-fg-default);
241
- }
242
- .bui-btn-subtle.bui-btn-vip {
233
+ .bui-btn-light.bui-btn-vip {
234
+ color: var(--bui-color-vip);
243
235
  position: relative;
244
- --bui-btn-color: var(--bui-color-vip);
245
- --bui-btn-bg: rgba(255, 134, 110, 0.3);
236
+ background-color: rgba(255, 134, 110, 0.3);
246
237
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { ButtonProps } from './Button.types';
3
2
  import './Button.less';
3
+ import { ButtonProps } from './Button.types';
4
4
  declare const Button: React.ForwardRefExoticComponent<Omit<ButtonProps<"button", {}>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
5
5
  export default Button;
@@ -80,6 +80,7 @@ Button.displayName = "BuiButton";
80
80
  Button.defaultProps = {
81
81
  size: "medium",
82
82
  variant: "outlined",
83
+ color: "default",
83
84
  disabled: false
84
85
  };
85
86
  var Button_default = Button;
@@ -16,20 +16,19 @@ export type ButtonProps<D extends React.ElementType = 'button', P = {}> = Overri
16
16
  * @default 'medium'
17
17
  */
18
18
  size?: 'small' | 'medium' | 'large' | 'full';
19
- /**
20
- * 按钮颜色
21
- * @default 'neutral'
19
+ /** 按钮颜色
20
+ * @default 'default'
22
21
  */
23
- color?: ThemeColor | 'vip';
22
+ color?: ThemeColor | 'default' | 'vip';
24
23
  /**
25
24
  * 按钮类型
26
25
  * - text: 文字按钮
27
- * - outlined: 线框按钮
28
- * - contained: 填充按钮
29
- * - subtle: 柔和按钮
26
+ * - outlined: 描边按钮
27
+ * - contained: 实心填充按钮
28
+ * - light: 浅亮填充按钮
30
29
  * @default 'outlined'
31
30
  */
32
- variant?: 'outlined' | 'text' | 'contained' | 'subtle';
31
+ variant?: 'outlined' | 'text' | 'contained' | 'light';
33
32
  /**
34
33
  * 在子元素前放在的内容
35
34
  */
package/es/Card/Card.css CHANGED
@@ -1,11 +1,8 @@
1
1
  .bui-card {
2
- --bui-card-font-family: var(--bui-font-family);
3
- --bui-card-font-size: var(--bui-text-size-1);
4
2
  background-color: var(--bui-color-bg-view);
5
3
  border-radius: var(--bui-shape-radius-card);
6
4
  overflow: hidden;
7
- font-family: var(--bui-card-font-family);
8
- font-size: var(--bui-card-font-size);
5
+ font-family: var(--bui-font-family);
9
6
  }
10
7
  .bui-card-header + .bui-card-content {
11
8
  padding-top: 0;
@@ -1,4 +1,6 @@
1
1
  .bui-card-content {
2
+ font-size: var(--bui-text-size-2);
2
3
  padding: var(--bui-spacing-lg);
3
4
  color: var(--bui-color-fg-muted);
5
+ font-family: var(--bui-font-family);
4
6
  }
@@ -1,6 +1,9 @@
1
1
  .bui-card-footer {
2
+ --padding: var(--bui-card-footer-padding, var(--bui-spacing-md) var(--bui-spacing-lg));
2
3
  color: var(--bui-color-fg-muted);
4
+ font-size: var(--bui-text-size-1);
3
5
  display: flex;
4
6
  align-items: center;
5
- padding: var(--bui-spacing-md) var(--bui-spacing-lg);
7
+ padding: var(--padding);
8
+ font-family: var(--bui-font-family);
6
9
  }
@@ -1,13 +1,15 @@
1
1
  .bui-card-header {
2
- --bui-card-font-size: var(--bui-title-size-4);
2
+ --padding: var(--bui-card-header-padding, var(--bui-spacing-md) var(--bui-spacing-lg));
3
+ --end-icon-margin-left: var(--bui-card-header-end-icon-margin-left, 2px);
3
4
  display: flex;
4
5
  align-items: center;
5
6
  flex-direction: row;
6
7
  position: relative;
7
8
  padding: var(--bui-spacing-md) var(--bui-spacing-lg);
8
- font-weight: var(--bui-font-weight-bold);
9
- font-family: var(--bui-card-font-family);
9
+ font-size: var(--bui-title-size-4);
10
+ font-weight: var(--bui-font-weight-medium);
10
11
  color: var(--bui-color-fg-default);
12
+ font-family: var(--bui-font-family);
11
13
  }
12
14
  .bui-card-header-title {
13
15
  white-space: nowrap;
@@ -1,6 +1,6 @@
1
1
  .bui-popover {
2
2
  --arrow-size: var(--bui-popover-arrow-size, 8PX);
3
- --location-position: var(--bui-popover-location-position, 8PX);
3
+ --localtion-position: var(--bui-popover-localtion-position, 8PX);
4
4
  --max-width: var(--bui-popover-max-width, 350px);
5
5
  --content-min-width: var(--bui-popover-content-min-width, 30px);
6
6
  --content-padding: var(--bui-popover-content-padding, 6px 8px);
@@ -16,16 +16,16 @@
16
16
  position: absolute;
17
17
  }
18
18
  .bui-popover .bui-popover-arrow.location-left {
19
- left: var(--location-position);
19
+ left: var(--localtion-position);
20
20
  }
21
21
  .bui-popover .bui-popover-arrow.location-right {
22
- right: var(--location-position);
22
+ right: var(--localtion-position);
23
23
  }
24
24
  .bui-popover .bui-popover-arrow.location-top {
25
- top: var(--location-position);
25
+ top: var(--localtion-position);
26
26
  }
27
27
  .bui-popover .bui-popover-arrow.location-bottom {
28
- bottom: var(--location-position);
28
+ bottom: var(--localtion-position);
29
29
  }
30
30
  .bui-popover.popover-top .location-center,
31
31
  .bui-popover.popover-bottom .location-center {
@@ -1,6 +1,7 @@
1
1
  .bui-radio {
2
2
  --label-color: var(--bui-radio-label-color, var(--bui-color-fg-default));
3
3
  --label-font-size: var(--bui-radio-label-font-size, var(--bui-text-size-1));
4
+ --icon-font-size: var(--bui-radio-icon-font-size, var(--bui-title-size-2));
4
5
  --icon-padding: var(--bui-radio-icon-padding, 5px);
5
6
  display: inline-flex;
6
7
  align-items: center;
package/es/Tabs/Tab.css CHANGED
@@ -4,24 +4,31 @@
4
4
  justify-content: center;
5
5
  white-space: nowrap;
6
6
  width: min-content;
7
- height: 100%;
7
+ height: var(--tab-height);
8
8
  box-sizing: border-box;
9
9
  position: relative;
10
10
  cursor: pointer;
11
- font-size: var(--bui-tabs-font-size);
11
+ font-size: var(--font-size);
12
12
  line-height: var(--bui-line-height);
13
- color: var(--bui-tabs-color);
14
- padding: var(--bui-tab-padding);
15
- font-family: var(--bui-tabs-font-family);
13
+ color: var(--color);
14
+ padding: var(--tab-padding);
15
+ font-family: var(--bui-font-family);
16
16
  }
17
17
  .bui-tab-active {
18
+ font-size: var(--font-size);
18
19
  line-height: var(--bui-line-height);
19
- --bui-tabs-color: var(--bui-color-fg-default);
20
+ font-weight: var(--bui-font-weight-medium);
21
+ color: var(--active-color);
22
+ }
23
+ .bui-tab-center {
24
+ flex: 1 0 0;
25
+ margin: 0 auto;
20
26
  }
21
27
  .bui-tab-miniapp-active {
28
+ font-size: var(--font-size);
22
29
  line-height: 1.5;
23
30
  font-weight: var(--bui-font-weight-medium);
24
- --bui-tabs-color: var(--bui-color-fg-default);
31
+ color: var(--active-color);
25
32
  position: relative;
26
33
  }
27
34
  .bui-tab-miniapp-active-line {
@@ -39,7 +46,7 @@
39
46
  opacity: 0.5;
40
47
  pointer-events: none;
41
48
  }
42
- .bui-indicator-invisible {
49
+ .bui-tabline-invisible {
43
50
  visibility: hidden;
44
51
  background-color: transparent;
45
52
  }
package/es/Tabs/Tab.js CHANGED
@@ -35,19 +35,17 @@ import React from "react";
35
35
  import TabsContext from "./TabsContext";
36
36
  import "./Tab.css";
37
37
  const prefixCls = "bui-tab";
38
- const defaultProps = {
39
- disabled: false
40
- };
41
38
  const Tab = /* @__PURE__ */ React.forwardRef((props, ref) => {
42
- const _a = __spreadValues(__spreadValues({}, defaultProps), props), { className, children, index, disabled, onClick } = _a, others = __objRest(_a, ["className", "children", "index", "disabled", "onClick"]);
39
+ const _a = props, { className, children, index, disabled, onClick } = _a, others = __objRest(_a, ["className", "children", "index", "disabled", "onClick"]);
43
40
  const tabsContext = React.useContext(TabsContext);
44
- const { value, triggerChange } = tabsContext;
41
+ const { value, align, triggerChange } = tabsContext;
45
42
  return /* @__PURE__ */ React.createElement(
46
43
  "div",
47
44
  __spreadProps(__spreadValues({
48
45
  ref,
49
46
  className: clsx(
50
47
  prefixCls,
48
+ align !== "start" && `${prefixCls}-${align}`,
51
49
  {
52
50
  [`${prefixCls}-active`]: !isMini && index === value,
53
51
  [`${prefixCls}-miniapp-active`]: isMini && index === value,
@@ -69,13 +67,16 @@ const Tab = /* @__PURE__ */ React.forwardRef((props, ref) => {
69
67
  "div",
70
68
  {
71
69
  className: clsx(`${prefixCls}-miniapp-active-line`, {
72
- "bui-indicator-invisible": index !== value
70
+ "bui-tabline-invisible": index !== value
73
71
  })
74
72
  }
75
73
  )
76
74
  );
77
75
  });
78
76
  Tab.displayName = "BuiTab";
77
+ Tab.defaultProps = {
78
+ disabled: false
79
+ };
79
80
  var Tab_default = Tab;
80
81
  export {
81
82
  Tab_default as default