tntd 2.0.26 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/array-input/style/index.js +1 -0
- package/es/array-input/style/index.js.map +1 -0
- package/es/auth-context/style/index.js +1 -0
- package/es/auth-context/style/index.js.map +1 -0
- package/es/development-login/style/index.js +1 -0
- package/es/development-login/style/index.js.map +1 -0
- package/es/ellipsis/Svg/CopySVG.js +3 -3
- package/es/ellipsis/Svg/CopySVG.js.map +1 -1
- package/es/ellipsis/Svg/TickSVG.js +3 -3
- package/es/ellipsis/Svg/TickSVG.js.map +1 -1
- package/es/ellipsis/index.js +18 -3
- package/es/ellipsis/index.js.map +1 -1
- package/es/ellipsis/index.less +1 -1
- package/es/ellipsis/style/index.js +1 -0
- package/es/ellipsis/style/index.js.map +1 -0
- package/es/empty/render-empty.js +22 -0
- package/es/empty/render-empty.js.map +1 -0
- package/es/empty/style/index.js +2 -0
- package/es/empty/style/index.js.map +1 -0
- package/es/handle/style/index.js +1 -0
- package/es/handle/style/index.js.map +1 -0
- package/es/icon-list/style/index.js +1 -0
- package/es/icon-list/style/index.js.map +1 -0
- package/es/img/style/index.js +1 -0
- package/es/img/style/index.js.map +1 -0
- package/es/loading-button/style/index.js +1 -0
- package/es/loading-button/style/index.js.map +1 -0
- package/es/page/index.js +0 -4
- package/es/page/index.js.map +1 -1
- package/es/page/style/index.js +1 -0
- package/es/page/style/index.js.map +1 -0
- package/es/query-form/style/index.js +1 -0
- package/es/query-form/style/index.js.map +1 -0
- package/es/query-list-scene/List.js +0 -2
- package/es/query-list-scene/List.js.map +1 -1
- package/es/query-list-scene/style/index.js +1 -0
- package/es/query-list-scene/style/index.js.map +1 -0
- package/es/render-empty/style/index.js +1 -0
- package/es/render-empty/style/index.js.map +1 -0
- package/es/status/index.js +1 -0
- package/es/status/index.js.map +1 -0
- package/es/status/status.js +5 -0
- package/es/status/status.js.map +1 -0
- package/es/table/style/index.js +2 -0
- package/es/table/style/index.js.map +1 -0
- package/es/tag/index.js +139 -1
- package/es/tag/index.js.map +1 -1
- package/es/tag/tag.less +46 -0
- package/es/title/style/index.js +1 -0
- package/es/title/style/index.js.map +1 -0
- package/es/tntd-icon/style/index.js +1 -0
- package/es/tntd-icon/style/index.js.map +1 -0
- package/es/tntd-layout/GlobalNavigation/NavigationPopup.js +0 -1
- package/es/tntd-layout/GlobalNavigation/NavigationPopup.js.map +1 -1
- package/es/tntd-layout/style/index.js +1 -0
- package/es/tntd-layout/style/index.js.map +1 -0
- package/es/tntd-modal/style/index.js +1 -0
- package/es/tntd-modal/style/index.js.map +1 -0
- package/es/tntd-select/style/index.js +1 -0
- package/es/tntd-select/style/index.js.map +1 -0
- package/lib/array-input/style/index.d.ts +1 -0
- package/lib/array-input/style/index.d.ts.map +1 -0
- package/lib/array-input/style/index.js +1 -0
- package/lib/array-input/style/index.js.map +1 -0
- package/lib/auth-context/style/index.d.ts +1 -0
- package/lib/auth-context/style/index.d.ts.map +1 -0
- package/lib/auth-context/style/index.js +1 -0
- package/lib/auth-context/style/index.js.map +1 -0
- package/lib/development-login/style/index.d.ts +1 -0
- package/lib/development-login/style/index.d.ts.map +1 -0
- package/lib/development-login/style/index.js +1 -0
- package/lib/development-login/style/index.js.map +1 -0
- package/lib/ellipsis/Svg/CopySVG.d.ts.map +1 -1
- package/lib/ellipsis/Svg/CopySVG.js +3 -3
- package/lib/ellipsis/Svg/CopySVG.js.map +1 -1
- package/lib/ellipsis/Svg/TickSVG.d.ts.map +1 -1
- package/lib/ellipsis/Svg/TickSVG.js +3 -3
- package/lib/ellipsis/Svg/TickSVG.js.map +1 -1
- package/lib/ellipsis/index.d.ts.map +1 -1
- package/lib/ellipsis/index.js +21 -3
- package/lib/ellipsis/index.js.map +1 -1
- package/lib/ellipsis/index.less +1 -1
- package/lib/ellipsis/style/index.d.ts +1 -0
- package/lib/ellipsis/style/index.d.ts.map +1 -0
- package/lib/ellipsis/style/index.js +1 -0
- package/lib/ellipsis/style/index.js.map +1 -0
- package/lib/empty/render-empty.d.ts +3 -0
- package/lib/empty/render-empty.d.ts.map +1 -0
- package/lib/empty/render-empty.js +32 -0
- package/lib/empty/render-empty.js.map +1 -0
- package/lib/empty/style/index.d.ts +3 -0
- package/lib/empty/style/index.d.ts.map +1 -0
- package/lib/empty/style/index.js +4 -0
- package/lib/empty/style/index.js.map +1 -0
- package/lib/handle/style/index.d.ts +1 -0
- package/lib/handle/style/index.d.ts.map +1 -0
- package/lib/handle/style/index.js +1 -0
- package/lib/handle/style/index.js.map +1 -0
- package/lib/icon-list/style/index.d.ts +3 -0
- package/lib/icon-list/style/index.d.ts.map +1 -0
- package/lib/icon-list/style/index.js +8 -0
- package/lib/icon-list/style/index.js.map +1 -0
- package/lib/img/style/index.d.ts +1 -0
- package/lib/img/style/index.d.ts.map +1 -0
- package/lib/img/style/index.js +1 -0
- package/lib/img/style/index.js.map +1 -0
- package/lib/loading-button/style/index.d.ts +1 -0
- package/lib/loading-button/style/index.d.ts.map +1 -0
- package/lib/loading-button/style/index.js +1 -0
- package/lib/loading-button/style/index.js.map +1 -0
- package/lib/page/index.d.ts.map +1 -1
- package/lib/page/index.js +0 -4
- package/lib/page/index.js.map +1 -1
- package/lib/page/style/index.d.ts +1 -0
- package/lib/page/style/index.d.ts.map +1 -0
- package/lib/page/style/index.js +1 -0
- package/lib/page/style/index.js.map +1 -0
- package/lib/query-form/style/index.d.ts +1 -0
- package/lib/query-form/style/index.d.ts.map +1 -0
- package/lib/query-form/style/index.js +1 -0
- package/lib/query-form/style/index.js.map +1 -0
- package/lib/query-list-scene/List.d.ts.map +1 -1
- package/lib/query-list-scene/List.js +0 -2
- package/lib/query-list-scene/List.js.map +1 -1
- package/lib/query-list-scene/style/index.d.ts +1 -0
- package/lib/query-list-scene/style/index.d.ts.map +1 -0
- package/lib/query-list-scene/style/index.js +1 -0
- package/lib/query-list-scene/style/index.js.map +1 -0
- package/lib/render-empty/style/index.d.ts +2 -0
- package/lib/render-empty/style/index.d.ts.map +1 -0
- package/lib/render-empty/style/index.js +3 -0
- package/lib/render-empty/style/index.js.map +1 -0
- package/lib/status/index.d.ts +2 -0
- package/lib/status/index.d.ts.map +1 -0
- package/lib/status/index.js +16 -0
- package/lib/status/index.js.map +1 -0
- package/lib/status/status.d.ts +6 -0
- package/lib/status/status.d.ts.map +1 -0
- package/lib/status/status.js +13 -0
- package/lib/status/status.js.map +1 -0
- package/lib/table/style/index.d.ts +3 -0
- package/lib/table/style/index.d.ts.map +1 -0
- package/lib/table/style/index.js +4 -0
- package/lib/table/style/index.js.map +1 -0
- package/lib/tag/index.d.ts +50 -1
- package/lib/tag/index.d.ts.map +1 -1
- package/lib/tag/index.js +145 -4
- package/lib/tag/index.js.map +1 -1
- package/lib/tag/tag.less +46 -0
- package/lib/title/style/index.d.ts +1 -0
- package/lib/title/style/index.d.ts.map +1 -0
- package/lib/title/style/index.js +1 -0
- package/lib/title/style/index.js.map +1 -0
- package/lib/tntd-icon/style/index.d.ts +1 -0
- package/lib/tntd-icon/style/index.d.ts.map +1 -0
- package/lib/tntd-icon/style/index.js +1 -0
- package/lib/tntd-icon/style/index.js.map +1 -0
- package/lib/tntd-layout/GlobalNavigation/NavigationPopup.d.ts.map +1 -1
- package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js +0 -1
- package/lib/tntd-layout/GlobalNavigation/NavigationPopup.js.map +1 -1
- package/lib/tntd-layout/storage.d.ts +1 -1
- package/lib/tntd-layout/storage.d.ts.map +1 -1
- package/lib/tntd-layout/style/index.d.ts +1 -0
- package/lib/tntd-layout/style/index.d.ts.map +1 -0
- package/lib/tntd-layout/style/index.js +1 -0
- package/lib/tntd-layout/style/index.js.map +1 -0
- package/lib/tntd-modal/style/index.d.ts +1 -0
- package/lib/tntd-modal/style/index.d.ts.map +1 -0
- package/lib/tntd-modal/style/index.js +1 -0
- package/lib/tntd-modal/style/index.js.map +1 -0
- package/lib/tntd-select/style/index.d.ts +1 -0
- package/lib/tntd-select/style/index.d.ts.map +1 -0
- package/lib/tntd-select/style/index.js +1 -0
- package/lib/tntd-select/style/index.js.map +1 -0
- package/package.json +3 -2
- package/themes/default/variables.less +6 -7
package/es/tag/index.js
CHANGED
|
@@ -1,4 +1,142 @@
|
|
|
1
|
-
|
|
1
|
+
var __rest = this && this.__rest || function (s, e) {
|
|
2
|
+
var t = {};
|
|
3
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
4
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
5
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
6
|
+
}
|
|
7
|
+
return t;
|
|
8
|
+
};
|
|
9
|
+
import classNames from 'classnames';
|
|
10
|
+
import React, { useMemo } from 'react';
|
|
11
|
+
import alpha from 'color-alpha';
|
|
12
|
+
import { ConfigConsumer } from 'antd/es/config-provider';
|
|
13
|
+
import AntdTag from 'antd/es/tag';
|
|
2
14
|
import 'antd/es/tag/style';
|
|
15
|
+
import './tag.less';
|
|
16
|
+
import Ellipsis from '../ellipsis';
|
|
3
17
|
export * from 'antd/es/tag';
|
|
18
|
+
export var TagPalettes;
|
|
19
|
+
(function (TagPalettes) {
|
|
20
|
+
TagPalettes["cyan"] = "cyan";
|
|
21
|
+
TagPalettes["green"] = "green";
|
|
22
|
+
TagPalettes["iris"] = "iris";
|
|
23
|
+
TagPalettes["blue"] = "blue";
|
|
24
|
+
TagPalettes["lavender"] = "lavender";
|
|
25
|
+
TagPalettes["orange"] = "orange";
|
|
26
|
+
TagPalettes["golden"] = "golden";
|
|
27
|
+
TagPalettes["red"] = "red";
|
|
28
|
+
TagPalettes["grey"] = "grey";
|
|
29
|
+
})(TagPalettes || (TagPalettes = {}));
|
|
30
|
+
const palettes = {
|
|
31
|
+
[TagPalettes.cyan]: '#1e9493',
|
|
32
|
+
[TagPalettes.green]: '#07c790',
|
|
33
|
+
[TagPalettes.iris]: '#5e47d3',
|
|
34
|
+
[TagPalettes.blue]: '#126bfb',
|
|
35
|
+
[TagPalettes.lavender]: '#945fb9',
|
|
36
|
+
[TagPalettes.orange]: '#ed7b20',
|
|
37
|
+
[TagPalettes.golden]: '#de8a02',
|
|
38
|
+
[TagPalettes.red]: '#d96156',
|
|
39
|
+
[TagPalettes.grey]: '#5e6e90'
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* 计算标签样式
|
|
43
|
+
*
|
|
44
|
+
* @param type
|
|
45
|
+
* @param preset
|
|
46
|
+
* @param textColorSame
|
|
47
|
+
*/
|
|
48
|
+
const computeTagStyle = (type, color, textColorSame) => {
|
|
49
|
+
if (!color) {
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
52
|
+
switch (type) {
|
|
53
|
+
case 'dot':
|
|
54
|
+
if (textColorSame) {
|
|
55
|
+
return {
|
|
56
|
+
color
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
return;
|
|
60
|
+
case 'filled':
|
|
61
|
+
return {
|
|
62
|
+
color: '#fff',
|
|
63
|
+
backgroundColor: color
|
|
64
|
+
};
|
|
65
|
+
case 'rounded':
|
|
66
|
+
return {
|
|
67
|
+
color,
|
|
68
|
+
backgroundColor: alpha(color, 0.1)
|
|
69
|
+
};
|
|
70
|
+
case 'outline':
|
|
71
|
+
return {
|
|
72
|
+
color,
|
|
73
|
+
borderColor: alpha(color, 0.4),
|
|
74
|
+
backgroundColor: alpha(color, 0.1)
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
export const Tag = _a => {
|
|
79
|
+
var {
|
|
80
|
+
className,
|
|
81
|
+
children,
|
|
82
|
+
type,
|
|
83
|
+
palette,
|
|
84
|
+
icon,
|
|
85
|
+
style,
|
|
86
|
+
textColorSame = icon != null,
|
|
87
|
+
iconPosition = 'prefix',
|
|
88
|
+
ellipsisOptions
|
|
89
|
+
} = _a,
|
|
90
|
+
props = __rest(_a, ["className", "children", "type", "palette", "icon", "style", "textColorSame", "iconPosition", "ellipsisOptions"]);
|
|
91
|
+
const normalizeType = useMemo(() => {
|
|
92
|
+
if (icon) {
|
|
93
|
+
return 'dot';
|
|
94
|
+
}
|
|
95
|
+
return type;
|
|
96
|
+
}, [icon, type]);
|
|
97
|
+
const color = useMemo(() => palettes[palette] || palette, [palette]);
|
|
98
|
+
const tagStyle = useMemo(() => computeTagStyle(normalizeType, color, textColorSame), [color, textColorSame, normalizeType]);
|
|
99
|
+
const hasIcon = useMemo(() => icon != null, [icon]);
|
|
100
|
+
return React.createElement(ConfigConsumer, null, ({
|
|
101
|
+
getPrefixCls
|
|
102
|
+
}) => {
|
|
103
|
+
const prefixCls = getPrefixCls('tag');
|
|
104
|
+
const displayEllipsisOptions = (() => {
|
|
105
|
+
const options = Object.assign({}, ellipsisOptions);
|
|
106
|
+
const iconElement = React.createElement("span", {
|
|
107
|
+
className: `${prefixCls}-icon`,
|
|
108
|
+
style: {
|
|
109
|
+
color
|
|
110
|
+
}
|
|
111
|
+
}, icon);
|
|
112
|
+
if (iconPosition === 'prefix') {
|
|
113
|
+
options.prefix = iconElement;
|
|
114
|
+
}
|
|
115
|
+
if (iconPosition === 'suffix') {
|
|
116
|
+
options.suffix = iconElement;
|
|
117
|
+
}
|
|
118
|
+
if (options.Popover === true) {
|
|
119
|
+
options.content = children;
|
|
120
|
+
} else {
|
|
121
|
+
options.title = children;
|
|
122
|
+
}
|
|
123
|
+
return options;
|
|
124
|
+
})();
|
|
125
|
+
return React.createElement(AntdTag, Object.assign({}, props, {
|
|
126
|
+
className: classNames(className, {
|
|
127
|
+
[`${prefixCls}-dot`]: normalizeType === 'dot',
|
|
128
|
+
[`${prefixCls}-outline`]: normalizeType === 'outline',
|
|
129
|
+
[`${prefixCls}-filled`]: normalizeType === 'filled',
|
|
130
|
+
[`${prefixCls}-rounded`]: normalizeType === 'rounded'
|
|
131
|
+
}),
|
|
132
|
+
style: Object.assign(Object.assign({}, style), tagStyle)
|
|
133
|
+
}), normalizeType === 'dot' && icon == null && React.createElement("span", {
|
|
134
|
+
className: `${prefixCls}-dot-symbol`,
|
|
135
|
+
style: {
|
|
136
|
+
backgroundColor: color
|
|
137
|
+
}
|
|
138
|
+
}), hasIcon ? React.createElement(Ellipsis, Object.assign({}, displayEllipsisOptions), children) : children);
|
|
139
|
+
});
|
|
140
|
+
};
|
|
141
|
+
Tag.CheckableTag = AntdTag.CheckableTag;
|
|
4
142
|
export default Tag;
|
package/es/tag/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tag/index.
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tag/index.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,EAAE,EAAa,OAAO,EAAE,MAAM,OAAO,CAAA;AACjD,OAAO,KAAK,MAAM,aAAa,CAAA;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,OAAO,MAAM,aAAa,CAAA;AAGjC,OAAO,mBAAmB,CAAA;AAC1B,OAAO,YAAY,CAAA;AACnB,OAAO,QAAQ,MAAM,aAAa,CAAA;AAElC,cAAc,aAAa,CAAA;AAE3B,MAAM,CAAN,IAAY,WAUX;AAVD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,4BAAa,CAAA;IACb,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,gCAAiB,CAAA;IACjB,0BAAW,CAAA;IACX,4BAAa,CAAA;AACf,CAAC,EAVW,WAAW,KAAX,WAAW,QAUtB;AAED,MAAM,QAAQ,GAAG;IACf,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS;IAC7B,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,SAAS;IAC9B,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS;IAC7B,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS;IAC7B,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,SAAS;IACjC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS;IAC/B,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,SAAS;IAC/B,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,SAAS;IAC5B,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,SAAS;CAC9B,CAAA;AAmCD;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,CACtB,IAAsB,EACtB,KAAc,EACd,aAAuB,EACI,EAAE;IAC7B,IAAI,CAAC,KAAK,EAAE;QACV,OAAM;KACP;IAED,QAAQ,IAAI,EAAE;QACZ,KAAK,KAAK;YACR,IAAI,aAAa,EAAE;gBACjB,OAAO;oBACL,KAAK;iBACN,CAAA;aACF;YAED,OAAM;QACR,KAAK,QAAQ;YACX,OAAO;gBACL,KAAK,EAAE,MAAM;gBACb,eAAe,EAAE,KAAK;aACvB,CAAA;QACH,KAAK,SAAS;YACZ,OAAO;gBACL,KAAK;gBACL,eAAe,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;aACnC,CAAA;QACH,KAAK,SAAS;YACZ,OAAO;gBACL,KAAK;gBACL,WAAW,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;gBAC9B,eAAe,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;aACnC,CAAA;KACJ;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAWT,EAAE,EAAE;QAXK,EAClB,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,IAAI,EACJ,KAAK,EACL,aAAa,GAAG,IAAI,IAAI,IAAI,EAC5B,YAAY,GAAG,QAAQ,EACvB,eAAe,OAEN,EADN,KAAK,cAVU,iHAWnB,CADS;IAER,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,IAAI,IAAI,EAAE;YACR,OAAO,KAAK,CAAA;SACb;QAED,OAAO,IAAI,CAAA;IACb,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAChB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAsB,CAAC,IAAI,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;IACnF,MAAM,QAAQ,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,eAAe,CAAC,aAAa,EAAE,KAAK,EAAE,aAAa,CAAC,EAC1D,CAAC,KAAK,EAAE,aAAa,EAAE,aAAa,CAAC,CACtC,CAAA;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IAEnD,OAAO,CACL,oBAAC,cAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;QACrC,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE;YACnC,MAAM,OAAO,qBACR,eAAe,CACnB,CAAA;YACD,MAAM,WAAW,GAAG,CAClB,8BAAM,SAAS,EAAE,GAAG,SAAS,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IACnD,IAAI,CACA,CACR,CAAA;YAED,IAAI,YAAY,KAAK,QAAQ,EAAE;gBAC7B,OAAO,CAAC,MAAM,GAAG,WAAW,CAAA;aAC7B;YAED,IAAI,YAAY,KAAK,QAAQ,EAAE;gBAC7B,OAAO,CAAC,MAAM,GAAG,WAAW,CAAA;aAC7B;YAED,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE;gBAC5B,OAAO,CAAC,OAAO,GAAG,QAAQ,CAAA;aAC3B;iBAAM;gBACL,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAA;aACzB;YAED,OAAO,OAAO,CAAA;QAChB,CAAC,CAAC,EAAE,CAAA;QAEJ,OAAO,CACL,oBAAC,OAAO,oBACF,KAAK,IACT,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE;gBAC/B,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,aAAa,KAAK,KAAK;gBAC7C,CAAC,GAAG,SAAS,UAAU,CAAC,EAAE,aAAa,KAAK,SAAS;gBACrD,CAAC,GAAG,SAAS,SAAS,CAAC,EAAE,aAAa,KAAK,QAAQ;gBACnD,CAAC,GAAG,SAAS,UAAU,CAAC,EAAE,aAAa,KAAK,SAAS;aACtD,CAAC,EACF,KAAK,kCACA,KAAK,GACL,QAAQ;YAGZ,aAAa,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,CAC1C,8BACE,SAAS,EAAE,GAAG,SAAS,aAAa,EACpC,KAAK,EAAE;oBACL,eAAe,EAAE,KAAK;iBACvB,GACD,CACH;YACA,OAAO,CAAC,CAAC,CAAC,oBAAC,QAAQ,oBAAK,sBAAsB,GAAG,QAAQ,CAAY,CAAC,CAAC,CAAC,QAAQ,CACzE,CACX,CAAA;IACH,CAAC,CACc,CAClB,CAAA;AACH,CAAC,CAAA;AAED,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;AAEvC,eAAe,GAAG,CAAA","sourcesContent":["import classNames from 'classnames'\nimport React, { ReactNode, useMemo } from 'react'\nimport alpha from 'color-alpha'\n\nimport { ConfigConsumer } from 'antd/es/config-provider'\nimport type { TagProps as AntdTagProps } from 'antd/es/tag'\nimport AntdTag from 'antd/es/tag'\nimport type { CSSProperties } from 'react'\n\nimport 'antd/es/tag/style'\nimport './tag.less'\nimport Ellipsis from '../ellipsis'\n\nexport * from 'antd/es/tag'\n\nexport enum TagPalettes {\n cyan = 'cyan',\n green = 'green',\n iris = 'iris',\n blue = 'blue',\n lavender = 'lavender',\n orange = 'orange',\n golden = 'golden',\n red = 'red',\n grey = 'grey',\n}\n\nconst palettes = {\n [TagPalettes.cyan]: '#1e9493',\n [TagPalettes.green]: '#07c790',\n [TagPalettes.iris]: '#5e47d3',\n [TagPalettes.blue]: '#126bfb',\n [TagPalettes.lavender]: '#945fb9',\n [TagPalettes.orange]: '#ed7b20',\n [TagPalettes.golden]: '#de8a02',\n [TagPalettes.red]: '#d96156',\n [TagPalettes.grey]: '#5e6e90',\n}\n\nexport interface TagProps extends AntdTagProps {\n /**\n * 类型\n */\n type?: 'dot' | 'filled' | 'outline' | 'rounded'\n /**\n * 颜色\n */\n palette?: TagPalettes | string\n /**\n * 文字是否同色\n */\n textColorSame?: boolean\n /**\n * 图标\n */\n icon?: ReactNode\n /**\n * 图标位置\n */\n iconPosition?: 'prefix' | 'suffix'\n /**\n * 省略配置\n */\n ellipsisOptions?: {\n Popover?: boolean\n emptyText?: string\n widthLimit?: number | string\n lines?: number\n [key: string]: unknown\n }\n}\n\n/**\n * 计算标签样式\n *\n * @param type\n * @param preset\n * @param textColorSame\n */\nconst computeTagStyle = (\n type: TagProps['type'],\n color?: string,\n textColorSame?: boolean\n): CSSProperties | undefined => {\n if (!color) {\n return\n }\n\n switch (type) {\n case 'dot':\n if (textColorSame) {\n return {\n color,\n }\n }\n\n return\n case 'filled':\n return {\n color: '#fff',\n backgroundColor: color,\n }\n case 'rounded':\n return {\n color,\n backgroundColor: alpha(color, 0.1),\n }\n case 'outline':\n return {\n color,\n borderColor: alpha(color, 0.4),\n backgroundColor: alpha(color, 0.1),\n }\n }\n}\n\nexport const Tag = ({\n className,\n children,\n type,\n palette,\n icon,\n style,\n textColorSame = icon != null,\n iconPosition = 'prefix',\n ellipsisOptions,\n ...props\n}: TagProps) => {\n const normalizeType = useMemo(() => {\n if (icon) {\n return 'dot'\n }\n\n return type\n }, [icon, type])\n const color = useMemo(() => palettes[palette as TagPalettes] || palette, [palette])\n const tagStyle = useMemo(\n () => computeTagStyle(normalizeType, color, textColorSame),\n [color, textColorSame, normalizeType]\n )\n const hasIcon = useMemo(() => icon != null, [icon])\n\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('tag')\n const displayEllipsisOptions = (() => {\n const options = {\n ...ellipsisOptions,\n }\n const iconElement = (\n <span className={`${prefixCls}-icon`} style={{ color }}>\n {icon}\n </span>\n )\n\n if (iconPosition === 'prefix') {\n options.prefix = iconElement\n }\n\n if (iconPosition === 'suffix') {\n options.suffix = iconElement\n }\n\n if (options.Popover === true) {\n options.content = children\n } else {\n options.title = children\n }\n\n return options\n })()\n\n return (\n <AntdTag\n {...props}\n className={classNames(className, {\n [`${prefixCls}-dot`]: normalizeType === 'dot',\n [`${prefixCls}-outline`]: normalizeType === 'outline',\n [`${prefixCls}-filled`]: normalizeType === 'filled',\n [`${prefixCls}-rounded`]: normalizeType === 'rounded',\n })}\n style={{\n ...style,\n ...tagStyle,\n }}\n >\n {normalizeType === 'dot' && icon == null && (\n <span\n className={`${prefixCls}-dot-symbol`}\n style={{\n backgroundColor: color,\n }}\n />\n )}\n {hasIcon ? <Ellipsis {...displayEllipsisOptions}>{children}</Ellipsis> : children}\n </AntdTag>\n )\n }}\n </ConfigConsumer>\n )\n}\n\nTag.CheckableTag = AntdTag.CheckableTag\n\nexport default Tag\n"]}
|
package/es/tag/tag.less
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
@tag-prefix-cls: ~'@{ant-prefix}-tag';
|
|
2
|
+
|
|
3
|
+
.@{tag-prefix-cls} {
|
|
4
|
+
border: 1px solid transparent;
|
|
5
|
+
line-height: 22px;
|
|
6
|
+
min-width: 44px;
|
|
7
|
+
padding: 0 8px;
|
|
8
|
+
border-radius: 1px;
|
|
9
|
+
text-align: center;
|
|
10
|
+
|
|
11
|
+
&.@{tag-prefix-cls}-checkable {
|
|
12
|
+
cursor: pointer;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
&.@{tag-prefix-cls}-rounded {
|
|
16
|
+
padding: 0 12px;
|
|
17
|
+
border-radius: 12px;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&.@{tag-prefix-cls}-dot {
|
|
21
|
+
display: inline-flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
background-color: transparent;
|
|
24
|
+
padding: 0;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.@{tag-prefix-cls}-icon {
|
|
28
|
+
display: inline-flex;
|
|
29
|
+
align-items: center;
|
|
30
|
+
margin-right: 4px;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.@{tag-prefix-cls}-dot-symbol {
|
|
34
|
+
content: '';
|
|
35
|
+
display: inline-block;
|
|
36
|
+
width: 6px;
|
|
37
|
+
height: 6px;
|
|
38
|
+
border-radius: 50%;
|
|
39
|
+
margin-right: 8px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
.@{iconfont-css-prefix}-close {
|
|
43
|
+
margin-left: 4px;
|
|
44
|
+
color: #8b919e;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/title/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tntd-icon/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -259,7 +259,6 @@ export default (({
|
|
|
259
259
|
height,
|
|
260
260
|
width
|
|
261
261
|
} = popup.getBoundingClientRect();
|
|
262
|
-
console.log('clickOutside...', [x, y], [clientX, clientY], [pageX, pageY]);
|
|
263
262
|
x += window.scrollX;
|
|
264
263
|
y += window.scrollY;
|
|
265
264
|
return pageX < x || pageX > x + width || pageY < y || pageY > y + height;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationPopup.js","sourceRoot":"","sources":["../../../src/tntd-layout/GlobalNavigation/NavigationPopup.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react'\nimport cn from 'classnames'\nimport styled from 'styled-components'\nimport { debounce } from 'lodash'\nimport { traverseTree, hasLevel3 } from '../../utils'\nimport Icon from '../Iconfont'\nimport { getText } from '../../locale'\n\nconst SearchArea = styled.div`\n position: relative;\n font-size: 14px;\n margin-bottom: 20px;\n color: ${(props) => props.theme.secondaryTextColor};\n &.active {\n color: ${(props) => props.theme.primaryColor};\n input {\n border-color: ${(props) => props.theme.primaryColor};\n }\n }\n .tnt-icon {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n line-height: 1em;\n &[type='close'] {\n right: 0;\n top: 0;\n font-size: 18px;\n cursor: pointer;\n }\n }\n input {\n border-width: 0 0 1px;\n border-style: solid;\n border-color: ${(props) => props.theme.borderColor};\n width: 100%;\n padding: 4px 20px;\n line-height: 20px;\n background-color: transparent;\n outline: none;\n }\n`\n\nconst ApplicationTabs = styled.ul`\n border: 1px solid ${(props) => props.theme.borderColor};\n color: ${(props) => props.theme.primaryTextColor};\n line-height: 32px;\n margin: 0 0 16px;\n padding: 0;\n display: inline-block;\n\n & > li {\n padding: 0 20px;\n display: inline-block;\n cursor: pointer;\n &:not(:last-child) {\n border-right: 1px solid ${(props) => props.theme.borderColor};\n }\n &.active {\n background-color: ${(props) => props.theme.primaryColor};\n color: #fff;\n }\n }\n`\n\nconst GroupMenus = styled.div`\n height: ${(props) => (props.isLevel3 ? 'calc(100% - 80px)' : 'calc(100% - 50px)')};\n overflow: auto;\n & > div {\n width: 200px;\n margin-right: 10px;\n display: inline-block;\n vertical-align: top;\n }\n`\n\nconst GroupMenuItem = styled.div`\n margin-bottom: 20px;\n & > h5 {\n line-height: 20px;\n margin: 0;\n margin-bottom: 6px;\n }\n`\n\nconst MenuList = styled.ul`\n list-style: none;\n padding: 0;\n margin: 0;\n`\n\nconst MenuItem = styled.li`\n display: block;\n line-height: 30px;\n font-size: 12px;\n cursor: pointer;\n a {\n color: ${(props) => props.theme.secondaryTextColor};\n &:hover {\n color: ${(props) => props.theme.secondaryColor} !important;\n }\n }\n &.active a {\n color: ${(props) => props.theme.primaryColor};\n }\n`\n\nconst ListBox = styled.ul`\n background: #fff;\n max-height: 320px;\n overflow-y: auto;\n margin: 0;\n padding: 6px 0;\n list-style: none;\n font-size: 13px;\n position: absolute;\n top: 29px;\n width: 100%;\n box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n li {\n cursor: pointer;\n line-height: 32px;\n padding: 0 10px;\n color: ${(props) => props.theme.primaryTextColor};\n &:hover {\n color: ${(props) => props.theme.secondaryColor};\n background-color: ${(props) => props.theme.lightBgColor};\n }\n }\n`\n\nconst SearchList = ({ items, onSelectMenu, theme }) => (\n <ListBox theme={theme}>\n {items?.map((item) => (\n <li onClick={() => onSelectMenu(item)}>{item?.menuName}</li>\n ))}\n </ListBox>\n)\n\nexport default ({ theme, menus = [], close, actions, popupRef, containerRef }) => {\n const [active, setActive] = useState(false)\n const [searchValue, setSearchValue] = useState()\n const language = actions?.getLanguage()\n const isLevel3 = hasLevel3(menus)\n const [activeTopMenu, setActiveTopMenu] = useState(isLevel3 ? menus?.[0] : null)\n const selectedMenuKey = actions.getSelectedMenuKey()\n const calcGroupMenus = (menus) => {\n menus = menus?.reduce((acc, cur) => {\n // 分组\n if (cur?.children?.length) {\n acc.push(cur)\n } else {\n const defaultGroup = acc.find(({ isDefaultGroup }) => isDefaultGroup)\n if (!defaultGroup) {\n acc.unshift({\n isDefaultGroup: true,\n children: [cur],\n })\n } else {\n defaultGroup.children.push(cur)\n }\n }\n return acc\n }, [])\n\n return menus?.reduce((acc, cur) => {\n const column = Math.max(1, ~~((containerRef.current.clientWidth - 32) / 210))\n\n if (!acc.length) {\n acc.push([cur])\n } else {\n const calcGroupHeight = (group) => 46 + (group?.children?.length || 0) * 30\n const calcColumnHeight = (columnGroups) =>\n columnGroups?.reduce((acc, cur) => {\n acc += calcGroupHeight(cur)\n return acc\n }, 0)\n const currentColumnHeight = calcColumnHeight(acc[acc.length - 1])\n const nextGroupHeight = calcGroupHeight(cur)\n const findMinHeightGroup = (groups) => {\n let minHeight = Infinity\n let index = 0\n\n for (let i = 0; i < groups.length; i++) {\n const height = calcColumnHeight(groups[i])\n if (height < minHeight) {\n index = i\n minHeight = height\n }\n }\n\n return groups[index]\n }\n\n if (acc.length >= column) {\n const minHeightGroup = findMinHeightGroup(acc)\n minHeightGroup?.push(cur)\n } else {\n if (currentColumnHeight + nextGroupHeight > 440) {\n acc.push([cur])\n } else {\n acc[acc?.length - 1]?.push(cur)\n }\n }\n }\n\n return acc\n }, [])\n }\n const groupMenus = calcGroupMenus(activeTopMenu?.children || menus)\n const [searchedMenus, setSearchedMenus] = useState([])\n\n const onMenuClick = (menu) => {\n actions.emit('menuSelect', { key: menu.code, data: menu })\n setSearchValue('')\n setSearchedMenus([])\n close()\n }\n const debounceSearch = debounce((evt) => {\n const value = evt.target.value?.trim()\n const matchedMenus = []\n\n if (value) {\n traverseTree(menus, (node) => {\n if (node.path && node?.menuName?.includes(value)) {\n matchedMenus.push(node)\n }\n })\n }\n\n setSearchedMenus(matchedMenus)\n }, 100)\n\n const onSearchChange = (evt) => {\n evt.persist()\n setSearchValue(evt.target.value)\n debounceSearch(evt)\n }\n\n const onSelectAppTab = (menu) => {\n setActiveTopMenu(menu)\n }\n\n useEffect(() => {\n const clickOutside = (evt) => {\n const { clientX, clientY, pageX, pageY } = evt\n const isOutside = (evt, popup) => {\n if (popup?.contains) {\n return !popup?.contains(evt.target)\n }\n\n let { x, y, height, width } = popup.getBoundingClientRect()\n console.log('clickOutside...', [x, y], [clientX, clientY], [pageX, pageY])\n x += window.scrollX\n y += window.scrollY\n\n return pageX < x || pageX > x + width || pageY < y || pageY > y + height\n }\n\n if (isOutside(evt, popupRef.current)) {\n setSearchValue('')\n setSearchedMenus([])\n close()\n }\n }\n\n document.addEventListener('click', clickOutside)\n return () => document.removeEventListener('click', clickOutside)\n }, [])\n\n return (\n <>\n <SearchArea theme={theme} className={cn({ active })}>\n <Icon type=\"search\" />\n <input\n placeholder={actions?.getText('menuSearch')}\n value={searchValue}\n onChange={onSearchChange}\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <Icon type=\"close\" onClick={close} />\n {searchedMenus?.length > 0 && (\n <SearchList items={searchedMenus} theme={theme} onSelectMenu={onMenuClick} />\n )}\n </SearchArea>\n {isLevel3 && (\n <ApplicationTabs theme={theme}>\n {menus?.map((menu) => (\n <li\n className={cn({ active: menu.code === activeTopMenu?.code })}\n onClick={() => onSelectAppTab(menu)}\n >\n {menu?.[language === 'cn' ? 'groupName' : 'enName']}\n </li>\n ))}\n </ApplicationTabs>\n )}\n <GroupMenus theme={theme} isLevel3={isLevel3}>\n {groupMenus?.map((groups) => (\n <div>\n {groups?.map((group) => (\n <GroupMenuItem theme={theme}>\n <h5>{group?.[language === 'cn' ? 'groupName' : 'enName']}</h5>\n <MenuList>\n {(group.children || []).map((menu) => (\n <MenuItem\n key={menu.code}\n className={cn({ active: selectedMenuKey === menu.code })}\n theme={theme}\n onClick={() => onMenuClick(menu)}\n >\n <a href={menu.path} onClick={(evt) => evt.preventDefault()}>\n {menu?.[language === 'cn' ? 'menuName' : 'enName']}\n </a>\n </MenuItem>\n ))}\n </MenuList>\n </GroupMenuItem>\n ))}\n </div>\n ))}\n </GroupMenus>\n </>\n )\n}\n"]}
|
|
1
|
+
{"version":3,"file":"NavigationPopup.js","sourceRoot":"","sources":["../../../src/tntd-layout/GlobalNavigation/NavigationPopup.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react'\nimport cn from 'classnames'\nimport styled from 'styled-components'\nimport { debounce } from 'lodash'\nimport { traverseTree, hasLevel3 } from '../../utils'\nimport Icon from '../Iconfont'\nimport { getText } from '../../locale'\n\nconst SearchArea = styled.div`\n position: relative;\n font-size: 14px;\n margin-bottom: 20px;\n color: ${(props) => props.theme.secondaryTextColor};\n &.active {\n color: ${(props) => props.theme.primaryColor};\n input {\n border-color: ${(props) => props.theme.primaryColor};\n }\n }\n .tnt-icon {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n line-height: 1em;\n &[type='close'] {\n right: 0;\n top: 0;\n font-size: 18px;\n cursor: pointer;\n }\n }\n input {\n border-width: 0 0 1px;\n border-style: solid;\n border-color: ${(props) => props.theme.borderColor};\n width: 100%;\n padding: 4px 20px;\n line-height: 20px;\n background-color: transparent;\n outline: none;\n }\n`\n\nconst ApplicationTabs = styled.ul`\n border: 1px solid ${(props) => props.theme.borderColor};\n color: ${(props) => props.theme.primaryTextColor};\n line-height: 32px;\n margin: 0 0 16px;\n padding: 0;\n display: inline-block;\n\n & > li {\n padding: 0 20px;\n display: inline-block;\n cursor: pointer;\n &:not(:last-child) {\n border-right: 1px solid ${(props) => props.theme.borderColor};\n }\n &.active {\n background-color: ${(props) => props.theme.primaryColor};\n color: #fff;\n }\n }\n`\n\nconst GroupMenus = styled.div`\n height: ${(props) => (props.isLevel3 ? 'calc(100% - 80px)' : 'calc(100% - 50px)')};\n overflow: auto;\n & > div {\n width: 200px;\n margin-right: 10px;\n display: inline-block;\n vertical-align: top;\n }\n`\n\nconst GroupMenuItem = styled.div`\n margin-bottom: 20px;\n & > h5 {\n line-height: 20px;\n margin: 0;\n margin-bottom: 6px;\n }\n`\n\nconst MenuList = styled.ul`\n list-style: none;\n padding: 0;\n margin: 0;\n`\n\nconst MenuItem = styled.li`\n display: block;\n line-height: 30px;\n font-size: 12px;\n cursor: pointer;\n a {\n color: ${(props) => props.theme.secondaryTextColor};\n &:hover {\n color: ${(props) => props.theme.secondaryColor} !important;\n }\n }\n &.active a {\n color: ${(props) => props.theme.primaryColor};\n }\n`\n\nconst ListBox = styled.ul`\n background: #fff;\n max-height: 320px;\n overflow-y: auto;\n margin: 0;\n padding: 6px 0;\n list-style: none;\n font-size: 13px;\n position: absolute;\n top: 29px;\n width: 100%;\n box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n li {\n cursor: pointer;\n line-height: 32px;\n padding: 0 10px;\n color: ${(props) => props.theme.primaryTextColor};\n &:hover {\n color: ${(props) => props.theme.secondaryColor};\n background-color: ${(props) => props.theme.lightBgColor};\n }\n }\n`\n\nconst SearchList = ({ items, onSelectMenu, theme }) => (\n <ListBox theme={theme}>\n {items?.map((item) => (\n <li onClick={() => onSelectMenu(item)}>{item?.menuName}</li>\n ))}\n </ListBox>\n)\n\nexport default ({ theme, menus = [], close, actions, popupRef, containerRef }) => {\n const [active, setActive] = useState(false)\n const [searchValue, setSearchValue] = useState()\n const language = actions?.getLanguage()\n const isLevel3 = hasLevel3(menus)\n const [activeTopMenu, setActiveTopMenu] = useState(isLevel3 ? menus?.[0] : null)\n const selectedMenuKey = actions.getSelectedMenuKey()\n const calcGroupMenus = (menus) => {\n menus = menus?.reduce((acc, cur) => {\n // 分组\n if (cur?.children?.length) {\n acc.push(cur)\n } else {\n const defaultGroup = acc.find(({ isDefaultGroup }) => isDefaultGroup)\n if (!defaultGroup) {\n acc.unshift({\n isDefaultGroup: true,\n children: [cur],\n })\n } else {\n defaultGroup.children.push(cur)\n }\n }\n return acc\n }, [])\n\n return menus?.reduce((acc, cur) => {\n const column = Math.max(1, ~~((containerRef.current.clientWidth - 32) / 210))\n\n if (!acc.length) {\n acc.push([cur])\n } else {\n const calcGroupHeight = (group) => 46 + (group?.children?.length || 0) * 30\n const calcColumnHeight = (columnGroups) =>\n columnGroups?.reduce((acc, cur) => {\n acc += calcGroupHeight(cur)\n return acc\n }, 0)\n const currentColumnHeight = calcColumnHeight(acc[acc.length - 1])\n const nextGroupHeight = calcGroupHeight(cur)\n const findMinHeightGroup = (groups) => {\n let minHeight = Infinity\n let index = 0\n\n for (let i = 0; i < groups.length; i++) {\n const height = calcColumnHeight(groups[i])\n if (height < minHeight) {\n index = i\n minHeight = height\n }\n }\n\n return groups[index]\n }\n\n if (acc.length >= column) {\n const minHeightGroup = findMinHeightGroup(acc)\n minHeightGroup?.push(cur)\n } else {\n if (currentColumnHeight + nextGroupHeight > 440) {\n acc.push([cur])\n } else {\n acc[acc?.length - 1]?.push(cur)\n }\n }\n }\n\n return acc\n }, [])\n }\n const groupMenus = calcGroupMenus(activeTopMenu?.children || menus)\n const [searchedMenus, setSearchedMenus] = useState([])\n\n const onMenuClick = (menu) => {\n actions.emit('menuSelect', { key: menu.code, data: menu })\n setSearchValue('')\n setSearchedMenus([])\n close()\n }\n const debounceSearch = debounce((evt) => {\n const value = evt.target.value?.trim()\n const matchedMenus = []\n\n if (value) {\n traverseTree(menus, (node) => {\n if (node.path && node?.menuName?.includes(value)) {\n matchedMenus.push(node)\n }\n })\n }\n\n setSearchedMenus(matchedMenus)\n }, 100)\n\n const onSearchChange = (evt) => {\n evt.persist()\n setSearchValue(evt.target.value)\n debounceSearch(evt)\n }\n\n const onSelectAppTab = (menu) => {\n setActiveTopMenu(menu)\n }\n\n useEffect(() => {\n const clickOutside = (evt) => {\n const { clientX, clientY, pageX, pageY } = evt\n const isOutside = (evt, popup) => {\n if (popup?.contains) {\n return !popup?.contains(evt.target)\n }\n\n let { x, y, height, width } = popup.getBoundingClientRect()\n x += window.scrollX\n y += window.scrollY\n\n return pageX < x || pageX > x + width || pageY < y || pageY > y + height\n }\n\n if (isOutside(evt, popupRef.current)) {\n setSearchValue('')\n setSearchedMenus([])\n close()\n }\n }\n\n document.addEventListener('click', clickOutside)\n return () => document.removeEventListener('click', clickOutside)\n }, [])\n\n return (\n <>\n <SearchArea theme={theme} className={cn({ active })}>\n <Icon type=\"search\" />\n <input\n placeholder={actions?.getText('menuSearch')}\n value={searchValue}\n onChange={onSearchChange}\n onFocus={() => setActive(true)}\n onBlur={() => setActive(false)}\n />\n <Icon type=\"close\" onClick={close} />\n {searchedMenus?.length > 0 && (\n <SearchList items={searchedMenus} theme={theme} onSelectMenu={onMenuClick} />\n )}\n </SearchArea>\n {isLevel3 && (\n <ApplicationTabs theme={theme}>\n {menus?.map((menu) => (\n <li\n className={cn({ active: menu.code === activeTopMenu?.code })}\n onClick={() => onSelectAppTab(menu)}\n >\n {menu?.[language === 'cn' ? 'groupName' : 'enName']}\n </li>\n ))}\n </ApplicationTabs>\n )}\n <GroupMenus theme={theme} isLevel3={isLevel3}>\n {groupMenus?.map((groups) => (\n <div>\n {groups?.map((group) => (\n <GroupMenuItem theme={theme}>\n <h5>{group?.[language === 'cn' ? 'groupName' : 'enName']}</h5>\n <MenuList>\n {(group.children || []).map((menu) => (\n <MenuItem\n key={menu.code}\n className={cn({ active: selectedMenuKey === menu.code })}\n theme={theme}\n onClick={() => onMenuClick(menu)}\n >\n <a href={menu.path} onClick={(evt) => evt.preventDefault()}>\n {menu?.[language === 'cn' ? 'menuName' : 'enName']}\n </a>\n </MenuItem>\n ))}\n </MenuList>\n </GroupMenuItem>\n ))}\n </div>\n ))}\n </GroupMenus>\n </>\n )\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tntd-layout/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tntd-modal/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tntd-select/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/array-input/style/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/array-input/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/auth-context/style/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/auth-context/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/development-login/style/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/development-login/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CopySVG.d.ts","sourceRoot":"","sources":["../../../src/ellipsis/Svg/CopySVG.js"],"names":[],"mappings":"AAEe,
|
|
1
|
+
{"version":3,"file":"CopySVG.d.ts","sourceRoot":"","sources":["../../../src/ellipsis/Svg/CopySVG.js"],"names":[],"mappings":"AAEe,mDAiDd"}
|
|
@@ -7,11 +7,11 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
9
9
|
var _default = function _default(props) {
|
|
10
|
-
return _react["default"].createElement("
|
|
10
|
+
return _react["default"].createElement("svg", Object.assign({
|
|
11
11
|
width: "16px",
|
|
12
12
|
height: "16px",
|
|
13
13
|
viewBox: "0 0 16 16"
|
|
14
|
-
}, _react["default"].createElement("g", {
|
|
14
|
+
}, props), _react["default"].createElement("g", {
|
|
15
15
|
id: "\u5168\u5BB6\u6876\u89C6\u89C9\u65B9\u6848\u4F18\u5316",
|
|
16
16
|
stroke: "none",
|
|
17
17
|
"stroke-width": "1",
|
|
@@ -67,6 +67,6 @@ var _default = function _default(props) {
|
|
|
67
67
|
x2: "8",
|
|
68
68
|
y2: "8",
|
|
69
69
|
id: "\u8DEF\u5F84"
|
|
70
|
-
}))))))))
|
|
70
|
+
}))))))));
|
|
71
71
|
};
|
|
72
72
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CopySVG.js","sourceRoot":"","sources":["../../../src/ellipsis/Svg/CopySVG.js"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AAEzB,kBAAe,CAAC,KAAK,EAAE,EAAE;IACvB,OAAO,CACL,
|
|
1
|
+
{"version":3,"file":"CopySVG.js","sourceRoot":"","sources":["../../../src/ellipsis/Svg/CopySVG.js"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AAEzB,kBAAe,CAAC,KAAK,EAAE,EAAE;IACvB,OAAO,CACL,qDAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,IAAK,KAAK;QAC3D,qCAAG,EAAE,EAAC,wDAAW,EAAC,MAAM,EAAC,MAAM,kBAAc,GAAG,EAAC,IAAI,EAAC,MAAM,eAAW,SAAS;YAC9E,qCAAG,EAAE,EAAC,qBAAM,EAAC,SAAS,EAAC,qCAAqC;gBAC1D,qCAAG,EAAE,EAAC,gBAAM,EAAC,SAAS,EAAC,kCAAkC;oBACvD,qCAAG,EAAE,EAAC,iBAAO,EAAC,SAAS,EAAC,iCAAiC;wBACvD,qCAAG,EAAE,EAAC,cAAI,EAAC,SAAS,EAAC,kCAAkC;4BACrD,wCACE,EAAE,EAAC,cAAI,EACP,IAAI,EAAC,SAAS,EACd,OAAO,EAAC,GAAG,EACX,CAAC,EAAC,GAAG,EACL,CAAC,EAAC,GAAG,EACL,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,GACL;4BACR,qCACE,EAAE,EAAC,gBAAM,EACT,SAAS,EAAC,+BAA+B,EACzC,MAAM,EAAC,SAAS,oBACD,OAAO,kBACT,KAAK;gCAElB,2CACE,EAAE,EAAC,cAAI,qBACS,OAAO,EACvB,MAAM,EAAC,4FAA4F,GAC1F;gCACX,4CACE,EAAE,EAAC,cAAI,qBACS,OAAO,EACvB,MAAM,EAAC,wCAAwC,GACrC;gCACZ,4CACE,EAAE,EAAC,cAAI,qBACS,OAAO,EACvB,MAAM,EAAC,wCAAwC,GACrC;gCACZ,wCAAM,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,YAAY,EAAC,EAAE,EAAC,YAAY,EAAC,EAAE,EAAC,YAAY,EAAC,EAAE,EAAC,cAAI,GAAQ;gCAC5E,wCAAM,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,cAAI,GAAQ,CAC/C,CACF,CACF,CACF,CACF,CACF,CACA,CACP,CAAA;AACH,CAAC,CAAA","sourcesContent":["import React from 'react'\n\nexport default (props) => {\n return (\n <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 16 16\" {...props}>\n <g id=\"全家桶视觉方案优化\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"工作台1\" transform=\"translate(-730.000000, -299.000000)\">\n <g id=\"分组-6\" transform=\"translate(240.000000, 96.000000)\">\n <g id=\"编组-18\" transform=\"translate(0.000000, 171.000000)\">\n <g id=\"复制\" transform=\"translate(490.000000, 32.000000)\">\n <rect\n id=\"矩形\"\n fill=\"#D8D8D8\"\n opacity=\"0\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n ></rect>\n <g\n id=\"编组-5\"\n transform=\"translate(2.223389, 1.330322)\"\n stroke=\"#1e90ff\"\n stroke-linecap=\"round\"\n stroke-width=\"1.2\"\n >\n <polygon\n id=\"路径\"\n stroke-linejoin=\"round\"\n points=\"2 11.3333333 11.3333333 11.3333333 11.3333333 4 7.66666667 -8.8817842e-15 2 -8.8817842e-15\"\n ></polygon>\n <polyline\n id=\"路径\"\n stroke-linejoin=\"round\"\n points=\"7.66666667 0 7.66666667 4 11.3333333 4\"\n ></polyline>\n <polyline\n id=\"路径\"\n stroke-linejoin=\"round\"\n points=\"0 5.33333333 0 13.3333333 7 13.3333333\"\n ></polyline>\n <line x1=\"4\" y1=\"5.33333333\" x2=\"5.33333333\" y2=\"5.33333333\" id=\"路径\"></line>\n <line x1=\"4\" y1=\"8\" x2=\"8\" y2=\"8\" id=\"路径\"></line>\n </g>\n </g>\n </g>\n </g>\n </g>\n </g>\n </svg>\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickSVG.d.ts","sourceRoot":"","sources":["../../../src/ellipsis/Svg/TickSVG.js"],"names":[],"mappings":"AAEe,
|
|
1
|
+
{"version":3,"file":"TickSVG.d.ts","sourceRoot":"","sources":["../../../src/ellipsis/Svg/TickSVG.js"],"names":[],"mappings":"AAEe,mDAiCd"}
|
|
@@ -7,11 +7,11 @@ exports["default"] = void 0;
|
|
|
7
7
|
var _react = _interopRequireDefault(require("react"));
|
|
8
8
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
9
9
|
var _default = function _default(props) {
|
|
10
|
-
return _react["default"].createElement("
|
|
10
|
+
return _react["default"].createElement("svg", Object.assign({
|
|
11
11
|
width: "17px",
|
|
12
12
|
height: "16px",
|
|
13
13
|
viewBox: "0 0 17 16"
|
|
14
|
-
}, _react["default"].createElement("g", {
|
|
14
|
+
}, props), _react["default"].createElement("g", {
|
|
15
15
|
id: "\u5168\u5BB6\u6876\u89C6\u89C9\u65B9\u6848\u4F18\u5316",
|
|
16
16
|
stroke: "none",
|
|
17
17
|
"stroke-width": "1",
|
|
@@ -45,6 +45,6 @@ var _default = function _default(props) {
|
|
|
45
45
|
"stroke-linecap": "round",
|
|
46
46
|
"stroke-linejoin": "round",
|
|
47
47
|
points: "14.3333333 3.66666667 5.625 12.3333333 1.66666667 8.39393333"
|
|
48
|
-
})))))))
|
|
48
|
+
})))))));
|
|
49
49
|
};
|
|
50
50
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TickSVG.js","sourceRoot":"","sources":["../../../src/ellipsis/Svg/TickSVG.js"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AAEzB,kBAAe,CAAC,KAAK,EAAE,EAAE;IACvB,OAAO,CACL,
|
|
1
|
+
{"version":3,"file":"TickSVG.js","sourceRoot":"","sources":["../../../src/ellipsis/Svg/TickSVG.js"],"names":[],"mappings":";;;;;AAAA,kDAAyB;AAEzB,kBAAe,CAAC,KAAK,EAAE,EAAE;IACvB,OAAO,CACL,qDAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,OAAO,EAAC,WAAW,IAAK,KAAK;QAC3D,qCAAG,EAAE,EAAC,wDAAW,EAAC,MAAM,EAAC,MAAM,kBAAc,GAAG,EAAC,IAAI,EAAC,MAAM,eAAW,SAAS;YAC9E,qCAAG,EAAE,EAAC,qBAAM,EAAC,SAAS,EAAC,qCAAqC;gBAC1D,qCAAG,EAAE,EAAC,gBAAM,EAAC,SAAS,EAAC,kCAAkC;oBACvD,qCAAG,EAAE,EAAC,iBAAO,EAAC,SAAS,EAAC,iCAAiC;wBACvD,qCAAG,EAAE,EAAC,0BAAM,EAAC,SAAS,EAAC,kCAAkC;4BACvD,wCACE,EAAE,EAAC,cAAI,kBACM,MAAM,EACnB,IAAI,EAAC,SAAS,eACJ,SAAS,EACnB,CAAC,EAAC,GAAG,EACL,CAAC,EAAC,GAAG,EACL,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,GACL;4BACR,4CACE,EAAE,EAAC,cAAI,EACP,MAAM,EAAC,SAAS,kBACH,KAAK,oBACH,OAAO,qBACN,OAAO,EACvB,MAAM,EAAC,8DAA8D,GAC3D,CACV,CACF,CACF,CACF,CACF,CACA,CACP,CAAA;AACH,CAAC,CAAA","sourcesContent":["import React from 'react'\n\nexport default (props) => {\n return (\n <svg width=\"17px\" height=\"16px\" viewBox=\"0 0 17 16\" {...props}>\n <g id=\"全家桶视觉方案优化\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"工作台1\" transform=\"translate(-754.000000, -299.000000)\">\n <g id=\"分组-6\" transform=\"translate(240.000000, 96.000000)\">\n <g id=\"编组-18\" transform=\"translate(0.000000, 171.000000)\">\n <g id=\"复制成功\" transform=\"translate(514.500000, 32.000000)\">\n <rect\n id=\"矩形\"\n fill-opacity=\"0.01\"\n fill=\"#FFFFFF\"\n fill-rule=\"nonzero\"\n x=\"0\"\n y=\"0\"\n width=\"16\"\n height=\"16\"\n ></rect>\n <polyline\n id=\"路径\"\n stroke=\"#07C790\"\n stroke-width=\"1.2\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n points=\"14.3333333 3.66666667 5.625 12.3333333 1.66666667 8.39393333\"\n ></polyline>\n </g>\n </g>\n </g>\n </g>\n </g>\n </svg>\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"AA6Be,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"AA6Be,mDAoId"}
|
package/lib/ellipsis/index.js
CHANGED
|
@@ -64,10 +64,17 @@ var _default = function _default(props) {
|
|
|
64
64
|
_useState6 = _slicedToArray(_useState5, 2),
|
|
65
65
|
hasCopy = _useState6[0],
|
|
66
66
|
setHasCopy = _useState6[1];
|
|
67
|
+
var _useState7 = (0, _react.useState)(),
|
|
68
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
69
|
+
lineHeight = _useState8[0],
|
|
70
|
+
setLineHeight = _useState8[1];
|
|
67
71
|
var elementRef = (0, _react.useRef)();
|
|
68
72
|
(0, _react.useEffect)(function () {
|
|
69
73
|
elementRef.current && isEllipsisActive(elementRef.current) ? setFlag(true) : (setFlag(false), setTipVisible(false));
|
|
70
|
-
|
|
74
|
+
if (elementRef.current) {
|
|
75
|
+
setLineHeight(getComputedStyle(elementRef.current, null).getPropertyValue('line-height'));
|
|
76
|
+
}
|
|
77
|
+
}, []);
|
|
71
78
|
// original Node
|
|
72
79
|
var inner = typeof children === 'string' ? children : _popover ? content : title;
|
|
73
80
|
// for className
|
|
@@ -124,11 +131,22 @@ var _default = function _default(props) {
|
|
|
124
131
|
})
|
|
125
132
|
}, prefix && prefix, _react["default"].createElement("div", {
|
|
126
133
|
className: getClassName()
|
|
127
|
-
}, inner ? renderNode() : emptyText), suffix && suffix, inner && _copyable && _react["default"].createElement("div", {
|
|
134
|
+
}, inner ? renderNode() : emptyText), suffix && suffix, inner && _copyable && lineHeight && _react["default"].createElement("div", {
|
|
128
135
|
className: "svg-button",
|
|
136
|
+
style: {
|
|
137
|
+
height: lineHeight
|
|
138
|
+
},
|
|
129
139
|
onClick: function onClick() {
|
|
130
140
|
return handleCopy(elementRef.current.innerText);
|
|
131
141
|
}
|
|
132
|
-
}, !hasCopy ? _react["default"].createElement(_CopySVG["default"],
|
|
142
|
+
}, !hasCopy ? _react["default"].createElement(_CopySVG["default"], {
|
|
143
|
+
style: {
|
|
144
|
+
height: lineHeight
|
|
145
|
+
}
|
|
146
|
+
}) : _react["default"].createElement(_TickSVG["default"], {
|
|
147
|
+
style: {
|
|
148
|
+
height: lineHeight
|
|
149
|
+
}
|
|
150
|
+
}))));
|
|
133
151
|
};
|
|
134
152
|
exports["default"] = _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,0EAAoC;AACpC,+CAA0D;AAE1D,yDAAgC;AAChC,yDAAgC;AAEhC,4DAAmC;AACnC,4DAAmC;AACnC,wBAAqB;AAErB,MAAM,SAAS,GAAG,CAAC,CAAA,CAAC,2CAA2C;AAE/D,MAAM,gBAAgB,GAAG,CAAC,CAAC,EAAE,EAAE;;IAC7B,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,YAAY,EAAE;QACxE,IAAI,QAAQ,GAAG,oBAAoB,CAAA;QACnC,IAAI,CAAC,CAAA,MAAA,MAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,UAAU,0CAAE,YAAY,CAAC,OAAO,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA,EAAE;YAC5D,QAAQ,IAAI,iBAAiB,CAAA;SAC9B;QACD,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;KAC7C;IACD,OAAO,CAAC,CAAC,WAAW,GAAG,SAAS,GAAG,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAA;AACrF,CAAC,CAAA;AAED,kBAAe,CAAC,KAAK,EAAE,EAAE;IACvB,IAAI,EACF,QAAQ,GAAG,KAAK,CAAC,OAAO,EAAE,2BAA2B;IACrD,KAAK,EAAE,8BAA8B;IACrC,OAAO,EAAE,8BAA8B;IACvC,SAAS,EACT,KAAK,EACL,UAAU,EAAE,sBAAsB;IAClC,MAAM,GAAG,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,mCAAmC;IAC9E,QAAQ,EAAE,gBAAgB;IAC1B,SAAS,EAAE,gBAAgB;IAC3B,SAAS,GAAG,KAAK,CAAC,QAAQ,EAAE,gBAAgB;IAC5C,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;MACjB,GAAG,KAAK,CAAA;IAET,6BAA6B;IAC7B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAI,CAAC,CAAA;IACtC,iCAAiC;IACjC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IACnD,uBAAuB;IACvB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ellipsis/index.js"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Author: 梁洪刚\n * @CreatDate: 2021-03-31 13:57:32\n * @Describe: 省略号组件\n */\n\nimport copy from 'copy-to-clipboard'\nimport React, { useEffect, useRef, useState } from 'react'\n\nimport Popover from '../popover'\nimport Tooltip from '../tooltip'\n\nimport CopySVG from './Svg/CopySVG'\nimport TickSVG from './Svg/TickSVG'\nimport './index.less'\n\nconst tolerance = 0 // In px. Depends on the font you are using\n\nconst isEllipsisActive = (e) => {\n if (e.offsetWidth === e.scrollWidth && e.offsetHeight === e.scrollHeight) {\n let styleStr = 'overflow:visible; '\n if (!e?.parentNode?.getAttribute('style')?.includes('width')) {\n styleStr += 'max-width:100%;'\n }\n e.parentNode.setAttribute('style', styleStr)\n }\n return e.offsetWidth + tolerance < e.scrollWidth || e.offsetHeight < e.scrollHeight\n}\n\nexport default (props) => {\n let {\n _popover = props.Popover, // `Popover` or `Tooltip` ?\n title, // in most cases for `Tooltip`\n content, // in most cases for `Popover`\n className,\n style,\n widthLimit, // width trigger value\n _lines = props.lines !== 1 && props.lines, // number or lines, default 1 line;\n children, // children Node\n emptyText, // default: null\n _copyable = props.copyable, // copy function\n prefix, // 前缀dom\n suffix, // 后缀dom\n } = props\n\n // allow visible or not state\n const [flag, setFlag] = useState(true)\n // visible[Tooltip/Popover] state\n const [tipVisible, setTipVisible] = useState(false)\n // copy animation state\n const [hasCopy, setHasCopy] = useState(false)\n const [lineHeight, setLineHeight] = useState()\n\n const elementRef = useRef()\n\n useEffect(() => {\n elementRef.current && isEllipsisActive(elementRef.current)\n ? setFlag(true)\n : (setFlag(false), setTipVisible(false))\n\n if (elementRef.current) {\n setLineHeight(getComputedStyle(elementRef.current, null).getPropertyValue('line-height'))\n }\n }, [])\n\n // original Node\n const inner = typeof children === 'string' ? children : _popover ? content : title\n\n // for className\n const getClassName = () => {\n return `overflow ${_lines ? 'ellipsis-wrap' : 'ellipsis-nowrap'} ${className || ''}`\n }\n\n // Tooltip.trigger(default 'hover') ==trigger==> onVisibleChange(visible)\n const handleVisibleChange = (visible) => {\n // const { onVisibleChange } = props;\n // onVisibleChange(visible);\n flag && setTipVisible(visible)\n }\n\n // onClick Copy Button\n const handleCopy = (innerText) => {\n copy(innerText)\n setHasCopy(!hasCopy)\n setTimeout(() => {\n setHasCopy(false)\n }, 1000)\n }\n\n const renderNode = () => {\n const popoverNode = (\n <Popover\n {...props}\n content={content || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || content}\n </div>\n </Popover>\n )\n\n const tooltipNode = (\n <Tooltip\n {...props}\n title={title || children}\n visible={tipVisible}\n onVisibleChange={(visible) => handleVisibleChange(visible)}\n >\n <div className={className} style={{ WebkitLineClamp: _lines }} ref={elementRef}>\n {children || title}\n </div>\n </Tooltip>\n )\n\n return _popover ? popoverNode : tooltipNode\n }\n\n return (\n <>\n <div\n className=\"tnt-ellipsis\"\n style={{\n ...style,\n maxWidth: widthLimit,\n }}\n >\n {/* prefix */}\n {prefix && prefix}\n {/* content */}\n <div className={getClassName()}>{inner ? renderNode() : emptyText}</div>\n {/* suffix */}\n {suffix && suffix}\n {/* copyable button */}\n {inner && _copyable && lineHeight && (\n <div\n className=\"svg-button\"\n style={{\n height: lineHeight,\n }}\n onClick={() => handleCopy(elementRef.current.innerText)}\n >\n {!hasCopy ? (\n <CopySVG\n style={{\n height: lineHeight,\n }}\n />\n ) : (\n <TickSVG\n style={{\n height: lineHeight,\n }}\n />\n )}\n </div>\n )}\n </div>\n </>\n )\n}\n"]}
|
package/lib/ellipsis/index.less
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ellipsis/style/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ellipsis/style/index.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-empty.d.ts","sourceRoot":"","sources":["../../src/empty/render-empty.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,eAAO,MAAM,WAAW,0CAA6B,MAAM,SAmB1D,CAAA"}
|