@rockcarver/frodo-lib 0.11.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.
Files changed (112) hide show
  1. package/.eslintrc +32 -0
  2. package/.github/ISSUE_TEMPLATE/bug_report.md +30 -0
  3. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
  4. package/.github/README.md +121 -0
  5. package/.github/workflows/pipeline.yml +287 -0
  6. package/.prettierrc +6 -0
  7. package/CHANGELOG.md +512 -0
  8. package/CODE_OF_CONDUCT.md +128 -0
  9. package/LICENSE +21 -0
  10. package/README.md +8 -0
  11. package/docs/CONTRIBUTE.md +96 -0
  12. package/docs/PIPELINE.md +169 -0
  13. package/docs/images/npm_versioning_guidelines.png +0 -0
  14. package/docs/images/release_pipeline.png +0 -0
  15. package/jsconfig.json +6 -0
  16. package/package.json +95 -0
  17. package/resources/sampleEntitiesFile.json +8 -0
  18. package/resources/sampleEnvFile.env +2 -0
  19. package/src/api/AuthenticateApi.js +33 -0
  20. package/src/api/BaseApi.js +242 -0
  21. package/src/api/CirclesOfTrustApi.js +87 -0
  22. package/src/api/EmailTemplateApi.js +37 -0
  23. package/src/api/IdmConfigApi.js +88 -0
  24. package/src/api/LogApi.js +45 -0
  25. package/src/api/ManagedObjectApi.js +62 -0
  26. package/src/api/OAuth2ClientApi.js +69 -0
  27. package/src/api/OAuth2OIDCApi.js +73 -0
  28. package/src/api/OAuth2ProviderApi.js +32 -0
  29. package/src/api/RealmApi.js +99 -0
  30. package/src/api/Saml2Api.js +176 -0
  31. package/src/api/ScriptApi.js +84 -0
  32. package/src/api/SecretsApi.js +151 -0
  33. package/src/api/ServerInfoApi.js +41 -0
  34. package/src/api/SocialIdentityProvidersApi.js +114 -0
  35. package/src/api/StartupApi.js +45 -0
  36. package/src/api/ThemeApi.js +181 -0
  37. package/src/api/TreeApi.js +207 -0
  38. package/src/api/VariablesApi.js +104 -0
  39. package/src/api/utils/ApiUtils.js +77 -0
  40. package/src/api/utils/ApiUtils.test.js +96 -0
  41. package/src/api/utils/Base64.js +62 -0
  42. package/src/index.js +32 -0
  43. package/src/index.test.js +13 -0
  44. package/src/ops/AdminOps.js +901 -0
  45. package/src/ops/AuthenticateOps.js +342 -0
  46. package/src/ops/CirclesOfTrustOps.js +350 -0
  47. package/src/ops/ConnectionProfileOps.js +254 -0
  48. package/src/ops/EmailTemplateOps.js +326 -0
  49. package/src/ops/IdmOps.js +227 -0
  50. package/src/ops/IdpOps.js +342 -0
  51. package/src/ops/JourneyOps.js +2026 -0
  52. package/src/ops/LogOps.js +357 -0
  53. package/src/ops/ManagedObjectOps.js +34 -0
  54. package/src/ops/OAuth2ClientOps.js +151 -0
  55. package/src/ops/OrganizationOps.js +85 -0
  56. package/src/ops/RealmOps.js +139 -0
  57. package/src/ops/SamlOps.js +541 -0
  58. package/src/ops/ScriptOps.js +211 -0
  59. package/src/ops/SecretsOps.js +288 -0
  60. package/src/ops/StartupOps.js +114 -0
  61. package/src/ops/ThemeOps.js +379 -0
  62. package/src/ops/VariablesOps.js +185 -0
  63. package/src/ops/templates/OAuth2ClientTemplate.json +270 -0
  64. package/src/ops/templates/OrgModelUserAttributesTemplate.json +149 -0
  65. package/src/ops/templates/cloud/GenericExtensionAttributesTemplate.json +392 -0
  66. package/src/ops/templates/cloud/managed.json +4119 -0
  67. package/src/ops/utils/Console.js +434 -0
  68. package/src/ops/utils/DataProtection.js +92 -0
  69. package/src/ops/utils/DataProtection.test.js +28 -0
  70. package/src/ops/utils/ExportImportUtils.js +146 -0
  71. package/src/ops/utils/ExportImportUtils.test.js +119 -0
  72. package/src/ops/utils/OpsUtils.js +76 -0
  73. package/src/ops/utils/Wordwrap.js +11 -0
  74. package/src/storage/SessionStorage.js +45 -0
  75. package/src/storage/StaticStorage.js +15 -0
  76. package/test/e2e/journey/baseline/ForgottenUsername.journey.json +216 -0
  77. package/test/e2e/journey/baseline/Login.journey.json +205 -0
  78. package/test/e2e/journey/baseline/PasswordGrant.journey.json +139 -0
  79. package/test/e2e/journey/baseline/ProgressiveProfile.journey.json +198 -0
  80. package/test/e2e/journey/baseline/Registration.journey.json +249 -0
  81. package/test/e2e/journey/baseline/ResetPassword.journey.json +268 -0
  82. package/test/e2e/journey/baseline/UpdatePassword.journey.json +323 -0
  83. package/test/e2e/journey/baseline/allAlphaJourneys.journeys.json +1520 -0
  84. package/test/e2e/journey/delete/ForgottenUsername.journey.json +216 -0
  85. package/test/e2e/journey/delete/Login.journey.json +205 -0
  86. package/test/e2e/journey/delete/PasswordGrant.journey.json +139 -0
  87. package/test/e2e/journey/delete/ProgressiveProfile.journey.json +198 -0
  88. package/test/e2e/journey/delete/Registration.journey.json +249 -0
  89. package/test/e2e/journey/delete/ResetPassword.journey.json +268 -0
  90. package/test/e2e/journey/delete/UpdatePassword.journey.json +323 -0
  91. package/test/e2e/journey/delete/deleteMe.journey.json +230 -0
  92. package/test/e2e/journey/list/Disabled.journey.json +43 -0
  93. package/test/e2e/journey/list/ForgottenUsername.journey.json +216 -0
  94. package/test/e2e/journey/list/Login.journey.json +205 -0
  95. package/test/e2e/journey/list/PasswordGrant.journey.json +139 -0
  96. package/test/e2e/journey/list/ProgressiveProfile.journey.json +198 -0
  97. package/test/e2e/journey/list/Registration.journey.json +249 -0
  98. package/test/e2e/journey/list/ResetPassword.journey.json +268 -0
  99. package/test/e2e/journey/list/UpdatePassword.journey.json +323 -0
  100. package/test/e2e/setup.js +107 -0
  101. package/test/e2e/theme/baseline/Contrast.theme.json +95 -0
  102. package/test/e2e/theme/baseline/Highlander.theme.json +95 -0
  103. package/test/e2e/theme/baseline/Robroy.theme.json +95 -0
  104. package/test/e2e/theme/baseline/Starter-Theme.theme.json +94 -0
  105. package/test/e2e/theme/baseline/Zardoz.theme.json +95 -0
  106. package/test/e2e/theme/import/Contrast.theme.json +95 -0
  107. package/test/e2e/theme/import/Highlander.theme.json +95 -0
  108. package/test/e2e/theme/import/Robroy.theme.json +95 -0
  109. package/test/e2e/theme/import/Starter-Theme.theme.json +94 -0
  110. package/test/e2e/theme/import/Zardoz.default.theme.json +95 -0
  111. package/test/fs_tmp/.gitkeep +2 -0
  112. package/test/global/setup.js +65 -0
