@webiny/cognito 6.3.0 → 6.4.0-beta.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.
- package/Cognito.js +23 -24
- package/Cognito.js.map +1 -1
- package/admin/Cognito.js +35 -41
- package/admin/Cognito.js.map +1 -1
- package/admin/CognitoLogin.js +8 -13
- package/admin/CognitoLogin.js.map +1 -1
- package/admin/Extension.js +17 -16
- package/admin/Extension.js.map +1 -1
- package/admin/SecurityPermission.js +11 -14
- package/admin/SecurityPermission.js.map +1 -1
- package/admin/domain/permissionsSchema.js +14 -9
- package/admin/domain/permissionsSchema.js.map +1 -1
- package/admin/features/permissions/abstractions.js +2 -1
- package/admin/features/permissions/abstractions.js.map +1 -1
- package/admin/features/permissions/feature.js +2 -1
- package/admin/features/permissions/feature.js.map +1 -1
- package/admin/federatedIdentityProviders.js +7 -6
- package/admin/federatedIdentityProviders.js.map +1 -1
- package/admin/presentation/Cognito/CognitoLoginScreen.js +39 -42
- package/admin/presentation/Cognito/CognitoLoginScreen.js.map +1 -1
- package/admin/presentation/Cognito/CognitoPresenter.js +250 -275
- package/admin/presentation/Cognito/CognitoPresenter.js.map +1 -1
- package/admin/presentation/Cognito/abstractions.js +2 -1
- package/admin/presentation/Cognito/abstractions.js.map +1 -1
- package/admin/presentation/Cognito/components/Divider.js +12 -13
- package/admin/presentation/Cognito/components/Divider.js.map +1 -1
- package/admin/presentation/Cognito/components/FederatedLogin.js +24 -29
- package/admin/presentation/Cognito/components/FederatedLogin.js.map +1 -1
- package/admin/presentation/Cognito/components/FederatedProviders.js +7 -10
- package/admin/presentation/Cognito/components/FederatedProviders.js.map +1 -1
- package/admin/presentation/Cognito/components/FooterSignIn.js +9 -12
- package/admin/presentation/Cognito/components/FooterSignIn.js.map +1 -1
- package/admin/presentation/Cognito/components/PasswordResetCodeSent.js +33 -37
- package/admin/presentation/Cognito/components/PasswordResetCodeSent.js.map +1 -1
- package/admin/presentation/Cognito/components/RequestPasswordResetCode.js +35 -39
- package/admin/presentation/Cognito/components/RequestPasswordResetCode.js.map +1 -1
- package/admin/presentation/Cognito/components/RequireNewPassword.js +44 -48
- package/admin/presentation/Cognito/components/RequireNewPassword.js.map +1 -1
- package/admin/presentation/Cognito/components/SetNewPassword.js +70 -71
- package/admin/presentation/Cognito/components/SetNewPassword.js.map +1 -1
- package/admin/presentation/Cognito/components/SignIn.js +52 -59
- package/admin/presentation/Cognito/components/SignIn.js.map +1 -1
- package/admin/presentation/Cognito/components/View.js +41 -60
- package/admin/presentation/Cognito/components/View.js.map +1 -1
- package/admin/presentation/Cognito/feature.js +12 -11
- package/admin/presentation/Cognito/feature.js.map +1 -1
- package/admin/presentation/shared/createPasswordValidator.js +13 -24
- package/admin/presentation/shared/createPasswordValidator.js.map +1 -1
- package/admin/presentation/shared/usePasswordValidator.js +11 -10
- package/admin/presentation/shared/usePasswordValidator.js.map +1 -1
- package/admin/presentation/userMenu/AccountDetails.js +15 -18
- package/admin/presentation/userMenu/AccountDetails.js.map +1 -1
- package/admin/presentation/userMenu/useIsDefaultTenant.js +5 -11
- package/admin/presentation/userMenu/useIsDefaultTenant.js.map +1 -1
- package/admin/routes.js +16 -17
- package/admin/routes.js.map +1 -1
- package/admin/ui/UserItem.js +0 -3
- package/admin/ui/components/AvatarImage/AvatarImage.js +25 -37
- package/admin/ui/components/AvatarImage/AvatarImage.js.map +1 -1
- package/admin/ui/components/AvatarImage/AvatarImagePreview.js +49 -51
- package/admin/ui/components/AvatarImage/AvatarImagePreview.js.map +1 -1
- package/admin/ui/components/AvatarImage/AvatarImageTrigger.js +25 -26
- package/admin/ui/components/AvatarImage/AvatarImageTrigger.js.map +1 -1
- package/admin/ui/components/AvatarImage/index.js +0 -2
- package/admin/ui/views/Account/Account.js +117 -130
- package/admin/ui/views/Account/Account.js.map +1 -1
- package/admin/ui/views/Account/graphql.js +5 -4
- package/admin/ui/views/Account/graphql.js.map +1 -1
- package/admin/ui/views/Account/index.js +0 -2
- package/admin/ui/views/Users/UsersDataList.js +146 -159
- package/admin/ui/views/Users/UsersDataList.js.map +1 -1
- package/admin/ui/views/Users/UsersForm.js +151 -162
- package/admin/ui/views/Users/UsersForm.js.map +1 -1
- package/admin/ui/views/Users/UsersView.js +9 -9
- package/admin/ui/views/Users/UsersView.js.map +1 -1
- package/admin/ui/views/Users/components/DeleteAction.js +23 -30
- package/admin/ui/views/Users/components/DeleteAction.js.map +1 -1
- package/admin/ui/views/Users/graphql.js +9 -10
- package/admin/ui/views/Users/graphql.js.map +1 -1
- package/admin/ui/views/Users/hooks/useUserForm.js +104 -114
- package/admin/ui/views/Users/hooks/useUserForm.js.map +1 -1
- package/admin/ui/views/Users/search.js +21 -0
- package/admin/ui/views/Users/search.js.map +1 -0
- package/admin/ui/views/utils.js +9 -7
- package/admin/ui/views/utils.js.map +1 -1
- package/api/CognitoApiFeature.js +15 -17
- package/api/CognitoApiFeature.js.map +1 -1
- package/api/domain/Username.js +5 -4
- package/api/domain/Username.js.map +1 -1
- package/api/domain/errors.js +37 -56
- package/api/domain/errors.js.map +1 -1
- package/api/features/CognitoIdp/CognitoIdentityProvider.js +49 -51
- package/api/features/CognitoIdp/CognitoIdentityProvider.js.map +1 -1
- package/api/features/CognitoIdp/abstractions.js +2 -1
- package/api/features/CognitoIdp/abstractions.js.map +1 -1
- package/api/features/CognitoIdp/feature.js +6 -5
- package/api/features/CognitoIdp/feature.js.map +1 -1
- package/api/features/CognitoIdp/index.js +0 -2
- package/api/features/CognitoService/CognitoService.js +93 -83
- package/api/features/CognitoService/CognitoService.js.map +1 -1
- package/api/features/CognitoService/abstractions.js +3 -5
- package/api/features/CognitoService/abstractions.js.map +1 -1
- package/api/features/CognitoService/feature.js +7 -6
- package/api/features/CognitoService/feature.js.map +1 -1
- package/api/features/CognitoService/index.js +0 -2
- package/api/features/CreateUser/CreateUserUseCase.js +62 -88
- package/api/features/CreateUser/CreateUserUseCase.js.map +1 -1
- package/api/features/CreateUser/abstractions.js +2 -1
- package/api/features/CreateUser/abstractions.js.map +1 -1
- package/api/features/CreateUser/feature.js +6 -5
- package/api/features/CreateUser/feature.js.map +1 -1
- package/api/features/CreateUser/index.js +0 -2
- package/api/features/CreateUser/schema.js +14 -13
- package/api/features/CreateUser/schema.js.map +1 -1
- package/api/features/DeleteUser/DeleteUserUseCase.js +34 -41
- package/api/features/DeleteUser/DeleteUserUseCase.js.map +1 -1
- package/api/features/DeleteUser/abstractions.js +2 -1
- package/api/features/DeleteUser/abstractions.js.map +1 -1
- package/api/features/DeleteUser/feature.js +6 -5
- package/api/features/DeleteUser/feature.js.map +1 -1
- package/api/features/DeleteUser/index.js +0 -2
- package/api/features/UpdateUser/UpdateUserUseCase.js +49 -71
- package/api/features/UpdateUser/UpdateUserUseCase.js.map +1 -1
- package/api/features/UpdateUser/abstractions.js +2 -1
- package/api/features/UpdateUser/abstractions.js.map +1 -1
- package/api/features/UpdateUser/feature.js +6 -5
- package/api/features/UpdateUser/feature.js.map +1 -1
- package/api/features/UpdateUser/index.js +0 -2
- package/api/features/UpdateUser/schema.js +13 -12
- package/api/features/UpdateUser/schema.js.map +1 -1
- package/api/features/UserInstaller/UserInstaller.js +36 -36
- package/api/features/UserInstaller/UserInstaller.js.map +1 -1
- package/api/features/UserInstaller/feature.js +6 -5
- package/api/features/UserInstaller/feature.js.map +1 -1
- package/api/graphql/user.gql.js +83 -107
- package/api/graphql/user.gql.js.map +1 -1
- package/index.js +0 -2
- package/package.json +22 -23
- package/static/svg/search.43fa797c.svg +20 -0
- package/admin/ui/UserItem.js.map +0 -1
- package/admin/ui/components/AvatarImage/index.js.map +0 -1
- package/admin/ui/views/Account/index.js.map +0 -1
- package/api/features/CognitoIdp/index.js.map +0 -1
- package/api/features/CognitoService/index.js.map +0 -1
- package/api/features/CreateUser/index.js.map +0 -1
- package/api/features/DeleteUser/index.js.map +0 -1
- package/api/features/UpdateUser/index.js.map +0 -1
- package/index.js.map +0 -1
|
@@ -1,142 +1,129 @@
|
|
|
1
|
-
import
|
|
1
|
+
import react, { useState } from "react";
|
|
2
2
|
import omit from "lodash/omit.js";
|
|
3
|
-
import {
|
|
3
|
+
import { useMutation, useQuery } from "@apollo/react-hooks";
|
|
4
4
|
import { i18n } from "@webiny/app/i18n/index.js";
|
|
5
5
|
import { Form } from "@webiny/form";
|
|
6
6
|
import { validation } from "@webiny/validation";
|
|
7
7
|
import { AvatarImage } from "../../components/AvatarImage/index.js";
|
|
8
8
|
import { GET_CURRENT_USER, UPDATE_CURRENT_USER } from "./graphql.js";
|
|
9
|
-
import { config
|
|
10
|
-
import { SimpleForm,
|
|
11
|
-
import { CenteredView } from "@webiny/app-admin";
|
|
9
|
+
import { config } from "@webiny/app/config.js";
|
|
10
|
+
import { CenteredView, SimpleForm, SimpleFormContent, SimpleFormFooter, SimpleFormHeader, useIdentity } from "@webiny/app-admin";
|
|
12
11
|
import { usePasswordValidator } from "../../../presentation/shared/usePasswordValidator.js";
|
|
13
12
|
import { Alert, Button, Grid, Input, OverlayLoader, useToast } from "@webiny/admin-ui";
|
|
14
13
|
const t = i18n.ns("app-security-admin-users/account-form");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
autoComplete: "off",
|
|
128
|
-
disabled: data.external,
|
|
129
|
-
description: data.id && "Type a new password to reset it.",
|
|
130
|
-
type: "password",
|
|
131
|
-
label: "Password",
|
|
132
|
-
"data-testid": "account.password"
|
|
133
|
-
}))))), /*#__PURE__*/React.createElement(SimpleFormFooter, {
|
|
134
|
-
"data-testid": "form-footer"
|
|
135
|
-
}, /*#__PURE__*/React.createElement(Button, {
|
|
136
|
-
disabled: isExternal,
|
|
137
|
-
"data-testid": "account.updatebutton",
|
|
138
|
-
onClick: form.submit
|
|
139
|
-
}, t`Update account`)))));
|
|
14
|
+
const UserAccountForm = ()=>{
|
|
15
|
+
const [isSaving, setSaving] = useState(false);
|
|
16
|
+
const toast = useToast();
|
|
17
|
+
const { identity } = useIdentity();
|
|
18
|
+
const passwordValidator = usePasswordValidator();
|
|
19
|
+
const currentUser = useQuery(GET_CURRENT_USER);
|
|
20
|
+
const [updateUser] = useMutation(UPDATE_CURRENT_USER);
|
|
21
|
+
const user = currentUser.loading ? {} : currentUser.data.adminUsers.user.data;
|
|
22
|
+
const isFormLoading = isSaving || currentUser.loading;
|
|
23
|
+
const loaderMessage = isSaving ? "Saving account..." : "Loading account...";
|
|
24
|
+
const emailIsDisabled = config.getKey("ADMIN_USER_CAN_CHANGE_EMAIL", "false" === process.env.REACT_APP_ADMIN_USER_CAN_CHANGE_EMAIL);
|
|
25
|
+
const isExternal = user?.external === true;
|
|
26
|
+
const onSubmit = async (formData)=>{
|
|
27
|
+
setSaving(true);
|
|
28
|
+
const { data: response } = await updateUser({
|
|
29
|
+
variables: {
|
|
30
|
+
data: omit(formData, [
|
|
31
|
+
"id",
|
|
32
|
+
"external"
|
|
33
|
+
])
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
const { error } = response.adminUsers.updateCurrentUser;
|
|
37
|
+
setSaving(false);
|
|
38
|
+
if (error) return void toast.showWarningToast({
|
|
39
|
+
title: "Error updating user account",
|
|
40
|
+
description: error.message,
|
|
41
|
+
duration: 1 / 0
|
|
42
|
+
});
|
|
43
|
+
identity.update({
|
|
44
|
+
displayName: `${formData.firstName} ${formData.lastName}`,
|
|
45
|
+
profile: {
|
|
46
|
+
...identity.profile || {},
|
|
47
|
+
firstName: formData.firstName,
|
|
48
|
+
lastName: formData.lastName,
|
|
49
|
+
avatar: formData.avatar
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
toast.showSuccessToast({
|
|
53
|
+
title: "Account updated successfully!"
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
return /*#__PURE__*/ react.createElement(CenteredView, {
|
|
57
|
+
maxWidth: 600
|
|
58
|
+
}, /*#__PURE__*/ react.createElement(Form, {
|
|
59
|
+
data: user,
|
|
60
|
+
onSubmit: onSubmit
|
|
61
|
+
}, ({ data, form, Bind })=>/*#__PURE__*/ react.createElement(SimpleForm, null, isFormLoading && /*#__PURE__*/ react.createElement(OverlayLoader, {
|
|
62
|
+
text: loaderMessage
|
|
63
|
+
}), /*#__PURE__*/ react.createElement(SimpleFormHeader, {
|
|
64
|
+
title: "Account"
|
|
65
|
+
}), /*#__PURE__*/ react.createElement(SimpleFormContent, null, isExternal && /*#__PURE__*/ react.createElement(Grid, null, /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
66
|
+
span: 12
|
|
67
|
+
}, /*#__PURE__*/ react.createElement(Alert, {
|
|
68
|
+
type: "info",
|
|
69
|
+
title: "External User"
|
|
70
|
+
}, "This user is an external user and cannot be edited."))), /*#__PURE__*/ react.createElement(Grid, null, /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
71
|
+
span: 12,
|
|
72
|
+
"data-testid": "avatar"
|
|
73
|
+
}, /*#__PURE__*/ react.createElement(Bind, {
|
|
74
|
+
name: "avatar"
|
|
75
|
+
}, /*#__PURE__*/ react.createElement(AvatarImage, {
|
|
76
|
+
round: true,
|
|
77
|
+
disabled: isExternal
|
|
78
|
+
}))), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
79
|
+
span: 12
|
|
80
|
+
}, /*#__PURE__*/ react.createElement(Bind, {
|
|
81
|
+
name: "firstName",
|
|
82
|
+
validators: validation.create("required")
|
|
83
|
+
}, /*#__PURE__*/ react.createElement(Input, {
|
|
84
|
+
label: t`First Name`,
|
|
85
|
+
disabled: isExternal,
|
|
86
|
+
"data-testid": "account.firstname"
|
|
87
|
+
}))), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
88
|
+
span: 12
|
|
89
|
+
}, " ", /*#__PURE__*/ react.createElement(Bind, {
|
|
90
|
+
name: "lastName",
|
|
91
|
+
validators: validation.create("required")
|
|
92
|
+
}, /*#__PURE__*/ react.createElement(Input, {
|
|
93
|
+
label: t`Last Name`,
|
|
94
|
+
disabled: isExternal,
|
|
95
|
+
"data-testid": "account.lastname"
|
|
96
|
+
}))), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
97
|
+
span: 12
|
|
98
|
+
}, /*#__PURE__*/ react.createElement(Bind, {
|
|
99
|
+
name: "email",
|
|
100
|
+
validators: validation.create("required,email")
|
|
101
|
+
}, /*#__PURE__*/ react.createElement(Input, {
|
|
102
|
+
value: data.email,
|
|
103
|
+
label: t`Email`,
|
|
104
|
+
disabled: emailIsDisabled || isExternal,
|
|
105
|
+
"data-testid": "account.email",
|
|
106
|
+
description: "Email is your unique identifier used to login!"
|
|
107
|
+
}))), /*#__PURE__*/ react.createElement(Grid.Column, {
|
|
108
|
+
span: 12
|
|
109
|
+
}, /*#__PURE__*/ react.createElement(Bind, {
|
|
110
|
+
name: "password",
|
|
111
|
+
validators: passwordValidator
|
|
112
|
+
}, /*#__PURE__*/ react.createElement(Input, {
|
|
113
|
+
autoComplete: "off",
|
|
114
|
+
disabled: data.external,
|
|
115
|
+
description: data.id && "Type a new password to reset it.",
|
|
116
|
+
type: "password",
|
|
117
|
+
label: "Password",
|
|
118
|
+
"data-testid": "account.password"
|
|
119
|
+
}))))), /*#__PURE__*/ react.createElement(SimpleFormFooter, {
|
|
120
|
+
"data-testid": "form-footer"
|
|
121
|
+
}, /*#__PURE__*/ react.createElement(Button, {
|
|
122
|
+
disabled: isExternal,
|
|
123
|
+
"data-testid": "account.updatebutton",
|
|
124
|
+
onClick: form.submit
|
|
125
|
+
}, t`Update account`)))));
|
|
140
126
|
};
|
|
127
|
+
export { UserAccountForm };
|
|
141
128
|
|
|
142
129
|
//# sourceMappingURL=Account.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","omit","useQuery","useMutation","i18n","Form","validation","AvatarImage","GET_CURRENT_USER","UPDATE_CURRENT_USER","config","appConfig","SimpleForm","SimpleFormHeader","SimpleFormFooter","SimpleFormContent","useIdentity","CenteredView","usePasswordValidator","Alert","Button","Grid","Input","OverlayLoader","useToast","t","ns","UserAccountForm","isSaving","setSaving","toast","identity","passwordValidator","currentUser","updateUser","user","loading","data","adminUsers","isFormLoading","loaderMessage","emailIsDisabled","getKey","process","env","REACT_APP_ADMIN_USER_CAN_CHANGE_EMAIL","isExternal","external","onSubmit","formData","response","variables","error","updateCurrentUser","showWarningToast","title","description","message","duration","Infinity","update","displayName","firstName","lastName","profile","avatar","showSuccessToast","createElement","maxWidth","form","Bind","text","Column","span","type","name","round","disabled","validators","create","label","value","email","autoComplete","id","onClick","submit"],"sources":["Account.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport omit from \"lodash/omit.js\";\nimport { useQuery, useMutation } from \"@apollo/react-hooks\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { Form } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { AvatarImage } from \"../../components/AvatarImage/index.js\";\nimport { GET_CURRENT_USER, UPDATE_CURRENT_USER } from \"./graphql.js\";\nimport { config as appConfig } from \"@webiny/app/config.js\";\n\nimport {\n SimpleForm,\n SimpleFormHeader,\n SimpleFormFooter,\n SimpleFormContent,\n useIdentity\n} from \"@webiny/app-admin\";\nimport { CenteredView } from \"@webiny/app-admin\";\nimport { usePasswordValidator } from \"~/admin/presentation/shared/usePasswordValidator.js\";\nimport { Alert, Button, Grid, Input, OverlayLoader, useToast } from \"@webiny/admin-ui\";\n\nconst t = i18n.ns(\"app-security-admin-users/account-form\");\n\ninterface UserAccountFormData {\n id?: boolean;\n firstName: string;\n lastName: string;\n email: string;\n password?: string;\n external?: boolean;\n avatar: {\n src?: string;\n };\n}\n\nexport const UserAccountForm = () => {\n const [isSaving, setSaving] = useState(false);\n const toast = useToast();\n const { identity } = useIdentity();\n const passwordValidator = usePasswordValidator();\n const currentUser = useQuery(GET_CURRENT_USER);\n const [updateUser] = useMutation(UPDATE_CURRENT_USER);\n\n const user = currentUser.loading ? {} : currentUser.data.adminUsers.user.data;\n\n const isFormLoading = isSaving || currentUser.loading;\n const loaderMessage = isSaving ? \"Saving account...\" : \"Loading account...\";\n\n const emailIsDisabled = appConfig.getKey(\n \"ADMIN_USER_CAN_CHANGE_EMAIL\",\n process.env.REACT_APP_ADMIN_USER_CAN_CHANGE_EMAIL === \"false\"\n );\n\n const isExternal = user?.external === true;\n\n const onSubmit = async (formData: UserAccountFormData) => {\n setSaving(true);\n const { data: response } = await updateUser({\n variables: { data: omit(formData, [\"id\", \"external\"]) }\n });\n\n const { error } = response.adminUsers.updateCurrentUser;\n setSaving(false);\n\n if (error) {\n toast.showWarningToast({\n title: \"Error updating user account\",\n description: error.message,\n duration: Infinity\n });\n return;\n }\n\n // TODO: set new roles/teams into the identity context\n\n identity.update({\n displayName: `${formData.firstName} ${formData.lastName}`,\n profile: {\n ...(identity.profile || {}),\n firstName: formData.firstName,\n lastName: formData.lastName,\n avatar: formData.avatar\n }\n });\n\n toast.showSuccessToast({ title: \"Account updated successfully!\" });\n };\n\n return (\n <CenteredView maxWidth={600}>\n <Form<UserAccountFormData> data={user} onSubmit={onSubmit}>\n {({ data, form, Bind }) => (\n <SimpleForm>\n {isFormLoading && <OverlayLoader text={loaderMessage} />}\n <SimpleFormHeader title={\"Account\"} />\n <SimpleFormContent>\n {isExternal && (\n <Grid>\n <Grid.Column span={12}>\n <Alert type={\"info\"} title={\"External User\"}>\n This user is an external user and cannot be edited.\n </Alert>\n </Grid.Column>\n </Grid>\n )}\n <Grid>\n <Grid.Column span={12} data-testid={\"avatar\"}>\n <Bind name=\"avatar\">\n <AvatarImage round disabled={isExternal} />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind\n name=\"firstName\"\n validators={validation.create(\"required\")}\n >\n <Input\n label={t`First Name`}\n disabled={isExternal}\n data-testid=\"account.firstname\"\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n {\" \"}\n <Bind\n name=\"lastName\"\n validators={validation.create(\"required\")}\n >\n <Input\n label={t`Last Name`}\n disabled={isExternal}\n data-testid=\"account.lastname\"\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind\n name=\"email\"\n validators={validation.create(\"required,email\")}\n >\n <Input\n value={data.email}\n label={t`Email`}\n disabled={emailIsDisabled || isExternal}\n data-testid=\"account.email\"\n description={\n \"Email is your unique identifier used to login!\"\n }\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind name=\"password\" validators={passwordValidator}>\n <Input\n autoComplete=\"off\"\n disabled={data.external}\n description={\n data.id && \"Type a new password to reset it.\"\n }\n type=\"password\"\n label={\"Password\"}\n data-testid=\"account.password\"\n />\n </Bind>\n </Grid.Column>\n </Grid>\n </SimpleFormContent>\n <SimpleFormFooter data-testid={\"form-footer\"}>\n <Button\n disabled={isExternal}\n data-testid=\"account.updatebutton\"\n onClick={form.submit}\n >{t`Update account`}</Button>\n </SimpleFormFooter>\n </SimpleForm>\n )}\n </Form>\n </CenteredView>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"admin/ui/views/Account/Account.js","sources":["../../../../../src/admin/ui/views/Account/Account.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport omit from \"lodash/omit.js\";\nimport { useQuery, useMutation } from \"@apollo/react-hooks\";\nimport { i18n } from \"@webiny/app/i18n/index.js\";\nimport { Form } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { AvatarImage } from \"../../components/AvatarImage/index.js\";\nimport { GET_CURRENT_USER, UPDATE_CURRENT_USER } from \"./graphql.js\";\nimport { config as appConfig } from \"@webiny/app/config.js\";\n\nimport {\n SimpleForm,\n SimpleFormHeader,\n SimpleFormFooter,\n SimpleFormContent,\n useIdentity\n} from \"@webiny/app-admin\";\nimport { CenteredView } from \"@webiny/app-admin\";\nimport { usePasswordValidator } from \"~/admin/presentation/shared/usePasswordValidator.js\";\nimport { Alert, Button, Grid, Input, OverlayLoader, useToast } from \"@webiny/admin-ui\";\n\nconst t = i18n.ns(\"app-security-admin-users/account-form\");\n\ninterface UserAccountFormData {\n id?: boolean;\n firstName: string;\n lastName: string;\n email: string;\n password?: string;\n external?: boolean;\n avatar: {\n src?: string;\n };\n}\n\nexport const UserAccountForm = () => {\n const [isSaving, setSaving] = useState(false);\n const toast = useToast();\n const { identity } = useIdentity();\n const passwordValidator = usePasswordValidator();\n const currentUser = useQuery(GET_CURRENT_USER);\n const [updateUser] = useMutation(UPDATE_CURRENT_USER);\n\n const user = currentUser.loading ? {} : currentUser.data.adminUsers.user.data;\n\n const isFormLoading = isSaving || currentUser.loading;\n const loaderMessage = isSaving ? \"Saving account...\" : \"Loading account...\";\n\n const emailIsDisabled = appConfig.getKey(\n \"ADMIN_USER_CAN_CHANGE_EMAIL\",\n process.env.REACT_APP_ADMIN_USER_CAN_CHANGE_EMAIL === \"false\"\n );\n\n const isExternal = user?.external === true;\n\n const onSubmit = async (formData: UserAccountFormData) => {\n setSaving(true);\n const { data: response } = await updateUser({\n variables: { data: omit(formData, [\"id\", \"external\"]) }\n });\n\n const { error } = response.adminUsers.updateCurrentUser;\n setSaving(false);\n\n if (error) {\n toast.showWarningToast({\n title: \"Error updating user account\",\n description: error.message,\n duration: Infinity\n });\n return;\n }\n\n // TODO: set new roles/teams into the identity context\n\n identity.update({\n displayName: `${formData.firstName} ${formData.lastName}`,\n profile: {\n ...(identity.profile || {}),\n firstName: formData.firstName,\n lastName: formData.lastName,\n avatar: formData.avatar\n }\n });\n\n toast.showSuccessToast({ title: \"Account updated successfully!\" });\n };\n\n return (\n <CenteredView maxWidth={600}>\n <Form<UserAccountFormData> data={user} onSubmit={onSubmit}>\n {({ data, form, Bind }) => (\n <SimpleForm>\n {isFormLoading && <OverlayLoader text={loaderMessage} />}\n <SimpleFormHeader title={\"Account\"} />\n <SimpleFormContent>\n {isExternal && (\n <Grid>\n <Grid.Column span={12}>\n <Alert type={\"info\"} title={\"External User\"}>\n This user is an external user and cannot be edited.\n </Alert>\n </Grid.Column>\n </Grid>\n )}\n <Grid>\n <Grid.Column span={12} data-testid={\"avatar\"}>\n <Bind name=\"avatar\">\n <AvatarImage round disabled={isExternal} />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind\n name=\"firstName\"\n validators={validation.create(\"required\")}\n >\n <Input\n label={t`First Name`}\n disabled={isExternal}\n data-testid=\"account.firstname\"\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n {\" \"}\n <Bind\n name=\"lastName\"\n validators={validation.create(\"required\")}\n >\n <Input\n label={t`Last Name`}\n disabled={isExternal}\n data-testid=\"account.lastname\"\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind\n name=\"email\"\n validators={validation.create(\"required,email\")}\n >\n <Input\n value={data.email}\n label={t`Email`}\n disabled={emailIsDisabled || isExternal}\n data-testid=\"account.email\"\n description={\n \"Email is your unique identifier used to login!\"\n }\n />\n </Bind>\n </Grid.Column>\n <Grid.Column span={12}>\n <Bind name=\"password\" validators={passwordValidator}>\n <Input\n autoComplete=\"off\"\n disabled={data.external}\n description={\n data.id && \"Type a new password to reset it.\"\n }\n type=\"password\"\n label={\"Password\"}\n data-testid=\"account.password\"\n />\n </Bind>\n </Grid.Column>\n </Grid>\n </SimpleFormContent>\n <SimpleFormFooter data-testid={\"form-footer\"}>\n <Button\n disabled={isExternal}\n data-testid=\"account.updatebutton\"\n onClick={form.submit}\n >{t`Update account`}</Button>\n </SimpleFormFooter>\n </SimpleForm>\n )}\n </Form>\n </CenteredView>\n );\n};\n"],"names":["t","i18n","UserAccountForm","isSaving","setSaving","useState","toast","useToast","identity","useIdentity","passwordValidator","usePasswordValidator","currentUser","useQuery","GET_CURRENT_USER","updateUser","useMutation","UPDATE_CURRENT_USER","user","isFormLoading","loaderMessage","emailIsDisabled","appConfig","process","isExternal","onSubmit","formData","response","omit","error","Infinity","CenteredView","Form","data","form","Bind","SimpleForm","OverlayLoader","SimpleFormHeader","SimpleFormContent","Grid","Alert","AvatarImage","validation","Input","SimpleFormFooter","Button"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
const currentUserFields =
|
|
1
|
+
import graphql_tag from "graphql-tag";
|
|
2
|
+
const currentUserFields = `
|
|
3
3
|
{
|
|
4
4
|
id
|
|
5
5
|
email
|
|
@@ -9,7 +9,7 @@ const currentUserFields = /* GraphQL */`
|
|
|
9
9
|
external
|
|
10
10
|
}
|
|
11
11
|
`;
|
|
12
|
-
|
|
12
|
+
const GET_CURRENT_USER = graphql_tag`
|
|
13
13
|
query GetCurrentUser {
|
|
14
14
|
adminUsers {
|
|
15
15
|
user: getCurrentUser {
|
|
@@ -22,7 +22,7 @@ export const GET_CURRENT_USER = gql`
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
`;
|
|
25
|
-
|
|
25
|
+
const UPDATE_CURRENT_USER = graphql_tag`
|
|
26
26
|
mutation UpdateCurrentUser($data: AdminUsersCurrentUserInput!) {
|
|
27
27
|
adminUsers {
|
|
28
28
|
updateCurrentUser(data: $data) {
|
|
@@ -36,5 +36,6 @@ export const UPDATE_CURRENT_USER = gql`
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
`;
|
|
39
|
+
export { GET_CURRENT_USER, UPDATE_CURRENT_USER };
|
|
39
40
|
|
|
40
41
|
//# sourceMappingURL=graphql.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"admin/ui/views/Account/graphql.js","sources":["../../../../../src/admin/ui/views/Account/graphql.ts"],"sourcesContent":["import gql from \"graphql-tag\";\n\nconst currentUserFields = /* GraphQL */ `\n {\n id\n email\n firstName\n lastName\n avatar\n external\n }\n`;\n\nexport const GET_CURRENT_USER = gql`\n query GetCurrentUser {\n adminUsers {\n user: getCurrentUser {\n data ${currentUserFields}\n error {\n code\n message\n }\n }\n }\n }\n`;\n\nexport const UPDATE_CURRENT_USER = gql`\n mutation UpdateCurrentUser($data: AdminUsersCurrentUserInput!) {\n adminUsers {\n updateCurrentUser(data: $data) {\n data ${currentUserFields}\n error {\n code\n message\n data\n }\n }\n }\n }\n`;\n"],"names":["currentUserFields","GET_CURRENT_USER","gql","UPDATE_CURRENT_USER"],"mappings":";AAEA,MAAMA,oBAAkC,CAAC;;;;;;;;;AASzC,CAAC;AAEM,MAAMC,mBAAmBC,WAAG,CAAC;;;;qBAIf,EAAEF,kBAAkB;;;;;;;;AAQzC,CAAC;AAEM,MAAMG,sBAAsBD,WAAG,CAAC;;;;qBAIlB,EAAEF,kBAAkB;;;;;;;;;AASzC,CAAC"}
|