efront 3.4.5 → 3.5.1
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/apps/pivot/api.yml +2 -1
- package/apps/pivot/home/welcome.js +4 -4
- package/apps/pivot/main.js +4 -1
- package/apps/pivot/main.less +3 -0
- package/apps/pivot/menu.yml +3 -1
- package/apps/pivot/share/edit.html +10 -0
- package/apps/pivot/share/edit.js +16 -0
- package/apps/pivot/share/list.html +1 -0
- package/apps/pivot/share/list.js +36 -0
- package/coms/layer/glance.js +2 -2
- package/coms/zimoli/alert.js +7 -6
- package/coms/zimoli/appendChild.js +1 -0
- package/coms/zimoli/button.js +5 -0
- package/coms/zimoli/button.less +6 -2
- package/coms/zimoli/checker.html +1 -1
- package/coms/zimoli/checker.less +8 -6
- package/coms/zimoli/color.js +128 -83
- package/coms/zimoli/colorpad.js +2 -4
- package/coms/zimoli/data.js +8 -4
- package/coms/zimoli/gallery.js +2 -12
- package/coms/zimoli/getGenerator.js +16 -10
- package/coms/zimoli/image.less +4 -0
- package/coms/zimoli/list.js +2 -12
- package/coms/zimoli/menu.js +4 -14
- package/coms/zimoli/menuList.js +4 -3
- package/coms/zimoli/on.js +18 -0
- package/coms/zimoli/radio.html +1 -1
- package/coms/zimoli/radio.less +25 -7
- package/coms/zimoli/render.js +97 -101
- package/coms/zimoli/table.html +16 -0
- package/coms/zimoli/table.js +15 -0
- package/coms/zimoli/table.less +57 -40
- package/coms/zimoli/view.less +11 -4
- package/coms/zimoli/zimoli.js +11 -5
- package/package.json +1 -1
- package/public/efront.js +1 -1
package/apps/pivot/api.yml
CHANGED
|
@@ -13,12 +13,12 @@ function main() {
|
|
|
13
13
|
} catch { }
|
|
14
14
|
target.removeAttribute('pending');
|
|
15
15
|
},
|
|
16
|
-
logout() {
|
|
16
|
+
async logout() {
|
|
17
17
|
data.setSource('authorization', null);
|
|
18
|
-
user.
|
|
19
|
-
|
|
18
|
+
await user.Logout();
|
|
19
|
+
zimoli.switch();
|
|
20
|
+
zimoli();
|
|
20
21
|
}
|
|
21
22
|
});
|
|
22
|
-
console.log(page)
|
|
23
23
|
return page;
|
|
24
24
|
}
|
package/apps/pivot/main.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
data.loadConfig("api.yml");
|
|
2
2
|
user.loginPath = '/auth/login';
|
|
3
|
-
|
|
3
|
+
var token = data.getSource('authorization');
|
|
4
|
+
if (token) {
|
|
5
|
+
user.login({});
|
|
6
|
+
}
|
|
4
7
|
setInterval(function () {
|
|
5
8
|
var auth = data.getSource('authorization');
|
|
6
9
|
if (!auth) return;
|
package/apps/pivot/menu.yml
CHANGED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
function main({ fields, item }) {
|
|
2
|
+
var page = view();
|
|
3
|
+
page.innerHTML = edit;
|
|
4
|
+
renderWithDefaults(page, {
|
|
5
|
+
fields,
|
|
6
|
+
close() {
|
|
7
|
+
return remove(page);
|
|
8
|
+
},
|
|
9
|
+
save() {
|
|
10
|
+
return data.from("share", { opt: item ? 'update' : 'create', data: this.data }).loading_promise;
|
|
11
|
+
},
|
|
12
|
+
data: Object.assign({}, item)
|
|
13
|
+
});
|
|
14
|
+
drag.on(page.firstChild, page);
|
|
15
|
+
return page;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<table :src=[fields,data]></table>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
var fields = refilm`
|
|
2
|
+
路径/path
|
|
3
|
+
挂载点/name
|
|
4
|
+
`;
|
|
5
|
+
var options = [
|
|
6
|
+
{
|
|
7
|
+
name: "删除",
|
|
8
|
+
do(e) {
|
|
9
|
+
data.from('share', { opt: 'delete', item: e });
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
name: "修改",
|
|
14
|
+
do(e) {
|
|
15
|
+
popup('/share/edit', { fields, item: e });
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
];
|
|
19
|
+
console.log(fields)
|
|
20
|
+
function main() {
|
|
21
|
+
var page = div();
|
|
22
|
+
page.innerHTML = list;
|
|
23
|
+
var a = data.from("share", { opt: 'list' }, a => {
|
|
24
|
+
if (a) return a.map(b => ({ path: b }));
|
|
25
|
+
});
|
|
26
|
+
renderWithDefaults(page, {
|
|
27
|
+
data: a,
|
|
28
|
+
fields: fields.concat({
|
|
29
|
+
name: "操作",
|
|
30
|
+
type: 'button',
|
|
31
|
+
options,
|
|
32
|
+
}),
|
|
33
|
+
});
|
|
34
|
+
console.log(a)
|
|
35
|
+
return page;
|
|
36
|
+
}
|
package/coms/layer/glance.js
CHANGED
|
@@ -90,14 +90,14 @@ function main(mainPath, historyName = "") {
|
|
|
90
90
|
var hook = function () {
|
|
91
91
|
if (--index !== 0) return;
|
|
92
92
|
if (leftPath) {
|
|
93
|
-
var page = zimoli.
|
|
93
|
+
var page = zimoli.create(leftPath);
|
|
94
94
|
page.setAttribute('layer', 'left');
|
|
95
95
|
appendChild.replace(leftLayer, page);
|
|
96
96
|
leftLayer = page;
|
|
97
97
|
dragview({ page: layer, toLeft: layer.closeLeft, toRight: layer.openLeft, menu: leftLayer });
|
|
98
98
|
}
|
|
99
99
|
if (topPath) {
|
|
100
|
-
var page = zimoli.
|
|
100
|
+
var page = zimoli.create(topPath);
|
|
101
101
|
page.setAttribute('layer', 'top');
|
|
102
102
|
appendChild.replace(topLayer, page);
|
|
103
103
|
topLayer = page;
|
package/coms/zimoli/alert.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
var styles = {
|
|
2
|
-
blue: "#
|
|
2
|
+
blue: "#2a83cd",
|
|
3
3
|
green: "#228B22",
|
|
4
|
-
orange: "#
|
|
5
|
-
red: "#
|
|
4
|
+
orange: "#fdca86",
|
|
5
|
+
red: "#cc352e"
|
|
6
6
|
};
|
|
7
7
|
styles.success = styles.pass = styles.green;
|
|
8
8
|
styles.info = styles.blue;
|
|
9
9
|
styles.error = styles.danger = styles.red;
|
|
10
10
|
styles.warn = styles.orange;
|
|
11
|
+
styles.default = '#000';
|
|
11
12
|
var alerts = [];
|
|
12
13
|
var clean = Cleanup(alerts);
|
|
13
14
|
var build = function () {
|
|
@@ -21,15 +22,15 @@ var build = function () {
|
|
|
21
22
|
};
|
|
22
23
|
var fontSize = 16;
|
|
23
24
|
var singleHeight = fontSize * 3.125 | 0;
|
|
24
|
-
var _text = function (
|
|
25
|
+
var _text = function (bgcolor, parameters) {
|
|
25
26
|
var box = div();
|
|
26
27
|
css(box, `top:${fromPixel(alerts.length ? Math.max.apply(Math, alerts.map(e => e.offsetTop + e.children[0].offsetHeight)) : 0)};height:0;line-height:${fromPixel(singleHeight - 20)};left:0;right:0;font-size:${fromPixel(fontSize)}; transition: all 0.2s ease-out;position:absolute;color:#fff;text-align:center;`);
|
|
27
|
-
box.innerHTML = `<div style='width: 720px;white-space:pre-wrap;max-width:100%;display:inline-block;height:auto;padding:${fromPixel(10)} ${fromPixel(20)};background-color:${color};'>${[].slice.call(parameters, 0).join(", ")}</div>`;
|
|
28
|
+
box.innerHTML = `<div style='width: 720px;white-space:pre-wrap;max-width:100%;display:inline-block;height:auto;padding:${fromPixel(10)} ${fromPixel(20)};background-color:${bgcolor};color:${color.pair(bgcolor)};'>${[].slice.call(parameters, 0).join(", ")}</div>`;
|
|
28
29
|
box.initialStyle = `margin:-${fromPixel(singleHeight)} auto;opacity:0;`;
|
|
29
30
|
return box;
|
|
30
31
|
};
|
|
31
32
|
function alert() {
|
|
32
|
-
var color = String(this), text, autoclose = true, onclose;
|
|
33
|
+
var color = String(isString(this) && this || styles.default), text, autoclose = true, onclose;
|
|
33
34
|
var color_reg = /^#(?:\w{6}|\w{3})$/;
|
|
34
35
|
[].map.call(arguments, function (arg) {
|
|
35
36
|
switch (typeof arg) {
|
|
@@ -116,6 +116,7 @@ appendChild.insert = function (parent, element, relative = parent.childNodes[0]
|
|
|
116
116
|
}
|
|
117
117
|
};
|
|
118
118
|
appendChild.replace = function (alreadyMounted, element) {
|
|
119
|
+
if (alreadyMounted === element) return;
|
|
119
120
|
if (!alreadyMounted || !alreadyMounted.parentNode) return;
|
|
120
121
|
insertBefore(alreadyMounted, element);
|
|
121
122
|
remove(alreadyMounted);
|
package/coms/zimoli/button.js
CHANGED
|
@@ -95,6 +95,11 @@ function button(texter, type) {
|
|
|
95
95
|
if (_texter.tagName) {
|
|
96
96
|
var button = _texter;
|
|
97
97
|
if (button.childNodes.length) {
|
|
98
|
+
if (button.childNodes.length === 1 && button.childNodes[0].nodeType !== 1) {
|
|
99
|
+
_texter = createElement(_label);
|
|
100
|
+
_texter.appendChild(button.childNodes[0]);
|
|
101
|
+
button.appendChild(_texter);
|
|
102
|
+
}
|
|
98
103
|
appendChild.before(button.childNodes[0], tracker);
|
|
99
104
|
} else {
|
|
100
105
|
appendChild(button, tracker);
|
package/coms/zimoli/button.less
CHANGED
|
@@ -18,7 +18,9 @@
|
|
|
18
18
|
overflow: hidden;
|
|
19
19
|
outline: none;
|
|
20
20
|
}
|
|
21
|
-
|
|
21
|
+
>.label{
|
|
22
|
+
position: relative;
|
|
23
|
+
}
|
|
22
24
|
|
|
23
25
|
@keyframes busy-loading {
|
|
24
26
|
0% {
|
|
@@ -139,9 +141,11 @@
|
|
|
139
141
|
margin-left: -2px;
|
|
140
142
|
height: 200%;
|
|
141
143
|
background: #fff9;
|
|
144
|
+
background: inherit;
|
|
145
|
+
opacity: 0.9;
|
|
142
146
|
border-left: 1px #fff3 solid;
|
|
143
147
|
border-right: 3px #fff6 solid;
|
|
144
|
-
animation: ltr
|
|
148
|
+
animation: ltr 2s linear 0s infinite;
|
|
145
149
|
}
|
|
146
150
|
|
|
147
151
|
}
|
package/coms/zimoli/checker.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
<s>✓</s>
|
package/coms/zimoli/checker.less
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
& {
|
|
2
|
-
height:
|
|
3
|
-
width:
|
|
2
|
+
height: .8em;
|
|
3
|
+
width: .8em;
|
|
4
4
|
position: relative;
|
|
5
|
-
|
|
5
|
+
border: .1em solid;
|
|
6
|
+
margin-right: .3em;
|
|
6
7
|
font-family: sans-serif;
|
|
7
8
|
display: inline-block;
|
|
8
9
|
line-height: 1;
|
|
9
10
|
text-align: center;
|
|
10
|
-
|
|
11
|
+
margin-top: .15em;
|
|
12
|
+
border-radius: .12em;
|
|
11
13
|
vertical-align: middle;
|
|
12
14
|
|
|
13
15
|
>s {
|
|
@@ -17,13 +19,13 @@
|
|
|
17
19
|
font-weight: bold;
|
|
18
20
|
left: 0;
|
|
19
21
|
right: 0;
|
|
20
|
-
top: -.
|
|
22
|
+
top: -.4em;
|
|
21
23
|
}
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
|
|
25
27
|
&.checked {
|
|
26
28
|
>s {
|
|
27
|
-
display:
|
|
29
|
+
display: block;
|
|
28
30
|
}
|
|
29
31
|
}
|
package/coms/zimoli/color.js
CHANGED
|
@@ -3,60 +3,92 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
var { min, max, sin, cos, round, sqrt, random, PI, abs = a => a < 0 ? -a : a } = Math;
|
|
6
|
-
|
|
6
|
+
var [v_r, v_g, v_b] = [.299, .587, .114];
|
|
7
7
|
|
|
8
8
|
var rgb4v = function (r, g, b, v) {
|
|
9
|
-
|
|
10
|
-
return
|
|
9
|
+
var d = v - rgb2v(r, g, b);
|
|
10
|
+
return [r + d, g + d, b + d];
|
|
11
11
|
};
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
var rgb4h = function (r, g, b, h) {
|
|
16
|
+
var [p, q, s] = [r, g, b].sort();
|
|
17
|
+
var m = s - p;
|
|
18
|
+
h = (h % 360 + 360) % 360;
|
|
19
|
+
if (h < 60) {
|
|
20
|
+
r = s;
|
|
21
|
+
g = p + m * h / 60;
|
|
22
|
+
b = p;
|
|
23
|
+
}
|
|
24
|
+
else if (h < 120) {
|
|
25
|
+
r = p + m * (120 - h) / 60;
|
|
26
|
+
g = s;
|
|
27
|
+
b = p;
|
|
28
|
+
}
|
|
29
|
+
else if (h < 180) {
|
|
30
|
+
r = p;
|
|
31
|
+
g = s;
|
|
32
|
+
b = p + m * (h - 120) / 60
|
|
33
|
+
}
|
|
34
|
+
else if (h < 240) {
|
|
35
|
+
r = p;
|
|
36
|
+
g = p + m * (240 - h) / 60;
|
|
37
|
+
b = s;
|
|
38
|
+
}
|
|
39
|
+
else if (h < 300) {
|
|
40
|
+
r = p + m * (h - 240) / 60;
|
|
41
|
+
g = p;
|
|
42
|
+
b = s;
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
r = s;
|
|
46
|
+
g = p;
|
|
47
|
+
b = p + m * (360 - h) / 60;
|
|
48
|
+
}
|
|
40
49
|
return [r, g, b];
|
|
41
|
-
}
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
var rgb2h = function (r, g, b) {
|
|
54
|
+
var m = max(r, g, b);
|
|
55
|
+
var n = min(r, g, b);
|
|
56
|
+
var h;
|
|
57
|
+
if (m === n) h = 0;
|
|
58
|
+
else if (m === r) {
|
|
59
|
+
if (g >= b) {
|
|
60
|
+
h = 60 * (g - b) / (m - n);
|
|
61
|
+
} else {
|
|
62
|
+
h = 360 + 60 * (g - b) / (m - n);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
else if (m === g) {
|
|
66
|
+
h = 120 + 60 * (b - r) / (m - n);
|
|
67
|
+
}
|
|
68
|
+
else if (m === b) {
|
|
69
|
+
h = 240 + 60 * (r - g) / (m - n);
|
|
70
|
+
|
|
71
|
+
}
|
|
72
|
+
return h;
|
|
73
|
+
};
|
|
42
74
|
|
|
43
75
|
var rgb2s = function (r, g, b) {
|
|
44
|
-
var m =
|
|
76
|
+
var m = min(r, g, b);
|
|
45
77
|
if (m) {
|
|
46
78
|
r -= m;
|
|
47
79
|
g -= m;
|
|
48
80
|
b -= m;
|
|
49
81
|
}
|
|
50
|
-
return
|
|
82
|
+
return max(r, g, b) / 255;
|
|
51
83
|
};
|
|
52
84
|
var rgb4s = function (r, g, b, s) {
|
|
53
|
-
var m =
|
|
85
|
+
var m = min(r, g, b);
|
|
54
86
|
if (m) {
|
|
55
87
|
r -= m;
|
|
56
88
|
g -= m;
|
|
57
89
|
b -= m;
|
|
58
90
|
}
|
|
59
|
-
s = s * 255 /
|
|
91
|
+
s = s * 255 / (max(r, g, b) || 1);
|
|
60
92
|
if (s) {
|
|
61
93
|
r *= s;
|
|
62
94
|
g *= s;
|
|
@@ -69,37 +101,45 @@ var rgb4s = function (r, g, b, s) {
|
|
|
69
101
|
function rotate_rgb(RGBA, theta) {
|
|
70
102
|
var [r, g, b, a] = RGBA;
|
|
71
103
|
if (isNaN(theta)) return [r, g, b, a];
|
|
104
|
+
var h = rgb2h(r, g, b);
|
|
72
105
|
var s = rgb2s(r, g, b);
|
|
73
106
|
var v = rgb2v(r, g, b);
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
var
|
|
80
|
-
var
|
|
81
|
-
var
|
|
82
|
-
var
|
|
83
|
-
var
|
|
84
|
-
var
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
green
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
107
|
+
h += theta * 180 / Math.PI;
|
|
108
|
+
[r, g, b] = rgb4h(r, g, b, h);
|
|
109
|
+
[r, g, b] = rgb4s(r, g, b, s);
|
|
110
|
+
[r, g, b] = rgb4v(r, g, b, v);
|
|
111
|
+
return [r, g, b];
|
|
112
|
+
// var s = rgb2s(r, g, b);
|
|
113
|
+
// var v = rgb2v(r, g, b);
|
|
114
|
+
// var u = sqrt(3) / 3;
|
|
115
|
+
// var pu = 1 / 3;
|
|
116
|
+
// var cosa = cos(theta);
|
|
117
|
+
// var sina = sin(theta);
|
|
118
|
+
// var vera = 1 - cosa;
|
|
119
|
+
// var red = (cosa + pu * vera) * r + (pu * vera - u * sina) * g + (pu * vera + u * sina) * b;
|
|
120
|
+
// var green = (pu * vera + u * sina) * r + (cosa + pu * vera) * g + (pu * vera - u * sina) * b;
|
|
121
|
+
// var blue = (pu * vera - u * sina) * r + (pu * vera + u * sina) * g + (cosa + pu * vera) * b;
|
|
122
|
+
// var m = mode([red, green, blue]);
|
|
123
|
+
// var _min = min(red, green, blue);
|
|
124
|
+
// var d = [m - red, m - green, m - blue]
|
|
125
|
+
// if (_min < 0) {
|
|
126
|
+
// var index = red < 0 ? 0 : green < 0 ? 1 : 2;
|
|
127
|
+
// var [dr, dg, db] = single(d, -_min / d[index]);
|
|
128
|
+
// } else {
|
|
129
|
+
// var _max = max(red, green, blue);
|
|
130
|
+
// if (_max > 255) {
|
|
131
|
+
// var index = red > 255 ? 0 : green > 255 ? 1 : 2;
|
|
132
|
+
// var [dr, dg, db] = single(d, (255 - _max) / d[index]);
|
|
133
|
+
// } else {
|
|
134
|
+
// var dr, dg, db = dr = dg = 0;
|
|
135
|
+
// }
|
|
136
|
+
// }
|
|
137
|
+
// red += dr;
|
|
138
|
+
// green += dg;
|
|
139
|
+
// blue += db;
|
|
140
|
+
// [red, green, blue] = rgb4s(red, green, blue, s);
|
|
141
|
+
// [red, green, blue] = rgb4v(red, green, blue, v);
|
|
142
|
+
// return [red, green, blue, a];
|
|
103
143
|
}
|
|
104
144
|
// 对比度
|
|
105
145
|
function contrast_rgb(RGBA, ratio) {
|
|
@@ -225,22 +265,24 @@ function single(c, u) {
|
|
|
225
265
|
return [r * u, g * u, b * u];
|
|
226
266
|
}
|
|
227
267
|
function angle(c1, c2) {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
c1 =
|
|
231
|
-
c2 =
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
var
|
|
235
|
-
var
|
|
236
|
-
var
|
|
237
|
-
var
|
|
238
|
-
var
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
}
|
|
268
|
+
var theta = rgb2h(c2[0], c2[1], c2[2]) - rgb2h(c1[0], c1[1], c1[2]);
|
|
269
|
+
if (theta < 0) theta += 360;
|
|
270
|
+
// c1 = parse(c1);
|
|
271
|
+
// c2 = parse(c2);
|
|
272
|
+
// c1 = normal(c1);
|
|
273
|
+
// c2 = normal(c2);
|
|
274
|
+
// var [r1, g1, b1] = single(c1);
|
|
275
|
+
// var [r2, g2, b2] = single(c2);
|
|
276
|
+
// var c = [g1 * b2 - g2 * b1, b1 * r2 - b2 * r1, r1 * g2 - r2 * g1];
|
|
277
|
+
// var d = r1 * r2 + g1 * g2 + b1 * b2;
|
|
278
|
+
// var e = c[0] > 0 ? mode(c) : -mode(c);
|
|
279
|
+
// var theta = Math.asin(e > 1 ? 1 : e < -1 ? -1 : e);
|
|
280
|
+
// var phi = Math.acos(d > 1 ? 1 : d < -1 ? -1 : d);
|
|
281
|
+
// if (theta < 0) {
|
|
282
|
+
// theta = Math.PI * 2 - phi;
|
|
283
|
+
// } else {
|
|
284
|
+
// theta = phi;
|
|
285
|
+
// }
|
|
244
286
|
return theta;
|
|
245
287
|
}
|
|
246
288
|
function equal(c1, c2) {
|
|
@@ -273,9 +315,9 @@ var colorDesigner = {
|
|
|
273
315
|
contrast: 1
|
|
274
316
|
};
|
|
275
317
|
var rgb2v = function (r, g, b) {
|
|
276
|
-
r *=
|
|
277
|
-
g *=
|
|
278
|
-
b *=
|
|
318
|
+
r *= v_r;
|
|
319
|
+
g *= v_g;
|
|
320
|
+
b *= v_b;
|
|
279
321
|
return r + g + b;
|
|
280
322
|
};
|
|
281
323
|
var v2rgb = function (v, r, g, b) {
|
|
@@ -320,6 +362,9 @@ extend(color, {
|
|
|
320
362
|
contrast(color, ratio) {
|
|
321
363
|
return doWith(contrast_rgb, color, ratio);
|
|
322
364
|
},
|
|
365
|
+
rgb2h,
|
|
366
|
+
rgb4h,
|
|
367
|
+
rgb4s,
|
|
323
368
|
rgb2v,
|
|
324
369
|
rgb4v,
|
|
325
370
|
rgb2s,
|
package/coms/zimoli/colorpad.js
CHANGED
|
@@ -4,9 +4,7 @@ var xy2c = function (a, x, y) {
|
|
|
4
4
|
return a * x * (1 - y) + (.5 + x / 2) * y * 255;
|
|
5
5
|
};
|
|
6
6
|
var z2rgb = function (z) {
|
|
7
|
-
|
|
8
|
-
var [r, g, b] = color.parse(c);
|
|
9
|
-
return color.rgb4s(r, g, b, 1);
|
|
7
|
+
return color.rgb4h(255, 0, 0, z * 360);
|
|
10
8
|
};
|
|
11
9
|
var z2c = function (z) {
|
|
12
10
|
return color.stringify(z2rgb(z));
|
|
@@ -87,7 +85,7 @@ var c2xy = function (c1, c2) {
|
|
|
87
85
|
var getCanvas = function (e) {
|
|
88
86
|
return e.getElementsByTagName('canvas')[0];
|
|
89
87
|
};
|
|
90
|
-
var sample = "#
|
|
88
|
+
var sample = "#ff0000";
|
|
91
89
|
var buildpad = function (pad, c = sample) {
|
|
92
90
|
var canvas = getCanvas(pad);
|
|
93
91
|
canvas.width = 256;
|
package/coms/zimoli/data.js
CHANGED
|
@@ -310,7 +310,11 @@ var parseData = function (sourceText) {
|
|
|
310
310
|
sourceText = sourceText.replace(/^[^\(]+\(([\s\S]*)\)[^\)]*$/, "$1");
|
|
311
311
|
}
|
|
312
312
|
try {
|
|
313
|
-
|
|
313
|
+
if (/^[\[\{][\d\:,]+[\}\]],|^(Infinity|''|NaN|\d+|)$|^\/[\s\S]*?\/\w*$/.test(sourceText)) {
|
|
314
|
+
sourceText = JSAM.parse(sourceText);
|
|
315
|
+
} else {
|
|
316
|
+
sourceText = parseYML(sourceText);
|
|
317
|
+
}
|
|
314
318
|
} catch (e) {
|
|
315
319
|
throw "数据无法解析";
|
|
316
320
|
}
|
|
@@ -539,7 +543,8 @@ var privates = {
|
|
|
539
543
|
ok(e.response || e.responseText);
|
|
540
544
|
}).error(xhr => {
|
|
541
545
|
try {
|
|
542
|
-
|
|
546
|
+
var e = getErrorMessage(parseData(xhr.response || xhr.responseText || xhr.statusText || xhr.status));
|
|
547
|
+
oh({ status: xhr.status, error: e })
|
|
543
548
|
} catch (error) {
|
|
544
549
|
oh(error);
|
|
545
550
|
}
|
|
@@ -608,8 +613,7 @@ function responseCrash(e, data) {
|
|
|
608
613
|
} else {
|
|
609
614
|
data.error = e;
|
|
610
615
|
}
|
|
611
|
-
error_report(data.error_message, 'error');
|
|
612
|
-
|
|
616
|
+
error_report(data.error_message, e.status < 500 ? 'warn' : 'error');
|
|
613
617
|
}
|
|
614
618
|
|
|
615
619
|
var data = {
|
package/coms/zimoli/gallery.js
CHANGED
|
@@ -121,18 +121,8 @@ function main() {
|
|
|
121
121
|
minWidth = arg;
|
|
122
122
|
}
|
|
123
123
|
});
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
var parsedSrc = render.parseRepeat(src);
|
|
127
|
-
if (!parsedSrc) {
|
|
128
|
-
element.setAttribute("ng-src", src);
|
|
129
|
-
element.removeAttribute("src");
|
|
130
|
-
var generator = getGenerator(element);
|
|
131
|
-
} else {
|
|
132
|
-
element.setAttribute("ng-src", parsedSrc.srcName);
|
|
133
|
-
element.removeAttribute("src");
|
|
134
|
-
var generator = getGenerator(element, parsedSrc);
|
|
135
|
-
}
|
|
124
|
+
if ("$src" in element) {
|
|
125
|
+
var generator = getGenerator(element);
|
|
136
126
|
care(element, function () {
|
|
137
127
|
var index = element.index();
|
|
138
128
|
element.clean();
|