@jetlinks-web/components 2.0.4 → 2.0.6
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/AMap/Map.js +3 -0
- package/es/AMap/index.js +3 -0
- package/es/BadgeStatus/Badge.js +3 -0
- package/es/BadgeStatus/index.js +3 -0
- package/es/CardSelect/CardSelect.js +4 -2
- package/es/CardSelect/index.js +3 -0
- package/es/CheckButton/CheckButton.js +4 -2
- package/es/CheckButton/index.js +3 -0
- package/es/CheckButton/style/index.css +37 -0
- package/es/CheckButton/style/index.less +40 -0
- package/es/ConfigProvider/index.js +3 -0
- package/es/Echarts/Echarts.js +3 -0
- package/es/Echarts/index.js +3 -0
- package/es/Ellipsis/Ellipsis.js +23 -15
- package/es/Ellipsis/index.js +3 -0
- package/es/Ellipsis/style/index.css +17 -0
- package/es/Ellipsis/style/index.less +20 -0
- package/es/Empty/Empty.js +3 -0
- package/es/Empty/index.js +3 -0
- package/es/FullPage/FullPage.js +4 -1
- package/es/FullPage/index.js +3 -0
- package/es/Icon/index.js +3 -0
- package/es/MonacoEditor/Monaco.js +4 -2
- package/es/MonacoEditor/index.js +3 -0
- package/es/PermissionButton/index.js +4 -1
- package/es/ProLayout/Basic/BasicLayout.js +142 -43
- package/es/ProLayout/PageContainer/index.js +2 -2
- package/es/ProLayout/SiderMenu/BaseMenu.js +2 -3
- package/es/ProLayout/SiderMenu/SiderMenu.js +35 -8
- package/es/ProLayout/SiderMenu/index.less +226 -212
- package/es/ProLayout/defaultSettings.js +38 -1
- package/es/ProLayout/index.js +5 -1
- package/es/ProLayout/style/default.less +4 -4
- package/es/ProTable/index.js +4 -1
- package/es/ProTable/style/index.css +5 -1
- package/es/Scrollbar/index.js +3 -0
- package/es/Search/Advanced/SaveHistory.js +1 -1
- package/es/Search/Advanced/index.js +3 -0
- package/es/Search/Item.js +1 -1
- package/es/Search/Search.js +4 -1
- package/es/Search/index.js +3 -0
- package/es/ValueItem/ValueItem.js +3 -0
- package/es/ValueItem/index.js +3 -0
- package/es/components.js +17 -0
- package/es/index.js +13 -22
- package/es/style/index.css +719 -0
- package/es/style/index.less +6 -0
- package/es/style/variable.css +4 -0
- package/es/style/variable.less +4 -2
- package/es/style.js +2 -0
- package/lib/AMap/Map.js +3 -0
- package/lib/AMap/index.js +3 -0
- package/lib/BadgeStatus/Badge.js +3 -0
- package/lib/BadgeStatus/index.js +3 -0
- package/lib/CardSelect/CardSelect.js +4 -2
- package/lib/CardSelect/index.js +3 -0
- package/lib/CheckButton/CheckButton.js +4 -2
- package/lib/CheckButton/index.js +3 -0
- package/lib/CheckButton/style/index.css +37 -0
- package/lib/CheckButton/style/index.less +40 -0
- package/lib/ConfigProvider/index.js +3 -0
- package/lib/Echarts/Echarts.js +3 -0
- package/lib/Echarts/index.js +3 -0
- package/lib/Ellipsis/Ellipsis.js +23 -15
- package/lib/Ellipsis/index.js +3 -0
- package/lib/Ellipsis/style/index.css +17 -0
- package/lib/Ellipsis/style/index.less +20 -0
- package/lib/Empty/Empty.js +3 -0
- package/lib/Empty/index.js +3 -0
- package/lib/FullPage/FullPage.js +4 -1
- package/lib/FullPage/index.js +3 -0
- package/lib/Icon/index.js +3 -0
- package/lib/MonacoEditor/Monaco.js +4 -2
- package/lib/MonacoEditor/index.js +3 -0
- package/lib/PermissionButton/index.js +4 -1
- package/lib/ProLayout/Basic/BasicLayout.js +140 -41
- package/lib/ProLayout/PageContainer/index.js +2 -2
- package/lib/ProLayout/SiderMenu/BaseMenu.js +2 -3
- package/lib/ProLayout/SiderMenu/SiderMenu.js +32 -5
- package/lib/ProLayout/SiderMenu/index.less +226 -212
- package/lib/ProLayout/defaultSettings.js +40 -2
- package/lib/ProLayout/index.js +10 -0
- package/lib/ProLayout/style/default.less +4 -4
- package/lib/ProTable/index.js +4 -1
- package/lib/ProTable/style/index.css +5 -1
- package/lib/Scrollbar/index.js +3 -0
- package/lib/Search/Advanced/SaveHistory.js +1 -1
- package/lib/Search/Advanced/index.js +3 -0
- package/lib/Search/Item.js +1 -1
- package/lib/Search/Search.js +4 -1
- package/lib/Search/index.js +3 -0
- package/lib/ValueItem/ValueItem.js +3 -0
- package/lib/ValueItem/index.js +3 -0
- package/lib/components.js +134 -0
- package/lib/index.js +18 -138
- package/lib/style/components.less +2 -0
- package/lib/style/index.css +719 -0
- package/lib/style/index.less +6 -0
- package/lib/style/variable.css +4 -0
- package/lib/style/variable.less +4 -2
- package/lib/style.js +2 -0
- package/package.json +8 -10
|
@@ -12,15 +12,14 @@ import IconFont from '../../Icon';
|
|
|
12
12
|
import { regular } from '@jetlinks-web/utils';
|
|
13
13
|
import { Menu } from 'ant-design-vue';
|
|
14
14
|
import { createFromIconfontCN } from '@ant-design/icons-vue';
|
|
15
|
+
import 'ant-design-vue/es/_util/vue-types';
|
|
15
16
|
function _isSlot(s) {
|
|
16
17
|
return typeof s === 'function' || Object.prototype.toString.call(s) === '[object Object]' && !_isVNode(s);
|
|
17
18
|
}
|
|
18
19
|
export var baseMenuProps = _objectSpread(_objectSpread({}, defaultSettingProps), {}, {
|
|
19
20
|
prefixCls: {
|
|
20
21
|
type: String,
|
|
21
|
-
default:
|
|
22
|
-
return defaultPrefixCls;
|
|
23
|
-
}
|
|
22
|
+
default: defaultPrefixCls
|
|
24
23
|
},
|
|
25
24
|
locale: {
|
|
26
25
|
type: [Function, Boolean],
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
|
|
2
2
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
3
|
-
import { createVNode as _createVNode, isVNode as _isVNode, Fragment as _Fragment } from "vue";
|
|
3
|
+
import { createVNode as _createVNode, resolveDirective as _resolveDirective, isVNode as _isVNode, Fragment as _Fragment } from "vue";
|
|
4
4
|
import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
|
|
5
|
-
import { LayoutSider as Sider, Menu } from 'ant-design-vue';
|
|
5
|
+
import { LayoutSider as Sider, Menu, Tooltip } from 'ant-design-vue';
|
|
6
6
|
import BaseMenu, { baseMenuProps } from './BaseMenu';
|
|
7
|
-
import { defaultSettingProps } from '../defaultSettings';
|
|
7
|
+
import { defaultSettingProps, LayoutType } from '../defaultSettings';
|
|
8
8
|
import PropTypes from 'ant-design-vue/es/_util/vue-types';
|
|
9
9
|
import IconFont from '../../Icon';
|
|
10
10
|
import { useRouteContext } from '../RouteContext';
|
|
@@ -103,12 +103,37 @@ export var defaultRenderLogoAndTitle = function defaultRenderLogoAndTitle(props)
|
|
|
103
103
|
logo = _props$logo === void 0 ? 'http://demo.jetlinks.cn/static/logo.760eb65c.png' : _props$logo,
|
|
104
104
|
logoStyle = props.logoStyle,
|
|
105
105
|
title = props.title,
|
|
106
|
-
layout = props.layout
|
|
106
|
+
layout = props.layout,
|
|
107
|
+
apps = props.apps,
|
|
108
|
+
baseClassName = props.baseClassName;
|
|
109
|
+
var logoDom = defaultRenderLogo(logo, logoStyle);
|
|
107
110
|
var renderFunction = props[renderKey || ''];
|
|
111
|
+
if (props.layoutType === LayoutType.CARD) {
|
|
112
|
+
return _createVNode("a", null, [apps.length ? _createVNode(Tooltip, {
|
|
113
|
+
"placement": "rightTop",
|
|
114
|
+
"color": "#fff",
|
|
115
|
+
"arrowPointAtCenter": true
|
|
116
|
+
}, {
|
|
117
|
+
default: function _default() {
|
|
118
|
+
return [logoDom];
|
|
119
|
+
},
|
|
120
|
+
title: function title() {
|
|
121
|
+
return apps.map(function (item) {
|
|
122
|
+
return _createVNode("div", {
|
|
123
|
+
"class": "sider-app-menus"
|
|
124
|
+
}, [_createVNode("div", {
|
|
125
|
+
"class": "sider-app-menus-item",
|
|
126
|
+
"onClick": function onClick() {
|
|
127
|
+
return props.onAppMenuClick(item);
|
|
128
|
+
}
|
|
129
|
+
}, [item.label])]);
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}) : logoDom]);
|
|
133
|
+
}
|
|
108
134
|
if (layout === 'mix' && renderFunction === false) {
|
|
109
135
|
return null;
|
|
110
136
|
}
|
|
111
|
-
var logoDom = defaultRenderLogo(logo, logoStyle);
|
|
112
137
|
var titleDom = _createVNode("h1", null, _isSlot(title) ? title : {
|
|
113
138
|
default: function _default() {
|
|
114
139
|
return [title];
|
|
@@ -173,9 +198,11 @@ var SiderMenu = function SiderMenu(props) {
|
|
|
173
198
|
props.onSelect($event);
|
|
174
199
|
}
|
|
175
200
|
};
|
|
176
|
-
var headerDom = defaultRenderLogoAndTitle(props)
|
|
201
|
+
var headerDom = defaultRenderLogoAndTitle(_objectSpread(_objectSpread({}, props), {}, {
|
|
202
|
+
baseClassName: baseClassName
|
|
203
|
+
}));
|
|
177
204
|
var extraDom = menuExtraRender && menuExtraRender(props);
|
|
178
|
-
if (hasSplitMenu.value && unref(context.flatMenuData).length === 0) {
|
|
205
|
+
if (props.layoutType !== LayoutType.CARD && hasSplitMenu.value && unref(context.flatMenuData).length === 0) {
|
|
179
206
|
return null;
|
|
180
207
|
}
|
|
181
208
|
var defaultMenuDom = _createVNode(BaseMenu, {
|
|
@@ -245,7 +272,7 @@ var SiderMenu = function SiderMenu(props) {
|
|
|
245
272
|
}
|
|
246
273
|
}), _createVNode("div", {
|
|
247
274
|
"style": "flex: 1; overflow: hidden auto;"
|
|
248
|
-
}, [menuContentRender && menuContentRender(props, defaultMenuDom) || defaultMenuDom]), _createVNode("div", {
|
|
275
|
+
}, [props.layoutType === LayoutType.LIST ? menuContentRender && menuContentRender(props, defaultMenuDom) || defaultMenuDom : null]), _createVNode("div", {
|
|
249
276
|
"class": "".concat(baseClassName, "-links")
|
|
250
277
|
}, [collapsedButtonRender !== false ? _createVNode(Menu, {
|
|
251
278
|
"class": "".concat(baseClassName, "-link-menu"),
|
|
@@ -1,212 +1,226 @@
|
|
|
1
|
-
@import '../style/default.less';
|
|
2
|
-
|
|
3
|
-
@pro-layout-sider-menu-prefix-cls: ~'@{ant-prefix}-pro-sider';
|
|
4
|
-
|
|
5
|
-
@nav-header-height: @pro-layout-header-height;
|
|
6
|
-
|
|
7
|
-
.@{pro-layout-sider-menu-prefix-cls} {
|
|
8
|
-
position: relative;
|
|
9
|
-
background-color: @layout-sider-background;
|
|
10
|
-
border-right: 0;
|
|
11
|
-
// FIXME: 临时修正(可能不会做兼容)
|
|
12
|
-
z-index: 20;
|
|
13
|
-
|
|
14
|
-
// 这里关掉了动画,不然使用无法兼容
|
|
15
|
-
.@{ant-prefix}-menu {
|
|
16
|
-
background: transparent;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
&.@{ant-prefix}-layout-sider-light {
|
|
20
|
-
.@{ant-prefix}-menu-item a {
|
|
21
|
-
color: @heading-color;
|
|
22
|
-
}
|
|
23
|
-
.@{ant-prefix}-menu-item-selected a,
|
|
24
|
-
.@{ant-prefix}-menu-item a:hover {
|
|
25
|
-
color: @primary-color;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
&-logo {
|
|
30
|
-
position: relative;
|
|
31
|
-
display: flex;
|
|
32
|
-
align-items: center;
|
|
33
|
-
padding: 16px 16px;
|
|
34
|
-
cursor: pointer;
|
|
35
|
-
transition: padding 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
36
|
-
|
|
37
|
-
> a {
|
|
38
|
-
display: flex;
|
|
39
|
-
align-items: center;
|
|
40
|
-
justify-content: center;
|
|
41
|
-
min-height: 32px;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
img {
|
|
45
|
-
display: inline-block;
|
|
46
|
-
height: 32px;
|
|
47
|
-
vertical-align: middle;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
h1 {
|
|
51
|
-
display: inline-block;
|
|
52
|
-
height: 32px;
|
|
53
|
-
margin: 0 0 0 12px;
|
|
54
|
-
color: white;
|
|
55
|
-
font-weight: 600;
|
|
56
|
-
font-size: 18px;
|
|
57
|
-
line-height: 32px;
|
|
58
|
-
vertical-align: middle;
|
|
59
|
-
animation: pro-layout-title-hide 0.3s;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
&-extra {
|
|
64
|
-
margin-bottom: 16px;
|
|
65
|
-
padding: 0 16px;
|
|
66
|
-
&-no-logo {
|
|
67
|
-
margin-top: 16px;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
&-menu {
|
|
72
|
-
position: relative;
|
|
73
|
-
z-index: 10;
|
|
74
|
-
min-height: 100%;
|
|
75
|
-
box-shadow: 2px 0 6px rgba(0, 21, 41, 0.35);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
.@{ant-prefix}-layout-sider-children {
|
|
79
|
-
display: flex;
|
|
80
|
-
flex-direction: column;
|
|
81
|
-
height: 100%;
|
|
82
|
-
|
|
83
|
-
::-webkit-scrollbar {
|
|
84
|
-
width: 6px;
|
|
85
|
-
height: 6px;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
::-webkit-scrollbar-track {
|
|
89
|
-
background: rgba(255, 255, 255, 0.15);
|
|
90
|
-
border-radius: 3px;
|
|
91
|
-
box-shadow: inset 0 0 5px rgba(37, 37, 37, 0.05);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/* 滚动条滑块 */
|
|
95
|
-
::-webkit-scrollbar-thumb {
|
|
96
|
-
background: rgba(255, 255, 255, 0.2);
|
|
97
|
-
border-radius: 3px;
|
|
98
|
-
box-shadow: inset 0 0 5px rgba(255, 255, 255, 0.05);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
&.@{ant-prefix}-layout-sider-collapsed {
|
|
103
|
-
.@{ant-prefix}-menu-inline-collapsed {
|
|
104
|
-
width: 48px;
|
|
105
|
-
}
|
|
106
|
-
.@{pro-layout-sider-menu-prefix-cls} {
|
|
107
|
-
&-logo {
|
|
108
|
-
padding: 16px 8px;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
&.@{ant-prefix}-layout-sider.@{pro-layout-sider-menu-prefix-cls}-fixed {
|
|
114
|
-
position: fixed;
|
|
115
|
-
top: 0;
|
|
116
|
-
left: 0;
|
|
117
|
-
z-index: 99; // react pro-components: z-index: 100;
|
|
118
|
-
height: 100%;
|
|
119
|
-
overflow: auto;
|
|
120
|
-
overflow-x: hidden;
|
|
121
|
-
box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05);
|
|
122
|
-
> .@{ant-prefix}-menu-root {
|
|
123
|
-
:not(.@{pro-layout-sider-menu-prefix-cls}-link-menu) {
|
|
124
|
-
height: ~'calc(100vh - @{nav-header-height})';
|
|
125
|
-
overflow-y: auto;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
&-light {
|
|
131
|
-
background-color: @component-background;
|
|
132
|
-
box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05);
|
|
133
|
-
|
|
134
|
-
.@{ant-prefix}-layout-sider-children {
|
|
135
|
-
::-webkit-scrollbar-track {
|
|
136
|
-
background: rgba(0, 0, 0, 0.06);
|
|
137
|
-
border-radius: 3px;
|
|
138
|
-
box-shadow: inset 0 0 5px rgba(0, 21, 41, 0.05);
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
/* 滚动条滑块 */
|
|
142
|
-
::-webkit-scrollbar-thumb {
|
|
143
|
-
background: rgba(0, 0, 0, 0.12);
|
|
144
|
-
border-radius: 3px;
|
|
145
|
-
box-shadow: inset 0 0 5px rgba(0, 21, 41, 0.05);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
.@{pro-layout-sider-menu-prefix-cls}-logo {
|
|
150
|
-
h1 {
|
|
151
|
-
color: @primary-color;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
.@{ant-prefix}-menu-light {
|
|
155
|
-
border-right-color: transparent;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
.@{pro-layout-sider-menu-prefix-cls}-collapsed-button {
|
|
159
|
-
border-top: @border-width-base @border-style-base
|
|
160
|
-
@border-color-split;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
&-icon {
|
|
165
|
-
width: 14px;
|
|
166
|
-
vertical-align: baseline;
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
&-links {
|
|
170
|
-
width: 100%;
|
|
171
|
-
ul.@{ant-prefix}-menu-root {
|
|
172
|
-
height: auto;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
&-collapsed-button {
|
|
177
|
-
border-top: @border-width-base @border-style-base rgba(0, 0, 0, 0.25);
|
|
178
|
-
.anticon {
|
|
179
|
-
font-size: 16px;
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.top-nav-menu li.@{ant-prefix}-menu-item {
|
|
184
|
-
height: 100%;
|
|
185
|
-
line-height: 1;
|
|
186
|
-
}
|
|
187
|
-
.drawer .drawer-content {
|
|
188
|
-
background: @layout-sider-background;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
// 修正菜单 collapsed 时,icon 与 title 的间距
|
|
193
|
-
.@{ant-prefix}-pro-menu-item {
|
|
194
|
-
.anticon + .@{ant-prefix}-pro-menu-item-title {
|
|
195
|
-
margin-left: 10px;
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
1
|
+
@import '../style/default.less';
|
|
2
|
+
|
|
3
|
+
@pro-layout-sider-menu-prefix-cls: ~'@{ant-prefix}-pro-sider';
|
|
4
|
+
|
|
5
|
+
@nav-header-height: @pro-layout-header-height;
|
|
6
|
+
|
|
7
|
+
.@{pro-layout-sider-menu-prefix-cls} {
|
|
8
|
+
position: relative;
|
|
9
|
+
background-color: @layout-sider-background;
|
|
10
|
+
border-right: 0;
|
|
11
|
+
// FIXME: 临时修正(可能不会做兼容)
|
|
12
|
+
z-index: 20;
|
|
13
|
+
|
|
14
|
+
// 这里关掉了动画,不然使用无法兼容
|
|
15
|
+
.@{ant-prefix}-menu {
|
|
16
|
+
background: transparent;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
&.@{ant-prefix}-layout-sider-light {
|
|
20
|
+
.@{ant-prefix}-menu-item a {
|
|
21
|
+
color: @heading-color;
|
|
22
|
+
}
|
|
23
|
+
.@{ant-prefix}-menu-item-selected a,
|
|
24
|
+
.@{ant-prefix}-menu-item a:hover {
|
|
25
|
+
color: @primary-color;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
&-logo {
|
|
30
|
+
position: relative;
|
|
31
|
+
display: flex;
|
|
32
|
+
align-items: center;
|
|
33
|
+
padding: 16px 16px;
|
|
34
|
+
cursor: pointer;
|
|
35
|
+
transition: padding 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
|
|
36
|
+
|
|
37
|
+
> a {
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
justify-content: center;
|
|
41
|
+
min-height: 32px;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
img {
|
|
45
|
+
display: inline-block;
|
|
46
|
+
height: 32px;
|
|
47
|
+
vertical-align: middle;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
h1 {
|
|
51
|
+
display: inline-block;
|
|
52
|
+
height: 32px;
|
|
53
|
+
margin: 0 0 0 12px;
|
|
54
|
+
color: white;
|
|
55
|
+
font-weight: 600;
|
|
56
|
+
font-size: 18px;
|
|
57
|
+
line-height: 32px;
|
|
58
|
+
vertical-align: middle;
|
|
59
|
+
animation: pro-layout-title-hide 0.3s;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
&-extra {
|
|
64
|
+
margin-bottom: 16px;
|
|
65
|
+
padding: 0 16px;
|
|
66
|
+
&-no-logo {
|
|
67
|
+
margin-top: 16px;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
&-menu {
|
|
72
|
+
position: relative;
|
|
73
|
+
z-index: 10;
|
|
74
|
+
min-height: 100%;
|
|
75
|
+
box-shadow: 2px 0 6px rgba(0, 21, 41, 0.35);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.@{ant-prefix}-layout-sider-children {
|
|
79
|
+
display: flex;
|
|
80
|
+
flex-direction: column;
|
|
81
|
+
height: 100%;
|
|
82
|
+
|
|
83
|
+
::-webkit-scrollbar {
|
|
84
|
+
width: 6px;
|
|
85
|
+
height: 6px;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
::-webkit-scrollbar-track {
|
|
89
|
+
background: rgba(255, 255, 255, 0.15);
|
|
90
|
+
border-radius: 3px;
|
|
91
|
+
box-shadow: inset 0 0 5px rgba(37, 37, 37, 0.05);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* 滚动条滑块 */
|
|
95
|
+
::-webkit-scrollbar-thumb {
|
|
96
|
+
background: rgba(255, 255, 255, 0.2);
|
|
97
|
+
border-radius: 3px;
|
|
98
|
+
box-shadow: inset 0 0 5px rgba(255, 255, 255, 0.05);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
&.@{ant-prefix}-layout-sider-collapsed {
|
|
103
|
+
.@{ant-prefix}-menu-inline-collapsed {
|
|
104
|
+
width: 48px;
|
|
105
|
+
}
|
|
106
|
+
.@{pro-layout-sider-menu-prefix-cls} {
|
|
107
|
+
&-logo {
|
|
108
|
+
padding: 16px 8px;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
&.@{ant-prefix}-layout-sider.@{pro-layout-sider-menu-prefix-cls}-fixed {
|
|
114
|
+
position: fixed;
|
|
115
|
+
top: 0;
|
|
116
|
+
left: 0;
|
|
117
|
+
z-index: 99; // react pro-components: z-index: 100;
|
|
118
|
+
height: 100%;
|
|
119
|
+
overflow: auto;
|
|
120
|
+
overflow-x: hidden;
|
|
121
|
+
box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05);
|
|
122
|
+
> .@{ant-prefix}-menu-root {
|
|
123
|
+
:not(.@{pro-layout-sider-menu-prefix-cls}-link-menu) {
|
|
124
|
+
height: ~'calc(100vh - @{nav-header-height})';
|
|
125
|
+
overflow-y: auto;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
&-light {
|
|
131
|
+
background-color: @component-background;
|
|
132
|
+
box-shadow: 2px 0 8px 0 rgba(29, 35, 41, 0.05);
|
|
133
|
+
|
|
134
|
+
.@{ant-prefix}-layout-sider-children {
|
|
135
|
+
::-webkit-scrollbar-track {
|
|
136
|
+
background: rgba(0, 0, 0, 0.06);
|
|
137
|
+
border-radius: 3px;
|
|
138
|
+
box-shadow: inset 0 0 5px rgba(0, 21, 41, 0.05);
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
/* 滚动条滑块 */
|
|
142
|
+
::-webkit-scrollbar-thumb {
|
|
143
|
+
background: rgba(0, 0, 0, 0.12);
|
|
144
|
+
border-radius: 3px;
|
|
145
|
+
box-shadow: inset 0 0 5px rgba(0, 21, 41, 0.05);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.@{pro-layout-sider-menu-prefix-cls}-logo {
|
|
150
|
+
h1 {
|
|
151
|
+
color: @primary-color;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
.@{ant-prefix}-menu-light {
|
|
155
|
+
border-right-color: transparent;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.@{pro-layout-sider-menu-prefix-cls}-collapsed-button {
|
|
159
|
+
border-top: @border-width-base @border-style-base
|
|
160
|
+
@border-color-split;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
&-icon {
|
|
165
|
+
width: 14px;
|
|
166
|
+
vertical-align: baseline;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
&-links {
|
|
170
|
+
width: 100%;
|
|
171
|
+
ul.@{ant-prefix}-menu-root {
|
|
172
|
+
height: auto;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
&-collapsed-button {
|
|
177
|
+
border-top: @border-width-base @border-style-base rgba(0, 0, 0, 0.25);
|
|
178
|
+
.anticon {
|
|
179
|
+
font-size: 16px;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
.top-nav-menu li.@{ant-prefix}-menu-item {
|
|
184
|
+
height: 100%;
|
|
185
|
+
line-height: 1;
|
|
186
|
+
}
|
|
187
|
+
.drawer .drawer-content {
|
|
188
|
+
background: @layout-sider-background;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
// 修正菜单 collapsed 时,icon 与 title 的间距
|
|
193
|
+
.@{ant-prefix}-pro-menu-item {
|
|
194
|
+
.anticon + .@{ant-prefix}-pro-menu-item-title {
|
|
195
|
+
margin-left: 10px;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
.sider-app-menus {
|
|
200
|
+
width: 100px;
|
|
201
|
+
background-color: #fff;
|
|
202
|
+
cursor: pointer;
|
|
203
|
+
padding: 6px;
|
|
204
|
+
transition: all .3s;
|
|
205
|
+
border-radius: 4px;
|
|
206
|
+
color: #333;
|
|
207
|
+
|
|
208
|
+
&:hover {
|
|
209
|
+
background-color: #efefef;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
@keyframes pro-layout-title-hide {
|
|
214
|
+
0% {
|
|
215
|
+
display: none;
|
|
216
|
+
opacity: 0;
|
|
217
|
+
}
|
|
218
|
+
80% {
|
|
219
|
+
display: none;
|
|
220
|
+
opacity: 0;
|
|
221
|
+
}
|
|
222
|
+
100% {
|
|
223
|
+
display: unset;
|
|
224
|
+
opacity: 1;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import "vue";
|
|
2
|
+
import PropTypes from "ant-design-vue/es/_util/vue-types";
|
|
1
3
|
export var defaultSettings = {
|
|
2
4
|
theme: 'light',
|
|
3
5
|
layout: 'mix',
|
|
@@ -12,6 +14,10 @@ export var defaultSettings = {
|
|
|
12
14
|
iconfontUrl: '',
|
|
13
15
|
primaryColor: '#315EFB'
|
|
14
16
|
};
|
|
17
|
+
export var LayoutType = {
|
|
18
|
+
CARD: 'card',
|
|
19
|
+
LIST: 'list'
|
|
20
|
+
};
|
|
15
21
|
export var defaultSettingProps = {
|
|
16
22
|
theme: {
|
|
17
23
|
type: String,
|
|
@@ -62,5 +68,36 @@ export var defaultSettingProps = {
|
|
|
62
68
|
default: function _default() {
|
|
63
69
|
return defaultSettings.primaryColor;
|
|
64
70
|
}
|
|
65
|
-
}
|
|
71
|
+
},
|
|
72
|
+
layoutType: {
|
|
73
|
+
type: String,
|
|
74
|
+
default: LayoutType.LIST
|
|
75
|
+
},
|
|
76
|
+
cardSiderWidth: {
|
|
77
|
+
type: Number,
|
|
78
|
+
default: 60
|
|
79
|
+
},
|
|
80
|
+
historyRoutes: {
|
|
81
|
+
type: Array,
|
|
82
|
+
default: function _default() {
|
|
83
|
+
return [];
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
historyActive: {
|
|
87
|
+
type: String,
|
|
88
|
+
default: undefined
|
|
89
|
+
},
|
|
90
|
+
pageFooterStyle: {
|
|
91
|
+
type: Object,
|
|
92
|
+
default: function _default() {
|
|
93
|
+
return undefined;
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
apps: {
|
|
97
|
+
type: Array,
|
|
98
|
+
default: function _default() {
|
|
99
|
+
return [];
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
onAppMenuClick: PropTypes.func
|
|
66
103
|
};
|
package/es/ProLayout/index.js
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import ProLayout from './Basic/BasicLayout';
|
|
2
2
|
import PageContainer from './PageContainer';
|
|
3
|
-
|
|
3
|
+
import { LayoutType } from './defaultSettings';
|
|
4
|
+
ProLayout.install = function (app) {
|
|
5
|
+
app.component(ProLayout.name, ProLayout);
|
|
6
|
+
};
|
|
7
|
+
export { PageContainer, LayoutType };
|
|
4
8
|
export default ProLayout;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@import 'ant-design-vue/es/style/themes/index.less';
|
|
2
|
-
|
|
3
|
-
@basicLayout-prefix-cls: ~'@{ant-prefix}-pro-basicLayout';
|
|
4
|
-
@pro-layout-header-height: 48px;
|
|
1
|
+
@import 'ant-design-vue/es/style/themes/index.less';
|
|
2
|
+
|
|
3
|
+
@basicLayout-prefix-cls: ~'@{ant-prefix}-pro-basicLayout';
|
|
4
|
+
@pro-layout-header-height: 48px;
|
package/es/ProTable/index.js
CHANGED
|
@@ -111,7 +111,7 @@ var tableProps = function tableProps() {
|
|
|
111
111
|
});
|
|
112
112
|
};
|
|
113
113
|
var ProTable = defineComponent({
|
|
114
|
-
name: '
|
|
114
|
+
name: 'JProTable',
|
|
115
115
|
slots: ['headerTitle', 'card', 'rightExtraRender', 'paginationRender' // 分页
|
|
116
116
|
],
|
|
117
117
|
props: tableProps(),
|
|
@@ -408,4 +408,7 @@ var ProTable = defineComponent({
|
|
|
408
408
|
};
|
|
409
409
|
}
|
|
410
410
|
});
|
|
411
|
+
ProTable.install = function (app) {
|
|
412
|
+
app.component(ProTable.name, ProTable);
|
|
413
|
+
};
|
|
411
414
|
export default ProTable;
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
/* stylelint-disable at-rule-empty-line-before,at-rule-name-space-after,at-rule-no-unknown */
|
|
2
|
+
/* stylelint-disable no-duplicate-selectors */
|
|
3
|
+
/* stylelint-disable */
|
|
4
|
+
/* stylelint-disable declaration-bang-space-before,no-duplicate-selectors,string-no-newline */
|
|
1
5
|
.jtable-body-spin {
|
|
2
6
|
min-height: 100%;
|
|
3
7
|
width: 100%;
|
|
@@ -35,7 +39,7 @@
|
|
|
35
39
|
padding: 0 8px;
|
|
36
40
|
}
|
|
37
41
|
.jtable-body-spin .jtable-body .jtable-body-header .jtable-body-header-right .jtable-body-header-right-button .ant-radio-button-wrapper-checked .right-button-icon {
|
|
38
|
-
color: #
|
|
42
|
+
color: #1890ff;
|
|
39
43
|
}
|
|
40
44
|
.jtable-body-spin .jtable-body .jtable-content {
|
|
41
45
|
flex: 1;
|
package/es/Scrollbar/index.js
CHANGED
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
} */
|
|
22
22
|
import { defineComponent as _defineComponent } from 'vue';
|
|
23
23
|
import { unref as _unref, createVNode as _createVNode, withCtx as _withCtx, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createBlock as _createBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from "vue";
|
|
24
|
-
const _withScopeId = n => (_pushScopeId("data-v-
|
|
24
|
+
const _withScopeId = n => (_pushScopeId("data-v-1713333272038"), n = n(), _popScopeId(), n);
|
|
25
25
|
const _hoisted_1 = {
|
|
26
26
|
key: 0,
|
|
27
27
|
style: { "width": "240px" }
|
|
@@ -105,6 +105,9 @@ import { Select, Button, Form, FormItemRest } from 'ant-design-vue';
|
|
|
105
105
|
import { AIcon } from '../../../';
|
|
106
106
|
import { cloneDeep } from 'lodash-es';
|
|
107
107
|
const __sfc_main__ = _defineComponent({
|
|
108
|
+
...{
|
|
109
|
+
name: 'JAdvancedSearch',
|
|
110
|
+
},
|
|
108
111
|
props: {
|
|
109
112
|
columns: {
|
|
110
113
|
type: Array,
|