pmcf 2.74.4 → 3.0.0

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pmcf",
3
- "version": "2.74.4",
3
+ "version": "3.0.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
package/src/base.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  import { join } from "node:path";
2
2
  import { allOutputs } from "npm-pkgbuild";
3
- import { getAttribute, default_attribute, description_attribute } from "pacc";
3
+ import { getAttribute, default_attribute, description_attribute, boolean_attribute } from "pacc";
4
4
  import { addType, primitives, typeFactory } from "./types.mjs";
5
5
  import { asArray } from "./utils.mjs";
6
6
 
@@ -9,11 +9,10 @@ const BaseTypeDefinition = {
9
9
  owners: [],
10
10
  properties: {
11
11
  owner: { type: "base", collection: false, writeable: false },
12
- type: { type: "string", collection: false, writeable: false },
12
+ type: default_attribute,
13
13
  name: {
14
- type: "string",
15
- collection: false,
16
- identifier: true,
14
+ ...default_attribute,
15
+ isKey: true,
17
16
  writeable: true
18
17
  },
19
18
  description: { ...description_attribute, writeable: true },
@@ -21,8 +20,7 @@ const BaseTypeDefinition = {
21
20
  directory: { ...default_attribute, writeable: false },
22
21
  packaging: { ...default_attribute, writeable: true },
23
22
  disabled: {
24
- type: "boolean",
25
- collection: false,
23
+ ...boolean_attribute,
26
24
  writeable: true,
27
25
  default: false
28
26
  },
package/src/subnet.mjs CHANGED
@@ -18,7 +18,7 @@ const SubnetTypeDefinition = {
18
18
  properties: {
19
19
  address: {
20
20
  ...default_attribute,
21
- identifier: true
21
+ isKey: true
22
22
  },
23
23
  networks: { type: "network", collection: true, writeable: true },
24
24
  prefixLength: { type: "number", collection: false, writeable: false }
package/src/types.mjs CHANGED
@@ -29,7 +29,7 @@ export function resolveTypeLinks() {
29
29
 
30
30
  for (const [name, property] of Object.entries(type.properties)) {
31
31
  property.name = name;
32
- if (property.identifier) {
32
+ if (property.isKey) {
33
33
  type.identifier = property;
34
34
  }
35
35
 
package/types/base.d.mts CHANGED
@@ -13,16 +13,22 @@ export class Base {
13
13
  collection: boolean;
14
14
  writeable: boolean;
15
15
  };
16
- type: {
17
- type: string;
18
- collection: boolean;
19
- writeable: boolean;
20
- };
16
+ type: import("pacc").AttributeDefinition;
21
17
  name: {
18
+ isKey: boolean;
19
+ writeable: boolean;
22
20
  type: string;
21
+ writable: boolean;
22
+ mandatory: boolean;
23
23
  collection: boolean;
24
- identifier: boolean;
25
- writeable: boolean;
24
+ private?: boolean;
25
+ depends?: string;
26
+ additionalAttributes: string[];
27
+ description?: string;
28
+ default?: any;
29
+ set?: Function;
30
+ get?: Function;
31
+ env?: string[] | string;
26
32
  };
27
33
  description: {
28
34
  writeable: boolean;
@@ -78,10 +84,20 @@ export class Base {
78
84
  env?: string[] | string;
79
85
  };
80
86
  disabled: {
81
- type: string;
82
- collection: boolean;
83
87
  writeable: boolean;
84
88
  default: boolean;
89
+ type: string;
90
+ isKey: boolean;
91
+ writable: boolean;
92
+ mandatory: boolean;
93
+ collection: boolean;
94
+ private?: boolean;
95
+ depends?: string;
96
+ additionalAttributes: string[];
97
+ description?: string;
98
+ set?: Function;
99
+ get?: Function;
100
+ env?: string[] | string;
85
101
  };
86
102
  tags: {
87
103
  collection: boolean;
@@ -14,16 +14,22 @@ export class Cluster extends Host {
14
14
  collection: boolean;
15
15
  writeable: boolean;
16
16
  };
17
- type: {
18
- type: string;
19
- collection: boolean;
20
- writeable: boolean;
21
- };
17
+ type: import("pacc").AttributeDefinition;
22
18
  name: {
19
+ isKey: boolean;
20
+ writeable: boolean;
23
21
  type: string;
22
+ writable: boolean;
23
+ mandatory: boolean;
24
24
  collection: boolean;
25
- identifier: boolean;
26
- writeable: boolean;
25
+ private?: boolean;
26
+ depends?: string;
27
+ additionalAttributes: string[];
28
+ description?: string;
29
+ default?: any;
30
+ set?: Function;
31
+ get?: Function;
32
+ env?: string[] | string;
27
33
  };
28
34
  description: {
29
35
  writeable: boolean;
@@ -79,10 +85,20 @@ export class Cluster extends Host {
79
85
  env?: string[] | string;
80
86
  };
81
87
  disabled: {
82
- type: string;
83
- collection: boolean;
84
88
  writeable: boolean;
85
89
  default: boolean;
90
+ type: string;
91
+ isKey: boolean;
92
+ writable: boolean;
93
+ mandatory: boolean;
94
+ collection: boolean;
95
+ private?: boolean;
96
+ depends?: string;
97
+ additionalAttributes: string[];
98
+ description?: string;
99
+ set?: Function;
100
+ get?: Function;
101
+ env?: string[] | string;
86
102
  };
87
103
  tags: {
88
104
  collection: boolean;
@@ -126,9 +142,8 @@ export class Cluster extends Host {
126
142
  constructWithIdentifierOnly: boolean;
127
143
  properties: {
128
144
  address: {
129
- identifier: boolean;
130
- type: string;
131
145
  isKey: boolean;
146
+ type: string;
132
147
  writable: boolean;
133
148
  mandatory: boolean;
134
149
  collection: boolean;
@@ -284,16 +299,22 @@ export class Cluster extends Host {
284
299
  collection: boolean;
285
300
  writeable: boolean;
286
301
  };
287
- type: {
288
- type: string;
289
- collection: boolean;
290
- writeable: boolean;
291
- };
302
+ type: import("pacc").AttributeDefinition;
292
303
  name: {
304
+ isKey: boolean;
305
+ writeable: boolean;
293
306
  type: string;
307
+ writable: boolean;
308
+ mandatory: boolean;
294
309
  collection: boolean;
295
- identifier: boolean;
296
- writeable: boolean;
310
+ private?: boolean;
311
+ depends?: string;
312
+ additionalAttributes: string[];
313
+ description?: string;
314
+ default?: any;
315
+ set?: Function;
316
+ get?: Function;
317
+ env?: string[] | string;
297
318
  };
298
319
  description: {
299
320
  writeable: boolean;
@@ -349,10 +370,20 @@ export class Cluster extends Host {
349
370
  env?: string[] | string;
350
371
  };
351
372
  disabled: {
352
- type: string;
353
- collection: boolean;
354
373
  writeable: boolean;
355
374
  default: boolean;
375
+ type: string;
376
+ isKey: boolean;
377
+ writable: boolean;
378
+ mandatory: boolean;
379
+ collection: boolean;
380
+ private?: boolean;
381
+ depends?: string;
382
+ additionalAttributes: string[];
383
+ description?: string;
384
+ set?: Function;
385
+ get?: Function;
386
+ env?: string[] | string;
356
387
  };
357
388
  tags: {
358
389
  collection: boolean;
@@ -28,16 +28,22 @@ export class ExtraSourceService extends Service {
28
28
  collection: boolean;
29
29
  writeable: boolean;
30
30
  };
31
- type: {
32
- type: string;
33
- collection: boolean;
34
- writeable: boolean;
35
- };
31
+ type: import("pacc").AttributeDefinition;
36
32
  name: {
33
+ isKey: boolean;
34
+ writeable: boolean;
37
35
  type: string;
36
+ writable: boolean;
37
+ mandatory: boolean;
38
38
  collection: boolean;
39
- identifier: boolean;
40
- writeable: boolean;
39
+ private?: boolean;
40
+ depends?: string;
41
+ additionalAttributes: string[];
42
+ description?: string;
43
+ default?: any;
44
+ set?: Function;
45
+ get?: Function;
46
+ env?: string[] | string;
41
47
  };
42
48
  description: {
43
49
  writeable: boolean;
@@ -93,10 +99,20 @@ export class ExtraSourceService extends Service {
93
99
  env?: string[] | string;
94
100
  };
95
101
  disabled: {
96
- type: string;
97
- collection: boolean;
98
102
  writeable: boolean;
99
103
  default: boolean;
104
+ type: string;
105
+ isKey: boolean;
106
+ writable: boolean;
107
+ mandatory: boolean;
108
+ collection: boolean;
109
+ private?: boolean;
110
+ depends?: string;
111
+ additionalAttributes: string[];
112
+ description?: string;
113
+ set?: Function;
114
+ get?: Function;
115
+ env?: string[] | string;
100
116
  };
101
117
  tags: {
102
118
  collection: boolean;
package/types/host.d.mts CHANGED
@@ -12,16 +12,22 @@ export class Host extends ServiceOwner {
12
12
  collection: boolean;
13
13
  writeable: boolean;
14
14
  };
15
- type: {
16
- type: string;
17
- collection: boolean;
18
- writeable: boolean;
19
- };
15
+ type: import("pacc").AttributeDefinition;
20
16
  name: {
17
+ isKey: boolean;
18
+ writeable: boolean;
21
19
  type: string;
20
+ writable: boolean;
21
+ mandatory: boolean;
22
22
  collection: boolean;
23
- identifier: boolean;
24
- writeable: boolean;
23
+ private?: boolean;
24
+ depends?: string;
25
+ additionalAttributes: string[];
26
+ description?: string;
27
+ default?: any;
28
+ set?: Function;
29
+ get?: Function;
30
+ env?: string[] | string;
25
31
  };
26
32
  description: {
27
33
  writeable: boolean;
@@ -77,10 +83,20 @@ export class Host extends ServiceOwner {
77
83
  env?: string[] | string;
78
84
  };
79
85
  disabled: {
80
- type: string;
81
- collection: boolean;
82
86
  writeable: boolean;
83
87
  default: boolean;
88
+ type: string;
89
+ isKey: boolean;
90
+ writable: boolean;
91
+ mandatory: boolean;
92
+ collection: boolean;
93
+ private?: boolean;
94
+ depends?: string;
95
+ additionalAttributes: string[];
96
+ description?: string;
97
+ set?: Function;
98
+ get?: Function;
99
+ env?: string[] | string;
84
100
  };
85
101
  tags: {
86
102
  collection: boolean;
@@ -14,16 +14,22 @@ export class Location extends Owner {
14
14
  collection: boolean;
15
15
  writeable: boolean;
16
16
  };
17
- type: {
18
- type: string;
19
- collection: boolean;
20
- writeable: boolean;
21
- };
17
+ type: import("pacc").AttributeDefinition;
22
18
  name: {
19
+ isKey: boolean;
20
+ writeable: boolean;
23
21
  type: string;
22
+ writable: boolean;
23
+ mandatory: boolean;
24
24
  collection: boolean;
25
- identifier: boolean;
26
- writeable: boolean;
25
+ private?: boolean;
26
+ depends?: string;
27
+ additionalAttributes: string[];
28
+ description?: string;
29
+ default?: any;
30
+ set?: Function;
31
+ get?: Function;
32
+ env?: string[] | string;
27
33
  };
28
34
  description: {
29
35
  writeable: boolean;
@@ -79,10 +85,20 @@ export class Location extends Owner {
79
85
  env?: string[] | string;
80
86
  };
81
87
  disabled: {
82
- type: string;
83
- collection: boolean;
84
88
  writeable: boolean;
85
89
  default: boolean;
90
+ type: string;
91
+ isKey: boolean;
92
+ writable: boolean;
93
+ mandatory: boolean;
94
+ collection: boolean;
95
+ private?: boolean;
96
+ depends?: string;
97
+ additionalAttributes: string[];
98
+ description?: string;
99
+ set?: Function;
100
+ get?: Function;
101
+ env?: string[] | string;
86
102
  };
87
103
  tags: {
88
104
  collection: boolean;
@@ -126,9 +142,8 @@ export class Location extends Owner {
126
142
  constructWithIdentifierOnly: boolean;
127
143
  properties: {
128
144
  address: {
129
- identifier: boolean;
130
- type: string;
131
145
  isKey: boolean;
146
+ type: string;
132
147
  writable: boolean;
133
148
  mandatory: boolean;
134
149
  collection: boolean;
@@ -284,16 +299,22 @@ export class Location extends Owner {
284
299
  collection: boolean;
285
300
  writeable: boolean;
286
301
  };
287
- type: {
288
- type: string;
289
- collection: boolean;
290
- writeable: boolean;
291
- };
302
+ type: import("pacc").AttributeDefinition;
292
303
  name: {
304
+ isKey: boolean;
305
+ writeable: boolean;
293
306
  type: string;
307
+ writable: boolean;
308
+ mandatory: boolean;
294
309
  collection: boolean;
295
- identifier: boolean;
296
- writeable: boolean;
310
+ private?: boolean;
311
+ depends?: string;
312
+ additionalAttributes: string[];
313
+ description?: string;
314
+ default?: any;
315
+ set?: Function;
316
+ get?: Function;
317
+ env?: string[] | string;
297
318
  };
298
319
  description: {
299
320
  writeable: boolean;
@@ -349,10 +370,20 @@ export class Location extends Owner {
349
370
  env?: string[] | string;
350
371
  };
351
372
  disabled: {
352
- type: string;
353
- collection: boolean;
354
373
  writeable: boolean;
355
374
  default: boolean;
375
+ type: string;
376
+ isKey: boolean;
377
+ writable: boolean;
378
+ mandatory: boolean;
379
+ collection: boolean;
380
+ private?: boolean;
381
+ depends?: string;
382
+ additionalAttributes: string[];
383
+ description?: string;
384
+ set?: Function;
385
+ get?: Function;
386
+ env?: string[] | string;
356
387
  };
357
388
  tags: {
358
389
  collection: boolean;
@@ -396,9 +427,8 @@ export class Location extends Owner {
396
427
  constructWithIdentifierOnly: boolean;
397
428
  properties: {
398
429
  address: {
399
- identifier: boolean;
400
- type: string;
401
430
  isKey: boolean;
431
+ type: string;
402
432
  writable: boolean;
403
433
  mandatory: boolean;
404
434
  collection: boolean;
@@ -28,16 +28,22 @@ export class EthernetNetworkInterface extends NetworkInterface {
28
28
  collection: boolean;
29
29
  writeable: boolean;
30
30
  };
31
- type: {
32
- type: string;
33
- collection: boolean;
34
- writeable: boolean;
35
- };
31
+ type: import("pacc").AttributeDefinition;
36
32
  name: {
33
+ isKey: boolean;
34
+ writeable: boolean;
37
35
  type: string;
36
+ writable: boolean;
37
+ mandatory: boolean;
38
38
  collection: boolean;
39
- identifier: boolean;
40
- writeable: boolean;
39
+ private?: boolean;
40
+ depends?: string;
41
+ additionalAttributes: string[];
42
+ description?: string;
43
+ default?: any;
44
+ set?: Function;
45
+ get?: Function;
46
+ env?: string[] | string;
41
47
  };
42
48
  description: {
43
49
  writeable: boolean;
@@ -93,10 +99,20 @@ export class EthernetNetworkInterface extends NetworkInterface {
93
99
  env?: string[] | string;
94
100
  };
95
101
  disabled: {
96
- type: string;
97
- collection: boolean;
98
102
  writeable: boolean;
99
103
  default: boolean;
104
+ type: string;
105
+ isKey: boolean;
106
+ writable: boolean;
107
+ mandatory: boolean;
108
+ collection: boolean;
109
+ private?: boolean;
110
+ depends?: string;
111
+ additionalAttributes: string[];
112
+ description?: string;
113
+ set?: Function;
114
+ get?: Function;
115
+ env?: string[] | string;
100
116
  };
101
117
  tags: {
102
118
  collection: boolean;
@@ -389,16 +405,22 @@ export class EthernetNetworkInterface extends NetworkInterface {
389
405
  collection: boolean;
390
406
  writeable: boolean;
391
407
  };
392
- type: {
393
- type: string;
394
- collection: boolean;
395
- writeable: boolean;
396
- };
408
+ type: import("pacc").AttributeDefinition;
397
409
  name: {
410
+ isKey: boolean;
411
+ writeable: boolean;
398
412
  type: string;
413
+ writable: boolean;
414
+ mandatory: boolean;
399
415
  collection: boolean;
400
- identifier: boolean;
401
- writeable: boolean;
416
+ private?: boolean;
417
+ depends?: string;
418
+ additionalAttributes: string[];
419
+ description?: string;
420
+ default?: any;
421
+ set?: Function;
422
+ get?: Function;
423
+ env?: string[] | string;
402
424
  };
403
425
  description: {
404
426
  writeable: boolean;
@@ -454,10 +476,20 @@ export class EthernetNetworkInterface extends NetworkInterface {
454
476
  env?: string[] | string;
455
477
  };
456
478
  disabled: {
457
- type: string;
458
- collection: boolean;
459
479
  writeable: boolean;
460
480
  default: boolean;
481
+ type: string;
482
+ isKey: boolean;
483
+ writable: boolean;
484
+ mandatory: boolean;
485
+ collection: boolean;
486
+ private?: boolean;
487
+ depends?: string;
488
+ additionalAttributes: string[];
489
+ description?: string;
490
+ set?: Function;
491
+ get?: Function;
492
+ env?: string[] | string;
461
493
  };
462
494
  tags: {
463
495
  collection: boolean;
@@ -14,16 +14,22 @@ export class LoopbackNetworkInterface extends SkeletonNetworkInterface {
14
14
  collection: boolean;
15
15
  writeable: boolean;
16
16
  };
17
- type: {
18
- type: string;
19
- collection: boolean;
20
- writeable: boolean;
21
- };
17
+ type: import("pacc").AttributeDefinition;
22
18
  name: {
19
+ isKey: boolean;
20
+ writeable: boolean;
23
21
  type: string;
22
+ writable: boolean;
23
+ mandatory: boolean;
24
24
  collection: boolean;
25
- identifier: boolean;
26
- writeable: boolean;
25
+ private?: boolean;
26
+ depends?: string;
27
+ additionalAttributes: string[];
28
+ description?: string;
29
+ default?: any;
30
+ set?: Function;
31
+ get?: Function;
32
+ env?: string[] | string;
27
33
  };
28
34
  description: {
29
35
  writeable: boolean;
@@ -79,10 +85,20 @@ export class LoopbackNetworkInterface extends SkeletonNetworkInterface {
79
85
  env?: string[] | string;
80
86
  };
81
87
  disabled: {
82
- type: string;
83
- collection: boolean;
84
88
  writeable: boolean;
85
89
  default: boolean;
90
+ type: string;
91
+ isKey: boolean;
92
+ writable: boolean;
93
+ mandatory: boolean;
94
+ collection: boolean;
95
+ private?: boolean;
96
+ depends?: string;
97
+ additionalAttributes: string[];
98
+ description?: string;
99
+ set?: Function;
100
+ get?: Function;
101
+ env?: string[] | string;
86
102
  };
87
103
  tags: {
88
104
  collection: boolean;
@@ -375,16 +391,22 @@ export class LoopbackNetworkInterface extends SkeletonNetworkInterface {
375
391
  collection: boolean;
376
392
  writeable: boolean;
377
393
  };
378
- type: {
379
- type: string;
380
- collection: boolean;
381
- writeable: boolean;
382
- };
394
+ type: import("pacc").AttributeDefinition;
383
395
  name: {
396
+ isKey: boolean;
397
+ writeable: boolean;
384
398
  type: string;
399
+ writable: boolean;
400
+ mandatory: boolean;
385
401
  collection: boolean;
386
- identifier: boolean;
387
- writeable: boolean;
402
+ private?: boolean;
403
+ depends?: string;
404
+ additionalAttributes: string[];
405
+ description?: string;
406
+ default?: any;
407
+ set?: Function;
408
+ get?: Function;
409
+ env?: string[] | string;
388
410
  };
389
411
  description: {
390
412
  writeable: boolean;
@@ -440,10 +462,20 @@ export class LoopbackNetworkInterface extends SkeletonNetworkInterface {
440
462
  env?: string[] | string;
441
463
  };
442
464
  disabled: {
443
- type: string;
444
- collection: boolean;
445
465
  writeable: boolean;
446
466
  default: boolean;
467
+ type: string;
468
+ isKey: boolean;
469
+ writable: boolean;
470
+ mandatory: boolean;
471
+ collection: boolean;
472
+ private?: boolean;
473
+ depends?: string;
474
+ additionalAttributes: string[];
475
+ description?: string;
476
+ set?: Function;
477
+ get?: Function;
478
+ env?: string[] | string;
447
479
  };
448
480
  tags: {
449
481
  collection: boolean;