@eudiplo/cli 9.1.0-main.892d49e → 9.1.0-main.8be8b4e

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 (96) hide show
  1. package/dist/commands/completion/action.js +3 -1
  2. package/dist/commands/completion/action.js.map +1 -1
  3. package/dist/commands/config/portability/migrations.spec.js +5 -2
  4. package/dist/commands/config/portability/migrations.spec.js.map +1 -1
  5. package/dist/commands/config/portability/upgrade.d.ts.map +1 -1
  6. package/dist/commands/config/portability/upgrade.js +7 -8
  7. package/dist/commands/config/portability/upgrade.js.map +1 -1
  8. package/dist/commands/config/tenant/action.d.ts.map +1 -1
  9. package/dist/commands/config/tenant/action.js +3 -2
  10. package/dist/commands/config/tenant/action.js.map +1 -1
  11. package/dist/commands/config/validate/action.d.ts.map +1 -1
  12. package/dist/commands/config/validate/action.js +2 -1
  13. package/dist/commands/config/validate/action.js.map +1 -1
  14. package/dist/commands/config/validate/registry.json +21 -0
  15. package/dist/commands/init/action.d.ts.map +1 -1
  16. package/dist/commands/init/action.js +1 -11
  17. package/dist/commands/init/action.js.map +1 -1
  18. package/dist/commands/instance/action.d.ts +2 -0
  19. package/dist/commands/instance/action.d.ts.map +1 -1
  20. package/dist/commands/instance/action.js +68 -12
  21. package/dist/commands/instance/action.js.map +1 -1
  22. package/dist/commands/instance/index.d.ts.map +1 -1
  23. package/dist/commands/instance/index.js +21 -3
  24. package/dist/commands/instance/index.js.map +1 -1
  25. package/dist/commands/open/action.d.ts.map +1 -1
  26. package/dist/commands/open/action.js +13 -2
  27. package/dist/commands/open/action.js.map +1 -1
  28. package/dist/commands/status/action.d.ts.map +1 -1
  29. package/dist/commands/status/action.js +2 -1
  30. package/dist/commands/status/action.js.map +1 -1
  31. package/dist/index.js +21395 -5631
  32. package/dist/services/api-auth.d.ts.map +1 -1
  33. package/dist/services/api-auth.js +3 -2
  34. package/dist/services/api-auth.js.map +1 -1
  35. package/dist/services/browser.d.ts.map +1 -1
  36. package/dist/services/browser.js +3 -2
  37. package/dist/services/browser.js.map +1 -1
  38. package/dist/services/cli-config.d.ts +41 -1
  39. package/dist/services/cli-config.d.ts.map +1 -1
  40. package/dist/services/cli-config.js +217 -29
  41. package/dist/services/cli-config.js.map +1 -1
  42. package/dist/services/compose-project.d.ts +6 -0
  43. package/dist/services/compose-project.d.ts.map +1 -1
  44. package/dist/services/compose-project.js +13 -2
  45. package/dist/services/compose-project.js.map +1 -1
  46. package/dist/services/diagnostics.d.ts.map +1 -1
  47. package/dist/services/diagnostics.js +9 -8
  48. package/dist/services/diagnostics.js.map +1 -1
  49. package/dist/services/instance-selection.d.ts.map +1 -1
  50. package/dist/services/instance-selection.js +2 -5
  51. package/dist/services/instance-selection.js.map +1 -1
  52. package/dist/services/url.d.ts +21 -0
  53. package/dist/services/url.d.ts.map +1 -0
  54. package/dist/services/url.js +61 -0
  55. package/dist/services/url.js.map +1 -0
  56. package/package.json +6 -5
  57. package/templates/demo-config/clients/presentation-test.json +1 -1
  58. package/templates/demo-config/clients/test.json +7 -2
  59. package/templates/demo-config/info.json +1 -1
  60. package/templates/demo-config/issuance/credentials/citizen.json +1 -1
  61. package/templates/demo-config/issuance/credentials/pid-key.json +1 -1
  62. package/templates/demo-config/issuance/credentials/pid-mdoc.json +1 -1
  63. package/templates/demo-config/issuance/credentials/pid.json +1 -1
  64. package/templates/demo-config/issuance/issuance.json +1 -1
  65. package/templates/demo-config/key-chains/access.json +1 -1
  66. package/templates/demo-config/key-chains/attestation.json +3 -2
  67. package/templates/demo-config/key-chains/status-list.json +6 -5
  68. package/templates/demo-config/key-chains/trust-list.json +1 -1
  69. package/templates/demo-config/presentation/age-over-18.json +1 -1
  70. package/templates/demo-config/presentation/pid.json +1 -1
  71. package/templates/docker-compose.yml +2 -2
  72. package/templates/schemas/ClientConfigFile.schema.json +134 -1
  73. package/templates/schemas/CreateClientDto.schema.json +5 -1
  74. package/templates/schemas/CreateFederationTrustAnchorDto.schema.json +82 -0
  75. package/templates/schemas/CreateRegistrarConfigDto.schema.json +29 -0
  76. package/templates/schemas/CreateTenantDto.schema.json +8 -4
  77. package/templates/schemas/CredentialConfigCreate.schema.json +242 -11
  78. package/templates/schemas/CredentialConfigFile.schema.json +1592 -1
  79. package/templates/schemas/FederationTrustAnchorConfigFile.schema.json +60 -0
  80. package/templates/schemas/IssuanceConfig.schema.json +122 -9
  81. package/templates/schemas/IssuanceConfigFile.schema.json +2247 -1
  82. package/templates/schemas/KeyChainConfigFile.schema.json +875 -119
  83. package/templates/schemas/KeyChainCreateDto.schema.json +12 -1
  84. package/templates/schemas/KeyChainDefaultsConfigFile.schema.json +123 -0
  85. package/templates/schemas/KeyChainImportDto.schema.json +10 -0
  86. package/templates/schemas/KmsConfigDto.schema.json +186 -0
  87. package/templates/schemas/KmsConfigFile.schema.json +1026 -1
  88. package/templates/schemas/PresentationConfigCreateDto.schema.json +16 -0
  89. package/templates/schemas/PresentationConfigFile.schema.json +746 -1
  90. package/templates/schemas/RegistrarConfigFile.schema.json +101 -1
  91. package/templates/schemas/RotationPolicyCreateDto.schema.json +1 -1
  92. package/templates/schemas/TenantConfigFile.schema.json +334 -64
  93. package/templates/schemas/UpdateClientDto.schema.json +5 -1
  94. package/templates/schemas/UpdateFederationTrustAnchorDto.schema.json +70 -0
  95. package/templates/schemas/UpdateStatusListConfigDto.schema.json +5 -5
  96. package/templates/schemas.manifest.json +4 -0
