@hkyhy/marsun-components-core 0.1.49 → 0.1.51
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/components/StateBar/StateBar.d.ts +3 -0
- package/dist/components/StateBar/StateBar.js +44 -26
- package/dist/components/StateBar/StateBar.js.map +1 -1
- package/dist/components/StateBar/style.module.scss.js +8 -6
- package/dist/components/StateBar/style.module.scss.js.map +1 -1
- package/dist/components/Tag/SemanticTag.d.ts +2 -0
- package/dist/components/Tag/SemanticTag.js +36 -41
- package/dist/components/Tag/SemanticTag.js.map +1 -1
- package/dist/components/TooltipInfo/TooltipInfo.d.ts +21 -6
- package/dist/components/TooltipInfo/TooltipInfo.js +61 -43
- package/dist/components/TooltipInfo/TooltipInfo.js.map +1 -1
- package/dist/components/TooltipInfo/index.d.ts +1 -1
- package/dist/marsun-components-core.css +1 -1
- package/dist/styles/global.css +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { TabsProps } from 'antd';
|
|
2
2
|
import { CSSProperties, ReactNode } from 'react';
|
|
3
|
+
import { DescriptionItem } from '../Descriptions/CommonDescriptions';
|
|
3
4
|
export type StateBarType = 'tab' | 'radio' | 'step';
|
|
4
5
|
export type StateBarOption = {
|
|
5
6
|
key: string;
|
|
6
7
|
/** 选项卡标题(优先于 label) */
|
|
7
8
|
tab?: ReactNode;
|
|
8
9
|
label?: ReactNode;
|
|
10
|
+
/** 标题旁 Info + TooltipInfo(对齐 Modal/InteractiveBlock);为空不展示 icon */
|
|
11
|
+
info?: DescriptionItem[];
|
|
9
12
|
children?: ReactNode;
|
|
10
13
|
disabled?: boolean;
|
|
11
14
|
className?: string;
|
|
@@ -1,43 +1,61 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { Tabs as
|
|
3
|
-
import
|
|
1
|
+
import { jsx as r, jsxs as p } from "react/jsx-runtime";
|
|
2
|
+
import { Tabs as u } from "antd";
|
|
3
|
+
import o from "classnames";
|
|
4
|
+
import { Info as N } from "../Icons/index.js";
|
|
4
5
|
import a from "./style.module.scss.js";
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
import x from "../TooltipInfo/TooltipInfo.js";
|
|
7
|
+
function y(e, t) {
|
|
8
|
+
return !t || t.length === 0 ? e : /* @__PURE__ */ p("span", { className: o("marsun-state-bar-tab-label", a["state-bar-tab-label"]), children: [
|
|
9
|
+
e,
|
|
10
|
+
/* @__PURE__ */ r(
|
|
11
|
+
x,
|
|
12
|
+
{
|
|
13
|
+
content: t,
|
|
14
|
+
placement: "topLeft",
|
|
15
|
+
minWidth: 220,
|
|
16
|
+
maxWidth: 360,
|
|
17
|
+
overlayClassName: "marsun-state-bar-info-tooltip",
|
|
18
|
+
children: /* @__PURE__ */ r("span", { className: o("marsun-state-bar-info", a["state-bar-info"]), children: /* @__PURE__ */ r(N, { size: 14, "aria-hidden": !0 }) })
|
|
19
|
+
}
|
|
20
|
+
)
|
|
21
|
+
] });
|
|
22
|
+
}
|
|
23
|
+
const W = ({
|
|
24
|
+
className: e,
|
|
25
|
+
type: t = "tab",
|
|
26
|
+
stateOption: s = [],
|
|
27
|
+
isInner: l,
|
|
28
|
+
style: m,
|
|
29
|
+
...i
|
|
12
30
|
}) => {
|
|
13
|
-
const
|
|
14
|
-
return /* @__PURE__ */
|
|
15
|
-
|
|
31
|
+
const b = s.some((n) => n.children != null);
|
|
32
|
+
return /* @__PURE__ */ r(
|
|
33
|
+
u,
|
|
16
34
|
{
|
|
17
|
-
...
|
|
35
|
+
...i,
|
|
18
36
|
"data-testid": "components-core-state-bar",
|
|
19
37
|
animated: !1,
|
|
20
|
-
className:
|
|
38
|
+
className: o(
|
|
21
39
|
"marsun-state-bar",
|
|
22
40
|
a["state-bar"],
|
|
23
|
-
a[`tab-${
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
41
|
+
a[`tab-${t}-control`],
|
|
42
|
+
l && a["inner-state-bar"],
|
|
43
|
+
b && a["has-children"],
|
|
44
|
+
e
|
|
27
45
|
),
|
|
28
46
|
style: {
|
|
29
|
-
"--total-count":
|
|
30
|
-
...
|
|
47
|
+
"--total-count": s.length,
|
|
48
|
+
...m
|
|
31
49
|
},
|
|
32
|
-
items:
|
|
33
|
-
key:
|
|
34
|
-
label:
|
|
35
|
-
...
|
|
50
|
+
items: s.map(({ tab: n, label: c, info: d, key: f, ...h }) => ({
|
|
51
|
+
key: f,
|
|
52
|
+
label: y(n ?? c, d),
|
|
53
|
+
...h
|
|
36
54
|
}))
|
|
37
55
|
}
|
|
38
56
|
);
|
|
39
57
|
};
|
|
40
58
|
export {
|
|
41
|
-
|
|
59
|
+
W as default
|
|
42
60
|
};
|
|
43
61
|
//# sourceMappingURL=StateBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StateBar.js","sources":["../../../src/components/StateBar/StateBar.tsx"],"sourcesContent":["import { Tabs } from 'antd';\nimport type { TabsProps } from 'antd';\nimport classNames from 'classnames';\nimport type { CSSProperties, ReactNode } from 'react';\nimport styles from './style.module.scss';\n\nexport type StateBarType = 'tab' | 'radio' | 'step';\n\nexport type StateBarOption = {\n key: string;\n /** 选项卡标题(优先于 label) */\n tab?: ReactNode;\n label?: ReactNode;\n children?: ReactNode;\n disabled?: boolean;\n className?: string;\n style?: CSSProperties;\n};\n\nexport type StateBarProps = Omit<TabsProps, 'items' | 'type'> & {\n /** 状态项列表 */\n stateOption?: StateBarOption[];\n /** 展示样式 */\n type?: StateBarType;\n /** 底部线延展至容器全宽 */\n isInner?: boolean;\n className?: string;\n};\n\n/**\n * 基于 antd Tabs 的状态栏(对齐 kne-union StateBar)。\n * 无 children 时仅作切换条(隐藏 content-holder);有 children 时展示面板。\n */\nconst StateBar: React.FC<StateBarProps> = ({\n className,\n type = 'tab',\n stateOption = [],\n isInner,\n style,\n ...props\n}) => {\n const hasChildren = stateOption.some((item) => item.children != null);\n\n return (\n <Tabs\n {...props}\n data-testid=\"components-core-state-bar\"\n animated={false}\n className={classNames(\n 'marsun-state-bar',\n styles['state-bar'],\n styles[`tab-${type}-control`],\n isInner && styles['inner-state-bar'],\n hasChildren && styles['has-children'],\n className,\n )}\n style={\n {\n ['--total-count' as string]: stateOption.length,\n ...style,\n } as CSSProperties\n }\n items={stateOption.map(({ tab, label, key, ...rest }) => ({\n key,\n label: tab ?? label,\n ...rest,\n }))}\n />\n );\n};\n\nexport default StateBar;\n"],"names":["
|
|
1
|
+
{"version":3,"file":"StateBar.js","sources":["../../../src/components/StateBar/StateBar.tsx"],"sourcesContent":["import { Tabs } from 'antd';\nimport type { TabsProps } from 'antd';\nimport classNames from 'classnames';\nimport type { CSSProperties, ReactNode } from 'react';\nimport { Info } from '../Icons';\nimport type { DescriptionItem } from '../Descriptions/CommonDescriptions';\nimport { TooltipInfo } from '../TooltipInfo';\nimport styles from './style.module.scss';\n\nexport type StateBarType = 'tab' | 'radio' | 'step';\n\nexport type StateBarOption = {\n key: string;\n /** 选项卡标题(优先于 label) */\n tab?: ReactNode;\n label?: ReactNode;\n /** 标题旁 Info + TooltipInfo(对齐 Modal/InteractiveBlock);为空不展示 icon */\n info?: DescriptionItem[];\n children?: ReactNode;\n disabled?: boolean;\n className?: string;\n style?: CSSProperties;\n};\n\nexport type StateBarProps = Omit<TabsProps, 'items' | 'type'> & {\n /** 状态项列表 */\n stateOption?: StateBarOption[];\n /** 展示样式 */\n type?: StateBarType;\n /** 底部线延展至容器全宽 */\n isInner?: boolean;\n className?: string;\n};\n\n/** 渲染 Tab 标题:文字 + 可选 Info icon(hover 展示 TooltipInfo 详情) */\nfunction renderTabLabel(label: ReactNode, info?: DescriptionItem[]): ReactNode {\n if (!info || info.length === 0) return label;\n return (\n <span className={classNames('marsun-state-bar-tab-label', styles['state-bar-tab-label'])}>\n {label}\n <TooltipInfo\n content={info}\n placement=\"topLeft\"\n minWidth={220}\n maxWidth={360}\n overlayClassName=\"marsun-state-bar-info-tooltip\"\n >\n <span className={classNames('marsun-state-bar-info', styles['state-bar-info'])}>\n <Info size={14} aria-hidden />\n </span>\n </TooltipInfo>\n </span>\n );\n}\n\n/**\n * 基于 antd Tabs 的状态栏(对齐 kne-union StateBar)。\n * 无 children 时仅作切换条(隐藏 content-holder);有 children 时展示面板。\n */\nconst StateBar: React.FC<StateBarProps> = ({\n className,\n type = 'tab',\n stateOption = [],\n isInner,\n style,\n ...props\n}) => {\n const hasChildren = stateOption.some((item) => item.children != null);\n\n return (\n <Tabs\n {...props}\n data-testid=\"components-core-state-bar\"\n animated={false}\n className={classNames(\n 'marsun-state-bar',\n styles['state-bar'],\n styles[`tab-${type}-control`],\n isInner && styles['inner-state-bar'],\n hasChildren && styles['has-children'],\n className,\n )}\n style={\n {\n ['--total-count' as string]: stateOption.length,\n ...style,\n } as CSSProperties\n }\n items={stateOption.map(({ tab, label, info, key, ...rest }) => ({\n key,\n label: renderTabLabel(tab ?? label, info),\n ...rest,\n }))}\n />\n );\n};\n\nexport default StateBar;\n"],"names":["renderTabLabel","label","info","jsxs","classNames","styles","jsx","TooltipInfo","Info","StateBar","className","type","stateOption","isInner","style","props","hasChildren","item","Tabs","tab","key","rest"],"mappings":";;;;;;AAmCA,SAASA,EAAeC,GAAkBC,GAAqC;AAC7E,SAAI,CAACA,KAAQA,EAAK,WAAW,IAAUD,IAErC,gBAAAE,EAAC,UAAK,WAAWC,EAAW,8BAA8BC,EAAO,qBAAqB,CAAC,GACpF,UAAA;AAAA,IAAAJ;AAAA,IACD,gBAAAK;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,SAASL;AAAA,QACT,WAAU;AAAA,QACV,UAAU;AAAA,QACV,UAAU;AAAA,QACV,kBAAiB;AAAA,QAEjB,UAAA,gBAAAI,EAAC,QAAA,EAAK,WAAWF,EAAW,yBAAyBC,EAAO,gBAAgB,CAAC,GAC3E,4BAACG,GAAA,EAAK,MAAM,IAAI,eAAW,IAAC,EAAA,CAC9B;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;AAMA,MAAMC,IAAoC,CAAC;AAAA,EACzC,WAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,aAAAC,IAAc,CAAA;AAAA,EACd,SAAAC;AAAA,EACA,OAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAMC,IAAcJ,EAAY,KAAK,CAACK,MAASA,EAAK,YAAY,IAAI;AAEpE,SACE,gBAAAX;AAAA,IAACY;AAAA,IAAA;AAAA,MACE,GAAGH;AAAA,MACJ,eAAY;AAAA,MACZ,UAAU;AAAA,MACV,WAAWX;AAAA,QACT;AAAA,QACAC,EAAO,WAAW;AAAA,QAClBA,EAAO,OAAOM,CAAI,UAAU;AAAA,QAC5BE,KAAWR,EAAO,iBAAiB;AAAA,QACnCW,KAAeX,EAAO,cAAc;AAAA,QACpCK;AAAA,MAAA;AAAA,MAEF,OACE;AAAA,QACG,iBAA4BE,EAAY;AAAA,QACzC,GAAGE;AAAA,MAAA;AAAA,MAGP,OAAOF,EAAY,IAAI,CAAC,EAAE,KAAAO,GAAK,OAAAlB,GAAO,MAAAC,GAAM,KAAAkB,GAAK,GAAGC,SAAY;AAAA,QAC9D,KAAAD;AAAA,QACA,OAAOpB,EAAemB,KAAOlB,GAAOC,CAAI;AAAA,QACxC,GAAGmB;AAAA,MAAA,EACH;AAAA,IAAA;AAAA,EAAA;AAGR;"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
const t = {
|
|
2
|
-
"state-bar": "_state-
|
|
3
|
-
"has-children": "_has-
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"tab-
|
|
7
|
-
"
|
|
2
|
+
"state-bar": "_state-bar_198uu_1",
|
|
3
|
+
"has-children": "_has-children_198uu_7",
|
|
4
|
+
"state-bar-tab-label": "_state-bar-tab-label_198uu_14",
|
|
5
|
+
"state-bar-info": "_state-bar-info_198uu_20",
|
|
6
|
+
"tab-tab-control": "_tab-tab-control_198uu_30",
|
|
7
|
+
"tab-radio-control": "_tab-radio-control_198uu_37",
|
|
8
|
+
"tab-step-control": "_tab-step-control_198uu_71",
|
|
9
|
+
"inner-state-bar": "_inner-state-bar_198uu_161"
|
|
8
10
|
};
|
|
9
11
|
export {
|
|
10
12
|
t as default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { Tag as
|
|
3
|
-
const
|
|
1
|
+
import { jsx as u } from "react/jsx-runtime";
|
|
2
|
+
import { Tag as f } from "antd";
|
|
3
|
+
const b = {
|
|
4
4
|
/** 主题色(跟随系统主题色动态变化) */
|
|
5
5
|
PRIMARY: "primary",
|
|
6
6
|
/** 默认/中性 */
|
|
@@ -25,7 +25,7 @@ const g = {
|
|
|
25
25
|
GOLD: "gold",
|
|
26
26
|
/** 石灰/低优先级 */
|
|
27
27
|
LIME: "lime"
|
|
28
|
-
},
|
|
28
|
+
}, d = {
|
|
29
29
|
primary: { text: "var(--primary-color)", bg: "var(--primary-color-bg)" },
|
|
30
30
|
success: { text: "var(--success-color)", bg: "var(--success-color-bg)" },
|
|
31
31
|
info: { text: "var(--info-color)", bg: "var(--info-color-bg)" },
|
|
@@ -40,53 +40,48 @@ const g = {
|
|
|
40
40
|
gold: "#faad14",
|
|
41
41
|
lime: "#a0d911"
|
|
42
42
|
};
|
|
43
|
-
function
|
|
44
|
-
const
|
|
45
|
-
return `rgba(${
|
|
43
|
+
function p(r, t) {
|
|
44
|
+
const n = parseInt(r.slice(1, 3), 16), e = parseInt(r.slice(3, 5), 16), c = parseInt(r.slice(5, 7), 16);
|
|
45
|
+
return `rgba(${n}, ${e}, ${c}, ${t})`;
|
|
46
46
|
}
|
|
47
|
-
function
|
|
47
|
+
function C(r) {
|
|
48
48
|
return s[r] ? s[r] : (r.startsWith("#"), r);
|
|
49
49
|
}
|
|
50
|
-
const
|
|
50
|
+
const l = {
|
|
51
51
|
border: "none",
|
|
52
52
|
height: 24,
|
|
53
53
|
lineHeight: "22px",
|
|
54
54
|
padding: "0 8px"
|
|
55
|
-
}
|
|
55
|
+
};
|
|
56
|
+
function i(r) {
|
|
57
|
+
return {
|
|
58
|
+
backgroundColor: r,
|
|
59
|
+
color: "#fff",
|
|
60
|
+
fontWeight: 600
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
const E = ({
|
|
56
64
|
children: r,
|
|
57
|
-
color:
|
|
58
|
-
|
|
65
|
+
color: t = b.DEFAULT,
|
|
66
|
+
selected: n = !1,
|
|
67
|
+
style: e,
|
|
68
|
+
...c
|
|
59
69
|
}) => {
|
|
60
|
-
const o =
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
);
|
|
74
|
-
const e = u(n);
|
|
75
|
-
return /* @__PURE__ */ a(
|
|
76
|
-
c,
|
|
77
|
-
{
|
|
78
|
-
style: {
|
|
79
|
-
...i,
|
|
80
|
-
color: e,
|
|
81
|
-
backgroundColor: b(e, 0.06)
|
|
82
|
-
},
|
|
83
|
-
...t,
|
|
84
|
-
children: r
|
|
85
|
-
}
|
|
86
|
-
);
|
|
70
|
+
const o = d[t], a = o ? null : C(t), g = o ? {
|
|
71
|
+
...l,
|
|
72
|
+
color: o.text,
|
|
73
|
+
backgroundColor: o.bg,
|
|
74
|
+
...n ? i(o.text) : null
|
|
75
|
+
} : {
|
|
76
|
+
...l,
|
|
77
|
+
color: a,
|
|
78
|
+
backgroundColor: p(a, 0.06),
|
|
79
|
+
...n ? i(a) : null
|
|
80
|
+
};
|
|
81
|
+
return /* @__PURE__ */ u(f, { style: { ...e || {}, ...g }, ...c, children: r });
|
|
87
82
|
};
|
|
88
83
|
export {
|
|
89
|
-
|
|
90
|
-
|
|
84
|
+
b as SEMANTIC_COLORS,
|
|
85
|
+
E as default
|
|
91
86
|
};
|
|
92
87
|
//# sourceMappingURL=SemanticTag.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SemanticTag.js","sources":["../../../src/components/Tag/SemanticTag.tsx"],"sourcesContent":["import { Tag } from 'antd';\nimport React from 'react';\n\n/**\n * 语义化颜色常量\n * 统一管理所有 Tag 的颜色,避免各处硬编码不一致\n *\n * 主题色(primary/success/info/warning/danger)使用 CSS 变量,跟随系统主题色动态变化\n * 固定色(default/processing/other/volcano/cyan/gold/lime)集中管理,不随主题变化\n */\nexport const SEMANTIC_COLORS = {\n /** 主题色(跟随系统主题色动态变化) */\n PRIMARY: 'primary',\n /** 默认/中性 */\n DEFAULT: 'default',\n /** 信息/提示 */\n INFO: 'info',\n /** 进行中/处理中 */\n PROCESSING: 'processing',\n /** 成功/已完成/已通过 */\n SUCCESS: 'success',\n /** 警告/待处理 */\n WARNING: 'warning',\n /** 危险/紧急/已驳回 */\n DANGER: 'danger',\n /** 其他/特殊 */\n OTHER: 'other',\n /** 火山/待领导审批 */\n VOLCANO: 'volcano',\n /** 青色/辅助 */\n CYAN: 'cyan',\n /** 金色/高优先级 */\n GOLD: 'gold',\n /** 石灰/低优先级 */\n LIME: 'lime',\n} as const;\n\nexport type SemanticColor = (typeof SEMANTIC_COLORS)[keyof typeof SEMANTIC_COLORS];\n\n/**\n * 主题色映射:使用 CSS 变量,跟随系统主题色动态变化\n * 文字色 = --{prefix}-color,背景色 = --{prefix}-color-bg(6% 透明度)\n */\nconst THEME_COLOR_MAP: Record<string, { text: string; bg: string }> = {\n primary: { text: 'var(--primary-color)', bg: 'var(--primary-color-bg)' },\n success: { text: 'var(--success-color)', bg: 'var(--success-color-bg)' },\n info: { text: 'var(--info-color)', bg: 'var(--info-color-bg)' },\n warning: { text: 'var(--warning-color)', bg: 'var(--warning-color-bg)' },\n danger: { text: 'var(--error-color)', bg: 'var(--error-color-bg)' },\n};\n\n/**\n * 固定色映射:不随主题变化,集中管理避免硬编码\n * 仅用于非主题色场景(processing/other/volcano/cyan/gold/lime 等)\n */\nconst FIXED_COLOR_MAP: Record<string, string> = {\n default: '#666666',\n processing: '#F09700',\n other: '#6740C3',\n volcano: '#fa541c',\n cyan: '#13c2c2',\n gold: '#faad14',\n lime: '#a0d911',\n};\n\n/** 将 hex 颜色转换为 rgba */\nfunction hexToRgba(hex: string, alpha: number): string {\n const r = parseInt(hex.slice(1, 3), 16);\n const g = parseInt(hex.slice(3, 5), 16);\n const b = parseInt(hex.slice(5, 7), 16);\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n\n/** 解析颜色键为 hex 值(仅用于固定色) */\nfunction resolveFixedColor(color: string): string {\n if (FIXED_COLOR_MAP[color]) return FIXED_COLOR_MAP[color];\n if (color.startsWith('#')) return color;\n return color;\n}\n\ninterface SemanticTagProps {\n /** 标签文本 */\n children: React.ReactNode;\n /** 语义化颜色,优先使用 SEMANTIC_COLORS 中的值 */\n color?: SemanticColor | string;\n /** antd Tag 其余属性 */\n [key: string]: unknown;\n}\n\n/** 公共样式 */\nconst TAG_BASE_STYLE: React.CSSProperties = {\n border: 'none',\n height: 24,\n lineHeight: '22px',\n padding: '0 8px',\n};\n\n/**\n * 统一 Tag 组件\n * - 主题色(primary/success/info/warning/danger)使用 CSS 变量,跟随系统主题色动态变化\n * - 固定色集中管理,避免硬编码\n * - 文字颜色 = 语义色,背景色 = 语义色 6% 透明度\n * - 统一尺寸:height 24px, line-height 24px, padding 0 8px\n */\nconst SemanticTag: React.FC<SemanticTagProps> = ({\n children,\n color = SEMANTIC_COLORS.DEFAULT,\n ...rest\n}) => {\n // 优先匹配主题色(CSS
|
|
1
|
+
{"version":3,"file":"SemanticTag.js","sources":["../../../src/components/Tag/SemanticTag.tsx"],"sourcesContent":["import { Tag } from 'antd';\nimport React from 'react';\n\n/**\n * 语义化颜色常量\n * 统一管理所有 Tag 的颜色,避免各处硬编码不一致\n *\n * 主题色(primary/success/info/warning/danger)使用 CSS 变量,跟随系统主题色动态变化\n * 固定色(default/processing/other/volcano/cyan/gold/lime)集中管理,不随主题变化\n */\nexport const SEMANTIC_COLORS = {\n /** 主题色(跟随系统主题色动态变化) */\n PRIMARY: 'primary',\n /** 默认/中性 */\n DEFAULT: 'default',\n /** 信息/提示 */\n INFO: 'info',\n /** 进行中/处理中 */\n PROCESSING: 'processing',\n /** 成功/已完成/已通过 */\n SUCCESS: 'success',\n /** 警告/待处理 */\n WARNING: 'warning',\n /** 危险/紧急/已驳回 */\n DANGER: 'danger',\n /** 其他/特殊 */\n OTHER: 'other',\n /** 火山/待领导审批 */\n VOLCANO: 'volcano',\n /** 青色/辅助 */\n CYAN: 'cyan',\n /** 金色/高优先级 */\n GOLD: 'gold',\n /** 石灰/低优先级 */\n LIME: 'lime',\n} as const;\n\nexport type SemanticColor = (typeof SEMANTIC_COLORS)[keyof typeof SEMANTIC_COLORS];\n\n/**\n * 主题色映射:使用 CSS 变量,跟随系统主题色动态变化\n * 文字色 = --{prefix}-color,背景色 = --{prefix}-color-bg(6% 透明度)\n * 选中态反白:背景取文字色(实色),文字反白\n */\nconst THEME_COLOR_MAP: Record<string, { text: string; bg: string }> = {\n primary: { text: 'var(--primary-color)', bg: 'var(--primary-color-bg)' },\n success: { text: 'var(--success-color)', bg: 'var(--success-color-bg)' },\n info: { text: 'var(--info-color)', bg: 'var(--info-color-bg)' },\n warning: { text: 'var(--warning-color)', bg: 'var(--warning-color-bg)' },\n danger: { text: 'var(--error-color)', bg: 'var(--error-color-bg)' },\n};\n\n/**\n * 固定色映射:不随主题变化,集中管理避免硬编码\n * 仅用于非主题色场景(processing/other/volcano/cyan/gold/lime 等)\n */\nconst FIXED_COLOR_MAP: Record<string, string> = {\n default: '#666666',\n processing: '#F09700',\n other: '#6740C3',\n volcano: '#fa541c',\n cyan: '#13c2c2',\n gold: '#faad14',\n lime: '#a0d911',\n};\n\n/** 将 hex 颜色转换为 rgba */\nfunction hexToRgba(hex: string, alpha: number): string {\n const r = parseInt(hex.slice(1, 3), 16);\n const g = parseInt(hex.slice(3, 5), 16);\n const b = parseInt(hex.slice(5, 7), 16);\n return `rgba(${r}, ${g}, ${b}, ${alpha})`;\n}\n\n/** 解析颜色键为 hex 值(仅用于固定色) */\nfunction resolveFixedColor(color: string): string {\n if (FIXED_COLOR_MAP[color]) return FIXED_COLOR_MAP[color];\n if (color.startsWith('#')) return color;\n return color;\n}\n\ninterface SemanticTagProps {\n /** 标签文本 */\n children: React.ReactNode;\n /** 语义化颜色,优先使用 SEMANTIC_COLORS 中的值 */\n color?: SemanticColor | string;\n /** 选中态:反白(实色背景 + 白字 + 加粗),不改 24px 高度 */\n selected?: boolean;\n /** antd Tag 其余属性 */\n [key: string]: unknown;\n}\n\n/** 公共样式 */\nconst TAG_BASE_STYLE: React.CSSProperties = {\n border: 'none',\n height: 24,\n lineHeight: '22px',\n padding: '0 8px',\n};\n\n/** 选中态:反白(实色背景 + 白字 + 加粗),对比强、辨识高;不新增 border,24px 高度不变 */\nfunction buildSelectedStyle(solidBg: string): React.CSSProperties {\n return {\n backgroundColor: solidBg,\n color: '#fff',\n fontWeight: 600,\n };\n}\n\n/**\n * 统一 Tag 组件\n * - 主题色(primary/success/info/warning/danger)使用 CSS 变量,跟随系统主题色动态变化\n * - 固定色集中管理,避免硬编码\n * - 文字颜色 = 语义色,背景色 = 语义色 6% 透明度\n * - 统一尺寸:height 24px, line-height 24px, padding 0 8px\n */\nconst SemanticTag: React.FC<SemanticTagProps> = ({\n children,\n color = SEMANTIC_COLORS.DEFAULT,\n selected = false,\n style: consumerStyle,\n ...rest\n}) => {\n // 优先匹配主题色(CSS 变量);否则按固定色 / 自定义 hex\n const themeColor = THEME_COLOR_MAP[color];\n const hex = themeColor ? null : resolveFixedColor(color);\n const computedStyle: React.CSSProperties = themeColor\n ? {\n ...TAG_BASE_STYLE,\n color: themeColor.text,\n backgroundColor: themeColor.bg,\n ...(selected ? buildSelectedStyle(themeColor.text) : null),\n }\n : {\n ...TAG_BASE_STYLE,\n color: hex as string,\n backgroundColor: hexToRgba(hex as string, 0.06),\n ...(selected ? buildSelectedStyle(hex as string) : null),\n };\n\n // 计算样式优先(color/bg/selected 不被覆盖),消费方 style 可补 cursor/margin 等\n return (\n <Tag style={{ ...(consumerStyle || {}), ...computedStyle }} {...rest}>\n {children}\n </Tag>\n );\n};\n\nexport default SemanticTag;\n"],"names":["SEMANTIC_COLORS","THEME_COLOR_MAP","FIXED_COLOR_MAP","hexToRgba","hex","alpha","r","g","b","resolveFixedColor","color","TAG_BASE_STYLE","buildSelectedStyle","solidBg","SemanticTag","children","selected","consumerStyle","rest","themeColor","computedStyle","jsx","Tag"],"mappings":";;AAUO,MAAMA,IAAkB;AAAA;AAAA,EAE7B,SAAS;AAAA;AAAA,EAET,SAAS;AAAA;AAAA,EAET,MAAM;AAAA;AAAA,EAEN,YAAY;AAAA;AAAA,EAEZ,SAAS;AAAA;AAAA,EAET,SAAS;AAAA;AAAA,EAET,QAAQ;AAAA;AAAA,EAER,OAAO;AAAA;AAAA,EAEP,SAAS;AAAA;AAAA,EAET,MAAM;AAAA;AAAA,EAEN,MAAM;AAAA;AAAA,EAEN,MAAM;AACR,GASMC,IAAgE;AAAA,EACpE,SAAS,EAAE,MAAM,wBAAwB,IAAI,0BAAA;AAAA,EAC7C,SAAS,EAAE,MAAM,wBAAwB,IAAI,0BAAA;AAAA,EAC7C,MAAM,EAAE,MAAM,qBAAqB,IAAI,uBAAA;AAAA,EACvC,SAAS,EAAE,MAAM,wBAAwB,IAAI,0BAAA;AAAA,EAC7C,QAAQ,EAAE,MAAM,sBAAsB,IAAI,wBAAA;AAC5C,GAMMC,IAA0C;AAAA,EAC9C,SAAS;AAAA,EACT,YAAY;AAAA,EACZ,OAAO;AAAA,EACP,SAAS;AAAA,EACT,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AAGA,SAASC,EAAUC,GAAaC,GAAuB;AACrD,QAAMC,IAAI,SAASF,EAAI,MAAM,GAAG,CAAC,GAAG,EAAE,GAChCG,IAAI,SAASH,EAAI,MAAM,GAAG,CAAC,GAAG,EAAE,GAChCI,IAAI,SAASJ,EAAI,MAAM,GAAG,CAAC,GAAG,EAAE;AACtC,SAAO,QAAQE,CAAC,KAAKC,CAAC,KAAKC,CAAC,KAAKH,CAAK;AACxC;AAGA,SAASI,EAAkBC,GAAuB;AAChD,SAAIR,EAAgBQ,CAAK,IAAUR,EAAgBQ,CAAK,KACpDA,EAAM,WAAW,GAAG,GAAUA;AAEpC;AAcA,MAAMC,IAAsC;AAAA,EAC1C,QAAQ;AAAA,EACR,QAAQ;AAAA,EACR,YAAY;AAAA,EACZ,SAAS;AACX;AAGA,SAASC,EAAmBC,GAAsC;AAChE,SAAO;AAAA,IACL,iBAAiBA;AAAA,IACjB,OAAO;AAAA,IACP,YAAY;AAAA,EAAA;AAEhB;AASA,MAAMC,IAA0C,CAAC;AAAA,EAC/C,UAAAC;AAAA,EACA,OAAAL,IAAQV,EAAgB;AAAA,EACxB,UAAAgB,IAAW;AAAA,EACX,OAAOC;AAAA,EACP,GAAGC;AACL,MAAM;AAEJ,QAAMC,IAAalB,EAAgBS,CAAK,GAClCN,IAAMe,IAAa,OAAOV,EAAkBC,CAAK,GACjDU,IAAqCD,IACvC;AAAA,IACE,GAAGR;AAAA,IACH,OAAOQ,EAAW;AAAA,IAClB,iBAAiBA,EAAW;AAAA,IAC5B,GAAIH,IAAWJ,EAAmBO,EAAW,IAAI,IAAI;AAAA,EAAA,IAEvD;AAAA,IACE,GAAGR;AAAA,IACH,OAAOP;AAAA,IACP,iBAAiBD,EAAUC,GAAe,IAAI;AAAA,IAC9C,GAAIY,IAAWJ,EAAmBR,CAAa,IAAI;AAAA,EAAA;AAIzD,SACE,gBAAAiB,EAACC,GAAA,EAAI,OAAO,EAAE,GAAIL,KAAiB,CAAA,GAAK,GAAGG,EAAA,GAAkB,GAAGF,GAC7D,UAAAH,EAAA,CACH;AAEJ;"}
|
|
@@ -1,19 +1,34 @@
|
|
|
1
1
|
import { TooltipProps } from 'antd';
|
|
2
2
|
import { default as React } from 'react';
|
|
3
3
|
import { DescriptionItem } from '../Descriptions/CommonDescriptions';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
/** Tooltip 展示形态:descriptions=结构化详情(默认);note=标题+描述分层 */
|
|
5
|
+
export type TooltipInfoType = 'descriptions' | 'note';
|
|
6
|
+
/** note 形态内容:标题(粗体)+ 描述(次级色) */
|
|
7
|
+
export interface TooltipInfoNote {
|
|
8
|
+
title: React.ReactNode;
|
|
9
|
+
description: React.ReactNode;
|
|
10
|
+
}
|
|
11
|
+
export interface TooltipInfoProps extends Pick<TooltipProps, 'placement' | 'mouseEnterDelay' | 'mouseLeaveDelay' | 'open' | 'onOpenChange'> {
|
|
12
|
+
/** 展示形态,默认 descriptions */
|
|
13
|
+
type?: TooltipInfoType;
|
|
14
|
+
/** type='descriptions' 的详情项(默认形态) */
|
|
15
|
+
content?: DescriptionItem[];
|
|
16
|
+
/** type='note' 的标题与描述 */
|
|
17
|
+
note?: TooltipInfoNote;
|
|
7
18
|
children: React.ReactNode;
|
|
8
|
-
/** CommonDescriptions 列数,默认 1 */
|
|
19
|
+
/** CommonDescriptions 列数,默认 1(仅 descriptions 形态) */
|
|
9
20
|
column?: number;
|
|
10
|
-
/** 为 true
|
|
21
|
+
/** 为 true 时不展示 Tooltip;descriptions 形态下 content 为空也不展示 */
|
|
11
22
|
hidden?: boolean;
|
|
23
|
+
/** 气泡最小宽度,默认 descriptions 220 / note 240 */
|
|
24
|
+
minWidth?: number;
|
|
25
|
+
/** 气泡最大宽度,默认 descriptions 320 / note 380 */
|
|
26
|
+
maxWidth?: number;
|
|
12
27
|
/** @deprecated 使用 classNames.root */
|
|
13
28
|
overlayClassName?: string;
|
|
14
29
|
/** @deprecated 使用 styles.root */
|
|
15
30
|
overlayStyle?: React.CSSProperties;
|
|
16
31
|
}
|
|
17
|
-
/** Tooltip
|
|
32
|
+
/** Tooltip 详情展示:descriptions 形态用 CommonDescriptions;note 形态用标题+描述分层 */
|
|
18
33
|
declare const TooltipInfo: React.FC<TooltipInfoProps>;
|
|
19
34
|
export default TooltipInfo;
|
|
@@ -1,47 +1,65 @@
|
|
|
1
|
-
import { jsx as o, Fragment as
|
|
2
|
-
import { Tooltip as
|
|
3
|
-
import
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
import { jsx as o, Fragment as v, jsxs as W } from "react/jsx-runtime";
|
|
2
|
+
import { Tooltip as y } from "antd";
|
|
3
|
+
import N from "../Descriptions/CommonDescriptions.js";
|
|
4
|
+
const C = ({
|
|
5
|
+
type: a = "descriptions",
|
|
6
|
+
content: i,
|
|
7
|
+
note: r,
|
|
8
|
+
children: e,
|
|
9
|
+
column: l = 1,
|
|
10
|
+
hidden: p = !1,
|
|
11
|
+
minWidth: d,
|
|
12
|
+
maxWidth: f,
|
|
13
|
+
placement: m = "top",
|
|
14
|
+
overlayClassName: c,
|
|
15
|
+
overlayStyle: x,
|
|
16
|
+
mouseEnterDelay: b = 0.3,
|
|
17
|
+
...g
|
|
18
|
+
}) => {
|
|
19
|
+
const t = a === "note", h = t ? !r : !i || i.length === 0;
|
|
20
|
+
if (p || h)
|
|
21
|
+
return /* @__PURE__ */ o(v, { children: e });
|
|
22
|
+
const n = d ?? (t ? 240 : 220), s = f ?? (t ? 380 : 320), u = t ? /* @__PURE__ */ W("div", { className: "tooltip-info-note", children: [
|
|
23
|
+
/* @__PURE__ */ o("div", { className: "tooltip-info-note-title", children: r.title }),
|
|
24
|
+
/* @__PURE__ */ o("div", { className: "tooltip-info-note-desc", children: r.description })
|
|
25
|
+
] }) : (
|
|
26
|
+
// bordered=false:antd Descriptions 改用 dl 布局而非 table,避免 table-layout:fixed
|
|
27
|
+
// 在 max-content 气泡根下循环宽度塌陷,长文才能在 maxWidth 处正常换行
|
|
28
|
+
/* @__PURE__ */ o(N, { content: i, column: l, size: "small", bordered: !1 })
|
|
29
|
+
);
|
|
30
|
+
return /* @__PURE__ */ o(
|
|
31
|
+
y,
|
|
32
|
+
{
|
|
33
|
+
placement: m,
|
|
34
|
+
mouseEnterDelay: b,
|
|
35
|
+
destroyOnHidden: !0,
|
|
36
|
+
classNames: { root: ["tooltip-info-overlay", c].filter(Boolean).join(" ") },
|
|
37
|
+
styles: {
|
|
38
|
+
root: {
|
|
39
|
+
// 覆盖 antd 默认 width:max-content,给气泡确定的最小宽度,避免子元素循环塌陷
|
|
40
|
+
width: "auto",
|
|
41
|
+
minWidth: n,
|
|
42
|
+
maxWidth: s
|
|
43
|
+
},
|
|
44
|
+
container: {
|
|
45
|
+
boxSizing: "border-box",
|
|
46
|
+
minWidth: n,
|
|
47
|
+
maxWidth: s,
|
|
48
|
+
padding: "8px 12px",
|
|
49
|
+
background: "var(--tooltip-info-bg, var(--bg-color-white, #ffffff))",
|
|
50
|
+
color: "var(--tooltip-info-color, var(--font-color, #222222))",
|
|
51
|
+
boxShadow: "0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12)",
|
|
52
|
+
...x
|
|
53
|
+
}
|
|
24
54
|
},
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
boxShadow: "0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12)",
|
|
33
|
-
...p,
|
|
34
|
-
// 硬上限:避免 Descriptions 长文把气泡横向撑爆
|
|
35
|
-
maxWidth: 320
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
getPopupContainer: () => document.body,
|
|
39
|
-
title: /* @__PURE__ */ o(s, { content: t, column: i, size: "small" }),
|
|
40
|
-
...f,
|
|
41
|
-
children: r
|
|
42
|
-
}
|
|
43
|
-
);
|
|
55
|
+
getPopupContainer: () => document.body,
|
|
56
|
+
title: u,
|
|
57
|
+
...g,
|
|
58
|
+
children: e
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
};
|
|
44
62
|
export {
|
|
45
|
-
|
|
63
|
+
C as default
|
|
46
64
|
};
|
|
47
65
|
//# sourceMappingURL=TooltipInfo.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TooltipInfo.js","sources":["../../../src/components/TooltipInfo/TooltipInfo.tsx"],"sourcesContent":["import type { TooltipProps } from 'antd';\nimport { Tooltip } from 'antd';\nimport React from 'react';\nimport type { DescriptionItem } from '../Descriptions/CommonDescriptions';\nimport CommonDescriptions from '../Descriptions/CommonDescriptions';\nimport './style.module.scss';\n\nexport interface TooltipInfoProps extends Pick<\n TooltipProps,\n 'placement' | 'mouseEnterDelay' | 'mouseLeaveDelay'\n> {\n /**
|
|
1
|
+
{"version":3,"file":"TooltipInfo.js","sources":["../../../src/components/TooltipInfo/TooltipInfo.tsx"],"sourcesContent":["import type { TooltipProps } from 'antd';\nimport { Tooltip } from 'antd';\nimport React from 'react';\nimport type { DescriptionItem } from '../Descriptions/CommonDescriptions';\nimport CommonDescriptions from '../Descriptions/CommonDescriptions';\nimport './style.module.scss';\n\n/** Tooltip 展示形态:descriptions=结构化详情(默认);note=标题+描述分层 */\nexport type TooltipInfoType = 'descriptions' | 'note';\n\n/** note 形态内容:标题(粗体)+ 描述(次级色) */\nexport interface TooltipInfoNote {\n title: React.ReactNode;\n description: React.ReactNode;\n}\n\nexport interface TooltipInfoProps extends Pick<\n TooltipProps,\n 'placement' | 'mouseEnterDelay' | 'mouseLeaveDelay' | 'open' | 'onOpenChange'\n> {\n /** 展示形态,默认 descriptions */\n type?: TooltipInfoType;\n /** type='descriptions' 的详情项(默认形态) */\n content?: DescriptionItem[];\n /** type='note' 的标题与描述 */\n note?: TooltipInfoNote;\n children: React.ReactNode;\n /** CommonDescriptions 列数,默认 1(仅 descriptions 形态) */\n column?: number;\n /** 为 true 时不展示 Tooltip;descriptions 形态下 content 为空也不展示 */\n hidden?: boolean;\n /** 气泡最小宽度,默认 descriptions 220 / note 240 */\n minWidth?: number;\n /** 气泡最大宽度,默认 descriptions 320 / note 380 */\n maxWidth?: number;\n /** @deprecated 使用 classNames.root */\n overlayClassName?: string;\n /** @deprecated 使用 styles.root */\n overlayStyle?: React.CSSProperties;\n}\n\n/** Tooltip 详情展示:descriptions 形态用 CommonDescriptions;note 形态用标题+描述分层 */\nconst TooltipInfo: React.FC<TooltipInfoProps> = ({\n type = 'descriptions',\n content,\n note,\n children,\n column = 1,\n hidden = false,\n minWidth,\n maxWidth,\n placement = 'top',\n overlayClassName,\n overlayStyle,\n mouseEnterDelay = 0.3,\n ...rest\n}) => {\n const isNote = type === 'note';\n const empty = isNote ? !note : !content || content.length === 0;\n if (hidden || empty) {\n return <>{children}</>;\n }\n\n const minW = minWidth ?? (isNote ? 240 : 220);\n const maxW = maxWidth ?? (isNote ? 380 : 320);\n\n const title = isNote ? (\n <div className=\"tooltip-info-note\">\n <div className=\"tooltip-info-note-title\">{note!.title}</div>\n <div className=\"tooltip-info-note-desc\">{note!.description}</div>\n </div>\n ) : (\n // bordered=false:antd Descriptions 改用 dl 布局而非 table,避免 table-layout:fixed\n // 在 max-content 气泡根下循环宽度塌陷,长文才能在 maxWidth 处正常换行\n <CommonDescriptions content={content!} column={column} size=\"small\" bordered={false} />\n );\n\n return (\n <Tooltip\n placement={placement}\n mouseEnterDelay={mouseEnterDelay}\n destroyOnHidden\n classNames={{ root: ['tooltip-info-overlay', overlayClassName].filter(Boolean).join(' ') }}\n styles={{\n root: {\n // 覆盖 antd 默认 width:max-content,给气泡确定的最小宽度,避免子元素循环塌陷\n width: 'auto',\n minWidth: minW,\n maxWidth: maxW,\n },\n container: {\n boxSizing: 'border-box',\n minWidth: minW,\n maxWidth: maxW,\n padding: '8px 12px',\n background: 'var(--tooltip-info-bg, var(--bg-color-white, #ffffff))',\n color: 'var(--tooltip-info-color, var(--font-color, #222222))',\n boxShadow: '0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12)',\n ...overlayStyle,\n },\n }}\n getPopupContainer={() => document.body}\n title={title}\n {...rest}\n >\n {children}\n </Tooltip>\n );\n};\n\nexport default TooltipInfo;\n"],"names":["TooltipInfo","type","content","note","children","column","hidden","minWidth","maxWidth","placement","overlayClassName","overlayStyle","mouseEnterDelay","rest","isNote","empty","minW","maxW","title","jsxs","jsx","CommonDescriptions","Tooltip"],"mappings":";;;AA0CA,MAAMA,IAA0C,CAAC;AAAA,EAC/C,MAAAC,IAAO;AAAA,EACP,SAAAC;AAAA,EACA,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC,IAAS;AAAA,EACT,QAAAC,IAAS;AAAA,EACT,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,kBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,iBAAAC,IAAkB;AAAA,EAClB,GAAGC;AACL,MAAM;AACJ,QAAMC,IAASb,MAAS,QAClBc,IAAQD,IAAS,CAACX,IAAO,CAACD,KAAWA,EAAQ,WAAW;AAC9D,MAAII,KAAUS;AACZ,kCAAU,UAAAX,GAAS;AAGrB,QAAMY,IAAOT,MAAaO,IAAS,MAAM,MACnCG,IAAOT,MAAaM,IAAS,MAAM,MAEnCI,IAAQJ,IACZ,gBAAAK,EAAC,OAAA,EAAI,WAAU,qBACb,UAAA;AAAA,IAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,2BAA2B,UAAAjB,EAAM,OAAM;AAAA,IACtD,gBAAAiB,EAAC,OAAA,EAAI,WAAU,0BAA0B,YAAM,YAAA,CAAY;AAAA,EAAA,GAC7D;AAAA;AAAA;AAAA,sBAICC,GAAA,EAAmB,SAAAnB,GAAmB,QAAAG,GAAgB,MAAK,SAAQ,UAAU,GAAA,CAAO;AAAA;AAGvF,SACE,gBAAAe;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAAb;AAAA,MACA,iBAAAG;AAAA,MACA,iBAAe;AAAA,MACf,YAAY,EAAE,MAAM,CAAC,wBAAwBF,CAAgB,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,EAAA;AAAA,MACvF,QAAQ;AAAA,QACN,MAAM;AAAA;AAAA,UAEJ,OAAO;AAAA,UACP,UAAUM;AAAA,UACV,UAAUC;AAAA,QAAA;AAAA,QAEZ,WAAW;AAAA,UACT,WAAW;AAAA,UACX,UAAUD;AAAA,UACV,UAAUC;AAAA,UACV,SAAS;AAAA,UACT,YAAY;AAAA,UACZ,OAAO;AAAA,UACP,WAAW;AAAA,UACX,GAAGN;AAAA,QAAA;AAAA,MACL;AAAA,MAEF,mBAAmB,MAAM,SAAS;AAAA,MAClC,OAAAO;AAAA,MACC,GAAGL;AAAA,MAEH,UAAAT;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { default as TooltipInfo } from './TooltipInfo';
|
|
2
|
-
export type { TooltipInfoProps } from './TooltipInfo';
|
|
2
|
+
export type { TooltipInfoProps, TooltipInfoType, TooltipInfoNote } from './TooltipInfo';
|