datafolder 1.0.17 → 1.0.19
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 +9 -0
- package/package.json +17 -17
- package/sample.js +12 -0
- package/scripts/fastify.js +1 -0
- package/scripts/hnsw.js +39 -0
- package/src/QyAcl.js +109 -87
- package/src/QyBatch.d.ts +5 -0
- package/src/QyBatch.js +213 -129
- package/src/QyBinWriter.d.ts +5 -9
- package/src/QyBinWriter.js +36 -45
- package/src/QyBinaryHeap.d.ts +10 -0
- package/src/QyBinaryHeap.js +55 -0
- package/src/QyCD.d.ts +3 -0
- package/src/QyCD.js +51 -38
- package/src/QyCache.d.ts +11 -1
- package/src/QyCache.js +132 -90
- package/src/QyDB.js +4 -7
- package/src/QyDefaultOptions.js +8 -0
- package/src/QyEmbeddingWriter.d.ts +12 -0
- package/src/QyEmbeddingWriter.js +55 -0
- package/src/QyEmbeddings.d.ts +15 -0
- package/src/QyEmbeddings.js +128 -0
- package/src/QyFile.js +8 -7
- package/src/QyFileContentUtils.d.ts +0 -1
- package/src/QyFileContentUtils.js +138 -127
- package/src/QyHNSW.d.ts +7 -0
- package/src/QyHNSW.js +49 -0
- package/src/QyIndex.js +28 -27
- package/src/QyIndexPropTree.js +3 -1
- package/src/QySnapshots.js +127 -131
- package/src/QyTrigger.js +5 -6
- package/src/QyUtils.d.ts +7 -0
- package/src/QyUtils.js +130 -104
- package/static/codemirror.bundle/editor.bundle.js +33 -12
- package/test/testQyDocumentDB.js +38 -0
package/src/QyFile.js
CHANGED
|
@@ -10,7 +10,8 @@ import {
|
|
|
10
10
|
isSimpleType as h,
|
|
11
11
|
fromSingleName as s,
|
|
12
12
|
isEmptyObj as r,
|
|
13
|
-
getNowTime as l
|
|
13
|
+
getNowTime as l,
|
|
14
|
+
isArray as d
|
|
14
15
|
} from "./QyUtils.js";
|
|
15
16
|
|
|
16
17
|
import {
|
|
@@ -25,13 +26,13 @@ import {
|
|
|
25
26
|
handleExpiredProps as u
|
|
26
27
|
} from "./QyExpire.js";
|
|
27
28
|
|
|
28
|
-
let
|
|
29
|
+
let C = n.IndexPropPathsFileName, {
|
|
29
30
|
$spec: p,
|
|
30
31
|
$raw: c,
|
|
31
|
-
$clone:
|
|
32
|
+
$clone: m
|
|
32
33
|
} = t;
|
|
33
34
|
|
|
34
|
-
class
|
|
35
|
+
class y extends e {
|
|
35
36
|
_fileContentKey;
|
|
36
37
|
_fileContent;
|
|
37
38
|
cChangeId = 0;
|
|
@@ -80,7 +81,7 @@ class m extends e {
|
|
|
80
81
|
get clonedContent() {
|
|
81
82
|
return structuredClone(this.fileContent);
|
|
82
83
|
}
|
|
83
|
-
view(e =
|
|
84
|
+
view(e = m, t) {
|
|
84
85
|
var n = this.fileContent;
|
|
85
86
|
return null == n || h(n) ? n : function t(n, i, r, o) {
|
|
86
87
|
if (r === c) return i;
|
|
@@ -105,7 +106,7 @@ class m extends e {
|
|
|
105
106
|
return s;
|
|
106
107
|
}(this, n, e, t);
|
|
107
108
|
}
|
|
108
|
-
prop(e, t =
|
|
109
|
+
prop(e, t = m, n) {
|
|
109
110
|
var i;
|
|
110
111
|
if (t) return e = o(this.fileContent, d(e) ? e : [ e ]), i = t.$link, null != i ? v(this, e, i, t[p], n) : n || t === c ? e : structuredClone(e);
|
|
111
112
|
}
|
|
@@ -161,5 +162,5 @@ function v(e, t, n, i, r = !1) {
|
|
|
161
162
|
}
|
|
162
163
|
|
|
163
164
|
export {
|
|
164
|
-
|
|
165
|
+
y as QyFile
|
|
165
166
|
};
|
|
@@ -1,184 +1,195 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
isDeepStrictEqual as t
|
|
3
|
+
} from "node:util";
|
|
4
|
+
|
|
5
|
+
import {
|
|
6
|
+
isDate as f,
|
|
7
|
+
isArray as d,
|
|
8
|
+
isNotNullObj as a,
|
|
9
|
+
trimArrayTail as o,
|
|
10
|
+
isSimpleType as s,
|
|
5
11
|
SpecialOperators as r,
|
|
6
|
-
isEmptyObj as i
|
|
12
|
+
isEmptyObj as i,
|
|
13
|
+
isUint8Array as u,
|
|
14
|
+
isNumber as c
|
|
7
15
|
} from "./QyUtils.js";
|
|
8
16
|
|
|
9
|
-
let
|
|
10
|
-
$del:
|
|
11
|
-
$rpl:
|
|
12
|
-
$ext:
|
|
17
|
+
let {
|
|
18
|
+
$del: g,
|
|
19
|
+
$rpl: p,
|
|
20
|
+
$ext: V,
|
|
21
|
+
$pop: m,
|
|
22
|
+
$u8: v
|
|
13
23
|
} = r;
|
|
14
24
|
|
|
15
|
-
function
|
|
16
|
-
if (null == n) return
|
|
17
|
-
if (n !==
|
|
18
|
-
if (
|
|
19
|
-
var
|
|
20
|
-
if (null !=
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
var l, t = p(r);
|
|
24
|
-
for (l in n) {
|
|
25
|
-
var u = a(r[l], n[l]);
|
|
26
|
-
null == u ? (delete r[l], t && g(r)) : r[l] = u;
|
|
27
|
-
}
|
|
25
|
+
function h(e, n) {
|
|
26
|
+
if (null == n) return e;
|
|
27
|
+
if (n !== g) {
|
|
28
|
+
if (s(n)) return n;
|
|
29
|
+
var l = n[p];
|
|
30
|
+
if (null != l) {
|
|
31
|
+
let r = l[v];
|
|
32
|
+
return null != r ? new Uint8Array(r) : l;
|
|
28
33
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
if (r == m) return {
|
|
39
|
-
[w]: O(n)
|
|
40
|
-
};
|
|
41
|
-
if (h(r) || h(n)) return n;
|
|
42
|
-
for (var l in n) {
|
|
43
|
-
var t = n[l], u = r[l];
|
|
44
|
-
r[l] = null == u ? t : o(u, t);
|
|
34
|
+
let r = n[v];
|
|
35
|
+
if (null != r) return new Uint8Array(r);
|
|
36
|
+
if (null == e || s(e)) return n;
|
|
37
|
+
if (e != n) {
|
|
38
|
+
var t, u = d(e);
|
|
39
|
+
for (t in n) {
|
|
40
|
+
var i = h(e[t], n[t]);
|
|
41
|
+
null == i ? (delete e[t], u && o(e)) : e[t] = i;
|
|
42
|
+
}
|
|
45
43
|
}
|
|
44
|
+
return e;
|
|
46
45
|
}
|
|
47
|
-
return r;
|
|
48
46
|
}
|
|
49
47
|
|
|
50
|
-
function
|
|
51
|
-
let
|
|
48
|
+
function e(r, e) {
|
|
49
|
+
let n = {
|
|
52
50
|
oldValue: {},
|
|
53
51
|
newValue: {}
|
|
54
52
|
};
|
|
55
|
-
r =
|
|
56
|
-
return
|
|
53
|
+
r = $(r, e, [], 0, n);
|
|
54
|
+
return n.oldValue = A(n.oldValue, !0), n.newValue = A(n.newValue, !1), {
|
|
57
55
|
merged: r,
|
|
58
|
-
delta:
|
|
56
|
+
delta: n = n.oldValue || n.newValue ? n : void 0
|
|
59
57
|
};
|
|
60
58
|
}
|
|
61
59
|
|
|
62
|
-
function
|
|
63
|
-
if (!
|
|
60
|
+
function y(r, e, n) {
|
|
61
|
+
if (!e || 0 == e.length) return n;
|
|
64
62
|
let l = r;
|
|
65
|
-
for (let r = 0; r <
|
|
66
|
-
var t =
|
|
67
|
-
|
|
63
|
+
for (let r = 0; r < e.length - 1; ++r) {
|
|
64
|
+
var t = e[r];
|
|
65
|
+
a(l[t]) || (l[t] = {}), l = l[t];
|
|
68
66
|
}
|
|
69
|
-
var u =
|
|
70
|
-
return void 0 ===
|
|
67
|
+
var u = e.at(-1);
|
|
68
|
+
return void 0 === n ? delete l[u] : l[u] = n, r;
|
|
71
69
|
}
|
|
72
70
|
|
|
73
|
-
function
|
|
74
|
-
if (null !=
|
|
75
|
-
if (!
|
|
76
|
-
if (0 !=
|
|
71
|
+
function n(r, e) {
|
|
72
|
+
if (null != e && null != (r = b(r))) {
|
|
73
|
+
if (!d(e)) return "" == e ? r : b(r[e]);
|
|
74
|
+
if (0 != e.length && (1 != e.length || "" != e[0])) for (var n of e) if (null == (r = b(r[n]))) return;
|
|
77
75
|
return r;
|
|
78
76
|
}
|
|
79
77
|
}
|
|
80
78
|
|
|
81
|
-
function
|
|
82
|
-
var t =
|
|
83
|
-
if (l ==
|
|
79
|
+
function w(r, e, n = !1, l = 0) {
|
|
80
|
+
var t = e[l];
|
|
81
|
+
if (l == e.length - 1) return delete r[t], !n && i(r) ? void 0 : r;
|
|
84
82
|
var u = r[t];
|
|
85
|
-
if (
|
|
86
|
-
u =
|
|
87
|
-
if (null == u && !
|
|
83
|
+
if (a(u)) {
|
|
84
|
+
u = w(u, e, n, l + 1);
|
|
85
|
+
if (null == u && !n) return delete r[t], i(r) ? void 0 : r;
|
|
88
86
|
r[t] = u;
|
|
89
87
|
}
|
|
90
88
|
return r;
|
|
91
89
|
}
|
|
92
90
|
|
|
93
|
-
function
|
|
94
|
-
return function
|
|
95
|
-
if (
|
|
96
|
-
if (!
|
|
97
|
-
if (
|
|
98
|
-
let r =
|
|
99
|
-
if (null != r) return
|
|
100
|
-
let
|
|
101
|
-
if (null !=
|
|
91
|
+
function A(r, e = !0) {
|
|
92
|
+
return function l(t, u) {
|
|
93
|
+
if (f(t)) return t.toISOString();
|
|
94
|
+
if (!a(t)) return u && t === g ? void 0 : t;
|
|
95
|
+
if (u) {
|
|
96
|
+
let r = t[p];
|
|
97
|
+
if (null != r) return l(r, u);
|
|
98
|
+
let e = t[V];
|
|
99
|
+
if (null != e) return l(d(e) ? e : [ e ], u);
|
|
100
|
+
let n = t[m];
|
|
101
|
+
if (null != n) return;
|
|
102
102
|
}
|
|
103
|
-
let
|
|
104
|
-
let
|
|
105
|
-
for (var i in
|
|
106
|
-
let r =
|
|
107
|
-
void 0 === r ? (delete
|
|
103
|
+
let e = d(t);
|
|
104
|
+
let n = !0;
|
|
105
|
+
for (var i in t) {
|
|
106
|
+
let r = l(t[i], u);
|
|
107
|
+
void 0 === r ? (delete t[i], e && o(t)) : (t[i] = r, n = !1);
|
|
108
108
|
}
|
|
109
|
-
return
|
|
110
|
-
}(r,
|
|
109
|
+
return n ? void 0 : t;
|
|
110
|
+
}(r, e);
|
|
111
111
|
}
|
|
112
112
|
|
|
113
113
|
function l(r) {
|
|
114
|
-
if (
|
|
115
|
-
for (var
|
|
116
|
-
var
|
|
117
|
-
|
|
114
|
+
if (s(r)) return r ? g : void 0;
|
|
115
|
+
for (var e in r) {
|
|
116
|
+
var n = l(r[e]);
|
|
117
|
+
n ? r[e] = n : delete r[e];
|
|
118
|
+
}
|
|
119
|
+
return d(r) && o(r), r;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function S(r, e, n, l, t) {
|
|
123
|
+
if (r != e) {
|
|
124
|
+
var u, i = d(r);
|
|
125
|
+
for (u in e) {
|
|
126
|
+
n[l] = u, n.length = l + 1;
|
|
127
|
+
var f = $(r[u], e[u], n, l + 1, t);
|
|
128
|
+
null == f ? (delete r[u], i && o(r)) : r[u] = f;
|
|
129
|
+
}
|
|
118
130
|
}
|
|
119
|
-
return
|
|
131
|
+
return r;
|
|
120
132
|
}
|
|
121
133
|
|
|
122
|
-
function
|
|
123
|
-
if (void 0 ===
|
|
124
|
-
if (
|
|
125
|
-
if (null ==
|
|
126
|
-
var i =
|
|
127
|
-
if (null != i) return
|
|
128
|
-
let r =
|
|
129
|
-
if (null != r) return
|
|
130
|
-
|
|
134
|
+
function $(e, n, l, t, u) {
|
|
135
|
+
if (void 0 === n) return e;
|
|
136
|
+
if (n !== g && null !== n) {
|
|
137
|
+
if (null == e || s(e) || s(n)) return O(e, n, l, u);
|
|
138
|
+
var i = n[p];
|
|
139
|
+
if (null != i) return O(e, i, l, u);
|
|
140
|
+
let r = n[V];
|
|
141
|
+
if (null != r) return d(r) || (r = [ r ]), (d(e) ? (e, n, r, l) => {
|
|
142
|
+
n = A(n);
|
|
131
143
|
var t = {};
|
|
132
|
-
for (let r = 0; r <
|
|
133
|
-
var u =
|
|
134
|
-
null != u && (t[r +
|
|
135
|
-
[
|
|
144
|
+
for (let r = 0; r < n.length; ++r) {
|
|
145
|
+
var u = n[r];
|
|
146
|
+
null != u && (t[r + e.length] = s(u) ? u : {
|
|
147
|
+
[p]: u
|
|
136
148
|
});
|
|
137
149
|
}
|
|
138
|
-
return
|
|
139
|
-
} :
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
null == V ? (delete f[c], s && g(f)) : f[c] = V;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
return f;
|
|
150
|
+
return U(l, r, e, t), e.concat(n);
|
|
151
|
+
} : O)(e, r, l, u);
|
|
152
|
+
i = n[m];
|
|
153
|
+
if (null == i) return d(e) && !d(n) || !d(e) && d(n) ? O(e, n, l, u) : S(e, n, l, t, u);
|
|
154
|
+
var n = e, f = l, a = u;
|
|
155
|
+
if (!i || !d(n)) return n;
|
|
156
|
+
var o = n.length, v = [];
|
|
157
|
+
for (let r = c(i) ? i <= o ? i : o : 1; 0 < r; --r) v[o - r] = g;
|
|
158
|
+
return S(n, v, f, t, a);
|
|
151
159
|
}
|
|
152
|
-
null !=
|
|
160
|
+
null != e && U(u, l, e, g);
|
|
153
161
|
}
|
|
154
162
|
|
|
155
|
-
function
|
|
156
|
-
|
|
157
|
-
return r ===
|
|
158
|
-
[
|
|
159
|
-
}
|
|
160
|
-
[
|
|
161
|
-
})
|
|
163
|
+
function O(r, e, n, l) {
|
|
164
|
+
e = A(e);
|
|
165
|
+
return r === e || u(r) && u(e) && t(r, e) ? r : null != e ? (null == r ? U(l, n, 0 == n.length ? void 0 : null, u(e) ? {
|
|
166
|
+
[v]: Array.from(e)
|
|
167
|
+
} : s(e) ? e : {
|
|
168
|
+
[p]: e
|
|
169
|
+
}) : U(l, n, r, u(e) ? {
|
|
170
|
+
[v]: Array.from(e)
|
|
171
|
+
} : s(r) ? e : {
|
|
172
|
+
[p]: e
|
|
173
|
+
}), e) : void U(l, n, r, g);
|
|
162
174
|
}
|
|
163
175
|
|
|
164
|
-
function
|
|
165
|
-
r.oldValue =
|
|
176
|
+
function U(r, e, n, l) {
|
|
177
|
+
r.oldValue = y(r.oldValue, e, n), r.newValue = y(r.newValue, e, l);
|
|
166
178
|
}
|
|
167
179
|
|
|
168
|
-
function
|
|
169
|
-
if (null != r && r !=
|
|
170
|
-
for (;null != r[
|
|
180
|
+
function b(r) {
|
|
181
|
+
if (null != r && r != g) {
|
|
182
|
+
for (;null != r[p]; ) if ((r = r[p]) == g) return;
|
|
171
183
|
return r;
|
|
172
184
|
}
|
|
173
185
|
}
|
|
174
186
|
|
|
175
187
|
export {
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
O as cleanContent,
|
|
188
|
+
h as mergeContent,
|
|
189
|
+
e as mergeContentAndGenDelta,
|
|
190
|
+
y as setValByNamePath,
|
|
191
|
+
n as getValByNamePath,
|
|
192
|
+
w as delValByNamePath,
|
|
193
|
+
A as cleanContent,
|
|
183
194
|
l as objToDelMarks
|
|
184
195
|
};
|
package/src/QyHNSW.d.ts
ADDED
package/src/QyHNSW.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import "./QyBinaryHeap.js";
|
|
2
|
+
|
|
3
|
+
class t {
|
|
4
|
+
probs;
|
|
5
|
+
constructor(t) {
|
|
6
|
+
this.probs = (t => {
|
|
7
|
+
let r = 1 / Math.log(t), e = [], n = 0;
|
|
8
|
+
for (;;) {
|
|
9
|
+
var a = Math.exp(-e.length / r) * (1 - Math.exp(-1 / r));
|
|
10
|
+
if (a < 1e-9) {
|
|
11
|
+
e.push(1);
|
|
12
|
+
break;
|
|
13
|
+
}
|
|
14
|
+
e.push(n += a);
|
|
15
|
+
}
|
|
16
|
+
return e;
|
|
17
|
+
})(t);
|
|
18
|
+
}
|
|
19
|
+
_determineLayer(r) {
|
|
20
|
+
var e = this.probs, n = e.length;
|
|
21
|
+
for (let t = 0; t < n; ++t) if (r <= e[t]) return t;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
function e(r, e = r) {
|
|
26
|
+
var n = r.length;
|
|
27
|
+
let a = 0;
|
|
28
|
+
for (let t = 0; t < n; ++t) a += r[t] * e[t];
|
|
29
|
+
return a;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
function r(t, r) {
|
|
33
|
+
return e(t, r) / (Math.sqrt(e(t)) * Math.sqrt(e(r)));
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
function n(t, r) {
|
|
37
|
+
return 1 / (1 + ((r, e) => {
|
|
38
|
+
var n = r.length;
|
|
39
|
+
let a = 0;
|
|
40
|
+
for (let t = 0; t < n; ++t) a += (r[t] - e[t]) ** 2;
|
|
41
|
+
return Math.sqrt(a);
|
|
42
|
+
})(t, r));
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export {
|
|
46
|
+
t as QyHNSW,
|
|
47
|
+
r as cosineSimilarity,
|
|
48
|
+
n as euclideanSimilarity
|
|
49
|
+
};
|
package/src/QyIndex.js
CHANGED
|
@@ -7,35 +7,36 @@ import {
|
|
|
7
7
|
SpecialOperators as i,
|
|
8
8
|
getSuffix as p,
|
|
9
9
|
fromSingleName as r,
|
|
10
|
-
toSingleName as o
|
|
10
|
+
toSingleName as o,
|
|
11
|
+
isArray as v
|
|
11
12
|
} from "./QyUtils.js";
|
|
12
13
|
|
|
13
14
|
import {
|
|
14
|
-
getValByNamePath as
|
|
15
|
+
getValByNamePath as m
|
|
15
16
|
} from "./QyFileContentUtils.js";
|
|
16
17
|
|
|
17
18
|
import {
|
|
18
|
-
QyUnionNode as
|
|
19
|
+
QyUnionNode as y
|
|
19
20
|
} from "./QyUnionNode.js";
|
|
20
21
|
|
|
21
22
|
import {
|
|
22
|
-
QyIntersectNode as
|
|
23
|
+
QyIntersectNode as b
|
|
23
24
|
} from "./QyIntersectNode.js";
|
|
24
25
|
|
|
25
26
|
import {
|
|
26
|
-
logger as
|
|
27
|
+
logger as S
|
|
27
28
|
} from "./QyLogger.js";
|
|
28
29
|
|
|
29
|
-
let
|
|
30
|
+
let {
|
|
30
31
|
$or: h,
|
|
31
32
|
$and: N
|
|
32
|
-
} = i, $ = new
|
|
33
|
+
} = i, $ = new y(), l = [];
|
|
33
34
|
|
|
34
35
|
function e(e) {
|
|
35
36
|
if (null != e && !s(e)) return function r(i, n, t, l) {
|
|
36
37
|
if (C(i)) 0 < t.length && (n[o(t)] = 1); else {
|
|
37
38
|
let e = i[h] || i[N];
|
|
38
|
-
if (null != e) if (
|
|
39
|
+
if (null != e) if (v(e)) for (var f of e) r(f, n, t, l), t.length = l; else r(e, n, t, l),
|
|
39
40
|
t.length = l; else for (var u in i) t.push(u), r(i[u], n, t, l + 1),
|
|
40
41
|
t.length = l;
|
|
41
42
|
}
|
|
@@ -43,9 +44,9 @@ function e(e) {
|
|
|
43
44
|
}
|
|
44
45
|
|
|
45
46
|
function n(e, r, i, n, t, l) {
|
|
46
|
-
n =
|
|
47
|
+
n = m(n, r), t = m(t, r);
|
|
47
48
|
if (n !== t) {
|
|
48
|
-
var f, u, o, a, l =
|
|
49
|
+
var f, u, o, a, l = v(t) || v(m(l, r)), s = Object.fromEntries(Q(n, l).map(e => [ JSON.stringify(e), e ])), d = Object.fromEntries(Q(t, l).map(e => [ JSON.stringify(e), e ])), g = [], c = [];
|
|
49
50
|
for (f in s) d[f] || (u = s[f], (u = e.searchSubdir(u)) && (u = u.getFile(i)) && c.push(u));
|
|
50
51
|
for (o in d) s[o] || (a = d[o], a = e.searchOrCreateSubdir(a), g.push(a.getOrCreateFile(i)));
|
|
51
52
|
return {
|
|
@@ -70,9 +71,9 @@ function* L(e, r, i = 0) {
|
|
|
70
71
|
if ("**" == n) {
|
|
71
72
|
t.isHiddenFolder || (yield t);
|
|
72
73
|
for (var e of t.allSubdirs()) yield e;
|
|
73
|
-
} else if ("*" == n) for (var f of t.subdirList) yield* L(i, f, l + 1); else if (g(n)) for (var u of t.filterSubdirNames(n)) yield* L(i, u, l + 1); else if (
|
|
74
|
+
} else if ("*" == n) for (var f of t.subdirList) yield* L(i, f, l + 1); else if (g(n)) for (var u of t.filterSubdirNames(n)) yield* L(i, u, l + 1); else if (v(n)) for (var o of n) yield* r(i, o, t, l); else {
|
|
74
75
|
let e = n.$or || n.$in;
|
|
75
|
-
if (
|
|
76
|
+
if (v(e)) for (var a of e) yield* r(i, a, t, l); else if (H(n)) for (var s of R(t, n)) yield* L(i, s, l + 1); else {
|
|
76
77
|
let e = t.getSubdir(n);
|
|
77
78
|
e && (yield* L(i, e, l + 1));
|
|
78
79
|
}
|
|
@@ -93,7 +94,7 @@ function O(r, i, n, t, l) {
|
|
|
93
94
|
if (!i) return;
|
|
94
95
|
for (o of function i(n, e) {
|
|
95
96
|
if (null == e) return $;
|
|
96
|
-
if (d(e)) return new
|
|
97
|
+
if (d(e)) return new y(n.getSubdir(e));
|
|
97
98
|
if (g(e)) return j(n.filterSubdirNames(e));
|
|
98
99
|
if (H(e)) return j(R(n, e));
|
|
99
100
|
let {
|
|
@@ -101,21 +102,21 @@ function O(r, i, n, t, l) {
|
|
|
101
102
|
$spec: l
|
|
102
103
|
} = e;
|
|
103
104
|
if (null != t) {
|
|
104
|
-
let e = new
|
|
105
|
+
let e = new y(), {
|
|
105
106
|
qyCache: r,
|
|
106
107
|
subdirList: i
|
|
107
108
|
} = n;
|
|
108
109
|
for (var f of i) D(r, t, f.name, l) && e.addDir(f);
|
|
109
110
|
return e;
|
|
110
111
|
}
|
|
111
|
-
let u = new
|
|
112
|
-
if (
|
|
112
|
+
let u = new b();
|
|
113
|
+
if (v(e)) for (var r of e) u.addNode(i(n, r)); else for (var o in e) {
|
|
113
114
|
let r = e[o];
|
|
114
|
-
if (o == h) if (
|
|
115
|
-
let e = new
|
|
115
|
+
if (o == h) if (v(r)) {
|
|
116
|
+
let e = new y();
|
|
116
117
|
for (var a of r) e.addNode(i(n, a));
|
|
117
118
|
u.addNode(e);
|
|
118
|
-
} else u.addNode(i(n, r)); else if (o == N) if (
|
|
119
|
+
} else u.addNode(i(n, r)); else if (o == N) if (v(r)) for (var s of r) u.addNode(i(n, s)); else u.addNode(i(n, r)); else {
|
|
119
120
|
let e = n.getSubdir(o);
|
|
120
121
|
if (null == e) return $;
|
|
121
122
|
u.addNode(i(e, r));
|
|
@@ -124,7 +125,7 @@ function O(r, i, n, t, l) {
|
|
|
124
125
|
return u;
|
|
125
126
|
}(i, n).getFiles(l)) t.push(r.getFile(o)), ++e;
|
|
126
127
|
}
|
|
127
|
-
|
|
128
|
+
S.info(`Checking ${f} file${p(f)}, result: ${e} file` + p(e));
|
|
128
129
|
}
|
|
129
130
|
}
|
|
130
131
|
|
|
@@ -135,7 +136,7 @@ function u(e) {
|
|
|
135
136
|
|
|
136
137
|
function j(e) {
|
|
137
138
|
if (0 == e.length) return $;
|
|
138
|
-
var r, i = new
|
|
139
|
+
var r, i = new y();
|
|
139
140
|
for (r of e) i.addDir(r);
|
|
140
141
|
return i;
|
|
141
142
|
}
|
|
@@ -177,10 +178,10 @@ function D(e, r, i, n) {
|
|
|
177
178
|
var r = e.getDir(r);
|
|
178
179
|
return !!r && !!(r = r.getFile(i)) && (null == n || function r(i, n, t) {
|
|
179
180
|
if (null == n) return !1;
|
|
180
|
-
if (d(t)) return
|
|
181
|
+
if (d(t)) return v(n) ? n.includes(t) : c(n) ? n[t] : n == t;
|
|
181
182
|
if (g(t)) return t(n);
|
|
182
|
-
if (
|
|
183
|
-
if (!
|
|
183
|
+
if (v(t)) {
|
|
184
|
+
if (!v(n)) return !1;
|
|
184
185
|
for (let e = 0; e < t.length; ++e) if (!r(i, n[e], t[e])) return !1;
|
|
185
186
|
} else {
|
|
186
187
|
var e, {
|
|
@@ -189,12 +190,12 @@ function D(e, r, i, n) {
|
|
|
189
190
|
} = t;
|
|
190
191
|
if (l) {
|
|
191
192
|
if (d(n)) return D(i, l, n, f);
|
|
192
|
-
if (
|
|
193
|
+
if (v(n)) {
|
|
193
194
|
for (var u of n) if (D(i, l, u, f)) return !0;
|
|
194
195
|
} else for (var o in n) if (D(i, l, o, f)) return !0;
|
|
195
196
|
return !1;
|
|
196
197
|
}
|
|
197
|
-
if (d(n) ||
|
|
198
|
+
if (d(n) || v(n)) return !1;
|
|
198
199
|
for (e in t) if (!r(i, n[e], t[e])) return !1;
|
|
199
200
|
}
|
|
200
201
|
return !0;
|
|
@@ -203,7 +204,7 @@ function D(e, r, i, n) {
|
|
|
203
204
|
|
|
204
205
|
function Q(e, r, i = [], n = [], t = 0) {
|
|
205
206
|
if (null != e) if (u(e = c(e) && r ? Object.values(e) : e)) n[t] = e, n.length = t + 1,
|
|
206
|
-
i.push([ ...n ]); else if (
|
|
207
|
+
i.push([ ...n ]); else if (v(e)) {
|
|
207
208
|
n.length = t + 1;
|
|
208
209
|
for (var l of e.filter(e => u(e))) n[t] = l, i.push([ ...n ]);
|
|
209
210
|
} else if (c(e)) for (var f in e) n[t] = f, n.length = t + 1, Q(e[f], !1, i, n, t + 1);
|