@@ -0,0 +1,82 @@
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
+ "maxLength": 255,
9
+ "pattern": "^[A-Za-z0-9._-]+$",
10
+ "description": "Unique identifier of the trust anchor in the tenant."
11
+ },
12
+ "entityId": {
13
+ "type": "string",
14
+ "minLength": 1,
15
+ "maxLength": 2048,
16
+ "description": "Entity identifier of the trust anchor, exactly as configured in `federation.trustAnchors` and DCQL `openid_federation` values."
17
+ },
18
+ "description": {
19
+ "anyOf": [
20
+ {
21
+ "type": "string",
22
+ "minLength": 1,
23
+ "maxLength": 1000
24
+ },
25
+ {
26
+ "type": "null"
27
+ }
28
+ ],
29
+ "description": "Optional description of the trust anchor."
30
+ },
31
+ "jwks": {
32
+ "type": "object",
33
+ "properties": {
34
+ "keys": {
35
+ "minItems": 1,
36
+ "maxItems": 20,
37
+ "type": "array",
38
+ "items": {
39
+ "type": "object",
40
+ "properties": {
41
+ "kty": {
42
+ "type": "string",
43
+ "enum": [
44
+ "EC",
45
+ "RSA",
46
+ "OKP"
47
+ ],
48
+ "description": "Key type of the public federation key."
49
+ },
50
+ "kid": {
51
+ "type": "string",
52
+ "minLength": 1,
53
+ "maxLength": 256,
54
+ "description": "Key ID. Federation statements name their signing key with `kid`."
55
+ }
56
+ },
57
+ "required": [
58
+ "kty",
59
+ "kid"
60
+ ],
61
+ "additionalProperties": {},
62
+ "description": "Public federation key of the trust anchor as a JWK."
63
+ },
64
+ "description": "The trust anchor's federation keys."
65
+ }
66
+ },
67
+ "required": [
68
+ "keys"
69
+ ],
70
+ "additionalProperties": false,
71
+ "description": "JWK set with the federation keys of the trust anchor, obtained out of band (OpenID Federation 1.0 Section 10.2)."
72
+ }
73
+ },
74
+ "required": [
75
+ "id",
76
+ "entityId",
77
+ "jwks"
78
+ ],
79
+ "additionalProperties": false,
80
+ "$id": "./CreateFederationTrustAnchorDto.schema.json",
81
+ "title": "CreateFederationTrustAnchorDto"
82
+ }
@@ -46,6 +46,35 @@
46
46
  "type": "null"