@@ -0,0 +1,230 @@
1
+ {
2
+ "meta": {
3
+ "origin": "https://openam-frodo-dev.forgeblocks.com/am",
4
+ "exportedBy": "volker.scheuber@forgerock.com",
5
+ "exportDate": "2022-06-22T00:35:27.476Z",
6
+ "exportTool": "frodo",
7
+ "exportToolVersion": "v0.6.1 [v18.2.0]"
8
+ },
9
+ "innerNodes": {
10
+ "fab1f53e-cda4-458a-b458-b07f75c75d5f": {
11
+ "_id": "fab1f53e-cda4-458a-b458-b07f75c75d5f",
12
+ "_rev": "25892709",
13
+ "usernameAttribute": "userName",
14
+ "validateInput": false,
15
+ "_type": {
16
+ "_id": "ValidatedUsernameNode",
17
+ "name": "Platform Username",
18
+ "collection": true
19
+ },
20
+ "_outcomes": [
21
+ {
22
+ "id": "outcome",
23
+ "displayName": "Outcome"
24
+ }
25
+ ]
26
+ },
27
+ "9d146833-e8d1-4802-8c35-0d7772290807": {
28
+ "_id": "9d146833-e8d1-4802-8c35-0d7772290807",
29
+ "_rev": "635791920",
30
+ "userName": "userName",
31
+ "identityAttribute": "mail",
32
+ "_type": {
33
+ "_id": "DisplayUserNameNode",
34
+ "name": "Display Username",
35
+ "collection": true
36
+ },
37
+ "_outcomes": [
38
+ {
39
+ "id": "outcome",
40
+ "displayName": "Outcome"
41
+ }
42
+ ]
43
+ },
44
+ "c22373f9-252b-4d0b-b80e-e4b392a17d98": {
45
+ "_id": "c22373f9-252b-4d0b-b80e-e4b392a17d98",
46
+ "_rev": "2070053042",
47
+ "validateInput": false,
48
+ "passwordAttribute": "password",
49
+ "_type": {
50
+ "_id": "ValidatedPasswordNode",
51
+ "name": "Platform Password",
52
+ "collection": true
53
+ },
54
+ "_outcomes": [
55
+ {
56
+ "id": "outcome",
57
+ "displayName": "Outcome"
58
+ }
59
+ ]
60
+ }
61
+ },
62
+ "nodes": {
63
+ "68e23c54-0c9e-4991-9b25-daf306d6ec65": {
64
+ "_id": "68e23c54-0c9e-4991-9b25-daf306d6ec65",
65
+ "_rev": "1940919660",
66
+ "passwordHeader": "X-OpenAM-Password",
67
+ "referrerWhiteList": [],
68
+ "allowWithoutReferer": true,
69
+ "usernameHeader": "X-OpenAM-Username",
70
+ "_type": {
71
+ "_id": "ZeroPageLoginNode",
72
+ "name": "Zero Page Login Collector",
73
+ "collection": true
74
+ },
75
+ "_outcomes": [
76
+ {
77
+ "id": "true",
78
+ "displayName": "Has Credentials"
79
+ },
80
+ {
81
+ "id": "false",
82
+ "displayName": "No Credentials"
83
+ }
84
+ ]
85
+ },
86
+ "9cd184fc-9453-4666-b667-2875d9301b5e": {
87
+ "_id": "9cd184fc-9453-4666-b667-2875d9301b5e",
88
+ "_rev": "-778770090",
89
+ "_type": {
90
+ "_id": "DataStoreDecisionNode",
91
+ "name": "Data Store Decision",
92
+ "collection": true
93
+ },
94
+ "_outcomes": [
95
+ {
96
+ "id": "true",
97
+ "displayName": "True"
98
+ },
99
+ {
100
+ "id": "false",
101
+ "displayName": "False"
102
+ }
103
+ ]
104
+ },
105
+ "3c89697f-c114-4d36-907f-6c36f820cde7": {
106
+ "_id": "3c89697f-c114-4d36-907f-6c36f820cde7",
107
+ "_rev": "725994360",
108
+ "nodes": [
109
+ {
110
+ "_id": "fab1f53e-cda4-458a-b458-b07f75c75d5f",
111
+ "nodeType": "ValidatedUsernameNode",
112
+ "displayName": "Username"
113
+ }
114
+ ],
115
+ "pageDescription": {},
116
+ "pageHeader": {},
117
+ "_type": {
118
+ "_id": "PageNode",
119
+ "name": "Page Node",
120
+ "collection": true
121
+ },
122
+ "_outcomes": [
123
+ {
124
+ "id": "outcome",
125
+ "displayName": "Outcome"
126
+ }
127
+ ]
128
+ },
129
+ "2d564be0-325e-439a-aeb0-6c884270c756": {
130
+ "_id": "2d564be0-325e-439a-aeb0-6c884270c756",
131
+ "_rev": "-916183031",
132
+ "nodes": [
133
+ {
134
+ "_id": "9d146833-e8d1-4802-8c35-0d7772290807",
135
+ "nodeType": "DisplayUserNameNode",
136
+ "displayName": "Display Username"
137
+ },
138
+ {
139
+ "_id": "c22373f9-252b-4d0b-b80e-e4b392a17d98",
140
+ "nodeType": "ValidatedPasswordNode",
141
+ "displayName": "Password"
142
+ }
143
+ ],
144
+ "pageDescription": {},
145
+ "pageHeader": {},
146
+ "_type": {
147
+ "_id": "PageNode",
148
+ "name": "Page Node",
149
+ "collection": true
150
+ },
151
+ "_outcomes": [
152
+ {
153
+ "id": "outcome",
154
+ "displayName": "Outcome"
155
+ }
156
+ ]
157
+ }
158
+ },
159
+ "scripts": {},
160
+ "emailTemplates": {},
161
+ "socialIdentityProviders": {},
162
+ "themes": [],
163
+ "saml2Entities": {},
164
+ "circlesOfTrust": {},
165
+ "tree": {
166
+ "_id": "deleteMe",
167
+ "_rev": "-620086377",
168
+ "identityResource": "managed/alpha_user",
169
+ "uiConfig": {
170
+ "categories": "[\"e2e\"]"
171
+ },
172
+ "entryNodeId": "68e23c54-0c9e-4991-9b25-daf306d6ec65",
173
+ "nodes": {
174
+ "68e23c54-0c9e-4991-9b25-daf306d6ec65": {
175
+ "x": 210,
176
+ "y": 137,
177
+ "connections": {
178
+ "true": "9cd184fc-9453-4666-b667-2875d9301b5e",
179
+ "false": "3c89697f-c114-4d36-907f-6c36f820cde7"
180
+ },
181
+ "nodeType": "ZeroPageLoginNode",
182
+ "displayName": "Zero Page Login"
183
+ },
184
+ "9cd184fc-9453-4666-b667-2875d9301b5e": {
185
+ "x": 858,
186
+ "y": 143,
187
+ "connections": {
188
+ "false": "e301438c-0bd0-429c-ab0c-66126501069a",
189
+ "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0"
190
+ },
191
+ "nodeType": "DataStoreDecisionNode",
192
+ "displayName": "Validate Credentials"
193
+ },
194
+ "3c89697f-c114-4d36-907f-6c36f820cde7": {
195
+ "x": 407,
196
+ "y": 261,
197
+ "connections": {
198
+ "outcome": "2d564be0-325e-439a-aeb0-6c884270c756"
199
+ },
200
+ "nodeType": "PageNode",
201
+ "displayName": "Username Page"
202
+ },
203
+ "2d564be0-325e-439a-aeb0-6c884270c756": {
204
+ "x": 633,
205
+ "y": 240.76666259765625,
206
+ "connections": {
207
+ "outcome": "9cd184fc-9453-4666-b667-2875d9301b5e"
208
+ },
209
+ "nodeType": "PageNode",
210
+ "displayName": "Password Page"
211
+ }
212
+ },
213
+ "staticNodes": {
214
+ "startNode": {
215
+ "x": 70,
216
+ "y": 155
217
+ },
218
+ "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": {
219
+ "x": 1085,
220
+ "y": 67
221
+ },
222
+ "e301438c-0bd0-429c-ab0c-66126501069a": {
223
+ "x": 1087,
224
+ "y": 294
225
+ }
226
+ },
227
+ "description": "e2e test journey.",
228
+ "enabled": true
229
+ }
230
+ }
@@ -0,0 +1,43 @@
1
+ {
2
+ "meta": {
3
+ "origin": "https://openam-frodo-dev.forgeblocks.com/am",
4
+ "exportedBy": "volker.scheuber@forgerock.com",
5
+ "exportDate": "2022-06-21T18:16:56.677Z",
6
+ "exportTool": "frodo",
7
+ "exportToolVersion": "v0.6.1 [v18.2.0]"
8
+ },
9
+ "innerNodes": {},
10
+ "nodes": {},
11
+ "scripts": {},
12
+ "emailTemplates": {},
13
+ "socialIdentityProviders": {},
14
+ "themes": [],
15
+ "saml2Entities": {},
16
+ "circlesOfTrust": {},
17
+ "tree": {
18
+ "_id": "Disabled",
19
+ "_rev": "-296440409",
20
+ "identityResource": "managed/alpha_user",
21
+ "uiConfig": {
22
+ "categories": "[\"Prototype\"]"
23
+ },
24
+ "entryNodeId": "e301438c-0bd0-429c-ab0c-66126501069a",
25
+ "nodes": {},
26
+ "description": "Test the new status flag for journeys.",
27
+ "staticNodes": {
28
+ "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": {
29
+ "x": 500,
30
+ "y": 50
31
+ },
32
+ "e301438c-0bd0-429c-ab0c-66126501069a": {
33
+ "x": 500,
34
+ "y": 350
35
+ },
36
+ "startNode": {
37
+ "x": 50,
38
+ "y": 250
39
+ }
40
+ },
41
+ "enabled": false
42
+ }
43
+ }
@@ -0,0 +1,216 @@
1
+ {
2
+ "meta": {
3
+ "origin": "https://openam-frodo-dev.forgeblocks.com/am",
4
+ "exportedBy": "volker.scheuber@forgerock.com",
5
+ "exportDate": "2022-06-20T17:54:10.100Z",
6
+ "exportTool": "frodo",
7
+ "exportToolVersion": "v0.6.1 [v18.2.0]"
8
+ },
9
+ "innerNodes": {
10
+ "9f1e8d94-4922-481b-9e14-212b66548900": {
11
+ "_id": "9f1e8d94-4922-481b-9e14-212b66548900",
12
+ "_rev": "-1331445210",
13
+ "attributesToCollect": [
14
+ "mail"
15
+ ],
16
+ "identityAttribute": "mail",
17
+ "validateInputs": false,
18
+ "required": true,
19
+ "_type": {
20
+ "_id": "AttributeCollectorNode",
21
+ "name": "Attribute Collector",
22
+ "collection": true
23
+ },
24
+ "_outcomes": [
25
+ {
26
+ "id": "outcome",
27
+ "displayName": "Outcome"
28
+ }
29
+ ]
30
+ }
31
+ },
32
+ "nodes": {
33
+ "5e2a7c95-94af-4b23-8724-deb13853726a": {
34
+ "_id": "5e2a7c95-94af-4b23-8724-deb13853726a",
35
+ "_rev": "-1421046051",
36
+ "nodes": [
37
+ {
38
+ "_id": "9f1e8d94-4922-481b-9e14-212b66548900",
39
+ "nodeType": "AttributeCollectorNode",
40
+ "displayName": "Attribute Collector"
41
+ }
42
+ ],
43
+ "pageDescription": {
44
+ "en": "Enter your email address or <a href=\"#/service/Login\">Sign in</a>"
45
+ },
46
+ "pageHeader": {
47
+ "en": "Forgotten Username"
48
+ },
49
+ "_type": {
50
+ "_id": "PageNode",
51
+ "name": "Page Node",
52
+ "collection": true
53
+ },
54
+ "_outcomes": [
55
+ {
56
+ "id": "outcome",
57
+ "displayName": "Outcome"
58
+ }
59
+ ]
60
+ },
61
+ "b93ce36e-1976-4610-b24f-8d6760b5463b": {
62
+ "_id": "b93ce36e-1976-4610-b24f-8d6760b5463b",
63
+ "_rev": "1389809903",
64
+ "tree": "Login",
65
+ "_type": {
66
+ "_id": "InnerTreeEvaluatorNode",
67
+ "name": "Inner Tree Evaluator",
68
+ "collection": true
69
+ },
70
+ "_outcomes": [
71
+ {
72
+ "id": "true",
73
+ "displayName": "True"
74
+ },
75
+ {
76
+ "id": "false",
77
+ "displayName": "False"
78
+ }
79
+ ]
80
+ },
81
+ "bf9ea8d5-9802-4f26-9664-a21840faac23": {
82
+ "_id": "bf9ea8d5-9802-4f26-9664-a21840faac23",
83
+ "_rev": "-626658673",
84
+ "identityAttribute": "mail",
85
+ "identifier": "userName",
86
+ "_type": {
87
+ "_id": "IdentifyExistingUserNode",
88
+ "name": "Identify Existing User",
89
+ "collection": true
90
+ },
91
+ "_outcomes": [
92
+ {
93
+ "id": "true",
94
+ "displayName": "True"
95
+ },
96
+ {
97
+ "id": "false",
98
+ "displayName": "False"
99
+ }
100
+ ]
101
+ },
102
+ "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca": {
103
+ "_id": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca",
104
+ "_rev": "2035832000",
105
+ "emailSuspendMessage": {
106
+ "en": "An email has been sent to the address you entered. Click the link in that email to proceed."
107
+ },
108
+ "emailTemplateName": "forgottenUsername",
109
+ "identityAttribute": "mail",
110
+ "emailAttribute": "mail",
111
+ "objectLookup": true,
112
+ "_type": {
113
+ "_id": "EmailSuspendNode",
114
+ "name": "Email Suspend Node",
115
+ "collection": true
116
+ },
117
+ "_outcomes": [
118
+ {
119
+ "id": "outcome",
120
+ "displayName": "Outcome"
121
+ }
122
+ ]
123
+ }
124
+ },
125
+ "scripts": {},
126
+ "emailTemplates": {
127
+ "forgottenUsername": {
128
+ "_id": "emailTemplate/forgottenUsername",
129
+ "enabled": true,
130
+ "from": "",
131
+ "subject": {
132
+ "en": "Account Information - username",
133
+ "fr": "Informations sur le compte - nom d'utilisateur"
134
+ },
135
+ "message": {
136
+ "en": "<html><head></head><body style=\"background-color: #324054; color: #455469; padding: 60px; text-align: center;\"><div class=\"content\" style=\"background-color: #fff; border-radius: 4px; margin: 0 auto; padding: 48px; width: 235px;\"><p>{{#if object.userName}}Your username is '{{object.userName}}'.</p><p>{{else}}If you received this email in error, please disregard.{{/if}}</p><p><a href=\"{{object.resumeURI}}\" style=\"text-decoration: none; color: #109cf1;\">Click here to login</a></p></div></body></html>",
137
+ "fr": "<html><head></head><body style=\"background-color: #324054; color: #455469; padding: 60px; text-align: center;\"><div class=\"content\" style=\"background-color: #fff; border-radius: 4px; margin: 0 auto; padding: 48px; width: 235px;\">{{#if object.userName}}<p>Votre nom d'utilisateur est '{{object.userName}}'.</p>{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}<p><a href=\"{{object.resumeURI}}\" style=\"text-decoration: none; color: #109cf1;\">Cliquez ici pour vous connecter</a></p></div></body></html>"
138
+ },
139
+ "html": {
140
+ "en": "<html><body>{{#if object.userName}}<p>Your username is '{{object.userName}}'.</p>{{else}}If you received this email in error, please disregard.{{/if}}<p><a href=\"{{object.resumeURI}}\">Click here to login</a></p></body></html>",
141
+ "fr": "<html><body>{{#if object.userName}}<p>Votre nom d'utilisateur est '{{object.userName}}'.</p>{{else}}Si vous avez reçu cet e-mail par erreur, veuillez ne pas en tenir compte.{{/if}}<p><a href=\"{{object.resumeURI}}\">Cliquez ici pour vous connecter</a></p></body></html>"
142
+ },
143
+ "styles": "body{background-color:#324054;color:#5e6d82;padding:60px;text-align:center}a{text-decoration:none;color:#109cf1}.content{background-color:#fff;border-radius:4px;margin:0 auto;padding:48px;width:235px}",
144
+ "defaultLocale": "en",
145
+ "mimeType": "text/html"
146
+ }
147
+ },
148
+ "socialIdentityProviders": {},
149
+ "themes": [],
150
+ "saml2Entities": {},
151
+ "circlesOfTrust": {},
152
+ "tree": {
153
+ "_id": "ForgottenUsername",
154
+ "_rev": "-1762040244",
155
+ "identityResource": "managed/alpha_user",
156
+ "uiConfig": {
157
+ "categories": "[\"Username Reset\"]"
158
+ },
159
+ "entryNodeId": "5e2a7c95-94af-4b23-8724-deb13853726a",
160
+ "nodes": {
161
+ "5e2a7c95-94af-4b23-8724-deb13853726a": {
162
+ "connections": {
163
+ "outcome": "bf9ea8d5-9802-4f26-9664-a21840faac23"
164
+ },
165
+ "displayName": "Page Node",
166
+ "nodeType": "PageNode",
167
+ "x": 139,
168
+ "y": 146
169
+ },
170
+ "b93ce36e-1976-4610-b24f-8d6760b5463b": {
171
+ "connections": {
172
+ "false": "e301438c-0bd0-429c-ab0c-66126501069a",
173
+ "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0"
174
+ },
175
+ "displayName": "Inner Tree Evaluator",
176
+ "nodeType": "InnerTreeEvaluatorNode",
177
+ "x": 767,
178
+ "y": 188
179
+ },
180
+ "bf9ea8d5-9802-4f26-9664-a21840faac23": {
181
+ "connections": {
182
+ "false": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca",
183
+ "true": "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca"
184
+ },
185
+ "displayName": "Identify Existing User",
186
+ "nodeType": "IdentifyExistingUserNode",
187
+ "x": 324,
188
+ "y": 152
189
+ },
190
+ "d9a79f01-2ce3-4be2-a28a-975f35c3c8ca": {
191
+ "connections": {
192
+ "outcome": "b93ce36e-1976-4610-b24f-8d6760b5463b"
193
+ },
194
+ "displayName": "Email Suspend Node",
195
+ "nodeType": "EmailSuspendNode",
196
+ "x": 563,
197
+ "y": 193
198
+ }
199
+ },
200
+ "description": "Forgotten Username Tree",
201
+ "staticNodes": {
202
+ "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": {
203
+ "x": 970,
204
+ "y": 149
205
+ },
206
+ "e301438c-0bd0-429c-ab0c-66126501069a": {
207
+ "x": 982,
208
+ "y": 252
209
+ },
210
+ "startNode": {
211
+ "x": 50,
212
+ "y": 25
213
+ }
214
+ }
215
+ }
216
+ }
@@ -0,0 +1,205 @@
1
+ {
2
+ "meta": {
3
+ "origin": "https://openam-frodo-dev.forgeblocks.com/am",
4
+ "exportedBy": "volker.scheuber@forgerock.com",
5
+ "exportDate": "2022-06-20T17:54:11.826Z",
6
+ "exportTool": "frodo",
7
+ "exportToolVersion": "v0.6.1 [v18.2.0]"
8
+ },
9
+ "innerNodes": {
10
+ "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0": {
11
+ "_id": "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0",
12
+ "_rev": "-2064640544",
13
+ "usernameAttribute": "userName",
14
+ "validateInput": false,
15
+ "_type": {
16
+ "_id": "ValidatedUsernameNode",
17
+ "name": "Platform Username",
18
+ "collection": true
19
+ },
20
+ "_outcomes": [
21
+ {
22
+ "id": "outcome",
23
+ "displayName": "Outcome"
24
+ }
25
+ ]
26
+ },
27
+ "0c80c39b-4813-4e67-b4fb-5a0bba85f994": {
28
+ "_id": "0c80c39b-4813-4e67-b4fb-5a0bba85f994",
29
+ "_rev": "-1763423776",
30
+ "validateInput": false,
31
+ "passwordAttribute": "password",
32
+ "_type": {
33
+ "_id": "ValidatedPasswordNode",
34
+ "name": "Platform Password",
35
+ "collection": true
36
+ },
37
+ "_outcomes": [
38
+ {
39
+ "id": "outcome",
40
+ "displayName": "Outcome"
41
+ }
42
+ ]
43
+ }
44
+ },
45
+ "nodes": {
46
+ "2998c1c9-f4c8-4a00-b2c6-3426783ee49d": {
47
+ "_id": "2998c1c9-f4c8-4a00-b2c6-3426783ee49d",
48
+ "_rev": "-656534578",
49
+ "_type": {
50
+ "_id": "DataStoreDecisionNode",
51
+ "name": "Data Store Decision",
52
+ "collection": true
53
+ },
54
+ "_outcomes": [
55
+ {
56
+ "id": "true",
57
+ "displayName": "True"
58
+ },
59
+ {
60
+ "id": "false",
61
+ "displayName": "False"
62
+ }
63
+ ]
64
+ },
65
+ "33b24514-3e50-4180-8f08-ab6f4e51b07e": {
66
+ "_id": "33b24514-3e50-4180-8f08-ab6f4e51b07e",
67
+ "_rev": "-1405518667",
68
+ "tree": "ProgressiveProfile",
69
+ "_type": {
70
+ "_id": "InnerTreeEvaluatorNode",
71
+ "name": "Inner Tree Evaluator",
72
+ "collection": true
73
+ },
74
+ "_outcomes": [
75
+ {
76
+ "id": "true",
77
+ "displayName": "True"
78
+ },
79
+ {
80
+ "id": "false",
81
+ "displayName": "False"
82
+ }
83
+ ]
84
+ },
85
+ "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8": {
86
+ "_id": "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8",
87
+ "_rev": "-1594114",
88
+ "nodes": [
89
+ {
90
+ "_id": "7354982f-57b6-4b04-9ddc-f1dd1e1e07d0",
91
+ "nodeType": "ValidatedUsernameNode",
92
+ "displayName": "Platform Username"
93
+ },
94
+ {
95
+ "_id": "0c80c39b-4813-4e67-b4fb-5a0bba85f994",
96
+ "nodeType": "ValidatedPasswordNode",
97
+ "displayName": "Platform Password"
98
+ }
99
+ ],
100
+ "pageDescription": {
101
+ "en": "New here? <a href=\"#/service/Registration\">Create an account</a><br><a href=\"#/service/ForgottenUsername\">Forgot username?</a><a href=\"#/service/ResetPassword\"> Forgot password?</a>"
102
+ },
103
+ "pageHeader": {
104
+ "en": "Sign In"
105
+ },
106
+ "_type": {
107
+ "_id": "PageNode",
108
+ "name": "Page Node",
109
+ "collection": true
110
+ },
111
+ "_outcomes": [
112
+ {
113
+ "id": "outcome",
114
+ "displayName": "Outcome"
115
+ }
116
+ ]
117
+ },
118
+ "bba3e0d8-8525-4e82-bf48-ac17f7988917": {
119
+ "_id": "bba3e0d8-8525-4e82-bf48-ac17f7988917",
120
+ "_rev": "2098371942",
121
+ "identityAttribute": "userName",
122
+ "_type": {
123
+ "_id": "IncrementLoginCountNode",
124
+ "name": "Increment Login Count",
125
+ "collection": true
126
+ },
127
+ "_outcomes": [
128
+ {
129
+ "id": "outcome",
130
+ "displayName": "Outcome"
131
+ }
132
+ ]
133
+ }
134
+ },
135
+ "scripts": {},
136
+ "emailTemplates": {},
137
+ "socialIdentityProviders": {},
138
+ "themes": [],
139
+ "saml2Entities": {},
140
+ "circlesOfTrust": {},
141
+ "tree": {
142
+ "_id": "Login",
143
+ "_rev": "174084184",
144
+ "identityResource": "managed/alpha_user",
145
+ "uiConfig": {
146
+ "categories": "[\"Authentication\"]"
147
+ },
148
+ "entryNodeId": "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8",
149
+ "nodes": {
150
+ "2998c1c9-f4c8-4a00-b2c6-3426783ee49d": {
151
+ "connections": {
152
+ "false": "e301438c-0bd0-429c-ab0c-66126501069a",
153
+ "true": "bba3e0d8-8525-4e82-bf48-ac17f7988917"
154
+ },
155
+ "displayName": "Data Store Decision",
156
+ "nodeType": "DataStoreDecisionNode",
157
+ "x": 315,
158
+ "y": 140
159
+ },
160
+ "33b24514-3e50-4180-8f08-ab6f4e51b07e": {
161
+ "connections": {
162
+ "false": "e301438c-0bd0-429c-ab0c-66126501069a",
163
+ "true": "70e691a5-1e33-4ac3-a356-e7b6d60d92e0"
164
+ },
165
+ "displayName": "Inner Tree Evaluator",
166
+ "nodeType": "InnerTreeEvaluatorNode",
167
+ "x": 815,
168
+ "y": 180
169
+ },
170
+ "a12bc72f-ad97-4f1e-a789-a1fa3dd566c8": {
171
+ "connections": {
172
+ "outcome": "2998c1c9-f4c8-4a00-b2c6-3426783ee49d"
173
+ },
174
+ "displayName": "Page Node",
175
+ "nodeType": "PageNode",
176
+ "x": 136,
177
+ "y": 59
178
+ },
179
+ "bba3e0d8-8525-4e82-bf48-ac17f7988917": {
180
+ "connections": {
181
+ "outcome": "33b24514-3e50-4180-8f08-ab6f4e51b07e"
182
+ },
183
+ "displayName": "Increment Login Count",
184
+ "nodeType": "IncrementLoginCountNode",
185
+ "x": 564,
186
+ "y": 132
187
+ }
188
+ },
189
+ "description": "Platform Login Tree",
190
+ "staticNodes": {
191
+ "70e691a5-1e33-4ac3-a356-e7b6d60d92e0": {
192
+ "x": 1008,
193
+ "y": 186
194
+ },
195
+ "e301438c-0bd0-429c-ab0c-66126501069a": {
196
+ "x": 624,
197
+ "y": 267
198
+ },
199
+ "startNode": {
200
+ "x": 50,
201
+ "y": 25
202
+ }
203
+ }
204
+ }
205
+ }