@webiny/app-security-access-management 5.39.0-beta.0 → 5.39.0-beta.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/README.md +5 -3
- package/components/GroupAutocomplete/index.d.ts +2 -2
- package/components/GroupAutocomplete/index.js.map +1 -1
- package/components/GroupsMultiAutocomplete/index.d.ts +2 -2
- package/components/GroupsMultiAutocomplete/index.js.map +1 -1
- package/components/NotAuthorizedError/NotAuthorizedError.d.ts +2 -2
- package/components/NotAuthorizedError/NotAuthorizedError.js.map +1 -1
- package/components/TeamAutocomplete/index.d.ts +2 -2
- package/components/TeamAutocomplete/index.js.map +1 -1
- package/index.js +0 -1
- package/index.js.map +1 -1
- package/package.json +13 -13
- package/plugins/installation.js +7 -23
- package/plugins/installation.js.map +1 -1
- package/plugins/permissionRenderer/SecurityPermissions.d.ts +2 -2
- package/plugins/permissionRenderer/SecurityPermissions.js.map +1 -1
- package/ui/views/ApiKeys/ApiKeyForm.d.ts +2 -2
- package/ui/views/ApiKeys/ApiKeyForm.js +37 -59
- package/ui/views/ApiKeys/ApiKeyForm.js.map +1 -1
- package/ui/views/ApiKeys/ApiKeys.d.ts +2 -2
- package/ui/views/ApiKeys/ApiKeys.js.map +1 -1
- package/ui/views/ApiKeys/ApiKeysDataList.d.ts +2 -2
- package/ui/views/ApiKeys/ApiKeysDataList.js +21 -38
- package/ui/views/ApiKeys/ApiKeysDataList.js.map +1 -1
- package/ui/views/Groups/Groups.d.ts +2 -2
- package/ui/views/Groups/Groups.js.map +1 -1
- package/ui/views/Groups/GroupsDataList.d.ts +2 -2
- package/ui/views/Groups/GroupsDataList.js +21 -38
- package/ui/views/Groups/GroupsDataList.js.map +1 -1
- package/ui/views/Groups/GroupsForm.d.ts +2 -2
- package/ui/views/Groups/GroupsForm.js +38 -58
- package/ui/views/Groups/GroupsForm.js.map +1 -1
- package/ui/views/Teams/Teams.d.ts +2 -2
- package/ui/views/Teams/Teams.js.map +1 -1
- package/ui/views/Teams/TeamsDataList.d.ts +2 -2
- package/ui/views/Teams/TeamsDataList.js +21 -38
- package/ui/views/Teams/TeamsDataList.js.map +1 -1
- package/ui/views/Teams/TeamsForm.d.ts +2 -2
- package/ui/views/Teams/TeamsForm.js +28 -45
- package/ui/views/Teams/TeamsForm.js.map +1 -1
|
@@ -6,9 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.GroupsForm = void 0;
|
|
9
|
-
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
12
|
var _reactHooks = require("@apollo/react-hooks");
|
|
@@ -89,59 +87,41 @@ var GroupsForm = function GroupsForm() {
|
|
|
89
87
|
var loading = [getQuery, createMutation, updateMutation].find(function (item) {
|
|
90
88
|
return item.loading;
|
|
91
89
|
});
|
|
92
|
-
var onSubmit = (0, _react.useCallback)(
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
_ref2 = isUpdate ? [update, {
|
|
113
|
-
variables: {
|
|
114
|
-
id: data.id,
|
|
115
|
-
data: (0, _pick.default)(data, ["name", "description", "permissions"])
|
|
116
|
-
}
|
|
117
|
-
}] : [create, {
|
|
118
|
-
variables: {
|
|
119
|
-
data: (0, _pick.default)(data, ["name", "slug", "description", "permissions"])
|
|
120
|
-
}
|
|
121
|
-
}], _ref3 = (0, _slicedToArray2.default)(_ref2, 2), operation = _ref3[0], args = _ref3[1];
|
|
122
|
-
_context.next = 7;
|
|
123
|
-
return operation(args);
|
|
124
|
-
case 7:
|
|
125
|
-
response = _context.sent;
|
|
126
|
-
_response$data$securi = response.data.security.group, group = _response$data$securi.data, error = _response$data$securi.error;
|
|
127
|
-
if (!error) {
|
|
128
|
-
_context.next = 11;
|
|
129
|
-
break;
|
|
130
|
-
}
|
|
131
|
-
return _context.abrupt("return", showSnackbar(error.message));
|
|
132
|
-
case 11:
|
|
133
|
-
!isUpdate && history.push("/access-management/roles?id=".concat(group.id));
|
|
134
|
-
showSnackbar(t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Role saved successfully!"]))));
|
|
135
|
-
case 13:
|
|
136
|
-
case "end":
|
|
137
|
-
return _context.stop();
|
|
90
|
+
var onSubmit = (0, _react.useCallback)(async function (data) {
|
|
91
|
+
if (!data.permissions || !data.permissions.length) {
|
|
92
|
+
showSnackbar(t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["You must configure permissions before saving!"]))), {
|
|
93
|
+
timeout: 60000,
|
|
94
|
+
dismissesOnAction: true,
|
|
95
|
+
action: /*#__PURE__*/_react.default.createElement(_Snackbar.SnackbarAction, {
|
|
96
|
+
label: "OK"
|
|
97
|
+
})
|
|
98
|
+
});
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
var isUpdate = data.createdOn;
|
|
102
|
+
var _ref = isUpdate ? [update, {
|
|
103
|
+
variables: {
|
|
104
|
+
id: data.id,
|
|
105
|
+
data: (0, _pick.default)(data, ["name", "description", "permissions"])
|
|
106
|
+
}
|
|
107
|
+
}] : [create, {
|
|
108
|
+
variables: {
|
|
109
|
+
data: (0, _pick.default)(data, ["name", "slug", "description", "permissions"])
|
|
138
110
|
}
|
|
139
|
-
},
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
111
|
+
}],
|
|
112
|
+
_ref2 = (0, _slicedToArray2.default)(_ref, 2),
|
|
113
|
+
operation = _ref2[0],
|
|
114
|
+
args = _ref2[1];
|
|
115
|
+
var response = await operation(args);
|
|
116
|
+
var _response$data$securi = response.data.security.group,
|
|
117
|
+
group = _response$data$securi.data,
|
|
118
|
+
error = _response$data$securi.error;
|
|
119
|
+
if (error) {
|
|
120
|
+
return showSnackbar(error.message);
|
|
121
|
+
}
|
|
122
|
+
!isUpdate && history.push("/access-management/roles?id=".concat(group.id));
|
|
123
|
+
showSnackbar(t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Role saved successfully!"]))));
|
|
124
|
+
}, [id]);
|
|
145
125
|
var data = loading ? {} : (0, _get.default)(getQuery, "data.security.group.data", {});
|
|
146
126
|
var systemGroup = data.slug === "full-access";
|
|
147
127
|
var showEmptyView = !newGroup && !loading && (0, _isEmpty.default)(data);
|
|
@@ -162,10 +142,10 @@ var GroupsForm = function GroupsForm() {
|
|
|
162
142
|
return /*#__PURE__*/_react.default.createElement(_form.Form, {
|
|
163
143
|
data: data,
|
|
164
144
|
onSubmit: onSubmit
|
|
165
|
-
}, function (
|
|
166
|
-
var data =
|
|
167
|
-
form =
|
|
168
|
-
Bind =
|
|
145
|
+
}, function (_ref3) {
|
|
146
|
+
var data = _ref3.data,
|
|
147
|
+
form = _ref3.form,
|
|
148
|
+
Bind = _ref3.Bind;
|
|
169
149
|
return /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleForm, null, loading && /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, null), /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleFormHeader, {
|
|
170
150
|
title: data.name ? data.name : "Untitled"
|
|
171
151
|
}), /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleFormContent, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactHooks","_styled","_interopRequireDefault","_pick","_get","_reactRouter","_i18n","_form","_Grid","_Input","_Alert","_Button","_Progress","_validation","_SimpleForm","_Typography","_Permissions","_useSnackbar2","_graphql","_Snackbar","_isEmpty","_EmptyView","_add18px","_Tooltip","_content_copy","_featureFlags","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","t","i18n","ns","ButtonWrapper","styled","label","target","PermissionsTitleCell","Cell","GroupsForm","_useRouter","useRouter","location","history","_useSnackbar","useSnackbar","showSnackbar","newGroup","URLSearchParams","search","get","id","getQuery","useQuery","READ_GROUP","variables","skip","onCompleted","data","error","security","group","push","message","_useMutation","useMutation","CREATE_GROUP","refetchQueries","query","LIST_GROUPS","_useMutation2","_slicedToArray2","default","create","createMutation","_useMutation3","UPDATE_GROUP","_useMutation4","update","updateMutation","loading","find","item","onSubmit","useCallback","_ref","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","isUpdate","_ref2","_ref3","operation","args","response","_response$data$securi","wrap","_callee$","_context","prev","next","permissions","length","_taggedTemplateLiteral2","timeout","dismissesOnAction","action","createElement","SnackbarAction","abrupt","createdOn","pick","sent","concat","stop","_x","apply","arguments","systemGroup","slug","showEmptyView","isEmpty","title","ButtonDefault","onClick","ButtonIcon","icon","ReactComponent","Form","_ref4","form","Bind","SimpleForm","CircularProgress","SimpleFormHeader","name","SimpleFormContent","Grid","span","validators","validation","Input","disabled","Boolean","rows","Alert","type","Typography","use","featureFlags","copyPermissionsButton","Tooltip","content","placement","IconButton","navigator","clipboard","writeText","JSON","stringify","defaultValue","bind","Permissions","Object","assign","SimpleFormFooter","ButtonPrimary","ev","submit","exports"],"sources":["GroupsForm.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { useMutation, useQuery } from \"@apollo/react-hooks\";\nimport styled from \"@emotion/styled\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Form } from \"@webiny/form\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { ButtonDefault, ButtonIcon, ButtonPrimary, IconButton } from \"@webiny/ui/Button\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { validation } from \"@webiny/validation\";\nimport {\n SimpleForm,\n SimpleFormFooter,\n SimpleFormContent,\n SimpleFormHeader\n} from \"@webiny/app-admin/components/SimpleForm\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Permissions } from \"@webiny/app-admin/components/Permissions\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CREATE_GROUP, LIST_GROUPS, READ_GROUP, UPDATE_GROUP } from \"./graphql\";\nimport { SnackbarAction } from \"@webiny/ui/Snackbar\";\nimport isEmpty from \"lodash/isEmpty\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as CopyIcon } from \"@material-design-icons/svg/outlined/content_copy.svg\";\nimport { featureFlags } from \"@webiny/feature-flags\";\n\nconst t = i18n.ns(\"app-security/admin/roles/form\");\n\nconst ButtonWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nconst PermissionsTitleCell = styled(Cell)`\n display: flex;\n align-items: center;\n`;\n\nexport interface GroupsFormProps {\n // TODO @ts-refactor delete and go up the tree and sort it out\n [key: string]: any;\n}\n\nexport const GroupsForm: React.FC<GroupsFormProps> = () => {\n const { location, history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const newGroup = new URLSearchParams(location.search).get(\"new\") === \"true\";\n const id = new URLSearchParams(location.search).get(\"id\");\n\n const getQuery = useQuery(READ_GROUP, {\n variables: { id },\n skip: !id,\n onCompleted: data => {\n if (!data) {\n return;\n }\n\n const { error } = data.security.group;\n if (error) {\n history.push(\"/access-management/roles\");\n showSnackbar(error.message);\n }\n }\n });\n\n const [create, createMutation] = useMutation(CREATE_GROUP, {\n refetchQueries: [{ query: LIST_GROUPS }]\n });\n\n const [update, updateMutation] = useMutation(UPDATE_GROUP, {\n refetchQueries: [{ query: LIST_GROUPS }]\n });\n\n const loading = [getQuery, createMutation, updateMutation].find(item => item.loading);\n\n const onSubmit = useCallback(\n async data => {\n if (!data.permissions || !data.permissions.length) {\n showSnackbar(t`You must configure permissions before saving!`, {\n timeout: 60000,\n dismissesOnAction: true,\n action: <SnackbarAction label={\"OK\"} />\n });\n return;\n }\n\n const isUpdate = data.createdOn;\n const [operation, args] = isUpdate\n ? [\n update,\n {\n variables: {\n id: data.id,\n data: pick(data, [\"name\", \"description\", \"permissions\"])\n }\n }\n ]\n : [\n create,\n {\n variables: {\n data: pick(data, [\"name\", \"slug\", \"description\", \"permissions\"])\n }\n }\n ];\n\n const response = await operation(args);\n\n const { data: group, error } = response.data.security.group;\n if (error) {\n return showSnackbar(error.message);\n }\n\n !isUpdate && history.push(`/access-management/roles?id=${group.id}`);\n showSnackbar(t`Role saved successfully!`);\n },\n [id]\n );\n\n const data = loading ? {} : get(getQuery, \"data.security.group.data\", {});\n\n const systemGroup = data.slug === \"full-access\";\n\n const showEmptyView = !newGroup && !loading && isEmpty(data);\n // Render \"No content\" selected view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display role details or create a...`}\n action={\n <ButtonDefault\n data-testid=\"new-record-button\"\n onClick={() => history.push(\"/access-management/roles?new=true\")}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`New Role`}\n </ButtonDefault>\n }\n />\n );\n }\n\n return (\n <Form data={data} onSubmit={onSubmit}>\n {({ data, form, Bind }) => {\n return (\n <SimpleForm>\n {loading && <CircularProgress />}\n <SimpleFormHeader title={data.name ? data.name : \"Untitled\"} />\n <SimpleFormContent>\n <Grid>\n <Cell span={6}>\n <Bind\n name=\"name\"\n validators={validation.create(\"required,minLength:3\")}\n >\n <Input\n label={t`Name`}\n disabled={systemGroup}\n data-testid=\"admin.am.group.new.name\"\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind\n name=\"slug\"\n validators={validation.create(\"required,minLength:3\")}\n >\n <Input\n disabled={Boolean(data.id)}\n label={t`Slug`}\n data-testid=\"admin.am.group.new.slug\"\n />\n </Bind>\n </Cell>\n </Grid>\n <Grid>\n <Cell span={12}>\n <Bind\n name=\"description\"\n validators={validation.create(\"maxLength:500\")}\n >\n <Input\n label={t`Description`}\n rows={3}\n disabled={systemGroup}\n data-testid=\"admin.am.group.new.description\"\n />\n </Bind>\n </Cell>\n </Grid>\n {systemGroup && (\n <Grid>\n <Cell span={12}>\n <Alert type={\"info\"} title={\"Permissions are locked\"}>\n This is a protected system role and you can't\n modify its permissions.\n </Alert>\n </Cell>\n </Grid>\n )}\n {!systemGroup && (\n <Grid>\n <PermissionsTitleCell span={12}>\n <Typography use={\"subtitle1\"}>{t`Permissions`}</Typography>\n {featureFlags.copyPermissionsButton && (\n <Tooltip content=\"Copy as JSON\" placement={\"top\"}>\n <IconButton\n icon={<CopyIcon />}\n onClick={() => {\n navigator.clipboard.writeText(\n JSON.stringify(\n data.permissions,\n null,\n 2\n )\n );\n showSnackbar(\n \"JSON data copied to clipboard.\"\n );\n }}\n />\n </Tooltip>\n )}\n </PermissionsTitleCell>\n <Cell span={12}>\n <Bind name={\"permissions\"} defaultValue={[]}>\n {bind => (\n <Permissions id={data.id || \"new\"} {...bind} />\n )}\n </Bind>\n </Cell>\n </Grid>\n )}\n </SimpleFormContent>\n {systemGroup ? null : (\n <SimpleFormFooter>\n <ButtonWrapper>\n <ButtonDefault\n onClick={() => history.push(\"/access-management/roles\")}\n >{t`Cancel`}</ButtonDefault>\n <ButtonPrimary\n data-testid=\"admin.am.group.new.save\"\n onClick={ev => {\n form.submit(ev);\n }}\n >{t`Save role`}</ButtonPrimary>\n </ButtonWrapper>\n </SimpleFormFooter>\n )}\n </SimpleForm>\n );\n }}\n </Form>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactHooks","_styled","_interopRequireDefault","_pick","_get","_reactRouter","_i18n","_form","_Grid","_Input","_Alert","_Button","_Progress","_validation","_SimpleForm","_Typography","_Permissions","_useSnackbar2","_graphql","_Snackbar","_isEmpty","_EmptyView","_add18px","_Tooltip","_content_copy","_featureFlags","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","t","i18n","ns","ButtonWrapper","styled","label","target","PermissionsTitleCell","Cell","GroupsForm","_useRouter","useRouter","location","history","_useSnackbar","useSnackbar","showSnackbar","newGroup","URLSearchParams","search","get","id","getQuery","useQuery","READ_GROUP","variables","skip","onCompleted","data","error","security","group","push","message","_useMutation","useMutation","CREATE_GROUP","refetchQueries","query","LIST_GROUPS","_useMutation2","_slicedToArray2","default","create","createMutation","_useMutation3","UPDATE_GROUP","_useMutation4","update","updateMutation","loading","find","item","onSubmit","useCallback","permissions","length","_taggedTemplateLiteral2","timeout","dismissesOnAction","action","createElement","SnackbarAction","isUpdate","createdOn","_ref","pick","_ref2","operation","args","response","_response$data$securi","concat","systemGroup","slug","showEmptyView","isEmpty","title","ButtonDefault","onClick","ButtonIcon","icon","ReactComponent","Form","_ref3","form","Bind","SimpleForm","CircularProgress","SimpleFormHeader","name","SimpleFormContent","Grid","span","validators","validation","Input","disabled","Boolean","rows","Alert","type","Typography","use","featureFlags","copyPermissionsButton","Tooltip","content","placement","IconButton","navigator","clipboard","writeText","JSON","stringify","defaultValue","bind","Permissions","Object","assign","SimpleFormFooter","ButtonPrimary","ev","submit","exports"],"sources":["GroupsForm.tsx"],"sourcesContent":["import React, { useCallback } from \"react\";\nimport { useMutation, useQuery } from \"@apollo/react-hooks\";\nimport styled from \"@emotion/styled\";\nimport pick from \"lodash/pick\";\nimport get from \"lodash/get\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { Form } from \"@webiny/form\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Alert } from \"@webiny/ui/Alert\";\nimport { ButtonDefault, ButtonIcon, ButtonPrimary, IconButton } from \"@webiny/ui/Button\";\nimport { CircularProgress } from \"@webiny/ui/Progress\";\nimport { validation } from \"@webiny/validation\";\nimport {\n SimpleForm,\n SimpleFormFooter,\n SimpleFormContent,\n SimpleFormHeader\n} from \"@webiny/app-admin/components/SimpleForm\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { Permissions } from \"@webiny/app-admin/components/Permissions\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { CREATE_GROUP, LIST_GROUPS, READ_GROUP, UPDATE_GROUP } from \"./graphql\";\nimport { SnackbarAction } from \"@webiny/ui/Snackbar\";\nimport isEmpty from \"lodash/isEmpty\";\nimport EmptyView from \"@webiny/app-admin/components/EmptyView\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ReactComponent as CopyIcon } from \"@material-design-icons/svg/outlined/content_copy.svg\";\nimport { featureFlags } from \"@webiny/feature-flags\";\n\nconst t = i18n.ns(\"app-security/admin/roles/form\");\n\nconst ButtonWrapper = styled.div`\n display: flex;\n justify-content: space-between;\n`;\n\nconst PermissionsTitleCell = styled(Cell)`\n display: flex;\n align-items: center;\n`;\n\nexport interface GroupsFormProps {\n // TODO @ts-refactor delete and go up the tree and sort it out\n [key: string]: any;\n}\n\nexport const GroupsForm = () => {\n const { location, history } = useRouter();\n const { showSnackbar } = useSnackbar();\n const newGroup = new URLSearchParams(location.search).get(\"new\") === \"true\";\n const id = new URLSearchParams(location.search).get(\"id\");\n\n const getQuery = useQuery(READ_GROUP, {\n variables: { id },\n skip: !id,\n onCompleted: data => {\n if (!data) {\n return;\n }\n\n const { error } = data.security.group;\n if (error) {\n history.push(\"/access-management/roles\");\n showSnackbar(error.message);\n }\n }\n });\n\n const [create, createMutation] = useMutation(CREATE_GROUP, {\n refetchQueries: [{ query: LIST_GROUPS }]\n });\n\n const [update, updateMutation] = useMutation(UPDATE_GROUP, {\n refetchQueries: [{ query: LIST_GROUPS }]\n });\n\n const loading = [getQuery, createMutation, updateMutation].find(item => item.loading);\n\n const onSubmit = useCallback(\n async data => {\n if (!data.permissions || !data.permissions.length) {\n showSnackbar(t`You must configure permissions before saving!`, {\n timeout: 60000,\n dismissesOnAction: true,\n action: <SnackbarAction label={\"OK\"} />\n });\n return;\n }\n\n const isUpdate = data.createdOn;\n const [operation, args] = isUpdate\n ? [\n update,\n {\n variables: {\n id: data.id,\n data: pick(data, [\"name\", \"description\", \"permissions\"])\n }\n }\n ]\n : [\n create,\n {\n variables: {\n data: pick(data, [\"name\", \"slug\", \"description\", \"permissions\"])\n }\n }\n ];\n\n const response = await operation(args);\n\n const { data: group, error } = response.data.security.group;\n if (error) {\n return showSnackbar(error.message);\n }\n\n !isUpdate && history.push(`/access-management/roles?id=${group.id}`);\n showSnackbar(t`Role saved successfully!`);\n },\n [id]\n );\n\n const data = loading ? {} : get(getQuery, \"data.security.group.data\", {});\n\n const systemGroup = data.slug === \"full-access\";\n\n const showEmptyView = !newGroup && !loading && isEmpty(data);\n // Render \"No content\" selected view.\n if (showEmptyView) {\n return (\n <EmptyView\n title={t`Click on the left side list to display role details or create a...`}\n action={\n <ButtonDefault\n data-testid=\"new-record-button\"\n onClick={() => history.push(\"/access-management/roles?new=true\")}\n >\n <ButtonIcon icon={<AddIcon />} />\n {t`New Role`}\n </ButtonDefault>\n }\n />\n );\n }\n\n return (\n <Form data={data} onSubmit={onSubmit}>\n {({ data, form, Bind }) => {\n return (\n <SimpleForm>\n {loading && <CircularProgress />}\n <SimpleFormHeader title={data.name ? data.name : \"Untitled\"} />\n <SimpleFormContent>\n <Grid>\n <Cell span={6}>\n <Bind\n name=\"name\"\n validators={validation.create(\"required,minLength:3\")}\n >\n <Input\n label={t`Name`}\n disabled={systemGroup}\n data-testid=\"admin.am.group.new.name\"\n />\n </Bind>\n </Cell>\n <Cell span={6}>\n <Bind\n name=\"slug\"\n validators={validation.create(\"required,minLength:3\")}\n >\n <Input\n disabled={Boolean(data.id)}\n label={t`Slug`}\n data-testid=\"admin.am.group.new.slug\"\n />\n </Bind>\n </Cell>\n </Grid>\n <Grid>\n <Cell span={12}>\n <Bind\n name=\"description\"\n validators={validation.create(\"maxLength:500\")}\n >\n <Input\n label={t`Description`}\n rows={3}\n disabled={systemGroup}\n data-testid=\"admin.am.group.new.description\"\n />\n </Bind>\n </Cell>\n </Grid>\n {systemGroup && (\n <Grid>\n <Cell span={12}>\n <Alert type={\"info\"} title={\"Permissions are locked\"}>\n This is a protected system role and you can't\n modify its permissions.\n </Alert>\n </Cell>\n </Grid>\n )}\n {!systemGroup && (\n <Grid>\n <PermissionsTitleCell span={12}>\n <Typography use={\"subtitle1\"}>{t`Permissions`}</Typography>\n {featureFlags.copyPermissionsButton && (\n <Tooltip content=\"Copy as JSON\" placement={\"top\"}>\n <IconButton\n icon={<CopyIcon />}\n onClick={() => {\n navigator.clipboard.writeText(\n JSON.stringify(\n data.permissions,\n null,\n 2\n )\n );\n showSnackbar(\n \"JSON data copied to clipboard.\"\n );\n }}\n />\n </Tooltip>\n )}\n </PermissionsTitleCell>\n <Cell span={12}>\n <Bind name={\"permissions\"} defaultValue={[]}>\n {bind => (\n <Permissions id={data.id || \"new\"} {...bind} />\n )}\n </Bind>\n </Cell>\n </Grid>\n )}\n </SimpleFormContent>\n {systemGroup ? null : (\n <SimpleFormFooter>\n <ButtonWrapper>\n <ButtonDefault\n onClick={() => history.push(\"/access-management/roles\")}\n >{t`Cancel`}</ButtonDefault>\n <ButtonPrimary\n data-testid=\"admin.am.group.new.save\"\n onClick={ev => {\n form.submit(ev);\n }}\n >{t`Save role`}</ButtonPrimary>\n </ButtonWrapper>\n </SimpleFormFooter>\n )}\n </SimpleForm>\n );\n }}\n </Form>\n );\n};\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
/// <reference types="react" />
|
|
2
2
|
import { TeamsDataListProps } from "./TeamsDataList";
|
|
3
3
|
import { TeamsFormProps } from "./TeamsForm";
|
|
4
4
|
export interface TeamsProps {
|
|
5
5
|
listProps?: TeamsDataListProps;
|
|
6
6
|
formProps?: TeamsFormProps;
|
|
7
7
|
}
|
|
8
|
-
export declare const Teams:
|
|
8
|
+
export declare const Teams: ({ formProps, listProps }: TeamsProps) => JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireDefault","require","_SplitView","_TeamsDataList","_TeamsForm","Teams","_ref","_ref$formProps","formProps","_ref$listProps","listProps","default","createElement","SplitView","LeftPanel","TeamsDataList","RightPanel","TeamsForm","exports"],"sources":["Teams.tsx"],"sourcesContent":["import React from \"react\";\nimport { SplitView, LeftPanel, RightPanel } from \"@webiny/app-admin/components/SplitView\";\nimport { TeamsDataList, TeamsDataListProps } from \"./TeamsDataList\";\nimport { TeamsForm, TeamsFormProps } from \"./TeamsForm\";\n\nexport interface TeamsProps {\n listProps?: TeamsDataListProps;\n formProps?: TeamsFormProps;\n}\nexport const Teams
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_SplitView","_TeamsDataList","_TeamsForm","Teams","_ref","_ref$formProps","formProps","_ref$listProps","listProps","default","createElement","SplitView","LeftPanel","TeamsDataList","RightPanel","TeamsForm","exports"],"sources":["Teams.tsx"],"sourcesContent":["import React from \"react\";\nimport { SplitView, LeftPanel, RightPanel } from \"@webiny/app-admin/components/SplitView\";\nimport { TeamsDataList, TeamsDataListProps } from \"./TeamsDataList\";\nimport { TeamsForm, TeamsFormProps } from \"./TeamsForm\";\n\nexport interface TeamsProps {\n listProps?: TeamsDataListProps;\n formProps?: TeamsFormProps;\n}\nexport const Teams = ({ formProps = {}, listProps = {} }: TeamsProps) => {\n return (\n <SplitView>\n <LeftPanel>\n <TeamsDataList {...listProps} />\n </LeftPanel>\n <RightPanel>\n <TeamsForm {...formProps} />\n </RightPanel>\n </SplitView>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AAMO,IAAMI,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAuD;EAAA,IAAAC,cAAA,GAAAD,IAAA,CAAjDE,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,CAAC,CAAC,GAAAA,cAAA;IAAAE,cAAA,GAAAH,IAAA,CAAEI,SAAS;IAATA,SAAS,GAAAD,cAAA,cAAG,CAAC,CAAC,GAAAA,cAAA;EAClD,oBACIV,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,UAAA,CAAAW,SAAS,qBACNd,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,UAAA,CAAAY,SAAS,qBACNf,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACT,cAAA,CAAAY,aAAa,EAAKL,SAAY,CACxB,CAAC,eACZX,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACV,UAAA,CAAAc,UAAU,qBACPjB,MAAA,CAAAY,OAAA,CAAAC,aAAA,CAACR,UAAA,CAAAa,SAAS,EAAKT,SAAY,CACnB,CACL,CAAC;AAEpB,CAAC;AAACU,OAAA,CAAAb,KAAA,GAAAA,KAAA"}
|
|
@@ -6,8 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.TeamsDataList = void 0;
|
|
9
|
-
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
11
9
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
12
10
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
13
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
@@ -91,37 +89,22 @@ var TeamsDataList = function TeamsDataList() {
|
|
|
91
89
|
return (0, _orderBy.default)(teams, [key], [sortBy]);
|
|
92
90
|
}, [sort]);
|
|
93
91
|
var deleteItem = (0, _react.useCallback)(function (item) {
|
|
94
|
-
showConfirmation(
|
|
95
|
-
var
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}
|
|
111
|
-
return _context.abrupt("return", showSnackbar(error.message));
|
|
112
|
-
case 7:
|
|
113
|
-
showSnackbar(t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Team \"{slug}\" deleted."])))({
|
|
114
|
-
slug: item.slug
|
|
115
|
-
}));
|
|
116
|
-
if (id === item.id) {
|
|
117
|
-
history.push("/access-management/teams");
|
|
118
|
-
}
|
|
119
|
-
case 9:
|
|
120
|
-
case "end":
|
|
121
|
-
return _context.stop();
|
|
122
|
-
}
|
|
123
|
-
}, _callee);
|
|
124
|
-
})));
|
|
92
|
+
showConfirmation(async function () {
|
|
93
|
+
var _await$deleteIt = await deleteIt({
|
|
94
|
+
variables: item
|
|
95
|
+
}),
|
|
96
|
+
data = _await$deleteIt.data;
|
|
97
|
+
var error = data.security.deleteTeam.error;
|
|
98
|
+
if (error) {
|
|
99
|
+
return showSnackbar(error.message);
|
|
100
|
+
}
|
|
101
|
+
showSnackbar(t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Team \"{slug}\" deleted."])))({
|
|
102
|
+
slug: item.slug
|
|
103
|
+
}));
|
|
104
|
+
if (id === item.id) {
|
|
105
|
+
history.push("/access-management/teams");
|
|
106
|
+
}
|
|
107
|
+
});
|
|
125
108
|
}, [id]);
|
|
126
109
|
var teamsDataListModalOverlay = (0, _react.useMemo)(function () {
|
|
127
110
|
return /*#__PURE__*/_react.default.createElement(_List.DataListModalOverlay, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|
|
@@ -130,9 +113,9 @@ var TeamsDataList = function TeamsDataList() {
|
|
|
130
113
|
value: sort,
|
|
131
114
|
onChange: setSort,
|
|
132
115
|
label: t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["Sort by"])))
|
|
133
|
-
}, SORTERS.map(function (
|
|
134
|
-
var label =
|
|
135
|
-
sorter =
|
|
116
|
+
}, SORTERS.map(function (_ref2) {
|
|
117
|
+
var label = _ref2.label,
|
|
118
|
+
sorter = _ref2.sorter;
|
|
136
119
|
return /*#__PURE__*/_react.default.createElement("option", {
|
|
137
120
|
key: label,
|
|
138
121
|
value: sorter
|
|
@@ -163,8 +146,8 @@ var TeamsDataList = function TeamsDataList() {
|
|
|
163
146
|
icon: /*#__PURE__*/_react.default.createElement(_filter24px.ReactComponent, null),
|
|
164
147
|
"data-testid": "default-data-list.filter"
|
|
165
148
|
})
|
|
166
|
-
}, function (
|
|
167
|
-
var data =
|
|
149
|
+
}, function (_ref3) {
|
|
150
|
+
var data = _ref3.data;
|
|
168
151
|
return /*#__PURE__*/_react.default.createElement(_List.ScrollList, {
|
|
169
152
|
"data-testid": "default-data-list"
|
|
170
153
|
}, data.map(function (item) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_orderBy","_interopRequireDefault","_i18n","_List","_icons","_reactRouter","_useSnackbar2","_reactHooks","_useConfirmationDialog","_graphql","_Tooltip","_Button","_Grid","_Select","_SearchUI","_add18px","_filter24px","_utils","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","t","i18n","ns","SORTERS","label","_taggedTemplateLiteral2","default","sorter","TeamsDataList","_useState","useState","_useState2","_slicedToArray2","filter","setFilter","_useState3","_useState4","sort","setSort","_useRouter","useRouter","history","location","_useSnackbar","useSnackbar","showSnackbar","_useConfirmationDialo","useConfirmationDialog","dataTestId","showConfirmation","_useQuery","useQuery","LIST_TEAMS","listResponse","data","listLoading","loading","_useMutation","useMutation","DELETE_TEAM","refetchQueries","query","_useMutation2","deleteIt","deleteLoading","security","teams","id","URLSearchParams","search","get","filterTeam","useCallback","_ref","name","slug","description","toLowerCase","includes","sortTeams","_deserializeSorters","deserializeSorters","_deserializeSorters2","key","sortBy","orderBy","deleteItem","item","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","_yield$deleteIt","error","wrap","_callee$","_context","prev","next","variables","sent","deleteTeam","abrupt","message","push","stop","teamsDataListModalOverlay","useMemo","createElement","DataListModalOverlay","Grid","Cell","span","Select","value","onChange","map","_ref3","filteredData","teamList","DataList","title","actions","ButtonSecondary","onClick","ButtonIcon","icon","ReactComponent","inputPlaceholder","modalOverlay","modalOverlayAction","DataListModalOverlayAction","_ref4","ScrollList","ListItem","selected","ListItemText","concat","ListItemTextSecondary","ListItemMeta","ListActions","system","DeleteIcon","Tooltip","placement","content","disabled","exports"],"sources":["TeamsDataList.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport orderBy from \"lodash/orderBy\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport {\n DataList,\n ScrollList,\n ListItem,\n ListItemText,\n ListItemTextSecondary,\n ListItemMeta,\n ListActions,\n DataListModalOverlayAction,\n DataListModalOverlay\n} from \"@webiny/ui/List\";\nimport { DeleteIcon } from \"@webiny/ui/List/DataList/icons\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useQuery, useMutation } from \"@apollo/react-hooks\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/useConfirmationDialog\";\nimport { LIST_TEAMS, DELETE_TEAM } from \"./graphql\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ButtonIcon, ButtonSecondary } from \"@webiny/ui/Button\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport SearchUI from \"@webiny/app-admin/components/SearchUI\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { ReactComponent as FilterIcon } from \"@webiny/app-admin/assets/icons/filter-24px.svg\";\nimport { deserializeSorters } from \"../utils\";\nimport { Team } from \"~/types\";\n\nconst t = i18n.ns(\"app-security/admin/teams/data-list\");\n\nconst SORTERS = [\n {\n label: t`Newest to oldest`,\n sorter: \"createdOn_DESC\"\n },\n {\n label: t`Oldest to newest`,\n sorter: \"createdOn_ASC\"\n },\n {\n label: t`Name A-Z`,\n sorter: \"name_ASC\"\n },\n {\n label: t`Name Z-A`,\n sorter: \"name_DESC\"\n }\n];\n\nexport interface TeamsDataListProps {\n // TODO @ts-refactor delete and go up the tree and sort it out\n [key: string]: any;\n}\nexport const TeamsDataList: React.FC<TeamsDataListProps> = () => {\n const [filter, setFilter] = useState(\"\");\n const [sort, setSort] = useState(SORTERS[0].sorter);\n const { history, location } = useRouter();\n const { showSnackbar } = useSnackbar();\n const { showConfirmation } = useConfirmationDialog({\n dataTestId: \"default-data-list.delete-dialog\"\n });\n\n const { data: listResponse, loading: listLoading } = useQuery(LIST_TEAMS);\n\n const [deleteIt, { loading: deleteLoading }] = useMutation(DELETE_TEAM, {\n refetchQueries: [{ query: LIST_TEAMS }]\n });\n\n const data = listLoading && !listResponse ? [] : listResponse.security.teams.data;\n const id = new URLSearchParams(location.search).get(\"id\");\n\n const filterTeam = useCallback(\n ({ name, slug, description }) => {\n return (\n name.toLowerCase().includes(filter) ||\n slug.toLowerCase().includes(filter) ||\n (description && description.toLowerCase().includes(filter))\n );\n },\n [filter]\n );\n\n const sortTeams = useCallback(\n teams => {\n if (!sort) {\n return teams;\n }\n const [key, sortBy] = deserializeSorters(sort);\n return orderBy(teams, [key], [sortBy]);\n },\n [sort]\n );\n\n const deleteItem = useCallback(\n item => {\n showConfirmation(async () => {\n const { data } = await deleteIt({\n variables: item\n });\n\n const { error } = data.security.deleteTeam;\n if (error) {\n return showSnackbar(error.message);\n }\n\n showSnackbar(t`Team \"{slug}\" deleted.`({ slug: item.slug }));\n\n if (id === item.id) {\n history.push(`/access-management/teams`);\n }\n });\n },\n [id]\n );\n\n const teamsDataListModalOverlay = useMemo(\n () => (\n <DataListModalOverlay>\n <Grid>\n <Cell span={12}>\n <Select value={sort} onChange={setSort} label={t`Sort by`}>\n {SORTERS.map(({ label, sorter }) => {\n return (\n <option key={label} value={sorter}>\n {label}\n </option>\n );\n })}\n </Select>\n </Cell>\n </Grid>\n </DataListModalOverlay>\n ),\n [sort]\n );\n\n const filteredData = filter === \"\" ? data : data.filter(filterTeam);\n const teamList = sortTeams(filteredData);\n\n return (\n <DataList\n title={t`Teams`}\n actions={\n <ButtonSecondary\n data-testid=\"new-record-button\"\n onClick={() => history.push(\"/access-management/teams?new=true\")}\n >\n <ButtonIcon icon={<AddIcon />} /> {t`New Team`}\n </ButtonSecondary>\n }\n data={teamList}\n loading={listLoading || deleteLoading}\n search={\n <SearchUI value={filter} onChange={setFilter} inputPlaceholder={t`Search Teams`} />\n }\n modalOverlay={teamsDataListModalOverlay}\n modalOverlayAction={\n <DataListModalOverlayAction\n icon={<FilterIcon />}\n data-testid={\"default-data-list.filter\"}\n />\n }\n >\n {({ data }: { data: Team[] }) => (\n <ScrollList data-testid=\"default-data-list\">\n {data.map(item => (\n <ListItem key={item.id} selected={item.id === id}>\n <ListItemText\n onClick={() =>\n history.push(`/access-management/teams?id=${item.id}`)\n }\n >\n {item.name}\n <ListItemTextSecondary>{item.description}</ListItemTextSecondary>\n </ListItemText>\n\n <ListItemMeta>\n <ListActions>\n {!item.system ? (\n <DeleteIcon\n onClick={() => deleteItem(item)}\n data-testid={\"default-data-list.delete\"}\n />\n ) : (\n <Tooltip\n placement={\"bottom\"}\n content={<span>{t`You can't delete this team.`}</span>}\n >\n <DeleteIcon disabled />\n </Tooltip>\n )}\n </ListActions>\n </ListItemMeta>\n </ListItem>\n ))}\n </ScrollList>\n )}\n </DataList>\n );\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_orderBy","_interopRequireDefault","_i18n","_List","_icons","_reactRouter","_useSnackbar2","_reactHooks","_useConfirmationDialog","_graphql","_Tooltip","_Button","_Grid","_Select","_SearchUI","_add18px","_filter24px","_utils","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_templateObject10","t","i18n","ns","SORTERS","label","_taggedTemplateLiteral2","default","sorter","TeamsDataList","_useState","useState","_useState2","_slicedToArray2","filter","setFilter","_useState3","_useState4","sort","setSort","_useRouter","useRouter","history","location","_useSnackbar","useSnackbar","showSnackbar","_useConfirmationDialo","useConfirmationDialog","dataTestId","showConfirmation","_useQuery","useQuery","LIST_TEAMS","listResponse","data","listLoading","loading","_useMutation","useMutation","DELETE_TEAM","refetchQueries","query","_useMutation2","deleteIt","deleteLoading","security","teams","id","URLSearchParams","search","get","filterTeam","useCallback","_ref","name","slug","description","toLowerCase","includes","sortTeams","_deserializeSorters","deserializeSorters","_deserializeSorters2","key","sortBy","orderBy","deleteItem","item","_await$deleteIt","variables","error","deleteTeam","message","push","teamsDataListModalOverlay","useMemo","createElement","DataListModalOverlay","Grid","Cell","span","Select","value","onChange","map","_ref2","filteredData","teamList","DataList","title","actions","ButtonSecondary","onClick","ButtonIcon","icon","ReactComponent","inputPlaceholder","modalOverlay","modalOverlayAction","DataListModalOverlayAction","_ref3","ScrollList","ListItem","selected","ListItemText","concat","ListItemTextSecondary","ListItemMeta","ListActions","system","DeleteIcon","Tooltip","placement","content","disabled","exports"],"sources":["TeamsDataList.tsx"],"sourcesContent":["import React, { useCallback, useMemo, useState } from \"react\";\nimport orderBy from \"lodash/orderBy\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport {\n DataList,\n ScrollList,\n ListItem,\n ListItemText,\n ListItemTextSecondary,\n ListItemMeta,\n ListActions,\n DataListModalOverlayAction,\n DataListModalOverlay\n} from \"@webiny/ui/List\";\nimport { DeleteIcon } from \"@webiny/ui/List/DataList/icons\";\nimport { useRouter } from \"@webiny/react-router\";\nimport { useSnackbar } from \"@webiny/app-admin/hooks/useSnackbar\";\nimport { useQuery, useMutation } from \"@apollo/react-hooks\";\nimport { useConfirmationDialog } from \"@webiny/app-admin/hooks/useConfirmationDialog\";\nimport { LIST_TEAMS, DELETE_TEAM } from \"./graphql\";\nimport { Tooltip } from \"@webiny/ui/Tooltip\";\nimport { ButtonIcon, ButtonSecondary } from \"@webiny/ui/Button\";\nimport { Cell, Grid } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport SearchUI from \"@webiny/app-admin/components/SearchUI\";\nimport { ReactComponent as AddIcon } from \"@webiny/app-admin/assets/icons/add-18px.svg\";\nimport { ReactComponent as FilterIcon } from \"@webiny/app-admin/assets/icons/filter-24px.svg\";\nimport { deserializeSorters } from \"../utils\";\nimport { Team } from \"~/types\";\n\nconst t = i18n.ns(\"app-security/admin/teams/data-list\");\n\nconst SORTERS = [\n {\n label: t`Newest to oldest`,\n sorter: \"createdOn_DESC\"\n },\n {\n label: t`Oldest to newest`,\n sorter: \"createdOn_ASC\"\n },\n {\n label: t`Name A-Z`,\n sorter: \"name_ASC\"\n },\n {\n label: t`Name Z-A`,\n sorter: \"name_DESC\"\n }\n];\n\nexport interface TeamsDataListProps {\n // TODO @ts-refactor delete and go up the tree and sort it out\n [key: string]: any;\n}\nexport const TeamsDataList = () => {\n const [filter, setFilter] = useState(\"\");\n const [sort, setSort] = useState(SORTERS[0].sorter);\n const { history, location } = useRouter();\n const { showSnackbar } = useSnackbar();\n const { showConfirmation } = useConfirmationDialog({\n dataTestId: \"default-data-list.delete-dialog\"\n });\n\n const { data: listResponse, loading: listLoading } = useQuery(LIST_TEAMS);\n\n const [deleteIt, { loading: deleteLoading }] = useMutation(DELETE_TEAM, {\n refetchQueries: [{ query: LIST_TEAMS }]\n });\n\n const data = listLoading && !listResponse ? [] : listResponse.security.teams.data;\n const id = new URLSearchParams(location.search).get(\"id\");\n\n const filterTeam = useCallback(\n ({ name, slug, description }) => {\n return (\n name.toLowerCase().includes(filter) ||\n slug.toLowerCase().includes(filter) ||\n (description && description.toLowerCase().includes(filter))\n );\n },\n [filter]\n );\n\n const sortTeams = useCallback(\n teams => {\n if (!sort) {\n return teams;\n }\n const [key, sortBy] = deserializeSorters(sort);\n return orderBy(teams, [key], [sortBy]);\n },\n [sort]\n );\n\n const deleteItem = useCallback(\n item => {\n showConfirmation(async () => {\n const { data } = await deleteIt({\n variables: item\n });\n\n const { error } = data.security.deleteTeam;\n if (error) {\n return showSnackbar(error.message);\n }\n\n showSnackbar(t`Team \"{slug}\" deleted.`({ slug: item.slug }));\n\n if (id === item.id) {\n history.push(`/access-management/teams`);\n }\n });\n },\n [id]\n );\n\n const teamsDataListModalOverlay = useMemo(\n () => (\n <DataListModalOverlay>\n <Grid>\n <Cell span={12}>\n <Select value={sort} onChange={setSort} label={t`Sort by`}>\n {SORTERS.map(({ label, sorter }) => {\n return (\n <option key={label} value={sorter}>\n {label}\n </option>\n );\n })}\n </Select>\n </Cell>\n </Grid>\n </DataListModalOverlay>\n ),\n [sort]\n );\n\n const filteredData = filter === \"\" ? data : data.filter(filterTeam);\n const teamList = sortTeams(filteredData);\n\n return (\n <DataList\n title={t`Teams`}\n actions={\n <ButtonSecondary\n data-testid=\"new-record-button\"\n onClick={() => history.push(\"/access-management/teams?new=true\")}\n >\n <ButtonIcon icon={<AddIcon />} /> {t`New Team`}\n </ButtonSecondary>\n }\n data={teamList}\n loading={listLoading || deleteLoading}\n search={\n <SearchUI value={filter} onChange={setFilter} inputPlaceholder={t`Search Teams`} />\n }\n modalOverlay={teamsDataListModalOverlay}\n modalOverlayAction={\n <DataListModalOverlayAction\n icon={<FilterIcon />}\n data-testid={\"default-data-list.filter\"}\n />\n }\n >\n {({ data }: { data: Team[] }) => (\n <ScrollList data-testid=\"default-data-list\">\n {data.map(item => (\n <ListItem key={item.id} selected={item.id === id}>\n <ListItemText\n onClick={() =>\n history.push(`/access-management/teams?id=${item.id}`)\n }\n >\n {item.name}\n <ListItemTextSecondary>{item.description}</ListItemTextSecondary>\n </ListItemText>\n\n <ListItemMeta>\n <ListActions>\n {!item.system ? (\n <DeleteIcon\n onClick={() => deleteItem(item)}\n data-testid={\"default-data-list.delete\"}\n />\n ) : (\n <Tooltip\n placement={\"bottom\"}\n content={<span>{t`You can't delete this team.`}</span>}\n >\n <DeleteIcon disabled />\n </Tooltip>\n )}\n </ListActions>\n </ListItemMeta>\n </ListItem>\n ))}\n </ScrollList>\n )}\n </DataList>\n );\n};\n"],"mappings":"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"}
|
|
@@ -6,9 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.TeamsForm = void 0;
|
|
9
|
-
var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
|
|
10
9
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
10
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
14
12
|
var _reactHooks = require("@apollo/react-hooks");
|
|
@@ -82,46 +80,31 @@ var TeamsForm = function TeamsForm() {
|
|
|
82
80
|
var loading = [getQuery, createMutation, updateMutation].find(function (item) {
|
|
83
81
|
return item.loading;
|
|
84
82
|
});
|
|
85
|
-
var onSubmit = (0, _react.useCallback)(
|
|
86
|
-
var
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
isUpdate = data.createdOn;
|
|
92
|
-
_ref2 = isUpdate ? [update, {
|
|
93
|
-
variables: {
|
|
94
|
-
id: data.id,
|
|
95
|
-
data: (0, _pick.default)(data, ["name", "description", "groups"])
|
|
96
|
-
}
|
|
97
|
-
}] : [create, {
|
|
98
|
-
variables: {
|
|
99
|
-
data: (0, _pick.default)(data, ["name", "slug", "description", "groups"])
|
|
100
|
-
}
|
|
101
|
-
}], _ref3 = (0, _slicedToArray2.default)(_ref2, 2), operation = _ref3[0], args = _ref3[1];
|
|
102
|
-
_context.next = 4;
|
|
103
|
-
return operation(args);
|
|
104
|
-
case 4:
|
|
105
|
-
response = _context.sent;
|
|
106
|
-
_response$data$securi = response.data.security.team, team = _response$data$securi.data, error = _response$data$securi.error;
|
|
107
|
-
if (!error) {
|
|
108
|
-
_context.next = 8;
|
|
109
|
-
break;
|
|
110
|
-
}
|
|
111
|
-
return _context.abrupt("return", showSnackbar(error.message));
|
|
112
|
-
case 8:
|
|
113
|
-
!isUpdate && history.push("/access-management/teams?id=".concat(team.id));
|
|
114
|
-
showSnackbar(t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Team saved successfully!"]))));
|
|
115
|
-
case 10:
|
|
116
|
-
case "end":
|
|
117
|
-
return _context.stop();
|
|
83
|
+
var onSubmit = (0, _react.useCallback)(async function (data) {
|
|
84
|
+
var isUpdate = data.createdOn;
|
|
85
|
+
var _ref = isUpdate ? [update, {
|
|
86
|
+
variables: {
|
|
87
|
+
id: data.id,
|
|
88
|
+
data: (0, _pick.default)(data, ["name", "description", "groups"])
|
|
118
89
|
}
|
|
119
|
-
},
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
90
|
+
}] : [create, {
|
|
91
|
+
variables: {
|
|
92
|
+
data: (0, _pick.default)(data, ["name", "slug", "description", "groups"])
|
|
93
|
+
}
|
|
94
|
+
}],
|
|
95
|
+
_ref2 = (0, _slicedToArray2.default)(_ref, 2),
|
|
96
|
+
operation = _ref2[0],
|
|
97
|
+
args = _ref2[1];
|
|
98
|
+
var response = await operation(args);
|
|
99
|
+
var _response$data$securi = response.data.security.team,
|
|
100
|
+
team = _response$data$securi.data,
|
|
101
|
+
error = _response$data$securi.error;
|
|
102
|
+
if (error) {
|
|
103
|
+
return showSnackbar(error.message);
|
|
104
|
+
}
|
|
105
|
+
!isUpdate && history.push("/access-management/teams?id=".concat(team.id));
|
|
106
|
+
showSnackbar(t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Team saved successfully!"]))));
|
|
107
|
+
}, [id]);
|
|
125
108
|
var data = loading ? {} : (0, _get.default)(getQuery, "data.security.team.data", {});
|
|
126
109
|
var showEmptyView = !newTeam && !loading && (0, _isEmpty.default)(data);
|
|
127
110
|
// Render "No content" selected view.
|
|
@@ -141,10 +124,10 @@ var TeamsForm = function TeamsForm() {
|
|
|
141
124
|
return /*#__PURE__*/_react.default.createElement(_form.Form, {
|
|
142
125
|
data: data,
|
|
143
126
|
onSubmit: onSubmit
|
|
144
|
-
}, function (
|
|
145
|
-
var data =
|
|
146
|
-
form =
|
|
147
|
-
Bind =
|
|
127
|
+
}, function (_ref3) {
|
|
128
|
+
var data = _ref3.data,
|
|
129
|
+
form = _ref3.form,
|
|
130
|
+
Bind = _ref3.Bind;
|
|
148
131
|
return /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleForm, null, loading && /*#__PURE__*/_react.default.createElement(_Progress.CircularProgress, null), /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleFormHeader, {
|
|
149
132
|
title: data.name ? data.name : "Untitled"
|
|
150
133
|
}), /*#__PURE__*/_react.default.createElement(_SimpleForm.SimpleFormContent, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
|