@eudiplo/cli 7.6.1 → 8.0.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.
Files changed (92) hide show
  1. package/dist/commands/config/portability/action.d.ts +1 -1
  2. package/dist/commands/config/portability/action.d.ts.map +1 -1
  3. package/dist/commands/config/portability/action.js +49 -95
  4. package/dist/commands/config/portability/action.js.map +1 -1
  5. package/dist/commands/config/portability/index.d.ts.map +1 -1
  6. package/dist/commands/config/portability/index.js +37 -5
  7. package/dist/commands/config/portability/index.js.map +1 -1
  8. package/dist/commands/config/portability/migrations.d.ts +3 -21
  9. package/dist/commands/config/portability/migrations.d.ts.map +1 -1
  10. package/dist/commands/config/portability/migrations.js +4 -92
  11. package/dist/commands/config/portability/migrations.js.map +1 -1
  12. package/dist/commands/config/portability/migrations.spec.js +12 -14
  13. package/dist/commands/config/portability/migrations.spec.js.map +1 -1
  14. package/dist/commands/config/portability/upgrade.d.ts +3 -0
  15. package/dist/commands/config/portability/upgrade.d.ts.map +1 -0
  16. package/dist/commands/config/portability/upgrade.js +199 -0
  17. package/dist/commands/config/portability/upgrade.js.map +1 -0
  18. package/dist/commands/config/tenant/action.js +3 -4
  19. package/dist/commands/config/tenant/action.js.map +1 -1
  20. package/dist/commands/config/validate/validator.d.ts.map +1 -1
  21. package/dist/commands/config/validate/validator.js +50 -30
  22. package/dist/commands/config/validate/validator.js.map +1 -1
  23. package/dist/commands/demo/action.d.ts.map +1 -1
  24. package/dist/commands/demo/action.js +2 -0
  25. package/dist/commands/demo/action.js.map +1 -1
  26. package/dist/commands/deployment/action.d.ts +1 -1
  27. package/dist/commands/deployment/action.d.ts.map +1 -1
  28. package/dist/commands/deployment/action.js +1 -0
  29. package/dist/commands/deployment/action.js.map +1 -1
  30. package/dist/commands/deployment/index.d.ts.map +1 -1
  31. package/dist/commands/deployment/index.js +29 -9
  32. package/dist/commands/deployment/index.js.map +1 -1
  33. package/dist/commands/init/action.d.ts.map +1 -1
  34. package/dist/commands/init/action.js +1 -0
  35. package/dist/commands/init/action.js.map +1 -1
  36. package/dist/commands/instance/action.d.ts.map +1 -1
  37. package/dist/commands/instance/action.js +42 -1
  38. package/dist/commands/instance/action.js.map +1 -1
  39. package/dist/commands/instance/index.d.ts.map +1 -1
  40. package/dist/commands/instance/index.js +5 -1
  41. package/dist/commands/instance/index.js.map +1 -1
  42. package/dist/index.js +23288 -3
  43. package/dist/services/cli-config.d.ts.map +1 -1
  44. package/dist/services/cli-config.js +46 -1
  45. package/dist/services/cli-config.js.map +1 -1
  46. package/dist/services/deployment-drivers.d.ts +10 -0
  47. package/dist/services/deployment-drivers.d.ts.map +1 -1
  48. package/dist/services/deployment-drivers.js +357 -6
  49. package/dist/services/deployment-drivers.js.map +1 -1
  50. package/dist/services/deployment-target.js +1 -1
  51. package/dist/services/deployment-target.js.map +1 -1
  52. package/dist/services/diagnostics.d.ts +3 -9
  53. package/dist/services/diagnostics.d.ts.map +1 -1
  54. package/dist/services/diagnostics.js +1 -7
  55. package/dist/services/diagnostics.js.map +1 -1
  56. package/dist/services/kubectl.d.ts +51 -0
  57. package/dist/services/kubectl.d.ts.map +1 -0
  58. package/dist/services/kubectl.js +150 -0
  59. package/dist/services/kubectl.js.map +1 -0
  60. package/dist/types.d.ts +15 -2
  61. package/dist/types.d.ts.map +1 -1
  62. package/package.json +4 -3
  63. package/templates/demo-config/attribute-providers/claims-provider.json +8 -2
  64. package/templates/demo-config/clients/presentation-test.json +8 -2
  65. package/templates/demo-config/clients/test.json +12 -6
  66. package/templates/demo-config/info.json +7 -1
  67. package/templates/demo-config/issuance/credentials/citizen.json +43 -37
  68. package/templates/demo-config/issuance/credentials/pid-key.json +371 -365
  69. package/templates/demo-config/issuance/credentials/pid-mdoc.json +444 -438
  70. package/templates/demo-config/issuance/credentials/pid.json +472 -466
  71. package/templates/demo-config/issuance/issuance.json +1 -3
  72. package/templates/demo-config/issuance/status-lists/pid.json +12 -6
  73. package/templates/demo-config/key-chains/access.json +2 -4
  74. package/templates/demo-config/key-chains/attestation.json +2 -4
  75. package/templates/demo-config/key-chains/status-list.json +1 -3
  76. package/templates/demo-config/key-chains/trust-list.json +1 -3
  77. package/templates/demo-config/presentation/age-over-18.json +20 -7
  78. package/templates/demo-config/presentation/pid.json +1 -3
  79. package/templates/demo-config/trust-lists/trustlist-580831bc-ef11-43f4-a3be-a2b6bf1b29a3-config.json +96 -90
  80. package/templates/demo-config/webhook-endpoints/notification.json +8 -2
  81. package/templates/schemas/AttributeProviderConfigFile.schema.json +38 -15
  82. package/templates/schemas/ClientConfigFile.schema.json +38 -15
  83. package/templates/schemas/CredentialConfigFile.schema.json +38 -15
  84. package/templates/schemas/IssuanceConfigFile.schema.json +24 -12
  85. package/templates/schemas/KeyChainConfigFile.schema.json +373 -19
  86. package/templates/schemas/KmsConfigFile.schema.json +21 -14
  87. package/templates/schemas/PresentationConfigFile.schema.json +41 -13
  88. package/templates/schemas/RegistrarConfigFile.schema.json +21 -14
  89. package/templates/schemas/StatusListConfigFile.schema.json +38 -15
  90. package/templates/schemas/TenantConfigFile.schema.json +136 -20
  91. package/templates/schemas/TrustListConfigFile.schema.json +38 -15
  92. package/templates/schemas/WebhookEndpointConfigFile.schema.json +38 -15