47
47
  }
48
48
  ]
49
+ },
50
+ "relyingPartyContact": {
51
+ "description": "Contact of the relying party, sent when EUDIPLO registers the relying party at the registrar. The registrar needs at least one contact value to issue access certificates. A relying party that is already registered keeps its contact.",
52
+ "anyOf": [
53
+ {
54
+ "type": "object",
55
+ "properties": {
56
+ "supportUri": {
57
+ "description": "https URL where the relying party can be contacted.",
58
+ "type": "string",
59
+ "format": "uri"
60
+ },
61
+ "email": {
62
+ "description": "Email address of the relying party.",
63
+ "type": "string",
64
+ "pattern": "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$"
65
+ },
66
+ "phone": {
67
+ "description": "Phone number of the relying party.",
68
+ "type": "string",
69
+ "pattern": "^[+0-9()\\-\\s]{5,40}$"
70
+ }
71
+ },
72
+ "additionalProperties": false
73
+ },
74
+ {
75
+ "type": "null"
76
+ }
77
+ ]
49
78
  }
50
79
  },
51
80
  "required": [
@@ -4,8 +4,8 @@
4
4
  "properties": {
5
5
  "id": {
6
6
  "type": "string",
7
- "minLength": 1,
8
- "description": "Unique tenant identifier."
7
+ "pattern": "^[a-z0-9][a-z0-9_-]{0,62}$",
8
+ "description": "Unique tenant identifier: lowercase letters, digits, `-` and `_`, starting with a letter or digit, at most 63 characters. It is also the name of the tenant's configuration folder."
9
9
  },
10
10
  "name": {
11
11
  "default": "EUDIPLO",
@@ -19,7 +19,7 @@
19
19
  "minLength": 1
20
20
  },
21
21
  "roles": {
22
- "description": "Optional default role assignments for the tenant.",
22
+ "description": "Roles of the tenant's admin client `<id>-admin`, which also gets clients:manage. They are all that client can grant, unless they include tenant:admin. Without roles, no admin client is created.",
23
23
  "type": "array",
24
24
  "items": {
25
25
  "type": "string",
@@ -32,7 +32,11 @@
32
32
  "clients:manage",
33
33
  "users:manage",
34
34
  "registrar:manage",
35
- "tenant:admin"
35
+ "tenant:admin",
36
+ "audit:read",
37
+ "sessions:read",
38
+ "credentials:status",
39
+ "keys:manage"
36
40
  ]
37
41
  }
38
42
  },
@@ -209,7 +209,7 @@
209
209
  ]
210
210
  },
211
211
  "webhookEndpointId": {
212
- "description": "Optional webhook endpoint id notified during issuance events.",
212
+ "description": "Not used for notifications: they go to the webhook endpoint of the offer.",
213
213
  "type": [
214
214
  "string",
215
215
  "null"
@@ -303,7 +303,7 @@
303
303
  ]
304
304
  },
