efront 3.29.3 → 3.30.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/apis/docs/getAllComponents.js +1 -1
- package/apps/pivot/menu.yml +3 -5
- package/apps/pivot/proxy/list.js +12 -6
- package/coms/basic/#decrypt.js +58 -0
- package/coms/basic/#decrypt_.js +3 -0
- package/coms/basic/{loader.js → #loader.js} +5 -68
- package/coms/basic_/[]map.js +1 -4
- package/coms/pivot/qrcode.xht +26 -0
- package/coms/shapes/qrcode.html +6 -0
- package/coms/third-party/qrcode.js +2248 -0
- package/coms/third-party//344/273/243/347/240/201/346/235/245/346/272/220.txt +1 -1
- package/coms/zimoli/main.js +1 -1
- package/package.json +1 -1
- package/public/efront.js +1 -1
package/apps/pivot/menu.yml
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
首页: /home/welcome
|
|
2
2
|
WEB:
|
|
3
|
-
共享目录: /share/list
|
|
4
3
|
短链接: /proxy/list
|
|
5
4
|
文件管理: /wow/root
|
|
6
5
|
长连接管理: /link/index
|
|
7
6
|
字典: /dict/list
|
|
8
|
-
|
|
7
|
+
共享目录: /share/list
|
|
8
|
+
服务:
|
|
9
9
|
密钥管理: /token/list
|
|
10
|
-
|
|
11
|
-
定期执行: /tick/list
|
|
12
|
-
# 服务器: /api/host
|
|
10
|
+
任务管理: /task/list
|
|
13
11
|
服务器日志:
|
|
14
12
|
访问计数: /log/count
|
|
15
13
|
启动记录: /log/boot
|
package/apps/pivot/proxy/list.js
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
var
|
|
2
|
-
|
|
3
|
-
真实路径/realpath url/2000
|
|
4
|
-
动作/action select/200 [跳转,转发]
|
|
5
|
-
/ $ ${[{
|
|
1
|
+
var actions = [
|
|
2
|
+
{
|
|
6
3
|
name: "访问",
|
|
7
4
|
do(o) {
|
|
8
5
|
var url = o.url;
|
|
9
6
|
if (!/^\//.test(url)) url = "/" + url;
|
|
10
7
|
window.open(url, null);
|
|
11
8
|
}
|
|
12
|
-
}
|
|
9
|
+
}
|
|
10
|
+
];
|
|
11
|
+
|
|
12
|
+
var fields = refilm`
|
|
13
|
+
*代理路径/url input/120
|
|
14
|
+
&二维码/url ${qrcode}
|
|
15
|
+
真实路径/realpath url/300
|
|
16
|
+
动作/action select/100 [跳转,转发]
|
|
17
|
+
状态/status select/100 [启用,禁用]
|
|
18
|
+
/ $ ${actions}`;
|
|
13
19
|
return plist.bind(null, '短链接', "proxy", fields, "/proxy/edit");
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
if (document) {
|
|
2
|
+
if (document.head) {
|
|
3
|
+
var efrontsign = document.head.lastElementChild.attributes[0];
|
|
4
|
+
if (efrontsign && /^compiledinfo\-/.test(efrontsign.name)) efrontsign = efrontsign.name.slice(efrontsign.name.indexOf('-') + 1);
|
|
5
|
+
else efrontsign = '';
|
|
6
|
+
}
|
|
7
|
+
else if (document.getElementsByTagName) {
|
|
8
|
+
document.head = document.getElementsByTagName("head")[0];
|
|
9
|
+
efrontsign = /\<script\s+compiledinfo\-(\S*?)\s*\=/i.exec(document.head.lastChild.outerHTML);
|
|
10
|
+
if (efrontsign) efrontsign = efrontsign[1];
|
|
11
|
+
else efrontsign = '';
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
var uncode = function (text) {
|
|
15
|
+
var ratio = 1;
|
|
16
|
+
var sum = 0;
|
|
17
|
+
for (var cx = 0, dx = text.length; cx < dx; cx++) {
|
|
18
|
+
var code = text.charCodeAt(cx);
|
|
19
|
+
sum += (code < 63 ? code - 39 : code < 93 ? code - 42 : code - 43) * ratio;
|
|
20
|
+
ratio *= 84;
|
|
21
|
+
}
|
|
22
|
+
return sum;
|
|
23
|
+
}
|
|
24
|
+
var decrypt = function (text) {
|
|
25
|
+
var start = parseInt(efrontsign, 36) % 128;
|
|
26
|
+
var rest = [];
|
|
27
|
+
for (var cx = 0, dx = text.length; cx < dx; cx++) {
|
|
28
|
+
var delta = text.charCodeAt(cx);
|
|
29
|
+
if (delta < 44) {
|
|
30
|
+
// 39-44 = -(delta -39)
|
|
31
|
+
delta = 39 - delta;
|
|
32
|
+
} else if (delta < 50) {
|
|
33
|
+
// 44-50
|
|
34
|
+
delta = delta - 44;
|
|
35
|
+
} else if (delta < 55) {
|
|
36
|
+
// 50-55 = -(34+delta)
|
|
37
|
+
cx++;
|
|
38
|
+
var next = cx + delta - 50;
|
|
39
|
+
delta = -uncode(text.slice(cx, next + 1)) - 33;
|
|
40
|
+
cx = next;
|
|
41
|
+
} else if (delta < 60) {
|
|
42
|
+
// 55-60 = -(34+delta)
|
|
43
|
+
cx++;
|
|
44
|
+
var next = cx + delta - 55;
|
|
45
|
+
delta = 39 + uncode(text.slice(cx, next + 1));
|
|
46
|
+
cx = next;
|
|
47
|
+
} else if (delta < 92) {
|
|
48
|
+
// 63-92 =- (5+delta-63)
|
|
49
|
+
delta = 58 - delta;
|
|
50
|
+
} else {
|
|
51
|
+
// 93- = 6+ delta-93
|
|
52
|
+
delta = delta - 87;
|
|
53
|
+
}
|
|
54
|
+
start = start + delta;
|
|
55
|
+
rest.push(String.fromCharCode(start));
|
|
56
|
+
}
|
|
57
|
+
return rest.join('');
|
|
58
|
+
};
|
|
@@ -320,68 +320,9 @@ var loadModule = function (name, then, prebuilds = {}) {
|
|
|
320
320
|
}
|
|
321
321
|
};
|
|
322
322
|
var toRem = text => pixelDecoder && typeof text === 'string' ? text.replace(/(\:\s*)?\b((?:\d*\.)?\d+)px(\s*\))?/ig, (m, h, d, quote) => (h || "") + (d !== '1' ? h && quote ? renderPixelRatio * d + "pt" : pixelDecoder(d) : renderPixelRatio > 1 ? ".78pt" : 0.78 / devicePixelRatio + "pt") + (quote || "")) : text;
|
|
323
|
-
|
|
324
|
-
if (document.head) {
|
|
325
|
-
var efrontsign = document.head.lastElementChild.attributes[0];
|
|
326
|
-
if (efrontsign && /^compiledinfo\-/.test(efrontsign.name)) efrontsign = efrontsign.name.slice(efrontsign.name.indexOf('-') + 1);
|
|
327
|
-
else efrontsign = '';
|
|
328
|
-
}
|
|
329
|
-
else if (document.getElementsByTagName) {
|
|
330
|
-
document.head = document.getElementsByTagName("head")[0];
|
|
331
|
-
efrontsign = /\<script\s+compiledinfo\-(\S*?)\s*\=/i.exec(document.head.lastChild.outerHTML);
|
|
332
|
-
if (efrontsign) efrontsign = efrontsign[1];
|
|
333
|
-
else efrontsign = '';
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
var uncode = function (text) {
|
|
337
|
-
var ratio = 1;
|
|
338
|
-
var sum = 0;
|
|
339
|
-
for (var cx = 0, dx = text.length; cx < dx; cx++) {
|
|
340
|
-
var code = text.charCodeAt(cx);
|
|
341
|
-
sum += (code < 63 ? code - 39 : code < 93 ? code - 42 : code - 43) * ratio;
|
|
342
|
-
ratio *= 84;
|
|
343
|
-
}
|
|
344
|
-
return sum;
|
|
345
|
-
}
|
|
346
|
-
var decrypt = function (text) {
|
|
347
|
-
var start = parseInt(efrontsign, 36) % 128;
|
|
348
|
-
var rest = [];
|
|
349
|
-
for (var cx = 0, dx = text.length; cx < dx; cx++) {
|
|
350
|
-
var delta = text.charCodeAt(cx);
|
|
351
|
-
if (delta < 44) {
|
|
352
|
-
// 39-44 = -(delta -39)
|
|
353
|
-
delta = 39 - delta;
|
|
354
|
-
} else if (delta < 50) {
|
|
355
|
-
// 44-50
|
|
356
|
-
delta = delta - 44;
|
|
357
|
-
} else if (delta < 55) {
|
|
358
|
-
// 50-55 = -(34+delta)
|
|
359
|
-
cx++;
|
|
360
|
-
var next = cx + delta - 50;
|
|
361
|
-
delta = -uncode(text.slice(cx, next + 1)) - 33;
|
|
362
|
-
cx = next;
|
|
363
|
-
} else if (delta < 60) {
|
|
364
|
-
// 55-60 = -(34+delta)
|
|
365
|
-
cx++;
|
|
366
|
-
var next = cx + delta - 55;
|
|
367
|
-
delta = 39 + uncode(text.slice(cx, next + 1));
|
|
368
|
-
cx = next;
|
|
369
|
-
} else if (delta < 92) {
|
|
370
|
-
// 63-92 =- (5+delta-63)
|
|
371
|
-
delta = 58 - delta;
|
|
372
|
-
} else {
|
|
373
|
-
// 93- = 6+ delta-93
|
|
374
|
-
delta = delta - 87;
|
|
375
|
-
}
|
|
376
|
-
start = start + delta;
|
|
377
|
-
rest.push(String.fromCharCode(start));
|
|
378
|
-
}
|
|
379
|
-
return rest.join('');
|
|
380
|
-
};
|
|
323
|
+
"use ./#decrypt.js";
|
|
381
324
|
var getArgs = function (text) {
|
|
382
|
-
|
|
383
|
-
text = decrypt(text);
|
|
384
|
-
}
|
|
325
|
+
"use ./#decrypt_.js";
|
|
385
326
|
var args, functionBody;
|
|
386
327
|
//依赖项名称部分的长度限制为36*36*18=23328
|
|
387
328
|
var doublecount = parseInt(text.slice(0, 3), 36);
|
|
@@ -819,11 +760,6 @@ var saveResponseTreeToStorage = function () {
|
|
|
819
760
|
};
|
|
820
761
|
var loadResponseTreeFromStorage = function () {
|
|
821
762
|
"use ./crc.js";
|
|
822
|
-
if (efrontsign) {
|
|
823
|
-
var codes = [];
|
|
824
|
-
for (var i in efrontsign) codes[i] = efrontsign.charCodeAt(i);
|
|
825
|
-
modules.efrontsign = "?" + crc(codes).toString(36);
|
|
826
|
-
}
|
|
827
763
|
var load = function (name) {
|
|
828
764
|
var data = localStorage.getItem(responseTree_storageKey);
|
|
829
765
|
if (!data) return;
|
|
@@ -873,7 +809,6 @@ var modules = {
|
|
|
873
809
|
load: loadModule,
|
|
874
810
|
devicePixelRatio,
|
|
875
811
|
renderPixelRatio,
|
|
876
|
-
efrontsign: "",
|
|
877
812
|
debug() {
|
|
878
813
|
document.addEventListener("blur", e => e.stopPropagation(), true);
|
|
879
814
|
},
|
|
@@ -913,7 +848,9 @@ var initIfNotDefined = function (defined, path, onload) {
|
|
|
913
848
|
if (document) loadResponseTreeFromStorage();
|
|
914
849
|
initIfNotDefined([].map, "[]map", map => map);
|
|
915
850
|
initIfNotDefined(Promise, "Promise", promise => Promise = promise);
|
|
916
|
-
|
|
851
|
+
// <!--
|
|
852
|
+
window.modules = modules;
|
|
853
|
+
// -->
|
|
917
854
|
var onload = function () {
|
|
918
855
|
window.onload = null;
|
|
919
856
|
hook(--requires_count);
|
package/coms/basic_/[]map.js
CHANGED
|
@@ -72,10 +72,7 @@ if (![].filter) Array.prototype.filter = filter;
|
|
|
72
72
|
if (!"".trim) String.prototype.trim = trim;
|
|
73
73
|
if (!Object.keys) Object.keys = keys;
|
|
74
74
|
if (!Object.create) Object.create = function (object) {
|
|
75
|
-
|
|
76
|
-
}
|
|
77
|
-
ExtendedClass.prototype = object;
|
|
78
|
-
return new ExtendedClass;
|
|
75
|
+
return { __proto__: object };
|
|
79
76
|
};
|
|
80
77
|
if (!function () { }.bind) Function.prototype.bind = function (context) {
|
|
81
78
|
var args = [].slice.call(arguments, 1);
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<canvas width="240" height="240" style="width:240px;height:240px;image-rendering: pixelated;" />
|
|
2
|
+
<script>
|
|
3
|
+
async function loadQRCode() {
|
|
4
|
+
this.innerHTML = template;
|
|
5
|
+
var o = this.target.data;
|
|
6
|
+
var canvas = this.firstElementChild;
|
|
7
|
+
var url = o.url;
|
|
8
|
+
var host = data.getInstance("base");
|
|
9
|
+
var href = host.base + url.replace(/^[\/\\]/, '');
|
|
10
|
+
var qrcode = await init("thirdParty$qrcode");
|
|
11
|
+
var qr = qrcode(0, 'L');
|
|
12
|
+
qr.addData(href);
|
|
13
|
+
qr.make();
|
|
14
|
+
var size = qr.getModuleCount();
|
|
15
|
+
canvas.width = canvas.height = size;
|
|
16
|
+
qr.renderTo2dContext(canvas.getContext("2d"), 1);
|
|
17
|
+
}
|
|
18
|
+
function main(element) {
|
|
19
|
+
element.innerHTML = shapes$qrcode;
|
|
20
|
+
var v = document.createElement("qrcode");
|
|
21
|
+
select(element, v);
|
|
22
|
+
oncemount(v, loadQRCode);
|
|
23
|
+
v.tabIndex = 0;
|
|
24
|
+
v.onclick = e => e.preventDefault();
|
|
25
|
+
}
|
|
26
|
+
</script>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg style="width:16px;vertical-align:middle" aria-hidden="true" focusable="false"
|
|
2
|
+
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">
|
|
3
|
+
<path fill="currentColor"
|
|
4
|
+
d="M0 224h192V32H0v192zM64 96h64v64H64V96zm192-64v192h192V32H256zm128 128h-64V96h64v64zM0 480h192V288H0v192zm64-128h64v64H64v-64zm352-64h32v128h-96v-32h-32v96h-64V288h96v32h64v-32zm0 160h32v32h-32v-32zm-64 0h32v32h-32v-32z"
|
|
5
|
+
class=""></path>
|
|
6
|
+
</svg>
|