@@ -1,6 +1,129 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "anyOf": [
4
+ {
5
+ "type": "object",
6
+ "properties": {
7
+ "$schema": {
8
+ "type": "string",
9
+ "const": "https://eudiplo.dev/schemas/v1/TenantConfigFile.schema.json"
10
+ },
11
+ "metadata": {
12
+ "type": "object",
13
+ "properties": {
14
+ "generation": {
15
+ "type": "integer",
16
+ "minimum": 1,
17
+ "maximum": 9007199254740991
18
+ },
19
+ "ownership": {
20
+ "type": "string",
21
+ "enum": [
22
+ "unmanaged",
23
+ "file-managed"
24
+ ]
25
+ }
26
+ },
27
+ "additionalProperties": false
28
+ },
29
+ "spec": {
30
+ "type": "object",
31
+ "properties": {
32
+ "name": {
33
+ "default": "EUDIPLO",
34
+ "description": "Display name of the tenant.",
35
+ "type": "string",
36
+ "minLength": 1
37
+ },
38
+ "description": {
39
+ "description": "Optional tenant description.",
40
+ "type": "string",
41
+ "minLength": 1
42
+ },
43
+ "sessionConfig": {
44
+ "description": "Optional tenant-specific session storage configuration.",
45
+ "type": "object",
46
+ "properties": {
47
+ "ttlSeconds": {
48
+ "description": "Session time-to-live in seconds.",
49
+ "type": "integer",
50
+ "minimum": 60,
51
+ "maximum": 9007199254740991
52
+ },
53
+ "cleanupMode": {
54
+ "description": "Whether to fully delete or anonymize expired sessions.",
55
+ "type": "string",
56
+ "enum": [
57
+ "full",
58
+ "anonymize"
59
+ ]
60
+ }
61
+ },
62
+ "additionalProperties": false
63
+ },
64
+ "statusListConfig": {
65
+ "description": "Optional tenant-specific status list defaults.",
66
+ "type": "object",
67
+ "properties": {
68
+ "capacity": {
69
+ "description": "Default status list capacity.",
70
+ "type": "integer",
71
+ "minimum": 100,
72
+ "maximum": 9007199254740991
73
+ },
74
+ "bits": {
75
+ "description": "Bits-per-status setting (1, 2, 4, or 8).",
76
+ "anyOf": [
77
+ {
78
+ "type": "number",
79
+ "const": 1
80
+ },
81
+ {
82
+ "type": "number",
83
+ "const": 2
84
+ },
85
+ {
86
+ "type": "number",
87
+ "const": 4
88
+ },
89
+ {
90
+ "type": "number",
91
+ "const": 8
92
+ }
93
+ ]
94
+ },
95
+ "ttl": {
96
+ "description": "JWT TTL for status list tokens in seconds.",
97
+ "type": "integer",
98
+ "minimum": 60,
99
+ "maximum": 9007199254740991
100
+ },
101
+ "immediateUpdate": {
102
+ "description": "Regenerate status list JWTs immediately after status updates.",
103
+ "type": "boolean"
104
+ },
105
+ "enableAggregation": {
106
+ "description": "Include aggregation_uri in generated status list JWTs.",
107
+ "type": "boolean"
108
+ }
109
+ },
110
+ "additionalProperties": false
111
+ }
112
+ },
113
+ "required": [
114
+ "name"
115
+ ],
116
+ "additionalProperties": false,
117
+ "description": "Payload used when importing tenant metadata from config files."
118
+ }
119
+ },
120
+ "required": [
121
+ "$schema",
122
+ "metadata",
123
+ "spec"
124
+ ],
125
+ "additionalProperties": false
126
+ },
4
127
  {
5
128
  "type": "object",
6
129
  "properties": {
@@ -90,27 +213,26 @@
90
213
  ],
91
214
  "additionalProperties": false,
92
215
  "description": "Payload used when importing tenant metadata from config files."
93
- },
216
+ }
217
+ ],
218
+ "$id": "./TenantConfigFile.schema.json",
219
+ "title": "TenantConfigFile",
220
+ "description": "Configuration file identified by its $schema URL.",
221
+ "oneOf": [
94
222
  {
95
223
  "type": "object",
96
224
  "properties": {
97
- "apiVersion": {
98
- "type": "string",
99
- "const": "eudiplo.io/tenant/v1"
100
- },
101
- "kind": {
225
+ "$schema": {
102
226
  "type": "string",
103
- "const": "Tenant"
227
+ "const": "https://eudiplo.dev/schemas/v1/TenantConfigFile.schema.json"
104
228
  },
105
229
  "metadata": {
106
230
  "type": "object",
107
231
  "properties": {
108
- "id": {
109
- "type": "string",
110
- "minLength": 1
111
- },
112
232
  "generation": {
113
- "type": "number"
233
+ "type": "integer",
234
+ "minimum": 1,
235
+ "maximum": 9007199254740991
114
236
  },
115
237
  "ownership": {
116
238
  "type": "string",
@@ -120,9 +242,6 @@
120
242
  ]
121
243
  }
122
244
  },
123
- "required": [
124
- "id"
125
- ],
126
245
  "additionalProperties": false
127
246
  },
128
247
  "spec": {
@@ -217,14 +336,11 @@
217
336
  }
218
337
  },
219
338
  "required": [
220
- "apiVersion",
221
- "kind",
339
+ "$schema",
222
340
  "metadata",
223
341
  "spec"
224
342
  ],
225
343
  "additionalProperties": false
226
344
  }
227
- ],
228
- "$id": "./TenantConfigFile.schema.json",
229
- "title": "TenantConfigFile"
345
+ ]
230
346
  }