305
305
  "iaeActions": {
306
- "description": "Optional in-app experience actions for wallet flows.",
306
+ "description": "Interactive authorization steps (a presentation or a web flow) that the wallet completes, in order, before the credential is issued.",
307
307
  "anyOf": [
308
308
  {
309
309
  "type": "array",
@@ -479,16 +479,17 @@
479
479
  "type": "string"
480
480
  },
481
481
  "frameworkType": {
482
- "description": "Trust framework type.",
482
+ "description": "Trust framework type. `x509` takes a root certificate in `value` and no `verificationMethod`.",
483
483
  "type": "string",
484
484
  "enum": [
485
485
  "aki",
486
486
  "etsi_tl",
487
- "openid_federation"
487
+ "openid_federation",
488
+ "x509"
488
489
  ]
489
490
  },
490
491
  "value": {
491
- "description": "Framework-specific authority value.",
492
+ "description": "Framework-specific authority value, for example the trust list URL for `etsi_tl` or the root certificate (base64 DER or PEM) for `x509`.",
492
493
  "type": "string"
493
494
  },
494
495
  "verificationMethod": {
@@ -713,12 +714,8 @@
713
714
  }
714
715
  },
715
716
  "constraints": {
716
- "description": "Optional validation constraints for the claim value.",
717
- "type": "object",
718
- "propertyNames": {
719
- "type": "string"
720
- },
721
- "additionalProperties": {}
717
+ "description": "Optional JSON Schema 2020-12 validation keywords for the claim value. Only the JSON Schema keywords listed under Constraints in the claims documentation are accepted (validation keywords such as pattern, minLength or enum, subschemas such as items or properties, and annotations); other keys, such as format or $ref, are refused.",
718
+ "$ref": "#/$defs/ClaimConstraints"
722
719
  },
723
720
  "children": {
724
721
  "description": "Nested child claim definitions for object or array fields.",
@@ -733,6 +730,240 @@
733
730
  "type"
734
731
  ],
735
732
  "additionalProperties": false
733
+ },
734
+ "ClaimConstraints": {
735
+ "type": "object",
736
+ "properties": {
737
+ "type": {},
738
+ "enum": {},
739
+ "const": {},
740
+ "multipleOf": {},
741
+ "maximum": {},
742
+ "exclusiveMaximum": {},
743
+ "minimum": {},
744
+ "exclusiveMinimum": {},
745
+ "maxLength": {},
746
+ "minLength": {},
747
+ "pattern": {},
748
+ "maxItems": {},
749
+ "minItems": {},
750
+ "uniqueItems": {},
751
+ "maxContains": {},
752
+ "minContains": {},
753
+ "maxProperties": {},
754
+ "minProperties": {},
755
+ "required": {},
756
+ "dependentRequired": {},
757
+ "title": {},
758
+ "description": {},
759
+ "default": {},
760
+ "examples": {},
761
+ "deprecated": {},
762
+ "readOnly": {},
763
+ "writeOnly": {},
764
+ "$comment": {},
765
+ "items": {
766
+ "anyOf": [
767
+ {
768
+ "type": "boolean"
769
+ },
770
+ {
771
+ "$ref": "#/$defs/ClaimConstraints"
772
+ }
773
+ ]
774
+ },
775
+ "contains": {
776
+ "anyOf": [
777
+ {
778
+ "type": "boolean"
779
+ },
780
+ {
781
+ "$ref": "#/$defs/ClaimConstraints"
782
+ }
783
+ ]
784
+ },
785
+ "additionalProperties": {
786
+ "anyOf": [
787
+ {
788
+ "type": "boolean"
789
+ },
790
+ {
791
+ "$ref": "#/$defs/ClaimConstraints"
792
+ }
793
+ ]
794
+ },
795
+ "propertyNames": {
796
+ "anyOf": [
797
+ {
798
+ "type": "boolean"
799
+ },
800
+ {
801
+ "$ref": "#/$defs/ClaimConstraints"
802
+ }
803
+ ]
804
+ },
805
+ "not": {
806
+ "anyOf": [
807
+ {
808
+ "type": "boolean"
809
+ },
810
+ {
811
+ "$ref": "#/$defs/ClaimConstraints"
812
+ }
813
+ ]
814
+ },
815
+ "if": {
816
+ "anyOf": [
817
+ {
818
+ "type": "boolean"
819
+ },
820
+ {
821
+ "$ref": "#/$defs/ClaimConstraints"
822
+ }
823
+ ]
824
+ },
825
+ "then": {
826
+ "anyOf": [
827
+ {
828
+ "type": "boolean"
829
+ },
830
+ {
831
+ "$ref": "#/$defs/ClaimConstraints"
832
+ }
833
+ ]
834
+ },
835
+ "else": {
836
+ "anyOf": [
837
+ {
838
+ "type": "boolean"
839
+ },
840
+ {
841
+ "$ref": "#/$defs/ClaimConstraints"
842
+ }
843
+ ]
844
+ },
845
+ "unevaluatedItems": {
846
+ "anyOf": [
847
+ {
848
+ "type": "boolean"
849
+ },
850
+ {
851
+ "$ref": "#/$defs/ClaimConstraints"
852
+ }
853
+ ]
854
+ },
855
+ "unevaluatedProperties": {
856
+ "anyOf": [
857
+ {
858
+ "type": "boolean"
859
+ },
860
+ {
861
+ "$ref": "#/$defs/ClaimConstraints"
862
+ }
863
+ ]
864
+ },
865
+ "prefixItems": {
866
+ "type": "array",
867
+ "items": {
868
+ "anyOf": [
869
+ {
870
+ "type": "boolean"
871
+ },
872
+ {
873
+ "$ref": "#/$defs/ClaimConstraints"
874
+ }
875
+ ]
876
+ }
877
+ },
878
+ "allOf": {
879
+ "type": "array",
880
+ "items": {
881
+ "anyOf": [
882
+ {
883
+ "type": "boolean"
884
+ },
885
+ {
886
+ "$ref": "#/$defs/ClaimConstraints"
887
+ }
888
+ ]
889
+ }
890
+ },
891
+ "anyOf": {
892
+ "type": "array",
893
+ "items": {
894
+ "anyOf": [
895
+ {
896
+ "type": "boolean"
897
+ },
898
+ {
899
+ "$ref": "#/$defs/ClaimConstraints"
900
+ }
901
+ ]
902
+ }
903
+ },
904
+ "oneOf": {
905
+ "type": "array",
906
+ "items": {
907
+ "anyOf": [
908
+ {
909
+ "type": "boolean"
910
+ },
911
+ {
912
+ "$ref": "#/$defs/ClaimConstraints"
913
+ }
914
+ ]
915
+ }
916
+ },
917
+ "properties": {
918
+ "type": "object",
919
+ "propertyNames": {
920
+ "type": "string"
921
+ },
922
+ "additionalProperties": {
923
+ "anyOf": [
924
+ {
925
+ "type": "boolean"
926
+ },
927
+ {
928
+ "$ref": "#/$defs/ClaimConstraints"
929
+ }
930
+ ]
931
+ }
932
+ },
933
+ "patternProperties": {
934
+ "type": "object",
935
+ "propertyNames": {
936
+ "type": "string"
937
+ },
938
+ "additionalProperties": {
939
+ "anyOf": [
940
+ {
941
+ "type": "boolean"
942
+ },
943
+ {
944
+ "$ref": "#/$defs/ClaimConstraints"
945
+ }
946
+ ]
947
+ }
948
+ },
949
+ "dependentSchemas": {
950
+ "type": "object",
951
+ "propertyNames": {
952
+ "type": "string"
953
+ },
954
+ "additionalProperties": {
955
+ "anyOf": [
956
+ {
957
+ "type": "boolean"
958
+ },
959
+ {
960
+ "$ref": "#/$defs/ClaimConstraints"
961
+ }
962
+ ]
963
+ }
964
+ }
965
+ },
966
+ "additionalProperties": false
736
967
  }
737
968
  },
738
969
  "$id": "./CredentialConfigCreate.schema.json",