@eudiplo/cli 7.2.0-main.c776046 → 7.2.0-main.fb5d4cb

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 (158) hide show
  1. package/README.md +21 -0
  2. package/dist/commands/commands/index.d.ts +4 -0
  3. package/dist/commands/commands/index.d.ts.map +1 -0
  4. package/dist/commands/commands/index.js +13 -0
  5. package/dist/commands/commands/index.js.map +1 -0
  6. package/dist/commands/commands/render.d.ts +4 -0
  7. package/dist/commands/commands/render.d.ts.map +1 -0
  8. package/dist/commands/commands/render.js +52 -0
  9. package/dist/commands/commands/render.js.map +1 -0
  10. package/dist/commands/config/editor/action.d.ts +3 -0
  11. package/dist/commands/config/editor/action.d.ts.map +1 -0
  12. package/dist/commands/config/editor/action.js +112 -0
  13. package/dist/commands/config/editor/action.js.map +1 -0
  14. package/dist/commands/config/editor/index.d.ts +5 -0
  15. package/dist/commands/config/editor/index.d.ts.map +1 -0
  16. package/dist/commands/config/editor/index.js +20 -0
  17. package/dist/commands/config/editor/index.js.map +1 -0
  18. package/dist/commands/config/index.d.ts.map +1 -1
  19. package/dist/commands/config/index.js +6 -0
  20. package/dist/commands/config/index.js.map +1 -1
  21. package/dist/commands/config/portability/action.d.ts +5 -0
  22. package/dist/commands/config/portability/action.d.ts.map +1 -0
  23. package/dist/commands/config/portability/action.js +164 -0
  24. package/dist/commands/config/portability/action.js.map +1 -0
  25. package/dist/commands/config/portability/index.d.ts +5 -0
  26. package/dist/commands/config/portability/index.d.ts.map +1 -0
  27. package/dist/commands/config/portability/index.js +44 -0
  28. package/dist/commands/config/portability/index.js.map +1 -0
  29. package/dist/commands/config/portability/migrations.d.ts +24 -0
  30. package/dist/commands/config/portability/migrations.d.ts.map +1 -0
  31. package/dist/commands/config/portability/migrations.js +95 -0
  32. package/dist/commands/config/portability/migrations.js.map +1 -0
  33. package/dist/commands/config/portability/migrations.spec.d.ts +2 -0
  34. package/dist/commands/config/portability/migrations.spec.d.ts.map +1 -0
  35. package/dist/commands/config/portability/migrations.spec.js +32 -0
  36. package/dist/commands/config/portability/migrations.spec.js.map +1 -0
  37. package/dist/commands/config/tenant/action.d.ts.map +1 -1
  38. package/dist/commands/config/tenant/action.js +7 -4
  39. package/dist/commands/config/tenant/action.js.map +1 -1
  40. package/dist/commands/config/tenant/index.d.ts.map +1 -1
  41. package/dist/commands/config/tenant/index.js.map +1 -1
  42. package/dist/commands/config/validate/action.d.ts.map +1 -1
  43. package/dist/commands/config/validate/action.js +3 -1
  44. package/dist/commands/config/validate/action.js.map +1 -1
  45. package/dist/commands/config/validate/registry.d.ts +1 -0
  46. package/dist/commands/config/validate/registry.d.ts.map +1 -1
  47. package/dist/commands/config/validate/registry.js +1 -1
  48. package/dist/commands/config/validate/registry.js.map +1 -1
  49. package/dist/commands/config/validate/registry.json +11 -22
  50. package/dist/commands/config/validate/report.d.ts.map +1 -1
  51. package/dist/commands/config/validate/report.js +6 -1
  52. package/dist/commands/config/validate/report.js.map +1 -1
  53. package/dist/commands/config/validate/schemas.d.ts +1 -0
  54. package/dist/commands/config/validate/schemas.d.ts.map +1 -1
  55. package/dist/commands/config/validate/schemas.js +16 -5
  56. package/dist/commands/config/validate/schemas.js.map +1 -1
  57. package/dist/commands/config/validate/types.d.ts.map +1 -1
  58. package/dist/commands/config/validate/validator.d.ts.map +1 -1
  59. package/dist/commands/config/validate/validator.js +13 -5
  60. package/dist/commands/config/validate/validator.js.map +1 -1
  61. package/dist/commands/demo/action.d.ts.map +1 -1
  62. package/dist/commands/demo/action.js +2 -1
  63. package/dist/commands/demo/action.js.map +1 -1
  64. package/dist/commands/demo/index.d.ts.map +1 -1
  65. package/dist/commands/demo/index.js.map +1 -1
  66. package/dist/commands/deployment/action.d.ts.map +1 -1
  67. package/dist/commands/deployment/action.js +10 -3
  68. package/dist/commands/deployment/action.js.map +1 -1
  69. package/dist/commands/deployment/index.d.ts.map +1 -1
  70. package/dist/commands/deployment/index.js.map +1 -1
  71. package/dist/commands/doctor/action.d.ts.map +1 -1
  72. package/dist/commands/doctor/action.js +1 -1
  73. package/dist/commands/doctor/action.js.map +1 -1
  74. package/dist/commands/init/action.d.ts.map +1 -1
  75. package/dist/commands/init/action.js +19 -6
  76. package/dist/commands/init/action.js.map +1 -1
  77. package/dist/commands/init/index.d.ts.map +1 -1
  78. package/dist/commands/init/index.js.map +1 -1
  79. package/dist/commands/instance/action.d.ts.map +1 -1
  80. package/dist/commands/instance/action.js.map +1 -1
  81. package/dist/commands/shared.d.ts.map +1 -1
  82. package/dist/commands/shared.js +4 -1
  83. package/dist/commands/shared.js.map +1 -1
  84. package/dist/commands/status/action.d.ts.map +1 -1
  85. package/dist/commands/status/action.js.map +1 -1
  86. package/dist/commands/version/action.d.ts.map +1 -1
  87. package/dist/commands/version/action.js +3 -1
  88. package/dist/commands/version/action.js.map +1 -1
  89. package/dist/index.js +0 -0
  90. package/dist/runtime.d.ts +2 -0
  91. package/dist/runtime.d.ts.map +1 -1
  92. package/dist/runtime.js +3 -1
  93. package/dist/runtime.js.map +1 -1
  94. package/dist/sea-assets.d.ts +4 -2
  95. package/dist/sea-assets.d.ts.map +1 -1
  96. package/dist/sea-assets.js +6 -3
  97. package/dist/sea-assets.js.map +1 -1
  98. package/dist/services/cli-config.d.ts.map +1 -1
  99. package/dist/services/cli-config.js +2 -1
  100. package/dist/services/cli-config.js.map +1 -1
  101. package/dist/services/compose-project.d.ts.map +1 -1
  102. package/dist/services/compose-project.js +14 -6
  103. package/dist/services/compose-project.js.map +1 -1
  104. package/dist/services/deployment-drivers.d.ts.map +1 -1
  105. package/dist/services/deployment-drivers.js +20 -6
  106. package/dist/services/deployment-drivers.js.map +1 -1
  107. package/dist/services/diagnostics.d.ts.map +1 -1
  108. package/dist/services/diagnostics.js +3 -1
  109. package/dist/services/diagnostics.js.map +1 -1
  110. package/dist/services/instance-selection.d.ts.map +1 -1
  111. package/dist/services/instance-selection.js.map +1 -1
  112. package/dist/services/project-directory.d.ts.map +1 -1
  113. package/dist/services/project-directory.js.map +1 -1
  114. package/dist/types.d.ts.map +1 -1
  115. package/package.json +5 -3
  116. package/templates/demo-config/issuance/issuance.json +20 -12
  117. package/templates/demo-config/key-chains/access.json +13 -2
  118. package/templates/demo-config/key-chains/attestation.json +15 -4
  119. package/templates/demo-config/key-chains/status-list.json +15 -4
  120. package/templates/demo-config/key-chains/trust-list.json +13 -2
  121. package/templates/demo-config/presentation/age-over-18.json +46 -53
  122. package/templates/demo-config/presentation/pid.json +44 -0
  123. package/templates/demo-config.manifest.json +1 -0
  124. package/templates/schemas/AttributeProviderAuth.schema.json +60 -0
  125. package/templates/schemas/AttributeProviderConfigFile.schema.json +37 -0
  126. package/templates/schemas/CertImportDto.schema.json +35 -0
  127. package/templates/schemas/ClientConfigFile.schema.json +37 -0
  128. package/templates/schemas/ConfigDocumentMetadata.schema.json +25 -0
  129. package/templates/schemas/CreateStatusListDto.schema.json +46 -0
  130. package/templates/schemas/CreateTenantDto.schema.json +116 -0
  131. package/templates/schemas/CredentialConfigFile.schema.json +37 -0
  132. package/templates/schemas/DCQL.schema.json +401 -0
  133. package/templates/schemas/EmbeddedDisclosurePolicy.schema.json +106 -0
  134. package/templates/schemas/ImportTenantDto.schema.json +69 -0
  135. package/templates/schemas/IssuanceConfigFile.schema.json +32 -0
  136. package/templates/schemas/KeyChainConfigFile.schema.json +101 -0
  137. package/templates/schemas/KeyChainCreateDto.schema.json +66 -0
  138. package/templates/schemas/KeyChainUpdateDto.schema.json +40 -0
  139. package/templates/schemas/KmsConfigFile.schema.json +37 -0
  140. package/templates/schemas/PresentationConfigFile.schema.json +32 -0
  141. package/templates/schemas/RegistrarConfigFile.schema.json +37 -0
  142. package/templates/schemas/RotationPolicyCreateDto.schema.json +28 -0
  143. package/templates/schemas/RotationPolicyUpdateDto.schema.json +25 -0
  144. package/templates/schemas/SessionStorageConfig.schema.json +24 -0
  145. package/templates/schemas/StatusListConfig.schema.json +51 -0
  146. package/templates/schemas/StatusListConfigFile.schema.json +37 -0
  147. package/templates/schemas/TransactionData.schema.json +24 -0
  148. package/templates/schemas/TrustListConfigFile.schema.json +37 -0
  149. package/templates/schemas/UpdateAttributeProviderDto.schema.json +93 -0
  150. package/templates/schemas/UpdateClientDto.schema.json +62 -0
  151. package/templates/schemas/UpdateStatusListConfigDto.schema.json +85 -0
  152. package/templates/schemas/UpdateStatusListDto.schema.json +33 -0
  153. package/templates/schemas/UpdateTenantDto.schema.json +96 -0
  154. package/templates/schemas/UpdateWebhookEndpointDto.schema.json +93 -0
  155. package/templates/schemas/VCT.schema.json +37 -0
  156. package/templates/schemas/WebhookConfig.schema.json +80 -0
  157. package/templates/schemas/WebhookEndpointConfigFile.schema.json +37 -0
  158. package/templates/schemas.manifest.json +34 -1
