@truedat/auth 8.7.0 → 8.7.2
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 +4 -4
- package/src/groups/api.js +1 -1
- package/src/groups/components/GroupForm.js +2 -2
- package/src/groups/components/GroupUsersTable.js +3 -3
- package/src/groups/components/GroupsSearchLoader.js +1 -1
- package/src/groups/components/__tests__/Group.spec.js +7 -7
- package/src/groups/components/__tests__/GroupForm.spec.js +11 -11
- package/src/groups/components/__tests__/GroupUsersTable.spec.js +1 -1
- package/src/groups/components/__tests__/GroupsSearchLoader.spec.js +1 -1
- package/src/groups/reducers/__tests__/groupRedirect.spec.js +5 -5
- package/src/groups/reducers/__tests__/groupUsers.spec.js +2 -2
- package/src/groups/reducers/__tests__/groupsSearch.spec.js +6 -6
- package/src/groups/sagas/__tests__/deleteGroup.spec.js +1 -1
- package/src/groups/sagas/__tests__/searchGroups.spec.js +2 -2
- package/src/groups/sagas/index.js +2 -2
- package/src/hooks/useUsers.js +1 -1
- package/src/messages/en.js +48 -26
- package/src/messages/es.js +72 -38
- package/src/messages/index.js +1 -1
- package/src/reducers/__tests__/authMessage.spec.js +2 -2
- package/src/roles/components/PermissionGroup.js +1 -1
- package/src/roles/components/Role.js +1 -1
- package/src/roles/components/RoleForm.js +1 -1
- package/src/roles/components/RoleSelector.js +1 -1
- package/src/roles/components/RolesLoader.js +1 -1
- package/src/roles/components/__tests__/RoleRoutes.spec.js +1 -1
- package/src/roles/reducers/__tests__/roles.spec.js +3 -3
- package/src/roles/sagas/__tests__/fetchRoles.spec.js +3 -5
- package/src/roles/sagas/index.js +2 -2
- package/src/sessions/components/Auth0Callback.js +1 -1
- package/src/sessions/components/__tests__/Auth0LoginButton.spec.js +3 -3
- package/src/sessions/components/__tests__/LoginButtons.spec.js +1 -1
- package/src/sessions/components/__tests__/NonceCallback.spec.js +2 -2
- package/src/sessions/components/__tests__/OpenIDConnect.spec.js +2 -2
- package/src/sessions/components/__tests__/PrivateRoute.spec.js +2 -2
- package/src/sessions/components/__tests__/UnauthorizedRoute.spec.js +1 -1
- package/src/sessions/reducers/__tests__/authMethods.spec.js +2 -2
- package/src/sessions/reducers/__tests__/authRedirect.spec.js +1 -1
- package/src/sessions/reducers/__tests__/authentication.spec.js +2 -2
- package/src/sessions/sagas/__tests__/login.spec.js +4 -4
- package/src/sessions/sagas/__tests__/refresh.spec.js +1 -1
- package/src/sessions/sagas/__tests__/token.spec.js +1 -1
- package/src/sessions/sagas/login.js +8 -8
- package/src/sessions/sagas/refresh.js +3 -3
- package/src/sessions/sagas/token.js +2 -2
- package/src/users/components/Password.js +4 -4
- package/src/users/components/UserActions.js +1 -1
- package/src/users/components/UserCards.js +1 -1
- package/src/users/components/UserRoutes.js +1 -1
- package/src/users/components/UserSelector.js +1 -1
- package/src/users/components/UsersSearchLoader.js +1 -1
- package/src/users/components/__tests__/GroupUserCrumbs.spec.js +7 -7
- package/src/users/components/__tests__/Password.spec.js +21 -17
- package/src/users/components/__tests__/UserCards.spec.js +1 -1
- package/src/users/components/__tests__/UserForm.spec.js +20 -16
- package/src/users/components/__tests__/UserGroupAclRow.spec.js +1 -1
- package/src/users/components/__tests__/UserGroupAcls.spec.js +2 -2
- package/src/users/components/__tests__/UserRoutes.spec.js +1 -1
- package/src/users/components/__tests__/UsersAndGroups.spec.js +3 -3
- package/src/users/reducers/__tests__/canInit.spec.js +2 -2
- package/src/users/reducers/__tests__/userRedirect.spec.js +2 -2
- package/src/users/reducers/__tests__/users.spec.js +3 -3
- package/src/users/reducers/__tests__/usersSearch.spec.js +4 -4
- package/src/users/sagas/__tests__/createUser.spec.js +3 -3
- package/src/users/sagas/__tests__/searchUsers.spec.js +2 -2
- package/src/users/sagas/__tests__/updateUser.spec.js +2 -2
- package/src/users/sagas/searchUsers.js +1 -1
- package/src/users/selectors/__tests__/filterUsers.spec.js +3 -3
- package/src/users/selectors/__tests__/getUserAcls.spec.js +6 -6
- package/src/users/selectors/filterUsers.js +2 -2
- package/src/users/selectors/getUserAcls.js +8 -3
- package/src/users/selectors/getUserGroupAcls.js +2 -2
package/src/messages/es.js
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* eslint-disable prettier/prettier */
|
|
2
1
|
export default {
|
|
3
2
|
"alert.auth0.failed.content": "{text}",
|
|
4
3
|
"alert.auth0.failed.header": "No autorizado",
|
|
@@ -9,7 +8,8 @@ export default {
|
|
|
9
8
|
"alert.updateUser.failed.header": "Error actualizando usuario",
|
|
10
9
|
"group.actions.addUser": "Añadir usuario",
|
|
11
10
|
"group.actions.addUserToGroup": "Añadir usuario a grupo",
|
|
12
|
-
"group.actions.delete.confirmation.content":
|
|
11
|
+
"group.actions.delete.confirmation.content":
|
|
12
|
+
"Se va a eliminar el grupo {name}. ¿Estás seguro?",
|
|
13
13
|
"group.actions.delete.confirmation.header": "Eliminar grupo",
|
|
14
14
|
"group.form.description.placeholder": "Description",
|
|
15
15
|
"group.form.name.placeholder": "Nombre del grupo",
|
|
@@ -20,7 +20,8 @@ export default {
|
|
|
20
20
|
"group.props.name": "Nombre",
|
|
21
21
|
"group.props.alias": "Alias",
|
|
22
22
|
"group.props.users": "Usuarios",
|
|
23
|
-
"groupUsers.actions.delete.confirmation.content":
|
|
23
|
+
"groupUsers.actions.delete.confirmation.content":
|
|
24
|
+
"Se va a eliminar al usuario seleccionado del grupo, ¿está seguro?",
|
|
24
25
|
"groupUsers.actions.delete.confirmation.header": "Eliminar usuario de grupo",
|
|
25
26
|
"groupUsers.search.results.empty": "No hay usuarios",
|
|
26
27
|
"groups.actions.create": "Nuevo grupo",
|
|
@@ -51,8 +52,10 @@ export default {
|
|
|
51
52
|
"navigation.members": "Miembros",
|
|
52
53
|
"navigation.members.roles": "Roles",
|
|
53
54
|
"navigation.members.users": "Usuarios",
|
|
54
|
-
"permission.allow_foreign_grant_request":
|
|
55
|
-
|
|
55
|
+
"permission.allow_foreign_grant_request":
|
|
56
|
+
"Permitir creación de petición de acceso ajena",
|
|
57
|
+
"permission.approve_grant_request":
|
|
58
|
+
"Aprobar petición de acceso a estructuras",
|
|
56
59
|
"permission.create_acl_entry": "Asignar rol a un usuario/grupo en el dominio",
|
|
57
60
|
"permission.create_business_concept": "Crear conceptos",
|
|
58
61
|
"permission.create_business_concept_link": "Crear enlaces para un concepto",
|
|
@@ -74,7 +77,8 @@ export default {
|
|
|
74
77
|
"permission.deprecate_ingest": "Archivar ingesta",
|
|
75
78
|
"permission.deprecate_structure_note": "Archivar nota",
|
|
76
79
|
"permission.edit_structure_note": "Editar nota",
|
|
77
|
-
"permission.execute_quality_rule_implementations":
|
|
80
|
+
"permission.execute_quality_rule_implementations":
|
|
81
|
+
"Ejecutar Implementaciones",
|
|
78
82
|
"permission.group.business_glossary_management": "Gestión del Glosario",
|
|
79
83
|
"permission.group.business_glossary_view": "Visualización del Glosario",
|
|
80
84
|
"permission.group.configurations": "Configuraciones",
|
|
@@ -83,91 +87,118 @@ export default {
|
|
|
83
87
|
"permission.group.data_dictionary_structure_notes": "Notas de Estructuras",
|
|
84
88
|
"permission.group.data_sources": "Orígenes",
|
|
85
89
|
"permission.group.grants": "Accesos a Estructuras",
|
|
86
|
-
"permission.group.grants_management"
|
|
90
|
+
"permission.group.grants_management": "Gestión de Accesos",
|
|
87
91
|
"permission.group.ingests": "Ingestas",
|
|
88
92
|
"permission.group.lineage": "Linaje",
|
|
89
93
|
"permission.group.quality": "Calidad",
|
|
90
|
-
"permission.group.quality_implementation_additional_actions":
|
|
91
|
-
|
|
94
|
+
"permission.group.quality_implementation_additional_actions":
|
|
95
|
+
"Acciones Adicionales de Implementaciones",
|
|
96
|
+
"permission.group.quality_implementation_workflow_management":
|
|
97
|
+
"Gestión del Workflow de Implementaciones",
|
|
92
98
|
"permission.group.quality_rules": "Gestión de Reglas de Calidad",
|
|
93
99
|
"permission.group.quality_view": "Visualización de Reglas de Calidad",
|
|
94
100
|
"permission.group.taxonomy": "Taxonomía",
|
|
95
101
|
"permission.group.taxonomy_membership": "Miembros de la Taxonomía",
|
|
96
102
|
"permission.group.undefined": "Permisos de la Aplicación",
|
|
97
|
-
"permission.link_data_structure":
|
|
103
|
+
"permission.link_data_structure":
|
|
104
|
+
"Vincular estructuras a reglas, conceptos, etc.",
|
|
98
105
|
"permission.link_data_structure_tag": "Vincular etiquetas a estructuras",
|
|
99
|
-
"permission.link_implementation_business_concept":
|
|
100
|
-
|
|
101
|
-
"permission.
|
|
102
|
-
|
|
106
|
+
"permission.link_implementation_business_concept":
|
|
107
|
+
"Vincular implementaciones a conceptos",
|
|
108
|
+
"permission.link_implementation_structure":
|
|
109
|
+
"Vincular implementaciones a estructuras",
|
|
110
|
+
"permission.link_structure_to_structure":
|
|
111
|
+
"Vincular estructuras a estructuras",
|
|
112
|
+
"permission.manage_basic_implementations":
|
|
113
|
+
"Gestionar implementaciones básicas",
|
|
103
114
|
"permission.manage_business_concept_links": "Vincular datos a conceptos",
|
|
104
|
-
"permission.manage_business_concepts_domain":
|
|
105
|
-
|
|
106
|
-
"permission.
|
|
115
|
+
"permission.manage_business_concepts_domain":
|
|
116
|
+
"Gestionar dominios de conceptos",
|
|
117
|
+
"permission.manage_confidential_business_concepts":
|
|
118
|
+
"Gestionar conceptos confidenciales",
|
|
119
|
+
"permission.manage_confidential_structures":
|
|
120
|
+
"Gestionar estructuras confidenciales",
|
|
107
121
|
"permission.manage_configurations": "Gestionar configuraciones",
|
|
108
122
|
"permission.manage_data_sources": "Gestionar orígenes",
|
|
109
|
-
"permission.manage_draft_implementation":
|
|
123
|
+
"permission.manage_draft_implementation":
|
|
124
|
+
"Gestionar borradores de Implementaciones",
|
|
110
125
|
"permission.manage_foreign_grant_removal": "Eliminar grant ajeno",
|
|
111
126
|
"permission.manage_grant_removal": "Eliminar grant",
|
|
112
127
|
"permission.manage_grants": "Gestionar accesos a estructuras",
|
|
113
128
|
"permission.manage_ingest_relations": "Vincular datos a ingestas",
|
|
114
129
|
"permission.manage_quality_rule": "Gestionar reglas de calidad",
|
|
115
|
-
"permission.manage_quality_rule_implementations":
|
|
116
|
-
|
|
130
|
+
"permission.manage_quality_rule_implementations":
|
|
131
|
+
"Gestionar implementaciones de formulario",
|
|
132
|
+
"permission.manage_raw_quality_rule_implementations":
|
|
133
|
+
"Gestionar implementaciones nativas",
|
|
117
134
|
"permission.manage_remediations": "Gestionar planes de remediación",
|
|
118
|
-
"permission.manage_rule_results":
|
|
119
|
-
|
|
135
|
+
"permission.manage_rule_results":
|
|
136
|
+
"Gestionar resultados de ejecución de calidad",
|
|
137
|
+
"permission.manage_ruleless_implementations":
|
|
138
|
+
"Gestionar implementaciones sin regla",
|
|
120
139
|
"permission.manage_segments": "Gestionar segmentos de implementaciones",
|
|
121
140
|
"permission.manage_structures_domain": "Gestionar dominio de las estructuras",
|
|
122
|
-
"permission.manage_structures_metadata":
|
|
141
|
+
"permission.manage_structures_metadata":
|
|
142
|
+
"Gestionar metadata de las estructuras",
|
|
123
143
|
"permission.profile_structures": "Ejecutar perfilado de estructuras",
|
|
124
144
|
"permission.publish_business_concept": "Aprobar conceptos",
|
|
125
145
|
"permission.publish_implementation": "Revisión de implementaciones",
|
|
126
146
|
"permission.publish_ingest": "Publicar ingesta",
|
|
127
147
|
"permission.publish_structure_note": "Publicar nota",
|
|
128
|
-
"permission.publish_structure_note_from_draft":
|
|
148
|
+
"permission.publish_structure_note_from_draft":
|
|
149
|
+
"Publicar nota desde borrador",
|
|
129
150
|
"permission.reject_business_concept": "Rechazar conceptos",
|
|
130
151
|
"permission.reject_ingest": "Rechazar ingesta",
|
|
131
152
|
"permission.reject_structure_note": "Rechazar nota",
|
|
132
153
|
"permission.request_grant_removal": "Solicitar revocación de acceso",
|
|
133
|
-
"permission.send_business_concept_for_approval":
|
|
154
|
+
"permission.send_business_concept_for_approval":
|
|
155
|
+
"Solicitar aprobación de conceptos",
|
|
134
156
|
"permission.send_ingest_for_approval": "Solicitar aprobación de ingestas",
|
|
135
157
|
"permission.send_structure_note_to_approval": "Enviar nota para aprobación",
|
|
136
158
|
"permission.share_with_domain": "Compartir concepto con dominio",
|
|
137
159
|
"permission.unreject_structure_note": "Quitar nota de rechazada",
|
|
138
|
-
"permission.update_acl_entry":
|
|
160
|
+
"permission.update_acl_entry":
|
|
161
|
+
"Modificar rol de un usuario/grupo en un dominio",
|
|
139
162
|
"permission.update_business_concept": "Editar conceptos de negocio",
|
|
140
163
|
"permission.update_data_structure": "Editar estructuras",
|
|
141
164
|
"permission.update_domain": "Modificar dominios",
|
|
142
165
|
"permission.update_ingest": "Actualizar ingesta",
|
|
143
|
-
"permission.view_approval_pending_business_concepts":
|
|
144
|
-
|
|
166
|
+
"permission.view_approval_pending_business_concepts":
|
|
167
|
+
"Ver conceptos de negocio pendientes de aprobación",
|
|
168
|
+
"permission.view_approval_pending_ingests":
|
|
169
|
+
"Ver ingesta pendiente de aprobación",
|
|
145
170
|
"permission.view_dashboard": "Ver dashboard",
|
|
146
171
|
"permission.view_data_structure": "Ver estructuras",
|
|
147
172
|
"permission.view_data_structures_profile": "Ver perfilado de estructuras",
|
|
148
|
-
"permission.view_deprecated_business_concepts":
|
|
173
|
+
"permission.view_deprecated_business_concepts":
|
|
174
|
+
"Ver conceptos de negocio archivados",
|
|
149
175
|
"permission.view_deprecated_ingests": "Ver ingestas archivadas",
|
|
150
176
|
"permission.view_domain": "Ver dominios",
|
|
151
|
-
"permission.view_draft_business_concepts":
|
|
177
|
+
"permission.view_draft_business_concepts":
|
|
178
|
+
"Ver conceptos de negocio en estado borrador",
|
|
152
179
|
"permission.view_draft_ingests": "Ver ingestas en estado borrador",
|
|
153
180
|
"permission.view_grants": "Ver accesos a estructuras",
|
|
154
181
|
"permission.view_lineage": "Ver Linaje",
|
|
155
182
|
"permission.view_protected_metadata": "Ver metadata protegida",
|
|
156
|
-
"permission.view_published_business_concepts":
|
|
183
|
+
"permission.view_published_business_concepts":
|
|
184
|
+
"Ver conceptos de negocio publicados",
|
|
157
185
|
"permission.view_published_ingests": "Ver ingestas publicadas",
|
|
158
186
|
"permission.view_quality_rule": "Ver Calidad",
|
|
159
|
-
"permission.view_rejected_business_concepts":
|
|
187
|
+
"permission.view_rejected_business_concepts":
|
|
188
|
+
"Ver conceptos de negocio en estado rechazado",
|
|
160
189
|
"permission.view_rejected_ingests": "Ver ingestas rechazadas",
|
|
161
190
|
"permission.view_structure_note": "Ver nota",
|
|
162
191
|
"permission.view_structure_note_history": "Ver historico de notas",
|
|
163
|
-
"permission.view_versioned_business_concepts":
|
|
192
|
+
"permission.view_versioned_business_concepts":
|
|
193
|
+
"Ver versiones anteriores de conceptos de negocio",
|
|
164
194
|
"permission.view_versioned_ingests": "Ver ingestas versionadas",
|
|
165
195
|
"role.name": "Nombre",
|
|
166
196
|
"role.name.placeholder": "Nombre del rol",
|
|
167
197
|
"role.new.role": "Rol nuevo",
|
|
168
198
|
"role.search.placeholder": "Buscar roles…",
|
|
169
199
|
"role.subheader": "Rol",
|
|
170
|
-
"roles.actions.delete.confirmation.content":
|
|
200
|
+
"roles.actions.delete.confirmation.content":
|
|
201
|
+
"Se va a eliminar el role {name}. ¿Estás seguro?",
|
|
171
202
|
"roles.actions.delete.confirmation.header": "Eliminar Role",
|
|
172
203
|
"roles.create": "Crear nuevo role",
|
|
173
204
|
"roles.default": "Predeterminado",
|
|
@@ -179,7 +210,8 @@ export default {
|
|
|
179
210
|
"user.acl.domain": "Dominio",
|
|
180
211
|
"user.acl.group": "Grupo",
|
|
181
212
|
"user.acl.role": "Rol",
|
|
182
|
-
"user.actions.delete.confirmation.content":
|
|
213
|
+
"user.actions.delete.confirmation.content":
|
|
214
|
+
"Se va a eliminar el usuario {name}. ¿Estás seguro?",
|
|
183
215
|
"user.actions.delete.confirmation.header": "Eliminar usuario",
|
|
184
216
|
"user.actions.edit_password": "Cambiar contraseña",
|
|
185
217
|
"user.form.check_something": "Existen errores en el formulario",
|
|
@@ -189,7 +221,8 @@ export default {
|
|
|
189
221
|
"user.form.groups": "Grupos",
|
|
190
222
|
"user.form.password": "Contraseña",
|
|
191
223
|
"user.form.password_confirmation": "Confirmar contraseña",
|
|
192
|
-
"user.form.password_confirmation.invalid":
|
|
224
|
+
"user.form.password_confirmation.invalid":
|
|
225
|
+
"El valor introducido no coincide con la contraseña",
|
|
193
226
|
"user.form.placeholder.email": "elena.leon@truedat.net",
|
|
194
227
|
"user.form.placeholder.external_id": "elena.leon",
|
|
195
228
|
"user.form.placeholder.full_name": "Elena León",
|
|
@@ -222,8 +255,9 @@ export default {
|
|
|
222
255
|
"userDomainsFilter.button": "Filtrar",
|
|
223
256
|
"userDomainsFilter.placeholder": "Dominios",
|
|
224
257
|
"users.actions.create": "Nuevo usuario",
|
|
225
|
-
"users.actions.create_admin_account":
|
|
258
|
+
"users.actions.create_admin_account":
|
|
259
|
+
"Configura una cuenta de administración",
|
|
226
260
|
"users.actions.edit": "Editar usuario",
|
|
227
261
|
"users.header": "Usuarios",
|
|
228
|
-
"users.subheader": "Gestión de usuarios y grupos"
|
|
262
|
+
"users.subheader": "Gestión de usuarios y grupos",
|
|
229
263
|
};
|
package/src/messages/index.js
CHANGED
|
@@ -37,7 +37,7 @@ describe("reducers: authMessage", () => {
|
|
|
37
37
|
|
|
38
38
|
it("should handle the updatePassword.FAILURE status ", () => {
|
|
39
39
|
expect(
|
|
40
|
-
authMessage(fooState, updatePassword.failure("Failed with xxx"))
|
|
40
|
+
authMessage(fooState, updatePassword.failure("Failed with xxx")),
|
|
41
41
|
).toEqual({
|
|
42
42
|
error: true,
|
|
43
43
|
header: "user.password.error.xxx.header",
|
|
@@ -48,7 +48,7 @@ describe("reducers: authMessage", () => {
|
|
|
48
48
|
|
|
49
49
|
it("should handle the updatePassword.SUCCESS with OK payload action", () => {
|
|
50
50
|
expect(
|
|
51
|
-
authMessage(fooState, updatePassword.success({ foo: "bar" }))
|
|
51
|
+
authMessage(fooState, updatePassword.success({ foo: "bar" })),
|
|
52
52
|
).toEqual({
|
|
53
53
|
error: false,
|
|
54
54
|
header: "user.password.change",
|
|
@@ -25,7 +25,7 @@ export const RoleForm = ({ role, isSubmitting, onSubmit }) => {
|
|
|
25
25
|
rules={{
|
|
26
26
|
required: formatMessage(
|
|
27
27
|
{ id: "form.validation.required" },
|
|
28
|
-
{ prop: formatMessage({ id: "group.props.name" }) }
|
|
28
|
+
{ prop: formatMessage({ id: "group.props.name" }) },
|
|
29
29
|
),
|
|
30
30
|
}}
|
|
31
31
|
render={({ field: { onBlur, onChange, value } }) => (
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { render, waitForLoad } from "@truedat/test/render";
|
|
3
|
-
import RoleRoutes from "../RoleRoutes";
|
|
4
3
|
import { useAuthorized } from "@truedat/core/hooks/useAuthorized";
|
|
5
4
|
import { absolutePath } from "@truedat/core/routesTree";
|
|
5
|
+
import RoleRoutes from "../RoleRoutes";
|
|
6
6
|
|
|
7
7
|
jest.mock("@truedat/core/hooks/useAuthorized", () => ({
|
|
8
8
|
useAuthorized: jest.fn(() => true),
|
|
@@ -31,14 +31,14 @@ describe("reducers: roles", () => {
|
|
|
31
31
|
it("should handle the SUCCESS action", () => {
|
|
32
32
|
const someRoles = [
|
|
33
33
|
{ id: 1, name: "Role 1", group: { id: 0, name: "Group" } },
|
|
34
|
-
{ id: 2, name: "Role 2", group: { id: 1, name: "Group 0" } }
|
|
34
|
+
{ id: 2, name: "Role 2", group: { id: 1, name: "Group 0" } },
|
|
35
35
|
];
|
|
36
36
|
|
|
37
37
|
expect(
|
|
38
38
|
roles(fooState, {
|
|
39
39
|
type: fetchRoles.SUCCESS,
|
|
40
|
-
payload: { data: someRoles }
|
|
41
|
-
})
|
|
40
|
+
payload: { data: someRoles },
|
|
41
|
+
}),
|
|
42
42
|
).toMatchObject(someRoles);
|
|
43
43
|
});
|
|
44
44
|
|
|
@@ -17,9 +17,7 @@ describe("sagas: fetchRolesRequestSaga", () => {
|
|
|
17
17
|
|
|
18
18
|
it("should throw exception if an unhandled action is received", () => {
|
|
19
19
|
expect(() => {
|
|
20
|
-
testSaga(fetchRolesRequestSaga)
|
|
21
|
-
.next()
|
|
22
|
-
.takeLatest("FOO", fetchRolesSaga);
|
|
20
|
+
testSaga(fetchRolesRequestSaga).next().takeLatest("FOO", fetchRolesSaga);
|
|
23
21
|
}).toThrow();
|
|
24
22
|
});
|
|
25
23
|
});
|
|
@@ -28,8 +26,8 @@ describe("sagas: fetchRolesSaga", () => {
|
|
|
28
26
|
const data = {
|
|
29
27
|
collection: [
|
|
30
28
|
{ id: 1, name: "Role 1", email: "user1@truedat.net" },
|
|
31
|
-
{ id: 2, name: "Role 2", email: "user2@truedat.net" }
|
|
32
|
-
]
|
|
29
|
+
{ id: 2, name: "Role 2", email: "user2@truedat.net" },
|
|
30
|
+
],
|
|
33
31
|
};
|
|
34
32
|
|
|
35
33
|
it("should put a success action when a response is returned", () => {
|
package/src/roles/sagas/index.js
CHANGED
|
@@ -15,7 +15,7 @@ export {
|
|
|
15
15
|
fetchRoleRequestSaga,
|
|
16
16
|
fetchRolePermissionsRequestSaga,
|
|
17
17
|
fetchRolesRequestSaga,
|
|
18
|
-
updateRolePermissionsRequestSaga
|
|
18
|
+
updateRolePermissionsRequestSaga,
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
export default [
|
|
@@ -26,5 +26,5 @@ export default [
|
|
|
26
26
|
fetchRoleRequestSaga(),
|
|
27
27
|
fetchRolePermissionsRequestSaga(),
|
|
28
28
|
fetchRolesRequestSaga(),
|
|
29
|
-
updateRolePermissionsRequestSaga()
|
|
29
|
+
updateRolePermissionsRequestSaga(),
|
|
30
30
|
];
|
|
@@ -19,7 +19,7 @@ describe("<Auth0LoginButton />", () => {
|
|
|
19
19
|
const rendered = render(<Auth0LoginButton {...props} />);
|
|
20
20
|
expect(rendered.container).toMatchSnapshot();
|
|
21
21
|
expect(
|
|
22
|
-
rendered.container.querySelector("i.sign-in.icon")
|
|
22
|
+
rendered.container.querySelector("i.sign-in.icon"),
|
|
23
23
|
).toBeInTheDocument();
|
|
24
24
|
});
|
|
25
25
|
|
|
@@ -27,7 +27,7 @@ describe("<Auth0LoginButton />", () => {
|
|
|
27
27
|
const props = { auth0_config, icon };
|
|
28
28
|
const rendered = render(<Auth0LoginButton {...props} />);
|
|
29
29
|
const button = rendered.container.querySelector(
|
|
30
|
-
"a.ui.button.yellow.fluid.td-icon-text-control"
|
|
30
|
+
"a.ui.button.yellow.fluid.td-icon-text-control",
|
|
31
31
|
);
|
|
32
32
|
const customIcon = rendered.container.querySelector("i.user.icon");
|
|
33
33
|
|
|
@@ -41,7 +41,7 @@ describe("<Auth0LoginButton />", () => {
|
|
|
41
41
|
const props = { auth0_config };
|
|
42
42
|
const rendered = render(<Auth0LoginButton {...props} />);
|
|
43
43
|
const button = rendered.container.querySelector(
|
|
44
|
-
"a.ui.button.yellow.fluid.td-icon-text-control"
|
|
44
|
+
"a.ui.button.yellow.fluid.td-icon-text-control",
|
|
45
45
|
);
|
|
46
46
|
const defaultIcon = rendered.container.querySelector("i.sign-in.icon");
|
|
47
47
|
|
|
@@ -8,7 +8,7 @@ describe("<LoginButtons />", () => {
|
|
|
8
8
|
};
|
|
9
9
|
const rendered = render(<LoginButtons authMethods={authMethods} />);
|
|
10
10
|
const button = rendered.container.querySelector(
|
|
11
|
-
"a.ui.button.ldap.td-icon-text-control"
|
|
11
|
+
"a.ui.button.ldap.td-icon-text-control",
|
|
12
12
|
);
|
|
13
13
|
const icon = button.querySelector("i.sign-in.icon");
|
|
14
14
|
|
|
@@ -37,7 +37,7 @@ describe("<NonceCallback />", () => {
|
|
|
37
37
|
|
|
38
38
|
expect(queryString.parse).toHaveBeenCalledWith("#token=test-token");
|
|
39
39
|
expect(mockDispatch).toHaveBeenCalledWith(
|
|
40
|
-
nonceLogin({ token: "test-token", auth_realm: "test-method" })
|
|
40
|
+
nonceLogin({ token: "test-token", auth_realm: "test-method" }),
|
|
41
41
|
);
|
|
42
42
|
});
|
|
43
43
|
|
|
@@ -66,7 +66,7 @@ describe("<NonceCallback />", () => {
|
|
|
66
66
|
await waitForLoad(rendered);
|
|
67
67
|
|
|
68
68
|
expect(
|
|
69
|
-
rendered.getByText(/navigate to \/redirect-path/i)
|
|
69
|
+
rendered.getByText(/navigate to \/redirect-path/i),
|
|
70
70
|
).toBeInTheDocument();
|
|
71
71
|
});
|
|
72
72
|
|
|
@@ -16,7 +16,7 @@ describe("<OpenIDConnect />", () => {
|
|
|
16
16
|
const renderOpts = { state };
|
|
17
17
|
const { getByText } = render(<OpenIDConnect />, renderOpts);
|
|
18
18
|
await waitFor(() =>
|
|
19
|
-
expect(getByText("Navigate to /landingUrl")).not.toBeNull()
|
|
19
|
+
expect(getByText("Navigate to /landingUrl")).not.toBeNull(),
|
|
20
20
|
);
|
|
21
21
|
});
|
|
22
22
|
|
|
@@ -25,7 +25,7 @@ describe("<OpenIDConnect />", () => {
|
|
|
25
25
|
const renderOpts = { state };
|
|
26
26
|
const { getByText } = render(<OpenIDConnect />, renderOpts);
|
|
27
27
|
await waitFor(() =>
|
|
28
|
-
expect(getByText("Navigate to /search")).not.toBeNull()
|
|
28
|
+
expect(getByText("Navigate to /search")).not.toBeNull(),
|
|
29
29
|
);
|
|
30
30
|
});
|
|
31
31
|
});
|
|
@@ -51,7 +51,7 @@ describe("<PrivateRoute />", () => {
|
|
|
51
51
|
await waitForLoad(rendered);
|
|
52
52
|
|
|
53
53
|
expect(
|
|
54
|
-
rendered.getByText(`Navigate to ${UNAUTHORIZED}`)
|
|
54
|
+
rendered.getByText(`Navigate to ${UNAUTHORIZED}`),
|
|
55
55
|
).toBeInTheDocument();
|
|
56
56
|
});
|
|
57
57
|
|
|
@@ -81,7 +81,7 @@ describe("<PrivateRoute />", () => {
|
|
|
81
81
|
},
|
|
82
82
|
},
|
|
83
83
|
dispatch: mockDispatch,
|
|
84
|
-
}
|
|
84
|
+
},
|
|
85
85
|
);
|
|
86
86
|
await waitForLoad(rendered);
|
|
87
87
|
|
|
@@ -33,7 +33,7 @@ describe("reducers: authentication", () => {
|
|
|
33
33
|
it("should handle the SUCCESS action", () => {
|
|
34
34
|
const payload = { token: "TOKEN", refresh_token: "REFRESH" };
|
|
35
35
|
expect(
|
|
36
|
-
authentication({ foo: "bar" }, login.success(payload))
|
|
36
|
+
authentication({ foo: "bar" }, login.success(payload)),
|
|
37
37
|
).toMatchObject({ token: "TOKEN" });
|
|
38
38
|
});
|
|
39
39
|
|
|
@@ -47,7 +47,7 @@ describe("reducers: authentication", () => {
|
|
|
47
47
|
|
|
48
48
|
it("should handle the retrieveToken.SUCCESS action", () => {
|
|
49
49
|
expect(
|
|
50
|
-
authentication({ foo: "bar" }, retrieveToken.success({ token: "token" }))
|
|
50
|
+
authentication({ foo: "bar" }, retrieveToken.success({ token: "token" })),
|
|
51
51
|
).toHaveProperty("token");
|
|
52
52
|
});
|
|
53
53
|
|
|
@@ -77,7 +77,7 @@ describe("sagas: post login", () => {
|
|
|
77
77
|
role,
|
|
78
78
|
token,
|
|
79
79
|
user_name: token_username,
|
|
80
|
-
})
|
|
80
|
+
}),
|
|
81
81
|
)
|
|
82
82
|
.next()
|
|
83
83
|
.put(login.fulfill())
|
|
@@ -154,7 +154,7 @@ describe("sagas: openIdLogin", () => {
|
|
|
154
154
|
role,
|
|
155
155
|
token,
|
|
156
156
|
user_name,
|
|
157
|
-
})
|
|
157
|
+
}),
|
|
158
158
|
)
|
|
159
159
|
.next()
|
|
160
160
|
.put(openIdLogin.fulfill())
|
|
@@ -187,7 +187,7 @@ describe("sagas: openIdLogin", () => {
|
|
|
187
187
|
apiJsonPost,
|
|
188
188
|
API_SESSIONS,
|
|
189
189
|
{ auth_realm, state },
|
|
190
|
-
authJsonOpts(id_token)
|
|
190
|
+
authJsonOpts(id_token),
|
|
191
191
|
)
|
|
192
192
|
.next({ data })
|
|
193
193
|
.call(saveToken, token)
|
|
@@ -210,7 +210,7 @@ describe("sagas: openIdLogin", () => {
|
|
|
210
210
|
role,
|
|
211
211
|
token,
|
|
212
212
|
user_name,
|
|
213
|
-
})
|
|
213
|
+
}),
|
|
214
214
|
)
|
|
215
215
|
.next()
|
|
216
216
|
.put(openIdLogin.fulfill())
|
|
@@ -25,7 +25,7 @@ export function* auth0LoginSaga({ payload }) {
|
|
|
25
25
|
yield call(saveToken, token);
|
|
26
26
|
const { amr, entitlements, exp, groups, role, user_name } = yield call(
|
|
27
27
|
jwtDecode,
|
|
28
|
-
token
|
|
28
|
+
token,
|
|
29
29
|
);
|
|
30
30
|
yield put(
|
|
31
31
|
auth0Login.success({
|
|
@@ -36,7 +36,7 @@ export function* auth0LoginSaga({ payload }) {
|
|
|
36
36
|
role,
|
|
37
37
|
user_name,
|
|
38
38
|
...data,
|
|
39
|
-
})
|
|
39
|
+
}),
|
|
40
40
|
);
|
|
41
41
|
} catch (error) {
|
|
42
42
|
yield put(auth0Login.failure(error.message));
|
|
@@ -60,7 +60,7 @@ export function* openIdLoginSaga({ payload }) {
|
|
|
60
60
|
yield call(saveToken, token);
|
|
61
61
|
const { amr, entitlements, exp, groups, role, user_name } = yield call(
|
|
62
62
|
jwtDecode,
|
|
63
|
-
token
|
|
63
|
+
token,
|
|
64
64
|
);
|
|
65
65
|
yield put(
|
|
66
66
|
openIdLogin.success({
|
|
@@ -71,7 +71,7 @@ export function* openIdLoginSaga({ payload }) {
|
|
|
71
71
|
role,
|
|
72
72
|
user_name,
|
|
73
73
|
...data,
|
|
74
|
-
})
|
|
74
|
+
}),
|
|
75
75
|
);
|
|
76
76
|
} catch (error) {
|
|
77
77
|
yield put(openIdLogin.failure(error.message));
|
|
@@ -91,7 +91,7 @@ export function* nonceLoginSaga({ payload }) {
|
|
|
91
91
|
yield call(saveToken, token);
|
|
92
92
|
const { amr, entitlements, exp, groups, role, user_name } = yield call(
|
|
93
93
|
jwtDecode,
|
|
94
|
-
token
|
|
94
|
+
token,
|
|
95
95
|
);
|
|
96
96
|
yield put(
|
|
97
97
|
nonceLogin.success({
|
|
@@ -102,7 +102,7 @@ export function* nonceLoginSaga({ payload }) {
|
|
|
102
102
|
role,
|
|
103
103
|
user_name,
|
|
104
104
|
...data,
|
|
105
|
-
})
|
|
105
|
+
}),
|
|
106
106
|
);
|
|
107
107
|
} catch (error) {
|
|
108
108
|
yield put(nonceLogin.failure(error.message));
|
|
@@ -125,7 +125,7 @@ export function* postLoginSaga({ payload }) {
|
|
|
125
125
|
yield call(saveToken, token);
|
|
126
126
|
const { amr, entitlements, exp, groups, role, user_name } = yield call(
|
|
127
127
|
jwtDecode,
|
|
128
|
-
token
|
|
128
|
+
token,
|
|
129
129
|
);
|
|
130
130
|
yield put(
|
|
131
131
|
login.success({
|
|
@@ -136,7 +136,7 @@ export function* postLoginSaga({ payload }) {
|
|
|
136
136
|
role,
|
|
137
137
|
user_name,
|
|
138
138
|
...data,
|
|
139
|
-
})
|
|
139
|
+
}),
|
|
140
140
|
);
|
|
141
141
|
} catch (error) {
|
|
142
142
|
const { data } = error.response;
|