@lemon-fe/components 0.1.129 → 0.1.131
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/MainFramework/components/Menu/index.less +2 -2
- package/es/MainFramework/components/WaterMark/index.d.ts +6 -0
- package/es/MainFramework/components/WaterMark/index.js +65 -0
- package/es/MainFramework/index.d.ts +1 -0
- package/es/MainFramework/index.js +6 -2
- package/es/Popup/index.js +6 -1
- package/es/SiderTree/index.less +9 -0
- package/package.json +2 -2
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
box-sizing: border-box;
|
|
218
218
|
min-width: 120px;
|
|
219
219
|
height: 40px;
|
|
220
|
-
padding: 0
|
|
220
|
+
padding: 0 8px;
|
|
221
221
|
color: rgba(51, 51, 51, 0.5);
|
|
222
222
|
font-weight: 500;
|
|
223
223
|
font-size: 14px;
|
|
@@ -232,7 +232,7 @@
|
|
|
232
232
|
box-sizing: border-box;
|
|
233
233
|
min-width: 120px;
|
|
234
234
|
height: 40px;
|
|
235
|
-
padding: 9px
|
|
235
|
+
padding: 9px 8px;
|
|
236
236
|
color: rgba(51, 51, 51, 1);
|
|
237
237
|
font-size: 14px;
|
|
238
238
|
line-height: 40px;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { useEffect, useRef } from 'react';
|
|
3
|
+
import { createPortal } from 'react-dom';
|
|
4
|
+
function createImgBase(options) {
|
|
5
|
+
var canvas = document.createElement('canvas');
|
|
6
|
+
var ratio = window.devicePixelRatio;
|
|
7
|
+
canvas.width = options.width * ratio;
|
|
8
|
+
canvas.height = options.height * ratio;
|
|
9
|
+
var ctx = canvas.getContext('2d');
|
|
10
|
+
if (ctx) {
|
|
11
|
+
ctx.font = "".concat(options.fontSize * ratio, "px ").concat(options.fontFamily);
|
|
12
|
+
ctx.fillStyle = options.color;
|
|
13
|
+
ctx.rotate(options.rotateDegree);
|
|
14
|
+
ctx.textAlign = 'center';
|
|
15
|
+
ctx.fillText(options.content, canvas.width / 2, canvas.height / 2);
|
|
16
|
+
}
|
|
17
|
+
return canvas.toDataURL('image/png');
|
|
18
|
+
}
|
|
19
|
+
function genWaterMark(_ref) {
|
|
20
|
+
var className = _ref.className,
|
|
21
|
+
_ref$width = _ref.width,
|
|
22
|
+
width = _ref$width === void 0 ? 225 : _ref$width,
|
|
23
|
+
_ref$height = _ref.height,
|
|
24
|
+
height = _ref$height === void 0 ? 225 : _ref$height,
|
|
25
|
+
_ref$content = _ref.content,
|
|
26
|
+
content = _ref$content === void 0 ? '水印' : _ref$content,
|
|
27
|
+
_ref$fontFamily = _ref.fontFamily,
|
|
28
|
+
fontFamily = _ref$fontFamily === void 0 ? '"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", 微软雅黑, Arial, sans-serif' : _ref$fontFamily,
|
|
29
|
+
_ref$fontSize = _ref.fontSize,
|
|
30
|
+
fontSize = _ref$fontSize === void 0 ? 14 : _ref$fontSize,
|
|
31
|
+
_ref$color = _ref.color,
|
|
32
|
+
color = _ref$color === void 0 ? 'rgba(156, 162, 169, 0.1)' : _ref$color,
|
|
33
|
+
_ref$rotate = _ref.rotate,
|
|
34
|
+
rotate = _ref$rotate === void 0 ? -24 : _ref$rotate;
|
|
35
|
+
var option = {
|
|
36
|
+
width: width,
|
|
37
|
+
height: height,
|
|
38
|
+
content: content,
|
|
39
|
+
fontSize: fontSize,
|
|
40
|
+
fontFamily: fontFamily,
|
|
41
|
+
color: color,
|
|
42
|
+
rotateDegree: rotate * Math.PI / 180
|
|
43
|
+
};
|
|
44
|
+
// 为了实现交错水印的效果,此处生成两张位置不同的水印 固定相对位置
|
|
45
|
+
var dataUri = createImgBase(option);
|
|
46
|
+
return ".".concat(className, " {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 10000;\n background-repeat: repeat;\n background-image: url(").concat(dataUri, "), url(").concat(dataUri, ");\n background-size: ").concat(option.width, "px ").concat(option.height, "px;\n background-position: ").concat(width / 2, "px ").concat(height / 2, "px, 0 0;\n pointer-events: none;\n }");
|
|
47
|
+
}
|
|
48
|
+
export default function WaterMark(props) {
|
|
49
|
+
var waterMark = props.waterMark;
|
|
50
|
+
var ref = useRef(null);
|
|
51
|
+
var name = 'EVudqS';
|
|
52
|
+
useEffect(function () {
|
|
53
|
+
if (waterMark && ref.current !== null) {
|
|
54
|
+
ref.current.innerHTML = genWaterMark({
|
|
55
|
+
className: name,
|
|
56
|
+
content: waterMark
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}, [waterMark]);
|
|
60
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/createPortal( /*#__PURE__*/React.createElement("style", {
|
|
61
|
+
ref: ref
|
|
62
|
+
}), document.head), /*#__PURE__*/React.createElement("div", {
|
|
63
|
+
className: name
|
|
64
|
+
}));
|
|
65
|
+
}
|
|
@@ -4,6 +4,7 @@ import TabBar from './components/TabBar';
|
|
|
4
4
|
import Menu from './components/Menu';
|
|
5
5
|
import { PREFIX_CLS as prefixCls } from '../constants';
|
|
6
6
|
import RefreshButton from './components/RefreshButton';
|
|
7
|
+
import WaterMark from './components/WaterMark';
|
|
7
8
|
export default function MainFramework(props) {
|
|
8
9
|
var className = props.className,
|
|
9
10
|
tabs = props.tabs,
|
|
@@ -23,7 +24,8 @@ export default function MainFramework(props) {
|
|
|
23
24
|
favorites = props.favorites,
|
|
24
25
|
onFavoritesChange = props.onFavoritesChange,
|
|
25
26
|
renderMenu = props.renderMenu,
|
|
26
|
-
style = props.style
|
|
27
|
+
style = props.style,
|
|
28
|
+
waterMark = props.waterMark;
|
|
27
29
|
return /*#__PURE__*/React.createElement("div", {
|
|
28
30
|
className: classNames("".concat(prefixCls, "-main"), className),
|
|
29
31
|
style: style
|
|
@@ -46,7 +48,9 @@ export default function MainFramework(props) {
|
|
|
46
48
|
d: "M3.403 10.313c.194-.163.393-.324.6-.481 1.47-1.123 2.592-2.339 3.333-3.622a7.805 7.805 0 0 0 1.101-4.036L8.427.966C8.159.657 7.906.335 7.67 0c-.26.384-.544.752-.849 1.103a15.52 15.52 0 0 1-2.336 2.165C2.853 4.514 1.67 5.858.938 7.28c.563 1.06 1.391 2.073 2.461 3.027M3.602 12.008a17.318 17.318 0 0 1-.835-.711C1.782 10.4.99 9.44.402 8.437a8.004 8.004 0 0 0 .362 5.91c.677 1.448 1.812 2.814 3.375 4.053.502.398.981.828 1.434 1.288v-.264a8.913 8.913 0 0 1 .99-4.146c-.687-1.157-1.683-2.256-2.96-3.276M11.025 12.036c-1.482 1.092-2.611 2.27-3.355 3.51a7.355 7.355 0 0 0-1.107 3.91l.008 1.173c.272.298.528.61.764.933.263-.372.549-.73.856-1.07a15.398 15.398 0 0 1 2.346-2.098c2.984-2.196 4.486-4.693 4.463-7.42a7.134 7.134 0 0 0-.489-2.537c-.802 1.278-1.971 2.484-3.486 3.597M11.353 9.828c.186.156.371.317.553.485.945-.983 1.668-2.02 2.156-3.096-.675-1.429-1.765-2.778-3.239-4.01-.496-.411-.968-.856-1.414-1.332v.268a9.617 9.617 0 0 1-.972 4.298c.68 1.201 1.661 2.34 2.917 3.387"
|
|
47
49
|
})))), /*#__PURE__*/React.createElement("div", {
|
|
48
50
|
className: "".concat(prefixCls, "-nav-title")
|
|
49
|
-
}, title
|
|
51
|
+
}, title, waterMark && /*#__PURE__*/React.createElement(WaterMark, {
|
|
52
|
+
waterMark: waterMark
|
|
53
|
+
}))), /*#__PURE__*/React.createElement(TabBar, {
|
|
50
54
|
tabs: tabs,
|
|
51
55
|
active: active,
|
|
52
56
|
onClick: onTabClick,
|
package/es/Popup/index.js
CHANGED
|
@@ -14,7 +14,7 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
|
14
14
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
15
15
|
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
16
16
|
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
17
|
-
import React, { useState, cloneElement, useRef, isValidElement } from 'react';
|
|
17
|
+
import React, { useState, cloneElement, useRef, isValidElement, useEffect } from 'react';
|
|
18
18
|
import { Modal, Input, message } from 'antd';
|
|
19
19
|
import { CloseCircleFilled } from '@ant-design/icons';
|
|
20
20
|
import { PREFIX_CLS } from '../constants';
|
|
@@ -153,6 +153,11 @@ function Popup(props) {
|
|
|
153
153
|
}), /*#__PURE__*/React.createElement(SearchIcon, null))
|
|
154
154
|
});
|
|
155
155
|
}
|
|
156
|
+
useEffect(function () {
|
|
157
|
+
if (value !== valueProp && valueProp) {
|
|
158
|
+
setValue(valueProp);
|
|
159
|
+
}
|
|
160
|
+
}, [valueProp]);
|
|
156
161
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
157
162
|
className: "".concat(prefixCls, "-wrapper"),
|
|
158
163
|
onClick: handleOpen
|
package/es/SiderTree/index.less
CHANGED
|
@@ -8,6 +8,15 @@
|
|
|
8
8
|
box-sizing: border-box;
|
|
9
9
|
height: 100%;
|
|
10
10
|
padding: @space-v 0;
|
|
11
|
+
|
|
12
|
+
.@{prefixCls}-tree-list-scrollbar{
|
|
13
|
+
display: block !important;
|
|
14
|
+
right: -16px !important;
|
|
15
|
+
}
|
|
16
|
+
.@{prefixCls}-tree-list-scrollbar-thumb{
|
|
17
|
+
background: #DDD !important;
|
|
18
|
+
}
|
|
19
|
+
|
|
11
20
|
}
|
|
12
21
|
|
|
13
22
|
&-menu-popover {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lemon-fe/components",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.131",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"author": "鲁盛杰 <lusj@cnlemon.net>",
|
|
6
6
|
"homepage": "",
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
"react": "^17.0.2",
|
|
40
40
|
"react-dom": "^17.0.2"
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "0343d2bace250b1ff4a7dda4c9d240b6c5b14b5e"
|
|
43
43
|
}
|