@@ -0,0 +1,101 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./KeyChainConfigFile.schema.json",
4
+ "title": "KeyChainConfigFile",
5
+ "description": "A key-chain configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./KeyChainImportDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/key-chain/v2"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "KeyChain"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "#/$defs/portableSpec"
26
+ }
27
+ },
28
+ "required": ["apiVersion", "kind", "metadata", "spec"],
29
+ "additionalProperties": false
30
+ }
31
+ ],
32
+ "$defs": {
33
+ "ecPrivateJwk": {
34
+ "type": "object",
35
+ "properties": {
36
+ "kty": { "type": "string" },
37
+ "x": { "type": "string" },
38
+ "y": { "type": "string" },
39
+ "crv": { "type": "string" },
40
+ "d": { "type": "string" },
41
+ "alg": { "type": "string" },
42
+ "kid": { "type": "string" }
43
+ },
44
+ "required": ["kty", "x", "y", "crv", "d"],
45
+ "additionalProperties": false
46
+ },
47
+ "portableSpec": {
48
+ "type": "object",
49
+ "properties": {
50
+ "id": {
51
+ "type": "string",
52
+ "description": "Optional key-chain id duplicated from envelope metadata."
53
+ },
54
+ "description": { "type": "string" },
55
+ "usageType": {
56
+ "type": "string",
57
+ "enum": ["access", "attestation", "trustList", "statusList", "encrypt"]
58
+ },
59
+ "keySource": {
60
+ "type": "object",
61
+ "properties": {
62
+ "type": {
63
+ "type": "string",
64
+ "const": "private-jwk"
65
+ },
66
+ "jwk": {
67
+ "$ref": "#/$defs/ecPrivateJwk"
68
+ }
69
+ },
70
+ "required": ["type", "jwk"],
71
+ "additionalProperties": false
72
+ },
73
+ "crt": {
74
+ "type": "array",
75
+ "items": { "type": "string" }
76
+ },
77
+ "kmsProvider": { "type": "string" },
78
+ "rotationPolicy": {
79
+ "type": "object",
80
+ "properties": {
81
+ "enabled": { "type": "boolean" },
82
+ "intervalDays": {
83
+ "type": "number",
84
+ "minimum": 1,
85
+ "maximum": 3650
86
+ },
87
+ "certValidityDays": {
88
+ "type": "number",
89
+ "minimum": 1,
90
+ "maximum": 3650
91
+ }
92
+ },
93
+ "required": ["enabled"],
94
+ "additionalProperties": false
95
+ }
96
+ },
97
+ "required": ["usageType", "keySource"],
98
+ "additionalProperties": false
99
+ }
100
+ }
101
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "usageType": {
6
+ "type": "string",
7
+ "enum": [
8
+ "access",
9
+ "attestation",
10
+ "trustList",
11
+ "statusList",
12
+ "encrypt"
13
+ ],
14
+ "description": "Key usage category for the key chain."
15
+ },
16
+ "type": {
17
+ "type": "string",
18
+ "enum": [
19
+ "standalone",
20
+ "internalChain"
21
+ ],
22
+ "description": "Key chain mode."
23
+ },
24
+ "description": {
25
+ "description": "Optional key chain description.",
26
+ "type": "string"
27
+ },
28
+ "kmsProvider": {
29
+ "description": "Optional KMS provider id for key storage operations.",
30
+ "type": "string"
31
+ },
32
+ "rotationPolicy": {
33
+ "description": "Optional rotation policy.",
34
+ "type": "object",
35
+ "properties": {
36
+ "enabled": {
37
+ "type": "boolean",
38
+ "description": "Enable or disable automatic key rotation."
39
+ },
40
+ "intervalDays": {
41
+ "description": "Rotation interval in days.",
42
+ "type": "number",
43
+ "minimum": 1,
44
+ "maximum": 3650
45
+ },
46
+ "certValidityDays": {
47
+ "description": "Certificate validity period in days for generated leaf certificates.",
48
+ "type": "number",
49
+ "minimum": 1,
50
+ "maximum": 3650
51
+ }
52
+ },
53
+ "required": [
54
+ "enabled"
55
+ ],
56
+ "additionalProperties": false
57
+ }
58
+ },
59
+ "required": [
60
+ "usageType",
61
+ "type"
62
+ ],
63
+ "additionalProperties": false,
64
+ "$id": "./KeyChainCreateDto.schema.json",
65
+ "title": "KeyChainCreateDto"
66
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "description": {
6
+ "description": "Optional replacement description.",
7
+ "type": "string"
8
+ },
9
+ "rotationPolicy": {
10
+ "description": "Optional rotation policy updates.",
11
+ "type": "object",
12
+ "properties": {
13
+ "enabled": {
14
+ "description": "Optional replacement for rotation enabled flag.",
15
+ "type": "boolean"
16
+ },
17
+ "intervalDays": {
18
+ "description": "Optional replacement for rotation interval in days.",
19
+ "type": "number",
20
+ "minimum": 1,
21
+ "maximum": 3650
22
+ },
23
+ "certValidityDays": {
24
+ "description": "Optional replacement for certificate validity period in days.",
25
+ "type": "number",
26
+ "minimum": 1,
27
+ "maximum": 3650
28
+ }
29
+ },
30
+ "additionalProperties": false
31
+ },
32
+ "activeCertificate": {
33
+ "description": "Optional active certificate override.",
34
+ "type": "string"
35
+ }
36
+ },
37
+ "additionalProperties": false,
38
+ "$id": "./KeyChainUpdateDto.schema.json",
39
+ "title": "KeyChainUpdateDto"
40
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./KmsConfigFile.schema.json",
4
+ "title": "KmsConfigFile",
5
+ "description": "A tenant KMS configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./KmsConfigDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/kms-config/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "KmsConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./KmsConfigDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./PresentationConfigFile.schema.json",
4
+ "title": "PresentationConfigFile",
5
+ "description": "A presentation configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./PresentationConfigCreateDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/presentation-config/v2"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "PresentationConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./PresentationConfigCreateDto.schema.json"
26
+ }
27
+ },
28
+ "required": ["apiVersion", "kind", "metadata", "spec"],
29
+ "additionalProperties": false
30
+ }
31
+ ]
32
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./RegistrarConfigFile.schema.json",
4
+ "title": "RegistrarConfigFile",
5
+ "description": "A registrar configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./CreateRegistrarConfigDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/registrar-config/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "RegistrarConfig"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./CreateRegistrarConfigDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "type": "boolean",
7
+ "description": "Enable or disable automatic key rotation."
8
+ },
9
+ "intervalDays": {
10
+ "description": "Rotation interval in days.",
11
+ "type": "number",
12
+ "minimum": 1,
13
+ "maximum": 3650
14
+ },
15
+ "certValidityDays": {
16
+ "description": "Certificate validity period in days for generated leaf certificates.",
17
+ "type": "number",
18
+ "minimum": 1,
19
+ "maximum": 3650
20
+ }
21
+ },
22
+ "required": [
23
+ "enabled"
24
+ ],
25
+ "additionalProperties": false,
26
+ "$id": "./RotationPolicyCreateDto.schema.json",
27
+ "title": "RotationPolicyCreateDto"
28
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "description": "Optional replacement for rotation enabled flag.",
7
+ "type": "boolean"
8
+ },
9
+ "intervalDays": {
10
+ "description": "Optional replacement for rotation interval in days.",
11
+ "type": "number",
12
+ "minimum": 1,
13
+ "maximum": 3650
14
+ },
15
+ "certValidityDays": {
16
+ "description": "Optional replacement for certificate validity period in days.",
17
+ "type": "number",
18
+ "minimum": 1,
19
+ "maximum": 3650
20
+ }
21
+ },
22
+ "additionalProperties": false,
23
+ "$id": "./RotationPolicyUpdateDto.schema.json",
24
+ "title": "RotationPolicyUpdateDto"
25
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "ttlSeconds": {
6
+ "description": "Session time-to-live in seconds.",
7
+ "type": "integer",
8
+ "minimum": 60,
9
+ "maximum": 9007199254740991
10
+ },
11
+ "cleanupMode": {
12
+ "description": "Whether to fully delete or anonymize expired sessions.",
13
+ "type": "string",
14
+ "enum": [
15
+ "full",
16
+ "anonymize"
17
+ ]
18
+ }
19
+ },
20
+ "additionalProperties": false,
21
+ "description": "Tenant session storage configuration.",
22
+ "$id": "./SessionStorageConfig.schema.json",
23
+ "title": "SessionStorageConfig"
24
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "capacity": {
6
+ "description": "Default status list capacity.",
7
+ "type": "integer",
8
+ "minimum": 100,
9
+ "maximum": 9007199254740991
10
+ },
11
+ "bits": {
12
+ "description": "Bits-per-status setting (1, 2, 4, or 8).",
13
+ "anyOf": [
14
+ {
15
+ "type": "number",
16
+ "const": 1
17
+ },
18
+ {
19
+ "type": "number",
20
+ "const": 2
21
+ },
22
+ {
23
+ "type": "number",
24
+ "const": 4
25
+ },
26
+ {
27
+ "type": "number",
28
+ "const": 8
29
+ }
30
+ ]
31
+ },
32
+ "ttl": {
33
+ "description": "JWT TTL for status list tokens in seconds.",
34
+ "type": "integer",
35
+ "minimum": 60,
36
+ "maximum": 9007199254740991
37
+ },
38
+ "immediateUpdate": {
39
+ "description": "Regenerate status list JWTs immediately after status updates.",
40
+ "type": "boolean"
41
+ },
42
+ "enableAggregation": {
43
+ "description": "Include aggregation_uri in generated status list JWTs.",
44
+ "type": "boolean"
45
+ }
46
+ },
47
+ "additionalProperties": false,
48
+ "description": "Tenant defaults for status list generation and publishing behavior.",
49
+ "$id": "./StatusListConfig.schema.json",
50
+ "title": "StatusListConfig"
51
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./StatusListConfigFile.schema.json",
4
+ "title": "StatusListConfigFile",
5
+ "description": "A status-list configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./StatusListImportDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/status-list/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "StatusList"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./StatusListImportDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "type": {
6
+ "type": "string",
7
+ "description": "Transaction data type identifier."
8
+ },
9
+ "credential_ids": {
10
+ "type": "array",
11
+ "items": {
12
+ "type": "string"
13
+ },
14
+ "description": "Credential query ids this transaction data applies to."
15
+ }
16
+ },
17
+ "required": [
18
+ "type",
19
+ "credential_ids"
20
+ ],
21
+ "additionalProperties": {},
22
+ "$id": "./TransactionData.schema.json",
23
+ "title": "TransactionData"
24
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "./TrustListConfigFile.schema.json",
4
+ "title": "TrustListConfigFile",
5
+ "description": "A trust-list configuration file in legacy payload or versioned-envelope form.",
6
+ "oneOf": [
7
+ {
8
+ "$ref": "./TrustListCreateDto.schema.json"
9
+ },
10
+ {
11
+ "type": "object",
12
+ "properties": {
13
+ "apiVersion": {
14
+ "type": "string",
15
+ "const": "eudiplo.io/trust-list/v1"
16
+ },
17
+ "kind": {
18
+ "type": "string",
19
+ "const": "TrustList"
20
+ },
21
+ "metadata": {
22
+ "$ref": "./ConfigDocumentMetadata.schema.json"
23
+ },
24
+ "spec": {
25
+ "$ref": "./TrustListCreateDto.schema.json"
26
+ }
27
+ },
28
+ "required": [
29
+ "apiVersion",
30
+ "kind",
31
+ "metadata",
32
+ "spec"
33
+ ],
34
+ "additionalProperties": false
35
+ }
36
+ ]
37
+ }
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "id": {
6
+ "type": "string",
7
+ "minLength": 1,
8
+ "description": "Unique attribute provider identifier."
9
+ },
10
+ "name": {
11
+ "type": "string",
12
+ "minLength": 1,
13
+ "description": "Display name of the attribute provider."
14
+ },
15
+ "description": {
16
+ "anyOf": [
17
+ {
18
+ "type": "string",
19
+ "minLength": 1
20
+ },
21
+ {
22
+ "type": "null"
23
+ }
24
+ ],
25
+ "description": "Optional attribute provider description."
26
+ },
27
+ "url": {
28
+ "type": "string",
29
+ "format": "uri",
30
+ "description": "Base URL of the attribute provider endpoint."
31
+ },
32
+ "auth": {
33
+ "oneOf": [
34
+ {
35
+ "type": "object",
36
+ "properties": {
37
+ "type": {
38
+ "type": "string",
39
+ "const": "none",
40
+ "description": "Disable authentication for attribute provider calls."
41
+ }
42
+ },
43
+ "required": [
44
+ "type"
45
+ ],
46
+ "additionalProperties": false,
47
+ "description": "No authentication variant."
48
+ },
49
+ {
50
+ "type": "object",
51
+ "properties": {
52
+ "type": {
53
+ "type": "string",
54
+ "const": "apiKey",
55
+ "description": "Use API key authentication."
56
+ },
57
+ "config": {
58
+ "type": "object",
59
+ "properties": {
60
+ "headerName": {
61
+ "type": "string",
62
+ "minLength": 1,
63
+ "description": "HTTP header name carrying the API key."
64
+ },
65
+ "value": {
66
+ "type": "string",
67
+ "minLength": 1,
68
+ "description": "API key value."
69
+ }
70
+ },
71
+ "required": [
72
+ "headerName",
73
+ "value"
74
+ ],
75
+ "additionalProperties": false,
76
+ "description": "API key authentication settings."
77
+ }
78
+ },
79
+ "required": [
80
+ "type",
81
+ "config"
82
+ ],
83
+ "additionalProperties": false,
84
+ "description": "API key authentication variant."
85
+ }
86
+ ],
87
+ "description": "Authentication configuration for outbound provider requests."
88
+ }
89
+ },
90
+ "additionalProperties": false,
91
+ "$id": "./UpdateAttributeProviderDto.schema.json",
92
+ "title": "UpdateAttributeProviderDto"
93
+ }