pmcf 1.76.1 → 1.76.3
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/package.json +1 -1
- package/src/base.mjs +7 -1
- package/src/dns.mjs +3 -1
- package/src/filter.mjs +19 -15
package/package.json
CHANGED
package/src/base.mjs
CHANGED
|
@@ -16,6 +16,12 @@ const BaseTypeDefinition = {
|
|
|
16
16
|
identifier: true,
|
|
17
17
|
writeable: true
|
|
18
18
|
},
|
|
19
|
+
/* fullName: {
|
|
20
|
+
type: "string",
|
|
21
|
+
collection: false,
|
|
22
|
+
identifier: true,
|
|
23
|
+
writeable: false
|
|
24
|
+
},*/
|
|
19
25
|
description: { type: "string", collection: false, writeable: true },
|
|
20
26
|
directory: { type: "string", collection: false, writeable: false },
|
|
21
27
|
packaging: { type: "string", collection: false, writeable: true }
|
|
@@ -269,7 +275,7 @@ export class Base {
|
|
|
269
275
|
}
|
|
270
276
|
|
|
271
277
|
get domains() {
|
|
272
|
-
return this.owner?.domains || new Set()
|
|
278
|
+
return this.owner?.domains || new Set();
|
|
273
279
|
}
|
|
274
280
|
|
|
275
281
|
get administratorEmail() {
|
package/src/dns.mjs
CHANGED
|
@@ -231,11 +231,13 @@ async function generateZoneDefs(dns, targetDir) {
|
|
|
231
231
|
fullName(nameService.ipAddressOrDomainName)
|
|
232
232
|
);
|
|
233
233
|
|
|
234
|
+
const ALPNRecord = createRecord("@", "HTTPS", 1, ".", "alpn=h3");
|
|
235
|
+
|
|
234
236
|
const zone = {
|
|
235
237
|
id: domain,
|
|
236
238
|
type: "plain",
|
|
237
239
|
file: `${dns.owner.name}/${domain}.zone`,
|
|
238
|
-
records: new Set([SOARecord, NSRecord, ...records])
|
|
240
|
+
records: new Set([SOARecord, NSRecord, ALPNRecord, ...records])
|
|
239
241
|
};
|
|
240
242
|
zones.push(zone);
|
|
241
243
|
|
package/src/filter.mjs
CHANGED
|
@@ -1,6 +1,24 @@
|
|
|
1
1
|
export function* objectFilter(type, objects, filter) {
|
|
2
2
|
if (filter) {
|
|
3
3
|
advance: for (const object of objects) {
|
|
4
|
+
const compare = (op, key, value) => {
|
|
5
|
+
switch (op) {
|
|
6
|
+
case "=":
|
|
7
|
+
return object[key] == value;
|
|
8
|
+
case "!=":
|
|
9
|
+
return object[key] != value;
|
|
10
|
+
case "<":
|
|
11
|
+
return object[key] < value;
|
|
12
|
+
case "<=":
|
|
13
|
+
return object[key] <= value;
|
|
14
|
+
case ">":
|
|
15
|
+
return object[key] > value;
|
|
16
|
+
case ">=":
|
|
17
|
+
return object[key] >= value;
|
|
18
|
+
}
|
|
19
|
+
return false;
|
|
20
|
+
};
|
|
21
|
+
|
|
4
22
|
const filterString = key => {
|
|
5
23
|
if (filter[key] === undefined) {
|
|
6
24
|
return true;
|
|
@@ -27,21 +45,7 @@ export function* objectFilter(type, objects, filter) {
|
|
|
27
45
|
case "string":
|
|
28
46
|
const m = filter[key].match(/^([=><!]+)(\d+)/);
|
|
29
47
|
if (m) {
|
|
30
|
-
|
|
31
|
-
switch (m[1]) {
|
|
32
|
-
case "=":
|
|
33
|
-
return object[key] === value;
|
|
34
|
-
case "!=":
|
|
35
|
-
return object[key] !== value;
|
|
36
|
-
case "<":
|
|
37
|
-
return object[key] < value;
|
|
38
|
-
case "<=":
|
|
39
|
-
return object[key] <= value;
|
|
40
|
-
case ">":
|
|
41
|
-
return object[key] > value;
|
|
42
|
-
case ">=":
|
|
43
|
-
return object[key] >= value;
|
|
44
|
-
}
|
|
48
|
+
return compare(m[1], key, parseInt(m[2]));
|
|
45
49
|
}
|
|
46
50
|
}
|
|
47
51
|
return false;
|