datafolder 1.0.12 → 1.0.13
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/README.md +6 -2
- package/package.json +1 -1
- package/scripts/airbnb.js +1 -1
- package/scripts/airbnb2.js +1 -1
- package/scripts/flights.js +2 -2
- package/scripts/flights2.js +2 -2
- package/src/QyBatch.d.ts +13 -6
- package/src/QyBatch.js +209 -126
- package/src/QyCache.d.ts +6 -3
- package/src/QyCache.js +86 -68
- package/src/QyDB.d.ts +3 -0
- package/src/QyDB.js +36 -21
- package/src/QyDefaultOptions.js +0 -3
- package/src/QyDir.d.ts +1 -0
- package/src/QyDir.js +49 -20
- package/src/QyExpire.d.ts +9 -15
- package/src/QyExpire.js +60 -68
- package/src/QyExpireInfo.d.ts +10 -0
- package/src/QyExpireInfo.js +92 -0
- package/src/QyExpire_Worker.d.ts +13 -14
- package/src/QyExpire_Worker.js +74 -89
- package/src/QyFile.d.ts +1 -1
- package/src/QyFile.js +58 -43
- package/src/QyFileContentUtils.d.ts +1 -0
- package/src/QyFileContentUtils.js +107 -93
- package/src/QyItem.d.ts +6 -0
- package/src/QyItem.js +25 -7
- package/src/QyKVData.d.ts +3 -1
- package/src/QyKVData.js +70 -63
- package/src/QyUtils.d.ts +3 -1
- package/src/QyUtils.js +41 -34
- package/static/codemirror.bundle/editor.bundle.js +6 -1
- package/src/QyExpireClock.d.ts +0 -15
- package/src/QyExpireClock.js +0 -53
- package/src/rpc/evalCode.js +0 -9
- package/src/rpc/getFileContent.js +0 -16
- package/src/rpc/getRpcFiles.js +0 -1
- package/src/rpc/getSubItems.js +0 -16
- package/src/rpc/getTriggerFiles.js +0 -1
- package/src/rpc/queryFiles.js +0 -10
- package/src/rpc/reloadRpc.js +0 -1
package/src/QyExpire.js
CHANGED
|
@@ -3,111 +3,103 @@ import {
|
|
|
3
3
|
} from "./QyMessager.js";
|
|
4
4
|
|
|
5
5
|
import {
|
|
6
|
-
getDefaultOptions as
|
|
6
|
+
getDefaultOptions as r
|
|
7
7
|
} from "./QyDefaultOptions.js";
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
getNowRounded as t,
|
|
11
|
+
isEmptyObj as i
|
|
12
12
|
} from "./QyUtils.js";
|
|
13
13
|
|
|
14
14
|
import {
|
|
15
|
-
setValByNamePath as
|
|
15
|
+
setValByNamePath as o
|
|
16
16
|
} from "./QyFileContentUtils.js";
|
|
17
17
|
|
|
18
18
|
import {
|
|
19
|
-
SpecialOperators as
|
|
19
|
+
SpecialOperators as s
|
|
20
20
|
} from "./QyUtils.js";
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
let n = s.$del;
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
let n = t.$del, r = '[""]';
|
|
27
|
-
|
|
28
|
-
class p extends e {
|
|
24
|
+
class a extends e {
|
|
29
25
|
qyCache;
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
startTime;
|
|
26
|
+
expireMap = {};
|
|
27
|
+
roundedStartTime;
|
|
33
28
|
constructor(e, t = void 0) {
|
|
34
29
|
super("QyExpire_Worker", t = {
|
|
35
|
-
...
|
|
30
|
+
...r("QyExpire"),
|
|
36
31
|
...t
|
|
37
|
-
}, t, [], [ "
|
|
32
|
+
}, t, [], [ "setRoundedStartTime", "setContentExpire", "removeContentExpire", "setItemExpire", "removeItemExpire" ]),
|
|
38
33
|
Object.assign(this, {
|
|
39
34
|
qyCache: e
|
|
40
35
|
});
|
|
41
36
|
}
|
|
42
|
-
|
|
43
|
-
(
|
|
44
|
-
var
|
|
45
|
-
|
|
46
|
-
|
|
37
|
+
monitorItemExpire(e, t) {
|
|
38
|
+
d(this);
|
|
39
|
+
var {
|
|
40
|
+
roundedStartTime: r,
|
|
41
|
+
expireMap: i
|
|
42
|
+
} = this, t = t - r, r = x(e);
|
|
43
|
+
i[r] = e, this.setItemExpire(r, t);
|
|
44
|
+
}
|
|
45
|
+
unmonitorItemExpire(e) {
|
|
46
|
+
var {
|
|
47
|
+
roundedStartTime: t,
|
|
48
|
+
expireMap: r
|
|
47
49
|
} = this;
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var
|
|
53
|
-
|
|
50
|
+
t && (t = x(e), this.removeItemExpire(t), delete r[t]);
|
|
51
|
+
}
|
|
52
|
+
monitorContentExpire(e, t) {
|
|
53
|
+
d(this);
|
|
54
|
+
var r, {
|
|
55
|
+
roundedStartTime: i,
|
|
56
|
+
expireMap: o
|
|
57
|
+
} = this, s = {};
|
|
58
|
+
for (r in t) s[r] = t[r] - i;
|
|
59
|
+
var n = e.fileContentKey;
|
|
60
|
+
o[n] = e, this.setContentExpire(n, s);
|
|
54
61
|
}
|
|
55
62
|
unmonitorContentExpire(e, t) {
|
|
56
|
-
this.
|
|
63
|
+
this.roundedStartTime && this.removeContentExpire(e.fileContentKey, Object.keys(t));
|
|
57
64
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
65
|
+
onEmptyHashList(e) {
|
|
66
|
+
var t, r = this.expireMap;
|
|
67
|
+
for (t of e) delete r[t];
|
|
68
|
+
i(r) && Object.assign(this, {
|
|
69
|
+
roundedStartTime: void 0
|
|
62
70
|
});
|
|
63
71
|
}
|
|
64
|
-
|
|
65
|
-
delete this.hashToFileMap[e];
|
|
66
|
-
}
|
|
67
|
-
onContentExpired(e) {
|
|
72
|
+
onExpired(e) {
|
|
68
73
|
var t, {
|
|
69
|
-
qyCache:
|
|
70
|
-
|
|
71
|
-
} = this,
|
|
74
|
+
qyCache: r,
|
|
75
|
+
expireMap: i
|
|
76
|
+
} = this, o = r.qyDB;
|
|
72
77
|
for (t in e) {
|
|
73
|
-
var
|
|
74
|
-
|
|
75
|
-
toDeleteFile: n
|
|
76
|
-
} = e[t];
|
|
77
|
-
h(s, r[t], o, n);
|
|
78
|
+
var s = i[t];
|
|
79
|
+
s && (t.startsWith("c") ? m(o, s, e[t]) : (p(o, s), delete i[t]));
|
|
78
80
|
}
|
|
79
81
|
}
|
|
80
82
|
}
|
|
81
83
|
|
|
82
|
-
function
|
|
83
|
-
|
|
84
|
-
var r, s = t.length;
|
|
85
|
-
for (r in e) t.push(r), l(e[r], t, i), t.length = s;
|
|
86
|
-
}
|
|
87
|
-
return i;
|
|
84
|
+
function p(e, t) {
|
|
85
|
+
t.isFile ? (e.delFile(t), e.removeFileExpire(t, !0)) : (e.delDir(t), e.removeDirExpire(t, !0));
|
|
88
86
|
}
|
|
89
87
|
|
|
90
|
-
function m(e, t
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
expiredProps: r,
|
|
98
|
-
remainingExpireInfoObj: s,
|
|
99
|
-
toDeleteFile: o
|
|
100
|
-
};
|
|
88
|
+
function m(e, t, r) {
|
|
89
|
+
t.created && e.insert(t, r.reduce((e, t) => o(e, JSON.parse(t), n), {}), !0),
|
|
90
|
+
e.removeContentExpire(t, r, !0);
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
function d(e) {
|
|
94
|
+
e.roundedStartTime || e.setRoundedStartTime(e.roundedStartTime = t());
|
|
101
95
|
}
|
|
102
96
|
|
|
103
|
-
function
|
|
104
|
-
|
|
97
|
+
function x(e) {
|
|
98
|
+
return (e.isFile ? "f" : "d") + e.fullPathHash;
|
|
105
99
|
}
|
|
106
100
|
|
|
107
101
|
export {
|
|
108
|
-
|
|
109
|
-
p as
|
|
110
|
-
|
|
111
|
-
m as analyzeExpireInfo,
|
|
112
|
-
h as handleExpiredProps
|
|
102
|
+
a as QyExpire,
|
|
103
|
+
p as handleExpiredItem,
|
|
104
|
+
m as handleExpiredProps
|
|
113
105
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare class QyExpireInfo {
|
|
2
|
+
hashPropTimeMap: {};
|
|
3
|
+
secondTimeHashPropMap: {};
|
|
4
|
+
get isEmpty(): boolean;
|
|
5
|
+
setExpireInfo(hashKey: any, expireTime: any, prop?: any): void;
|
|
6
|
+
removeExpireInfo(hashKey: any, prop?: any): void;
|
|
7
|
+
processExpired(currentSecondTime: any, checkedSecondTime: any, hashExpiredInfoMap: any, emptyHashList: any): void;
|
|
8
|
+
}
|
|
9
|
+
export declare function getSecond(expireTime: any): number;
|
|
10
|
+
export declare function getSecondM(expireTime: any): number;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import {
|
|
2
|
+
getValByNamePath as i,
|
|
3
|
+
setValByNamePath as p,
|
|
4
|
+
delValByNamePath as l
|
|
5
|
+
} from "./QyFileContentUtils.js";
|
|
6
|
+
|
|
7
|
+
import {
|
|
8
|
+
isEmptyObj as T
|
|
9
|
+
} from "./QyUtils.js";
|
|
10
|
+
|
|
11
|
+
class e {
|
|
12
|
+
hashPropTimeMap = {};
|
|
13
|
+
secondTimeHashPropMap = {};
|
|
14
|
+
get isEmpty() {
|
|
15
|
+
return T(this.hashPropTimeMap);
|
|
16
|
+
}
|
|
17
|
+
setExpireInfo(e, a, r = void 0) {
|
|
18
|
+
var {
|
|
19
|
+
hashPropTimeMap: t,
|
|
20
|
+
secondTimeHashPropMap: s
|
|
21
|
+
} = this, o = r ? i(t, [ e, r ]) : t[e];
|
|
22
|
+
o != a && (r ? p(t, [ e, r ], a) : t[e] = a, p(s, h(a, e, r), 1), null != o) && l(s, h(o, e, r));
|
|
23
|
+
}
|
|
24
|
+
removeExpireInfo(e, a = void 0) {
|
|
25
|
+
var {
|
|
26
|
+
hashPropTimeMap: r,
|
|
27
|
+
secondTimeHashPropMap: t
|
|
28
|
+
} = this, s = a ? i(r, [ e, a ]) : r[e];
|
|
29
|
+
null != s && (a ? l(r, [ e, a ]) : delete r[e], l(t, h(s, e, a)));
|
|
30
|
+
}
|
|
31
|
+
processExpired(e, a, r, t) {
|
|
32
|
+
if (!(this.isEmpty || e <= a)) {
|
|
33
|
+
var {
|
|
34
|
+
hashPropTimeMap: s,
|
|
35
|
+
secondTimeHashPropMap: o
|
|
36
|
+
} = this, i = j(e), p = j(a), l = o, h = r, n = i;
|
|
37
|
+
for (let e = p; e < n - 1; ++e) {
|
|
38
|
+
var f = l[e];
|
|
39
|
+
if (f) {
|
|
40
|
+
for (var m of Object.values(f)) E(h, m);
|
|
41
|
+
delete l[e];
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
var v, d = o[i];
|
|
45
|
+
if (d) {
|
|
46
|
+
var u = e % 1e3;
|
|
47
|
+
for (let e = i != p ? 0 : a % 1e3 + 1; e <= u; ++e) {
|
|
48
|
+
var c = d[e];
|
|
49
|
+
c && (E(r, c), delete d[e]);
|
|
50
|
+
}
|
|
51
|
+
T(d) && delete o[i];
|
|
52
|
+
}
|
|
53
|
+
for (v in r) {
|
|
54
|
+
var P = r[v];
|
|
55
|
+
if (1 == P) delete s[v]; else {
|
|
56
|
+
var M, y = s[v];
|
|
57
|
+
for (M of P) delete y[M];
|
|
58
|
+
T(y) && (delete s[v], t.push(v));
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function E(a, e) {
|
|
66
|
+
for (var r in e) {
|
|
67
|
+
var t = e[r];
|
|
68
|
+
if (1 == t) a[r] = 1; else {
|
|
69
|
+
let e = a[r];
|
|
70
|
+
(e = e || (a[r] = [])).push(...Object.keys(t));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
function h(e, a, r = void 0) {
|
|
76
|
+
e = [ j(e), e % 1e3, a ];
|
|
77
|
+
return null != r && e.push(r), e;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
function j(e) {
|
|
81
|
+
return Math.floor(e / 1e3);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function a(e) {
|
|
85
|
+
return e % 1e3;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export {
|
|
89
|
+
e as QyExpireInfo,
|
|
90
|
+
j as getSecond,
|
|
91
|
+
a as getSecondM
|
|
92
|
+
};
|
package/src/QyExpire_Worker.d.ts
CHANGED
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
import { QyMessageWorker } from "./QyMessageWorker.ts";
|
|
2
|
+
import { QyExpireInfo } from "./QyExpireInfo.ts";
|
|
2
3
|
export default class QyExpire_Worker extends QyMessageWorker {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
secondDirMap: {};
|
|
11
|
-
emptyFileHashList: never[];
|
|
4
|
+
roundedStartTime: any;
|
|
5
|
+
checkedTime: number;
|
|
6
|
+
roundTimer: any;
|
|
7
|
+
secondInterval: any;
|
|
8
|
+
milliSecondInterval: any;
|
|
9
|
+
emptyHashList: any;
|
|
10
|
+
qyExpireInfo: QyExpireInfo;
|
|
12
11
|
constructor(options: any);
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
12
|
+
setRoundedStartTime(roundedStartTime: any): void;
|
|
13
|
+
setItemExpire(hashKey: any, expireTime: any): void;
|
|
14
|
+
removeItemExpire(hashKey: any): void;
|
|
15
|
+
setContentExpire(hashKey: any, flattedRelativeTimeObj: any): void;
|
|
16
|
+
removeContentExpire(hashKey: any, propNamePathStrList: any): void;
|
|
18
17
|
_op_start(): void;
|
|
19
18
|
_op_stop(): void;
|
|
20
19
|
}
|
package/src/QyExpire_Worker.js
CHANGED
|
@@ -7,121 +7,106 @@ import {
|
|
|
7
7
|
} from "./QyMessageWorker.js";
|
|
8
8
|
|
|
9
9
|
import {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
} from "./QyFileContentUtils.js";
|
|
13
|
-
|
|
14
|
-
import {
|
|
15
|
-
getNowSeconds as v,
|
|
16
|
-
isEmptyObj as a
|
|
10
|
+
getNowTime as r,
|
|
11
|
+
isEmptyObj as c
|
|
17
12
|
} from "./QyUtils.js";
|
|
18
13
|
|
|
19
|
-
import "./QyLogger.js";
|
|
20
|
-
|
|
21
14
|
import {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
15
|
+
getSecond as d,
|
|
16
|
+
getSecondM as l,
|
|
17
|
+
QyExpireInfo as i
|
|
18
|
+
} from "./QyExpireInfo.js";
|
|
26
19
|
|
|
27
20
|
export default class extends e {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
secondDirMap = {};
|
|
36
|
-
emptyFileHashList = [];
|
|
21
|
+
roundedStartTime;
|
|
22
|
+
checkedTime = 0;
|
|
23
|
+
roundTimer;
|
|
24
|
+
secondInterval;
|
|
25
|
+
milliSecondInterval;
|
|
26
|
+
emptyHashList = [];
|
|
27
|
+
qyExpireInfo = new i();
|
|
37
28
|
constructor(e) {
|
|
38
29
|
super(e = {
|
|
39
30
|
...t("QyExpire_Worker"),
|
|
40
31
|
...e
|
|
41
32
|
});
|
|
42
33
|
}
|
|
43
|
-
|
|
44
|
-
return this.startTime + this.seconds;
|
|
45
|
-
}
|
|
46
|
-
setStartTime(e) {
|
|
34
|
+
setRoundedStartTime(e) {
|
|
47
35
|
Object.assign(this, {
|
|
48
|
-
|
|
49
|
-
|
|
36
|
+
roundedStartTime: e,
|
|
37
|
+
checkedTime: 0
|
|
50
38
|
});
|
|
51
39
|
}
|
|
40
|
+
setItemExpire(e, t) {
|
|
41
|
+
var {
|
|
42
|
+
checkedTime: r,
|
|
43
|
+
qyExpireInfo: i
|
|
44
|
+
} = this, o = h(this), n = {};
|
|
45
|
+
t <= o ? n[e] = 1 : i.setExpireInfo(e, t), r || (this.checkedTime = o),
|
|
46
|
+
v(this, !1, o, n);
|
|
47
|
+
}
|
|
48
|
+
removeItemExpire(e) {
|
|
49
|
+
var t = this.qyExpireInfo;
|
|
50
|
+
t.isEmpty || (t.removeExpireInfo(e), v(this));
|
|
51
|
+
}
|
|
52
52
|
setContentExpire(e, t) {
|
|
53
|
-
var
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
} = this,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if (p <= i) a.push(s), s == P && (n = !0); else {
|
|
63
|
-
f = m = v = c = d = h = l = void 0;
|
|
64
|
-
var l = this, h = e, d = s, c = p, {
|
|
65
|
-
hashPropSecondMap: v,
|
|
66
|
-
secondHashPropMap: m
|
|
67
|
-
} = l, f = x(v, [ h, d ]);
|
|
68
|
-
c != f && (y(v, [ h, d ], c), y(m, [ c, h, d ], 1), null != f && u(l, f, h, d),
|
|
69
|
-
c > l.maxSecond) && (l.maxSecond = c);
|
|
70
|
-
}
|
|
53
|
+
var r, {
|
|
54
|
+
checkedTime: i,
|
|
55
|
+
qyExpireInfo: o,
|
|
56
|
+
emptyHashList: n
|
|
57
|
+
} = this, s = h(this);
|
|
58
|
+
let a;
|
|
59
|
+
for (r in t) {
|
|
60
|
+
var m = t[r];
|
|
61
|
+
m <= s ? a ? a.push(r) : a = [ r ] : o.setExpireInfo(e, m, r);
|
|
71
62
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
}
|
|
63
|
+
var p = a ? {
|
|
64
|
+
[e]: a
|
|
65
|
+
} : {};
|
|
66
|
+
o.hashPropTimeMap[e] || n.push(e), i || (this.checkedTime = s), v(this, !1, s, p);
|
|
75
67
|
}
|
|
76
68
|
removeContentExpire(e, t) {
|
|
77
|
-
var
|
|
78
|
-
if (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
_inc(t = v() - this.currentTime) {
|
|
82
|
-
for (let e = 0; e < t; ++e) {
|
|
83
|
-
++this.seconds, a = p = h = l = n = i = o = r = s = void 0;
|
|
84
|
-
var s = this, r = this.seconds, o = s.secondHashPropMap, i = o[r];
|
|
85
|
-
if (i) {
|
|
86
|
-
var a, n = {};
|
|
87
|
-
for (a in i) {
|
|
88
|
-
var p, l = Object.keys(i[a]), h = {
|
|
89
|
-
expiredProps: l
|
|
90
|
-
};
|
|
91
|
-
for (p of l) m(s, a, p), p == P && (h.toDeleteFile = !0);
|
|
92
|
-
n[a] = h;
|
|
93
|
-
}
|
|
94
|
-
s.postParent("onContentExpired", n), delete o[r];
|
|
95
|
-
}
|
|
69
|
+
var r = this.qyExpireInfo;
|
|
70
|
+
if (!r.isEmpty) {
|
|
71
|
+
for (var i of t) r.removeExpireInfo(e, i);
|
|
72
|
+
v(this);
|
|
96
73
|
}
|
|
97
|
-
var {
|
|
98
|
-
emptyFileHashList: e,
|
|
99
|
-
maxSecond: d,
|
|
100
|
-
interval: c
|
|
101
|
-
} = this;
|
|
102
|
-
0 < e.length && (this.postParent("onFileAllExpireRemoved", e), e.length = 0),
|
|
103
|
-
this.seconds > d && (this.postParent("onExpireEmpty", d), clearInterval(c),
|
|
104
|
-
Object.assign(this, {
|
|
105
|
-
interval: void 0,
|
|
106
|
-
maxSecond: 0
|
|
107
|
-
}));
|
|
108
74
|
}
|
|
109
75
|
_op_start() {}
|
|
110
76
|
_op_stop() {
|
|
111
|
-
|
|
112
|
-
e && (clearInterval(e), this.interval = void 0);
|
|
77
|
+
u(this);
|
|
113
78
|
}
|
|
114
79
|
}
|
|
115
80
|
|
|
116
|
-
function
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
81
|
+
function h(e) {
|
|
82
|
+
return r() - e.roundedStartTime;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
function v(e, t = !1, r = h(e), i = {}) {
|
|
86
|
+
var o, n, s, {
|
|
87
|
+
qyExpireInfo: a,
|
|
88
|
+
checkedTime: m,
|
|
89
|
+
emptyHashList: p
|
|
120
90
|
} = e;
|
|
121
|
-
|
|
91
|
+
m != r && (a.processExpired(r, m, i, p), e.checkedTime = r), c(i) || e.postParent("onExpired", i),
|
|
92
|
+
0 < p.length && (e.postParent("onEmptyHashList", p), p.length = 0), a.isEmpty ? u(e) : c(a.secondTimeHashPropMap[d(r)]) ? (f(e),
|
|
93
|
+
t || e.secondInterval ? (n = e).secondInterval || (I(n), n.secondInterval = setInterval(() => v(n, !0), 1e3)) : (s = e,
|
|
94
|
+
m = 1e3 - l(r), s.roundTimer || (s.roundTimer = setTimeout(() => v(s, !0), m)))) : (o = e).milliSecondInterval || (I(o),
|
|
95
|
+
o.milliSecondInterval = setInterval(() => v(o), 1));
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
function I(e) {
|
|
99
|
+
var t = e.roundTimer;
|
|
100
|
+
t && (clearTimeout(t), e.roundTimer = void 0);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
function f(e) {
|
|
104
|
+
var t = e.milliSecondInterval;
|
|
105
|
+
t && (clearInterval(t), e.milliSecondInterval = void 0);
|
|
122
106
|
}
|
|
123
107
|
|
|
124
|
-
function u(e
|
|
125
|
-
var
|
|
126
|
-
|
|
108
|
+
function u(e) {
|
|
109
|
+
var t, r;
|
|
110
|
+
I(e), (r = (t = e).secondInterval) && (clearInterval(r), t.secondInterval = void 0),
|
|
111
|
+
f(e);
|
|
127
112
|
}
|
package/src/QyFile.d.ts
CHANGED
|
@@ -14,8 +14,8 @@ export declare class QyFile extends QyItem {
|
|
|
14
14
|
get isFile(): boolean;
|
|
15
15
|
get contentAsText(): any;
|
|
16
16
|
get clonedContent(): any;
|
|
17
|
-
setContent(content: any): void;
|
|
18
17
|
view(spec: string | undefined, noClone: any): any;
|
|
19
18
|
prop(namePath: any, spec: string | undefined, noClone: any): any;
|
|
20
19
|
unloadFileContent(): void;
|
|
20
|
+
ensureLoaded(): this | undefined;
|
|
21
21
|
}
|