@@ -2,33 +2,56 @@
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "./TrustListConfigFile.schema.json",
4
4
  "title": "TrustListConfigFile",
5
- "description": "A trust-list configuration file in legacy payload or versioned-envelope form.",
5
+ "description": "Configuration file identified by its $schema URL.",
6
6
  "oneOf": [
7
- {
8
- "$ref": "./TrustListCreateDto.schema.json"
9
- },
10
7
  {
11
8
  "type": "object",
12
9
  "properties": {
13
- "apiVersion": {
14
- "type": "string",
15
- "const": "eudiplo.io/trust-list/v1"
16
- },
17
- "kind": {
10
+ "$schema": {
18
11
  "type": "string",
19
- "const": "TrustList"
12
+ "const": "https://eudiplo.dev/schemas/v1/TrustListConfigFile.schema.json"
20
13
  },
21
14
  "metadata": {
22
- "$ref": "./ConfigDocumentMetadata.schema.json"
15
+ "type": "object",
16
+ "properties": {
17
+ "generation": {
18
+ "type": "integer",
19
+ "minimum": 1,
20
+ "description": "Monotonically increasing configuration generation."
21
+ },
22
+ "ownership": {
23
+ "type": "string",
24
+ "enum": [
25
+ "unmanaged",
26
+ "file-managed"
27
+ ],
28
+ "description": "Requested ownership recorded when the document is applied."
29
+ }
30
+ },
31
+ "additionalProperties": false
23
32
  },
24
33
  "spec": {
25
- "$ref": "./TrustListCreateDto.schema.json"
34
+ "allOf": [
35
+ {
36
+ "$ref": "./TrustListCreateDto.schema.json"
37
+ },
38
+ {
39
+ "type": "object",
40
+ "required": [
41
+ "id"
42
+ ],
43
+ "properties": {
44
+ "id": {
45
+ "type": "string",
46
+ "minLength": 1
47
+ }
48
+ }
49
+ }
50
+ ]
26
51
  }
27
52
  },
28
53
  "required": [
29
- "apiVersion",
30
- "kind",
31
- "metadata",
54
+ "$schema",
32
55
  "spec"
33
56
  ],
34
57
  "additionalProperties": false
@@ -2,33 +2,56 @@
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "./WebhookEndpointConfigFile.schema.json",
4
4
  "title": "WebhookEndpointConfigFile",
5
- "description": "A webhook-endpoint configuration file in legacy payload or versioned-envelope form.",
5
+ "description": "Configuration file identified by its $schema URL.",
6
6
  "oneOf": [
7
- {
8
- "$ref": "./CreateWebhookEndpointDto.schema.json"
9
- },
10
7
  {
11
8
  "type": "object",
12
9
  "properties": {
13
- "apiVersion": {
14
- "type": "string",
15
- "const": "eudiplo.io/webhook-endpoint/v1"
16
- },
17
- "kind": {
10
+ "$schema": {
18
11
  "type": "string",
19
- "const": "WebhookEndpoint"
12
+ "const": "https://eudiplo.dev/schemas/v1/WebhookEndpointConfigFile.schema.json"
20
13
  },
21
14
  "metadata": {
22
- "$ref": "./ConfigDocumentMetadata.schema.json"
15
+ "type": "object",
16
+ "properties": {
17
+ "generation": {
18
+ "type": "integer",
19
+ "minimum": 1,
20
+ "description": "Monotonically increasing configuration generation."
21
+ },
22
+ "ownership": {
23
+ "type": "string",
24
+ "enum": [
25
+ "unmanaged",
26
+ "file-managed"
27
+ ],
28
+ "description": "Requested ownership recorded when the document is applied."
29
+ }
30
+ },
31
+ "additionalProperties": false
23
32
  },
24
33
  "spec": {
25
- "$ref": "./CreateWebhookEndpointDto.schema.json"
34
+ "allOf": [
35
+ {
36
+ "$ref": "./CreateWebhookEndpointDto.schema.json"
37
+ },
38
+ {
39
+ "type": "object",
40
+ "required": [
41
+ "id"
42
+ ],
43
+ "properties": {
44
+ "id": {
45
+ "type": "string",
46
+ "minLength": 1
47
+ }
48
+ }
49
+ }
50
+ ]
26
51
  }
27
52
  },
28
53
  "required": [
29
- "apiVersion",
30
- "kind",
31
- "metadata",
54
+ "$schema",
32
55
  "spec"
33
56
  ],
34
57
  "additionalProperties": false