@lambo-design/shared 1.0.0-beta.297 → 1.0.0-beta.299
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/config/themes/canglan/canglan.css +8 -9
- package/config/themes/canglan/var.less +4 -4
- package/config/themes/theme-canglan.js +8 -8
- package/nstyles/components/tree.less +5 -2
- package/nstyles/third/view-design.less +3 -0
- package/package.json +1 -1
- package/utils/json.js +22 -7
- package/utils/locale/en-US.js +1 -0
- package/utils/locale/zh-CN.js +1 -0
- package/utils/style.js +24 -24
- package/utils/transfer-queue.js +7 -7
|
@@ -186,8 +186,8 @@ vxe-table
|
|
|
186
186
|
--layout-header-padding: 0 50px;
|
|
187
187
|
--layout-footer-padding: 24px 50px;
|
|
188
188
|
--layout-footer-background: #f5f7f9;
|
|
189
|
-
--layout-sider-background: #
|
|
190
|
-
--layout-sider-background-tint-10: #
|
|
189
|
+
--layout-sider-background: #081E41;
|
|
190
|
+
--layout-sider-background-tint-10: #213454;
|
|
191
191
|
--layout-trigger-height: 48px;
|
|
192
192
|
--layout-trigger-color: #fff;
|
|
193
193
|
--layout-zero-trigger-width: 36px;
|
|
@@ -209,20 +209,20 @@ vxe-table
|
|
|
209
209
|
--layout-sider-submenu-color: #9D9DBA;
|
|
210
210
|
--layout-sider-submenu-active-color: #9D9DBA;
|
|
211
211
|
--layout-sider-submenu-hover-color: #FFFFFF;
|
|
212
|
-
--layout-sider-submenu-background: #
|
|
213
|
-
--layout-sider-submenu-active-background: #
|
|
212
|
+
--layout-sider-submenu-background: #081E41;
|
|
213
|
+
--layout-sider-submenu-active-background: #081E41;
|
|
214
214
|
--layout-sider-submenu-hover-background: rgba(255, 255, 255, 0.2);
|
|
215
215
|
--layout-sider-menuitem-color: #9D9DBA;
|
|
216
216
|
--layout-sider-menuitem-active-color: #fff;
|
|
217
217
|
--layout-sider-menuitem-hover-color: #fff;
|
|
218
|
-
--layout-sider-menuitem-background: #
|
|
218
|
+
--layout-sider-menuitem-background: #071B3A;
|
|
219
219
|
--layout-sider-menuitem-active-background: #145DFF;
|
|
220
|
-
--layout-sider-menuitem-hover-background: #
|
|
220
|
+
--layout-sider-menuitem-hover-background: #1F3459;
|
|
221
221
|
--layout-sider-search-color: #9D9DBA;
|
|
222
|
-
--layout-sider-search-background: #
|
|
222
|
+
--layout-sider-search-background: #081E41;
|
|
223
223
|
--layout-sider-search-active-color: #333333;
|
|
224
224
|
--layout-sider-search-active-background: rgba(255, 255, 255, 0.2);
|
|
225
|
-
--layout-sider-line-color: #
|
|
225
|
+
--layout-sider-line-color: #081E41;
|
|
226
226
|
--layout-sider-menuitem-active-margin: 5px 10px;
|
|
227
227
|
--layout-sider-menuitem-active-border-radius: 6px;
|
|
228
228
|
--layout-sider-menuitem-active-font-weight: 700;
|
|
@@ -586,4 +586,3 @@ vxe-table
|
|
|
586
586
|
--indicator-card-header-color: #fff;
|
|
587
587
|
--indicator-card-header-background-color: #145DFF;
|
|
588
588
|
}
|
|
589
|
-
/*# sourceMappingURL=canglan.css.map */
|
|
@@ -195,7 +195,7 @@
|
|
|
195
195
|
@layout-header-padding : 0 50px;
|
|
196
196
|
@layout-footer-padding : 24px 50px;
|
|
197
197
|
@layout-footer-background : @layout-body-background;
|
|
198
|
-
@layout-sider-background : #
|
|
198
|
+
@layout-sider-background : #081E41;
|
|
199
199
|
@layout-sider-background-tint-10 : tint(@layout-sider-background, 10%);
|
|
200
200
|
@layout-trigger-height : 48px;
|
|
201
201
|
@layout-trigger-color : #fff;
|
|
@@ -226,14 +226,14 @@
|
|
|
226
226
|
@layout-sider-menuitem-color : @menu-dark-subsidiary-color;
|
|
227
227
|
@layout-sider-menuitem-active-color : @white;
|
|
228
228
|
@layout-sider-menuitem-hover-color : @white;
|
|
229
|
-
@layout-sider-menuitem-background : #
|
|
229
|
+
@layout-sider-menuitem-background : #071B3A;
|
|
230
230
|
@layout-sider-menuitem-active-background : @primary-color;
|
|
231
|
-
@layout-sider-menuitem-hover-background :
|
|
231
|
+
@layout-sider-menuitem-hover-background : #1F3459;
|
|
232
232
|
@layout-sider-search-color : @layout-sider-submenu-color;
|
|
233
233
|
@layout-sider-search-background : @layout-sider-background;
|
|
234
234
|
@layout-sider-search-active-color : @layout-header-drop-active-color;
|
|
235
235
|
@layout-sider-search-active-background : @layout-header-drop-active-background;
|
|
236
|
-
@layout-sider-line-color :
|
|
236
|
+
@layout-sider-line-color : #081E41;
|
|
237
237
|
@layout-sider-menuitem-active-margin : 5px 10px;
|
|
238
238
|
@layout-sider-menuitem-active-border-radius: 6px;
|
|
239
239
|
@layout-sider-menuitem-active-font-weight : 700;
|
|
@@ -164,8 +164,8 @@ export default {
|
|
|
164
164
|
--layout-header-padding: 0 50px;
|
|
165
165
|
--layout-footer-padding: 24px 50px;
|
|
166
166
|
--layout-footer-background: #f5f7f9;
|
|
167
|
-
--layout-sider-background: #
|
|
168
|
-
--layout-sider-background-tint-10: #
|
|
167
|
+
--layout-sider-background: #081E41;
|
|
168
|
+
--layout-sider-background-tint-10: #213454;
|
|
169
169
|
--layout-trigger-height: 48px;
|
|
170
170
|
--layout-trigger-color: #fff;
|
|
171
171
|
--layout-zero-trigger-width: 36px;
|
|
@@ -187,20 +187,20 @@ export default {
|
|
|
187
187
|
--layout-sider-submenu-color: #9D9DBA;
|
|
188
188
|
--layout-sider-submenu-active-color: #9D9DBA;
|
|
189
189
|
--layout-sider-submenu-hover-color: #FFFFFF;
|
|
190
|
-
--layout-sider-submenu-background: #
|
|
191
|
-
--layout-sider-submenu-active-background: #
|
|
190
|
+
--layout-sider-submenu-background: #081E41;
|
|
191
|
+
--layout-sider-submenu-active-background: #081E41;
|
|
192
192
|
--layout-sider-submenu-hover-background: rgba(255, 255, 255, 0.2);
|
|
193
193
|
--layout-sider-menuitem-color: #9D9DBA;
|
|
194
194
|
--layout-sider-menuitem-active-color: #fff;
|
|
195
195
|
--layout-sider-menuitem-hover-color: #fff;
|
|
196
|
-
--layout-sider-menuitem-background: #
|
|
196
|
+
--layout-sider-menuitem-background: #071B3A;
|
|
197
197
|
--layout-sider-menuitem-active-background: #145DFF;
|
|
198
|
-
--layout-sider-menuitem-hover-background: #
|
|
198
|
+
--layout-sider-menuitem-hover-background: #1F3459;
|
|
199
199
|
--layout-sider-search-color: #9D9DBA;
|
|
200
|
-
--layout-sider-search-background: #
|
|
200
|
+
--layout-sider-search-background: #081E41;
|
|
201
201
|
--layout-sider-search-active-color: #333333;
|
|
202
202
|
--layout-sider-search-active-background: rgba(255, 255, 255, 0.2);
|
|
203
|
-
--layout-sider-line-color: #
|
|
203
|
+
--layout-sider-line-color: #081E41;
|
|
204
204
|
--layout-sider-menuitem-active-margin: 5px 10px;
|
|
205
205
|
--layout-sider-menuitem-active-border-radius: 6px;
|
|
206
206
|
--layout-sider-menuitem-active-font-weight: 700;
|
|
@@ -86,8 +86,11 @@
|
|
|
86
86
|
}
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
|
|
90
|
-
|
|
89
|
+
// 所有的状态,选中以后都是白色字体,绿色、红色在蓝色背景下字体识别困难
|
|
90
|
+
.ivu-tree-title-selected .title-status
|
|
91
|
+
// .blue
|
|
92
|
+
{
|
|
93
|
+
color: var(--ind-white) !important;
|
|
91
94
|
}
|
|
92
95
|
|
|
93
96
|
.emp-tree-box {
|
package/package.json
CHANGED
package/utils/json.js
CHANGED
|
@@ -13,17 +13,32 @@ json.stringify = function (value) {
|
|
|
13
13
|
});
|
|
14
14
|
}
|
|
15
15
|
/**
|
|
16
|
-
* 字符串(
|
|
17
|
-
*
|
|
18
|
-
* @
|
|
16
|
+
* 字符串(包含函数)转对象(函数可调用)
|
|
17
|
+
* 支持将形如 "function() { ... }" 的字符串还原为可执行的函数
|
|
18
|
+
* @param {string} value - 要解析的 JSON 字符串
|
|
19
|
+
* @returns {any} 解析后的 JavaScript 对象(包含可调用函数)
|
|
19
20
|
*/
|
|
20
21
|
json.parse = function (value) {
|
|
21
|
-
return JSON.parse(value,function(k,v){
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
return JSON.parse(value, function (k, v) {
|
|
23
|
+
// 检查值是否为字符串,并且包含 "function" 关键字
|
|
24
|
+
if (typeof v === 'string' && v.includes('function')) {
|
|
25
|
+
// 使用正则进一步判断是否为函数定义(避免将普通文本如 "type: 'user-function'" 误判)
|
|
26
|
+
const functionPattern = /^\s*function\s*\b|\bfunction\s*\(/;
|
|
27
|
+
if (functionPattern.test(v)) {
|
|
28
|
+
try {
|
|
29
|
+
// 通过立即执行函数的方式将字符串转为真正的函数
|
|
30
|
+
return eval("(function(){return " + v + "})()");
|
|
31
|
+
} catch (e) {
|
|
32
|
+
// 解析失败时给出中文警告,并返回原字符串
|
|
33
|
+
console.warn(`【JSON解析警告】键 "${k}" 的函数字符串解析失败:`, v);
|
|
34
|
+
console.warn(`错误信息:`, e.message);
|
|
35
|
+
return v; // 保留原始字符串,避免程序崩溃
|
|
36
|
+
}
|
|
37
|
+
}
|
|
24
38
|
}
|
|
39
|
+
// 非函数字符串或非字符串类型,直接返回原值
|
|
25
40
|
return v;
|
|
26
41
|
});
|
|
27
|
-
}
|
|
42
|
+
};
|
|
28
43
|
|
|
29
44
|
export default json;
|
package/utils/locale/en-US.js
CHANGED
|
@@ -132,6 +132,7 @@ let enUSData = {
|
|
|
132
132
|
'input-phone': 'Please enter your phone number',
|
|
133
133
|
'new-pas': 'New login password',
|
|
134
134
|
'confirm-new-pas': 'Confirm new login password',
|
|
135
|
+
'submit': 'Submit',
|
|
135
136
|
'reset-success': 'Reset successful!',
|
|
136
137
|
'redirect-later': 's automatically return to the login page',
|
|
137
138
|
'redirect': 'ֱDirect jump',
|
package/utils/locale/zh-CN.js
CHANGED
package/utils/style.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
const SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g
|
|
2
|
-
const MOZ_HACK_REGEXP = /^moz([A-Z])/
|
|
3
|
-
|
|
4
|
-
function camelCase(name) {
|
|
5
|
-
return name
|
|
6
|
-
.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
|
|
7
|
-
return offset ? letter.toUpperCase() : letter
|
|
8
|
-
})
|
|
9
|
-
.replace(MOZ_HACK_REGEXP, 'Moz$1')
|
|
10
|
-
}
|
|
11
|
-
// getStyle
|
|
12
|
-
export function getStyle(element, styleName) {
|
|
13
|
-
if (!element || !styleName) return null
|
|
14
|
-
styleName = camelCase(styleName)
|
|
15
|
-
if (styleName === 'float') {
|
|
16
|
-
styleName = 'cssFloat'
|
|
17
|
-
}
|
|
18
|
-
try {
|
|
19
|
-
const computed = document.defaultView.getComputedStyle(element, '')
|
|
20
|
-
return element.style[styleName] || computed ? computed[styleName] : null
|
|
21
|
-
} catch (e) {
|
|
22
|
-
return element.style[styleName]
|
|
23
|
-
}
|
|
24
|
-
}
|
|
1
|
+
const SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g
|
|
2
|
+
const MOZ_HACK_REGEXP = /^moz([A-Z])/
|
|
3
|
+
|
|
4
|
+
function camelCase(name) {
|
|
5
|
+
return name
|
|
6
|
+
.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
|
|
7
|
+
return offset ? letter.toUpperCase() : letter
|
|
8
|
+
})
|
|
9
|
+
.replace(MOZ_HACK_REGEXP, 'Moz$1')
|
|
10
|
+
}
|
|
11
|
+
// getStyle
|
|
12
|
+
export function getStyle(element, styleName) {
|
|
13
|
+
if (!element || !styleName) return null
|
|
14
|
+
styleName = camelCase(styleName)
|
|
15
|
+
if (styleName === 'float') {
|
|
16
|
+
styleName = 'cssFloat'
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
const computed = document.defaultView.getComputedStyle(element, '')
|
|
20
|
+
return element.style[styleName] || computed ? computed[styleName] : null
|
|
21
|
+
} catch (e) {
|
|
22
|
+
return element.style[styleName]
|
|
23
|
+
}
|
|
24
|
+
}
|
package/utils/transfer-queue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
let transferIndex = 1000
|
|
2
|
-
|
|
3
|
-
function transferIncrease() {
|
|
4
|
-
transferIndex++
|
|
5
|
-
}
|
|
6
|
-
|
|
7
|
-
export { transferIndex, transferIncrease }
|
|
1
|
+
let transferIndex = 1000
|
|
2
|
+
|
|
3
|
+
function transferIncrease() {
|
|
4
|
+
transferIndex++
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export { transferIndex, transferIncrease }
|