@webiny/app-security-access-management 5.27.0 → 5.29.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.
Files changed (53) hide show
  1. package/components/GroupAutocomplete/graphql.js +14 -3
  2. package/components/GroupAutocomplete/graphql.js.map +1 -1
  3. package/components/GroupAutocomplete/index.js +23 -8
  4. package/components/GroupAutocomplete/index.js.map +1 -1
  5. package/components/NotAuthorizedError/NotAuthorizedError.js +39 -18
  6. package/components/NotAuthorizedError/NotAuthorizedError.js.map +1 -1
  7. package/components/NotAuthorizedError/index.js +13 -1
  8. package/components/NotAuthorizedError/index.js.map +1 -1
  9. package/index.js +57 -32
  10. package/index.js.map +1 -1
  11. package/package.json +12 -12
  12. package/plugins/constants.js +9 -2
  13. package/plugins/constants.js.map +1 -1
  14. package/plugins/index.js +20 -6
  15. package/plugins/index.js.map +1 -1
  16. package/plugins/installation.js +47 -25
  17. package/plugins/installation.js.map +1 -1
  18. package/plugins/permissionRenderer/SecurityPermissions.js +69 -46
  19. package/plugins/permissionRenderer/SecurityPermissions.js.map +1 -1
  20. package/plugins/permissionRenderer/index.js +33 -15
  21. package/plugins/permissionRenderer/index.js.map +1 -1
  22. package/plugins/routes.js +37 -19
  23. package/plugins/routes.js.map +1 -1
  24. package/plugins/secureRouteError.js +16 -4
  25. package/plugins/secureRouteError.js.map +1 -1
  26. package/types.js +5 -1
  27. package/types.js.map +1 -1
  28. package/ui/elements/GroupAutocompleteElement.js +34 -18
  29. package/ui/elements/GroupAutocompleteElement.js.map +1 -1
  30. package/ui/views/ApiKeys/ApiKeyForm.js +122 -81
  31. package/ui/views/ApiKeys/ApiKeyForm.js.map +1 -1
  32. package/ui/views/ApiKeys/ApiKeys.js +22 -7
  33. package/ui/views/ApiKeys/ApiKeys.js.map +1 -1
  34. package/ui/views/ApiKeys/ApiKeysDataList.js +101 -66
  35. package/ui/views/ApiKeys/ApiKeysDataList.js.map +1 -1
  36. package/ui/views/ApiKeys/graphql.js +22 -7
  37. package/ui/views/ApiKeys/graphql.js.map +1 -1
  38. package/ui/views/ApiKeys/index.js +18 -1
  39. package/ui/views/ApiKeys/index.js.map +1 -1
  40. package/ui/views/ApiKeys/utils.js +18 -5
  41. package/ui/views/ApiKeys/utils.js.map +1 -1
  42. package/ui/views/Groups/Groups.js +22 -7
  43. package/ui/views/Groups/Groups.js.map +1 -1
  44. package/ui/views/Groups/GroupsDataList.js +107 -71
  45. package/ui/views/Groups/GroupsDataList.js.map +1 -1
  46. package/ui/views/Groups/GroupsForm.js +125 -84
  47. package/ui/views/Groups/GroupsForm.js.map +1 -1
  48. package/ui/views/Groups/graphql.js +22 -7
  49. package/ui/views/Groups/graphql.js.map +1 -1
  50. package/ui/views/Groups/index.js +18 -1
  51. package/ui/views/Groups/index.js.map +1 -1
  52. package/ui/views/utils.js +16 -4
  53. package/ui/views/utils.js.map +1 -1
@@ -1,16 +1,36 @@
1
- import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.SecurityPermissions = void 0;
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireWildcard(require("react"));
15
+
16
+ var _Grid = require("@webiny/ui/Grid");
17
+
18
+ var _Select = require("@webiny/ui/Select");
19
+
20
+ var _i18n = require("@webiny/app/i18n");
21
+
22
+ var _Permissions = require("@webiny/app-admin/components/Permissions");
23
+
24
+ var _form = require("@webiny/form");
25
+
26
+ var _Elevation = require("@webiny/ui/Elevation");
27
+
28
+ var _Typography = require("@webiny/ui/Typography");
2
29
 
3
30
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13;
4
31
 
5
- import React, { Fragment, useCallback, useMemo } from "react";
6
- import { Grid, Cell } from "@webiny/ui/Grid";
7
- import { Select } from "@webiny/ui/Select";
8
- import { i18n } from "@webiny/app/i18n";
9
- import { PermissionInfo, gridNoPaddingClass } from "@webiny/app-admin/components/Permissions";
10
- import { Form } from "@webiny/form";
11
- import { Elevation } from "@webiny/ui/Elevation";
12
- import { Typography } from "@webiny/ui/Typography";
13
- var t = i18n.ns("app-security-admin-users/plugins/permissionRenderer");
32
+ var t = _i18n.i18n.ns("app-security-admin-users/plugins/permissionRenderer");
33
+
14
34
  var SECURITY = "security";
15
35
  var SECURITY_FULL_ACCESS = "".concat(SECURITY, ".*");
16
36
  var SECURITY_GROUP_ACCESS = "".concat(SECURITY, ".group");
@@ -18,10 +38,11 @@ var SECURITY_API_KEY_ACCESS = "".concat(SECURITY, ".apiKey");
18
38
  var FULL_ACCESS = "full";
19
39
  var NO_ACCESS = "no";
20
40
  var CUSTOM_ACCESS = "custom";
21
- export var SecurityPermissions = function SecurityPermissions(_ref) {
41
+
42
+ var SecurityPermissions = function SecurityPermissions(_ref) {
22
43
  var value = _ref.value,
23
44
  onChange = _ref.onChange;
24
- var onFormChange = useCallback(function (data) {
45
+ var onFormChange = (0, _react.useCallback)(function (data) {
25
46
  var newValue = [];
26
47
 
27
48
  if (Array.isArray(value)) {
@@ -59,7 +80,7 @@ export var SecurityPermissions = function SecurityPermissions(_ref) {
59
80
 
60
81
  onChange(newValue);
61
82
  }, [value]);
62
- var formData = useMemo(function () {
83
+ var formData = (0, _react.useMemo)(function () {
63
84
  if (!Array.isArray(value)) {
64
85
  return {
65
86
  accessLevel: NO_ACCESS
@@ -109,68 +130,70 @@ export var SecurityPermissions = function SecurityPermissions(_ref) {
109
130
 
110
131
  return data;
111
132
  }, []);
112
- return /*#__PURE__*/React.createElement(Form, {
133
+ return /*#__PURE__*/_react.default.createElement(_form.Form, {
113
134
  data: formData,
114
135
  onChange: onFormChange
115
136
  }, function (_ref2) {
116
137
  var data = _ref2.data,
117
138
  Bind = _ref2.Bind;
118
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(Grid, {
119
- className: gridNoPaddingClass
120
- }, /*#__PURE__*/React.createElement(Cell, {
139
+ return /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_Grid.Grid, {
140
+ className: _Permissions.gridNoPaddingClass
141
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
121
142
  span: 6
122
- }, /*#__PURE__*/React.createElement(PermissionInfo, {
123
- title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["Access Level"])))
124
- })), /*#__PURE__*/React.createElement(Cell, {
143
+ }, /*#__PURE__*/_react.default.createElement(_Permissions.PermissionInfo, {
144
+ title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Access Level"])))
145
+ })), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
125
146
  span: 6
126
- }, /*#__PURE__*/React.createElement(Bind, {
147
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
127
148
  name: "accessLevel"
128
- }, /*#__PURE__*/React.createElement(Select, {
129
- label: t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["Access Level"])))
130
- }, /*#__PURE__*/React.createElement("option", {
149
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
150
+ label: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Access Level"])))
151
+ }, /*#__PURE__*/_react.default.createElement("option", {
131
152
  value: NO_ACCESS
132
- }, t(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["No access"])))), /*#__PURE__*/React.createElement("option", {
153
+ }, t(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["No access"])))), /*#__PURE__*/_react.default.createElement("option", {
133
154
  value: FULL_ACCESS
134
- }, t(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["Full access"])))), /*#__PURE__*/React.createElement("option", {
155
+ }, t(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["Full access"])))), /*#__PURE__*/_react.default.createElement("option", {
135
156
  value: CUSTOM_ACCESS
136
- }, t(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["Custom access"])))))))), data.accessLevel === CUSTOM_ACCESS && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Elevation, {
157
+ }, t(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["Custom access"])))))))), data.accessLevel === CUSTOM_ACCESS && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
137
158
  z: 1,
138
159
  style: {
139
160
  marginTop: 10
140
161
  }
141
- }, /*#__PURE__*/React.createElement(Grid, null, /*#__PURE__*/React.createElement(Cell, {
162
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
142
163
  span: 12
143
- }, /*#__PURE__*/React.createElement(Typography, {
164
+ }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
144
165
  use: "overline"
145
- }, t(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["API Keys"]))))), /*#__PURE__*/React.createElement(Cell, {
166
+ }, t(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2.default)(["API Keys"]))))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
146
167
  span: 12
147
- }, /*#__PURE__*/React.createElement(Bind, {
168
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
148
169
  name: "apiKeyAccessScope"
149
- }, /*#__PURE__*/React.createElement(Select, {
150
- label: t(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["Access Scope"])))
151
- }, /*#__PURE__*/React.createElement("option", {
170
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
171
+ label: t(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2.default)(["Access Scope"])))
172
+ }, /*#__PURE__*/_react.default.createElement("option", {
152
173
  value: NO_ACCESS
153
- }, t(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["No access"])))), /*#__PURE__*/React.createElement("option", {
174
+ }, t(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2.default)(["No access"])))), /*#__PURE__*/_react.default.createElement("option", {
154
175
  value: FULL_ACCESS
155
- }, t(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["Full access"]))))))))), /*#__PURE__*/React.createElement(Elevation, {
176
+ }, t(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2.default)(["Full access"]))))))))), /*#__PURE__*/_react.default.createElement(_Elevation.Elevation, {
156
177
  z: 1,
157
178
  style: {
158
179
  marginTop: 10
159
180
  }
160
- }, /*#__PURE__*/React.createElement(Grid, null, /*#__PURE__*/React.createElement(Cell, {
181
+ }, /*#__PURE__*/_react.default.createElement(_Grid.Grid, null, /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
161
182
  span: 12
162
- }, /*#__PURE__*/React.createElement(Typography, {
183
+ }, /*#__PURE__*/_react.default.createElement(_Typography.Typography, {
163
184
  use: "overline"
164
- }, t(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["Groups"]))))), /*#__PURE__*/React.createElement(Cell, {
185
+ }, t(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2.default)(["Groups"]))))), /*#__PURE__*/_react.default.createElement(_Grid.Cell, {
165
186
  span: 12
166
- }, /*#__PURE__*/React.createElement(Bind, {
187
+ }, /*#__PURE__*/_react.default.createElement(Bind, {
167
188
  name: "groupAccessScope"
168
- }, /*#__PURE__*/React.createElement(Select, {
169
- label: t(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["Access Scope"])))
170
- }, /*#__PURE__*/React.createElement("option", {
189
+ }, /*#__PURE__*/_react.default.createElement(_Select.Select, {
190
+ label: t(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2.default)(["Access Scope"])))
191
+ }, /*#__PURE__*/_react.default.createElement("option", {
171
192
  value: NO_ACCESS
172
- }, t(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["No access"])))), /*#__PURE__*/React.createElement("option", {
193
+ }, t(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2.default)(["No access"])))), /*#__PURE__*/_react.default.createElement("option", {
173
194
  value: FULL_ACCESS
174
- }, t(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["Full access"])))))))))));
195
+ }, t(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2.default)(["Full access"])))))))))));
175
196
  });
176
- };
197
+ };
198
+
199
+ exports.SecurityPermissions = SecurityPermissions;
@@ -1 +1 @@
1
- {"version":3,"sources":["SecurityPermissions.tsx"],"names":["React","Fragment","useCallback","useMemo","Grid","Cell","Select","i18n","PermissionInfo","gridNoPaddingClass","Form","Elevation","Typography","t","ns","SECURITY","SECURITY_FULL_ACCESS","SECURITY_GROUP_ACCESS","SECURITY_API_KEY_ACCESS","FULL_ACCESS","NO_ACCESS","CUSTOM_ACCESS","SecurityPermissions","value","onChange","onFormChange","data","newValue","Array","isArray","filter","item","name","startsWith","permissions","accessLevel","push","groupAccessScope","apiKeyAccessScope","length","formData","hasFullAccess","find","hasGroupAccess","hasApiKeyAccess","Bind","marginTop"],"mappings":"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","sourcesContent":["import React, { Fragment, useCallback, useMemo } from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { PermissionInfo, gridNoPaddingClass } from \"@webiny/app-admin/components/Permissions\";\nimport { Form } from \"@webiny/form\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { SecurityPermission } from \"@webiny/app-security/types\";\n\nconst t = i18n.ns(\"app-security-admin-users/plugins/permissionRenderer\");\n\nconst SECURITY = \"security\";\nconst SECURITY_FULL_ACCESS = `${SECURITY}.*`;\nconst SECURITY_GROUP_ACCESS = `${SECURITY}.group`;\nconst SECURITY_API_KEY_ACCESS = `${SECURITY}.apiKey`;\nconst FULL_ACCESS = \"full\";\nconst NO_ACCESS = \"no\";\nconst CUSTOM_ACCESS = \"custom\";\n\ninterface SecurityPermissionsProps {\n value: SecurityPermission[];\n onChange: (value: SecurityPermission[]) => void;\n}\nexport const SecurityPermissions: React.FC<SecurityPermissionsProps> = ({ value, onChange }) => {\n const onFormChange = useCallback(\n data => {\n let newValue: SecurityPermission[] = [];\n if (Array.isArray(value)) {\n // Let's just filter out the `security*` permission objects, it's easier to build new ones from scratch.\n newValue = value.filter(item => !item.name.startsWith(SECURITY));\n }\n\n const permissions = [];\n if (data.accessLevel === FULL_ACCESS) {\n permissions.push({ name: SECURITY_FULL_ACCESS });\n } else if (data.accessLevel === CUSTOM_ACCESS) {\n if (data.groupAccessScope === FULL_ACCESS) {\n permissions.push({ name: SECURITY_GROUP_ACCESS });\n }\n\n if (data.apiKeyAccessScope === FULL_ACCESS) {\n permissions.push({ name: SECURITY_API_KEY_ACCESS });\n }\n }\n\n if (permissions && permissions.length) {\n newValue.push(...permissions);\n }\n\n onChange(newValue);\n },\n [value]\n );\n\n const formData = useMemo(() => {\n if (!Array.isArray(value)) {\n return { accessLevel: NO_ACCESS };\n }\n\n const hasFullAccess = value.find(\n item => item.name === SECURITY_FULL_ACCESS || item.name === \"*\"\n );\n\n if (hasFullAccess) {\n return { accessLevel: FULL_ACCESS };\n }\n\n const permissions = value.filter(item => item.name.startsWith(SECURITY));\n if (permissions.length === 0) {\n return { accessLevel: NO_ACCESS };\n }\n\n const data = {\n accessLevel: CUSTOM_ACCESS,\n groupAccessScope: NO_ACCESS,\n apiKeyAccessScope: NO_ACCESS\n };\n\n const hasGroupAccess = permissions.find(item => item.name === SECURITY_GROUP_ACCESS);\n if (hasGroupAccess) {\n data.groupAccessScope = FULL_ACCESS;\n }\n\n const hasApiKeyAccess = permissions.find(item => item.name === SECURITY_API_KEY_ACCESS);\n if (hasApiKeyAccess) {\n data.apiKeyAccessScope = FULL_ACCESS;\n }\n\n return data;\n }, []);\n\n return (\n <Form data={formData} onChange={onFormChange}>\n {({ data, Bind }) => {\n return (\n <Fragment>\n <Grid className={gridNoPaddingClass}>\n <Cell span={6}>\n <PermissionInfo title={t`Access Level`} />\n </Cell>\n <Cell span={6}>\n <Bind name={\"accessLevel\"}>\n <Select label={t`Access Level`}>\n <option value={NO_ACCESS}>{t`No access`}</option>\n <option value={FULL_ACCESS}>{t`Full access`}</option>\n <option value={CUSTOM_ACCESS}>{t`Custom access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n {data.accessLevel === CUSTOM_ACCESS && (\n <React.Fragment>\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{t`API Keys`}</Typography>\n </Cell>\n <Cell span={12}>\n <Bind name={\"apiKeyAccessScope\"}>\n <Select label={t`Access Scope`}>\n <option\n value={NO_ACCESS}\n >{t`No access`}</option>\n <option\n value={FULL_ACCESS}\n >{t`Full access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Elevation>\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{t`Groups`}</Typography>\n </Cell>\n <Cell span={12}>\n <Bind name={\"groupAccessScope\"}>\n <Select label={t`Access Scope`}>\n <option\n value={NO_ACCESS}\n >{t`No access`}</option>\n <option\n value={FULL_ACCESS}\n >{t`Full access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Elevation>\n </React.Fragment>\n )}\n </Fragment>\n );\n }}\n </Form>\n );\n};\n"]}
1
+ {"version":3,"names":["t","i18n","ns","SECURITY","SECURITY_FULL_ACCESS","SECURITY_GROUP_ACCESS","SECURITY_API_KEY_ACCESS","FULL_ACCESS","NO_ACCESS","CUSTOM_ACCESS","SecurityPermissions","value","onChange","onFormChange","useCallback","data","newValue","Array","isArray","filter","item","name","startsWith","permissions","accessLevel","push","groupAccessScope","apiKeyAccessScope","length","formData","useMemo","hasFullAccess","find","hasGroupAccess","hasApiKeyAccess","Bind","gridNoPaddingClass","marginTop"],"sources":["SecurityPermissions.tsx"],"sourcesContent":["import React, { Fragment, useCallback, useMemo } from \"react\";\nimport { Grid, Cell } from \"@webiny/ui/Grid\";\nimport { Select } from \"@webiny/ui/Select\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { PermissionInfo, gridNoPaddingClass } from \"@webiny/app-admin/components/Permissions\";\nimport { Form } from \"@webiny/form\";\nimport { Elevation } from \"@webiny/ui/Elevation\";\nimport { Typography } from \"@webiny/ui/Typography\";\nimport { SecurityPermission } from \"@webiny/app-security/types\";\n\nconst t = i18n.ns(\"app-security-admin-users/plugins/permissionRenderer\");\n\nconst SECURITY = \"security\";\nconst SECURITY_FULL_ACCESS = `${SECURITY}.*`;\nconst SECURITY_GROUP_ACCESS = `${SECURITY}.group`;\nconst SECURITY_API_KEY_ACCESS = `${SECURITY}.apiKey`;\nconst FULL_ACCESS = \"full\";\nconst NO_ACCESS = \"no\";\nconst CUSTOM_ACCESS = \"custom\";\n\ninterface SecurityPermissionsProps {\n value: SecurityPermission[];\n onChange: (value: SecurityPermission[]) => void;\n}\nexport const SecurityPermissions: React.FC<SecurityPermissionsProps> = ({ value, onChange }) => {\n const onFormChange = useCallback(\n data => {\n let newValue: SecurityPermission[] = [];\n if (Array.isArray(value)) {\n // Let's just filter out the `security*` permission objects, it's easier to build new ones from scratch.\n newValue = value.filter(item => !item.name.startsWith(SECURITY));\n }\n\n const permissions = [];\n if (data.accessLevel === FULL_ACCESS) {\n permissions.push({ name: SECURITY_FULL_ACCESS });\n } else if (data.accessLevel === CUSTOM_ACCESS) {\n if (data.groupAccessScope === FULL_ACCESS) {\n permissions.push({ name: SECURITY_GROUP_ACCESS });\n }\n\n if (data.apiKeyAccessScope === FULL_ACCESS) {\n permissions.push({ name: SECURITY_API_KEY_ACCESS });\n }\n }\n\n if (permissions && permissions.length) {\n newValue.push(...permissions);\n }\n\n onChange(newValue);\n },\n [value]\n );\n\n const formData = useMemo(() => {\n if (!Array.isArray(value)) {\n return { accessLevel: NO_ACCESS };\n }\n\n const hasFullAccess = value.find(\n item => item.name === SECURITY_FULL_ACCESS || item.name === \"*\"\n );\n\n if (hasFullAccess) {\n return { accessLevel: FULL_ACCESS };\n }\n\n const permissions = value.filter(item => item.name.startsWith(SECURITY));\n if (permissions.length === 0) {\n return { accessLevel: NO_ACCESS };\n }\n\n const data = {\n accessLevel: CUSTOM_ACCESS,\n groupAccessScope: NO_ACCESS,\n apiKeyAccessScope: NO_ACCESS\n };\n\n const hasGroupAccess = permissions.find(item => item.name === SECURITY_GROUP_ACCESS);\n if (hasGroupAccess) {\n data.groupAccessScope = FULL_ACCESS;\n }\n\n const hasApiKeyAccess = permissions.find(item => item.name === SECURITY_API_KEY_ACCESS);\n if (hasApiKeyAccess) {\n data.apiKeyAccessScope = FULL_ACCESS;\n }\n\n return data;\n }, []);\n\n return (\n <Form data={formData} onChange={onFormChange}>\n {({ data, Bind }) => {\n return (\n <Fragment>\n <Grid className={gridNoPaddingClass}>\n <Cell span={6}>\n <PermissionInfo title={t`Access Level`} />\n </Cell>\n <Cell span={6}>\n <Bind name={\"accessLevel\"}>\n <Select label={t`Access Level`}>\n <option value={NO_ACCESS}>{t`No access`}</option>\n <option value={FULL_ACCESS}>{t`Full access`}</option>\n <option value={CUSTOM_ACCESS}>{t`Custom access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n {data.accessLevel === CUSTOM_ACCESS && (\n <React.Fragment>\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{t`API Keys`}</Typography>\n </Cell>\n <Cell span={12}>\n <Bind name={\"apiKeyAccessScope\"}>\n <Select label={t`Access Scope`}>\n <option\n value={NO_ACCESS}\n >{t`No access`}</option>\n <option\n value={FULL_ACCESS}\n >{t`Full access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Elevation>\n <Elevation z={1} style={{ marginTop: 10 }}>\n <Grid>\n <Cell span={12}>\n <Typography use={\"overline\"}>{t`Groups`}</Typography>\n </Cell>\n <Cell span={12}>\n <Bind name={\"groupAccessScope\"}>\n <Select label={t`Access Scope`}>\n <option\n value={NO_ACCESS}\n >{t`No access`}</option>\n <option\n value={FULL_ACCESS}\n >{t`Full access`}</option>\n </Select>\n </Bind>\n </Cell>\n </Grid>\n </Elevation>\n </React.Fragment>\n )}\n </Fragment>\n );\n }}\n </Form>\n );\n};\n"],"mappings":"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"}
@@ -1,21 +1,39 @@
1
- import _taggedTemplateLiteral from "@babel/runtime/helpers/taggedTemplateLiteral";
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _i18n = require("@webiny/app/i18n");
15
+
16
+ var _Accordion = require("@webiny/ui/Accordion");
17
+
18
+ var _baselineSecurity24px = require("@webiny/app-admin/assets/icons/baseline-security-24px.svg");
19
+
20
+ var _SecurityPermissions = require("./SecurityPermissions");
21
+
22
+ var _PermissionRendererPlugin = require("@webiny/app-admin/plugins/PermissionRendererPlugin");
2
23
 
3
24
  var _templateObject, _templateObject2;
4
25
 
5
- import React from "react";
6
- import { i18n } from "@webiny/app/i18n";
7
- import { AccordionItem } from "@webiny/ui/Accordion";
8
- import { ReactComponent as SecurityIcon } from "@webiny/app-admin/assets/icons/baseline-security-24px.svg";
9
- import { SecurityPermissions } from "./SecurityPermissions";
10
- import { PermissionRendererPlugin } from "@webiny/app-admin/plugins/PermissionRendererPlugin";
11
- var t = i18n.ns("app-security-admin-users/plugins/permissionRenderer");
12
- export default new PermissionRendererPlugin({
26
+ var t = _i18n.i18n.ns("app-security-admin-users/plugins/permissionRenderer");
27
+
28
+ var _default = new _PermissionRendererPlugin.PermissionRendererPlugin({
13
29
  render: function render(props) {
14
- return /*#__PURE__*/React.createElement(AccordionItem, {
15
- icon: /*#__PURE__*/React.createElement(SecurityIcon, null),
16
- title: t(_templateObject || (_templateObject = _taggedTemplateLiteral(["Security"]))),
17
- description: t(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["Manage Security app access permissions."]))),
30
+ return /*#__PURE__*/_react.default.createElement(_Accordion.AccordionItem, {
31
+ icon: /*#__PURE__*/_react.default.createElement(_baselineSecurity24px.ReactComponent, null),
32
+ title: t(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["Security"]))),
33
+ description: t(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["Manage Security app access permissions."]))),
18
34
  "data-testid": "permission.security"
19
- }, /*#__PURE__*/React.createElement(SecurityPermissions, props));
35
+ }, /*#__PURE__*/_react.default.createElement(_SecurityPermissions.SecurityPermissions, props));
20
36
  }
21
- });
37
+ });
38
+
39
+ exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["index.tsx"],"names":["React","i18n","AccordionItem","ReactComponent","SecurityIcon","SecurityPermissions","PermissionRendererPlugin","t","ns","render","props"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAASC,IAAT,QAAqB,kBAArB;AACA,SAASC,aAAT,QAA8B,sBAA9B;AACA,SAASC,cAAc,IAAIC,YAA3B,QAA+C,2DAA/C;AACA,SAASC,mBAAT;AACA,SAASC,wBAAT,QAAyC,oDAAzC;AAEA,IAAMC,CAAC,GAAGN,IAAI,CAACO,EAAL,CAAQ,qDAAR,CAAV;AAEA,eAAe,IAAIF,wBAAJ,CAA6B;AACxCG,EAAAA,MADwC,kBACjCC,KADiC,EAC1B;AACV,wBACI,oBAAC,aAAD;AACI,MAAA,IAAI,eAAE,oBAAC,YAAD,OADV;AAEI,MAAA,KAAK,EAAEH,CAAF,6EAFT;AAGI,MAAA,WAAW,EAAEA,CAAF,8GAHf;AAII,qBAAa;AAJjB,oBAMI,oBAAC,mBAAD,EAAyBG,KAAzB,CANJ,CADJ;AAUH;AAZuC,CAA7B,CAAf","sourcesContent":["import React from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AccordionItem } from \"@webiny/ui/Accordion\";\nimport { ReactComponent as SecurityIcon } from \"@webiny/app-admin/assets/icons/baseline-security-24px.svg\";\nimport { SecurityPermissions } from \"./SecurityPermissions\";\nimport { PermissionRendererPlugin } from \"@webiny/app-admin/plugins/PermissionRendererPlugin\";\n\nconst t = i18n.ns(\"app-security-admin-users/plugins/permissionRenderer\");\n\nexport default new PermissionRendererPlugin({\n render(props) {\n return (\n <AccordionItem\n icon={<SecurityIcon />}\n title={t`Security`}\n description={t`Manage Security app access permissions.`}\n data-testid={\"permission.security\"}\n >\n <SecurityPermissions {...props} />\n </AccordionItem>\n );\n }\n});\n"]}
1
+ {"version":3,"names":["t","i18n","ns","PermissionRendererPlugin","render","props"],"sources":["index.tsx"],"sourcesContent":["import React from \"react\";\nimport { i18n } from \"@webiny/app/i18n\";\nimport { AccordionItem } from \"@webiny/ui/Accordion\";\nimport { ReactComponent as SecurityIcon } from \"@webiny/app-admin/assets/icons/baseline-security-24px.svg\";\nimport { SecurityPermissions } from \"./SecurityPermissions\";\nimport { PermissionRendererPlugin } from \"@webiny/app-admin/plugins/PermissionRendererPlugin\";\n\nconst t = i18n.ns(\"app-security-admin-users/plugins/permissionRenderer\");\n\nexport default new PermissionRendererPlugin({\n render(props) {\n return (\n <AccordionItem\n icon={<SecurityIcon />}\n title={t`Security`}\n description={t`Manage Security app access permissions.`}\n data-testid={\"permission.security\"}\n >\n <SecurityPermissions {...props} />\n </AccordionItem>\n );\n }\n});\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,CAAC,GAAGC,UAAA,CAAKC,EAAL,CAAQ,qDAAR,CAAV;;eAEe,IAAIC,kDAAJ,CAA6B;EACxCC,MADwC,kBACjCC,KADiC,EAC1B;IACV,oBACI,6BAAC,wBAAD;MACI,IAAI,eAAE,6BAAC,oCAAD,OADV;MAEI,KAAK,EAAEL,CAAF,2FAFT;MAGI,WAAW,EAAEA,CAAF,4HAHf;MAII,eAAa;IAJjB,gBAMI,6BAAC,wCAAD,EAAyBK,KAAzB,CANJ,CADJ;EAUH;AAZuC,CAA7B,C"}
package/plugins/routes.js CHANGED
@@ -1,38 +1,56 @@
1
- import React from "react";
2
- import Helmet from "react-helmet";
3
- import { Route } from "@webiny/react-router";
4
- import { AdminLayout } from "@webiny/app-admin/components/AdminLayout";
5
- import { SecureRoute } from "@webiny/app-security/components";
6
- import { Groups } from "../ui/views/Groups";
7
- import { ApiKeys } from "../ui/views/ApiKeys";
8
- import { Permission } from "./constants";
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _reactHelmet = _interopRequireDefault(require("react-helmet"));
13
+
14
+ var _reactRouter = require("@webiny/react-router");
15
+
16
+ var _AdminLayout = require("@webiny/app-admin/components/AdminLayout");
17
+
18
+ var _components = require("@webiny/app-security/components");
19
+
20
+ var _Groups = require("../ui/views/Groups");
21
+
22
+ var _ApiKeys = require("../ui/views/ApiKeys");
23
+
24
+ var _constants = require("./constants");
25
+
9
26
  var plugins = [{
10
27
  name: "route-security-groups",
11
28
  type: "route",
12
- route: /*#__PURE__*/React.createElement(Route, {
29
+ route: /*#__PURE__*/_react.default.createElement(_reactRouter.Route, {
13
30
  exact: true,
14
31
  path: "/access-management/groups",
15
32
  render: function render() {
16
- return /*#__PURE__*/React.createElement(SecureRoute, {
17
- permission: Permission.Groups
18
- }, /*#__PURE__*/React.createElement(AdminLayout, null, /*#__PURE__*/React.createElement(Helmet, {
33
+ return /*#__PURE__*/_react.default.createElement(_components.SecureRoute, {
34
+ permission: _constants.Permission.Groups
35
+ }, /*#__PURE__*/_react.default.createElement(_AdminLayout.AdminLayout, null, /*#__PURE__*/_react.default.createElement(_reactHelmet.default, {
19
36
  title: "Access Management - Groups"
20
- }), /*#__PURE__*/React.createElement(Groups, null)));
37
+ }), /*#__PURE__*/_react.default.createElement(_Groups.Groups, null)));
21
38
  }
22
39
  })
23
40
  }, {
24
41
  name: "route-security-api-keys",
25
42
  type: "route",
26
- route: /*#__PURE__*/React.createElement(Route, {
43
+ route: /*#__PURE__*/_react.default.createElement(_reactRouter.Route, {
27
44
  exact: true,
28
45
  path: "/access-management/api-keys",
29
46
  render: function render() {
30
- return /*#__PURE__*/React.createElement(SecureRoute, {
31
- permission: Permission.ApiKeys
32
- }, /*#__PURE__*/React.createElement(AdminLayout, {
47
+ return /*#__PURE__*/_react.default.createElement(_components.SecureRoute, {
48
+ permission: _constants.Permission.ApiKeys
49
+ }, /*#__PURE__*/_react.default.createElement(_AdminLayout.AdminLayout, {
33
50
  title: "Access Management - API Keys"
34
- }, /*#__PURE__*/React.createElement(ApiKeys, null)));
51
+ }, /*#__PURE__*/_react.default.createElement(_ApiKeys.ApiKeys, null)));
35
52
  }
36
53
  })
37
54
  }];
38
- export default plugins;
55
+ var _default = plugins;
56
+ exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["routes.tsx"],"names":["React","Helmet","Route","AdminLayout","SecureRoute","Groups","ApiKeys","Permission","plugins","name","type","route"],"mappings":"AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,OAAOC,MAAP,MAAmB,cAAnB;AACA,SAASC,KAAT,QAAsB,sBAAtB;AACA,SAASC,WAAT,QAA4B,0CAA5B;AACA,SAASC,WAAT,QAA4B,iCAA5B;AAEA,SAASC,MAAT;AACA,SAASC,OAAT;AACA,SAASC,UAAT;AAEA,IAAMC,OAAsB,GAAG,CAC3B;AACIC,EAAAA,IAAI,EAAE,uBADV;AAEIC,EAAAA,IAAI,EAAE,OAFV;AAGIC,EAAAA,KAAK,eACD,oBAAC,KAAD;AACI,IAAA,KAAK,MADT;AAEI,IAAA,IAAI,EAAE,2BAFV;AAGI,IAAA,MAAM,EAAE;AAAA,0BACJ,oBAAC,WAAD;AAAa,QAAA,UAAU,EAAEJ,UAAU,CAACF;AAApC,sBACI,oBAAC,WAAD,qBACI,oBAAC,MAAD;AAAQ,QAAA,KAAK,EAAE;AAAf,QADJ,eAEI,oBAAC,MAAD,OAFJ,CADJ,CADI;AAAA;AAHZ;AAJR,CAD2B,EAmB3B;AACII,EAAAA,IAAI,EAAE,yBADV;AAEIC,EAAAA,IAAI,EAAE,OAFV;AAGIC,EAAAA,KAAK,eACD,oBAAC,KAAD;AACI,IAAA,KAAK,MADT;AAEI,IAAA,IAAI,EAAE,6BAFV;AAGI,IAAA,MAAM,EAAE;AAAA,0BACJ,oBAAC,WAAD;AAAa,QAAA,UAAU,EAAEJ,UAAU,CAACD;AAApC,sBACI,oBAAC,WAAD;AAAa,QAAA,KAAK,EAAE;AAApB,sBACI,oBAAC,OAAD,OADJ,CADJ,CADI;AAAA;AAHZ;AAJR,CAnB2B,CAA/B;AAsCA,eAAeE,OAAf","sourcesContent":["import React from \"react\";\nimport Helmet from \"react-helmet\";\nimport { Route } from \"@webiny/react-router\";\nimport { AdminLayout } from \"@webiny/app-admin/components/AdminLayout\";\nimport { SecureRoute } from \"@webiny/app-security/components\";\nimport { RoutePlugin } from \"@webiny/app/types\";\nimport { Groups } from \"~/ui/views/Groups\";\nimport { ApiKeys } from \"~/ui/views/ApiKeys\";\nimport { Permission } from \"./constants\";\n\nconst plugins: RoutePlugin[] = [\n {\n name: \"route-security-groups\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/access-management/groups\"}\n render={() => (\n <SecureRoute permission={Permission.Groups}>\n <AdminLayout>\n <Helmet title={\"Access Management - Groups\"} />\n <Groups />\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n },\n {\n name: \"route-security-api-keys\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/access-management/api-keys\"}\n render={() => (\n <SecureRoute permission={Permission.ApiKeys}>\n <AdminLayout title={\"Access Management - API Keys\"}>\n <ApiKeys />\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n }\n];\n\nexport default plugins;\n"]}
1
+ {"version":3,"names":["plugins","name","type","route","Permission","Groups","ApiKeys"],"sources":["routes.tsx"],"sourcesContent":["import React from \"react\";\nimport Helmet from \"react-helmet\";\nimport { Route } from \"@webiny/react-router\";\nimport { AdminLayout } from \"@webiny/app-admin/components/AdminLayout\";\nimport { SecureRoute } from \"@webiny/app-security/components\";\nimport { RoutePlugin } from \"@webiny/app/types\";\nimport { Groups } from \"~/ui/views/Groups\";\nimport { ApiKeys } from \"~/ui/views/ApiKeys\";\nimport { Permission } from \"./constants\";\n\nconst plugins: RoutePlugin[] = [\n {\n name: \"route-security-groups\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/access-management/groups\"}\n render={() => (\n <SecureRoute permission={Permission.Groups}>\n <AdminLayout>\n <Helmet title={\"Access Management - Groups\"} />\n <Groups />\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n },\n {\n name: \"route-security-api-keys\",\n type: \"route\",\n route: (\n <Route\n exact\n path={\"/access-management/api-keys\"}\n render={() => (\n <SecureRoute permission={Permission.ApiKeys}>\n <AdminLayout title={\"Access Management - API Keys\"}>\n <ApiKeys />\n </AdminLayout>\n </SecureRoute>\n )}\n />\n )\n }\n];\n\nexport default plugins;\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AAEA,IAAMA,OAAsB,GAAG,CAC3B;EACIC,IAAI,EAAE,uBADV;EAEIC,IAAI,EAAE,OAFV;EAGIC,KAAK,eACD,6BAAC,kBAAD;IACI,KAAK,MADT;IAEI,IAAI,EAAE,2BAFV;IAGI,MAAM,EAAE;MAAA,oBACJ,6BAAC,uBAAD;QAAa,UAAU,EAAEC,qBAAA,CAAWC;MAApC,gBACI,6BAAC,wBAAD,qBACI,6BAAC,oBAAD;QAAQ,KAAK,EAAE;MAAf,EADJ,eAEI,6BAAC,cAAD,OAFJ,CADJ,CADI;IAAA;EAHZ;AAJR,CAD2B,EAmB3B;EACIJ,IAAI,EAAE,yBADV;EAEIC,IAAI,EAAE,OAFV;EAGIC,KAAK,eACD,6BAAC,kBAAD;IACI,KAAK,MADT;IAEI,IAAI,EAAE,6BAFV;IAGI,MAAM,EAAE;MAAA,oBACJ,6BAAC,uBAAD;QAAa,UAAU,EAAEC,qBAAA,CAAWE;MAApC,gBACI,6BAAC,wBAAD;QAAa,KAAK,EAAE;MAApB,gBACI,6BAAC,gBAAD,OADJ,CADJ,CADI;IAAA;EAHZ;AAJR,CAnB2B,CAA/B;eAsCeN,O"}
@@ -1,10 +1,22 @@
1
- import * as React from "react";
2
- import { NotAuthorizedError } from "../components/NotAuthorizedError";
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var React = _interopRequireWildcard(require("react"));
11
+
12
+ var _NotAuthorizedError = require("../components/NotAuthorizedError");
13
+
3
14
  var plugin = {
4
15
  type: "secure-route-error",
5
16
  name: "secure-route-error",
6
17
  render: function render() {
7
- return /*#__PURE__*/React.createElement(NotAuthorizedError, null);
18
+ return /*#__PURE__*/React.createElement(_NotAuthorizedError.NotAuthorizedError, null);
8
19
  }
9
20
  };
10
- export default plugin;
21
+ var _default = plugin;
22
+ exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["secureRouteError.tsx"],"names":["React","NotAuthorizedError","plugin","type","name","render"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AAEA,SAASC,kBAAT;AAIA,IAAMC,MAA8B,GAAG;AACnCC,EAAAA,IAAI,EAAE,oBAD6B;AAEnCC,EAAAA,IAAI,EAAE,oBAF6B;AAGnCC,EAAAA,MAHmC,oBAGN;AACzB,wBAAO,oBAAC,kBAAD,OAAP;AACH;AALkC,CAAvC;AAQA,eAAeH,MAAf","sourcesContent":["import * as React from \"react\";\nimport { Plugin } from \"@webiny/plugins/types\";\nimport { NotAuthorizedError } from \"~/components/NotAuthorizedError\";\n\ntype SecureRouteErrorPlugin = Plugin & { render: () => React.ReactNode };\n\nconst plugin: SecureRouteErrorPlugin = {\n type: \"secure-route-error\",\n name: \"secure-route-error\",\n render(): React.ReactElement {\n return <NotAuthorizedError />;\n }\n};\n\nexport default plugin;\n"]}
1
+ {"version":3,"names":["plugin","type","name","render"],"sources":["secureRouteError.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Plugin } from \"@webiny/plugins/types\";\nimport { NotAuthorizedError } from \"~/components/NotAuthorizedError\";\n\ntype SecureRouteErrorPlugin = Plugin & { render: () => React.ReactNode };\n\nconst plugin: SecureRouteErrorPlugin = {\n type: \"secure-route-error\",\n name: \"secure-route-error\",\n render(): React.ReactElement {\n return <NotAuthorizedError />;\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;AAAA;;AAEA;;AAIA,IAAMA,MAA8B,GAAG;EACnCC,IAAI,EAAE,oBAD6B;EAEnCC,IAAI,EAAE,oBAF6B;EAGnCC,MAHmC,oBAGN;IACzB,oBAAO,oBAAC,sCAAD,OAAP;EACH;AALkC,CAAvC;eAQeH,M"}
package/types.js CHANGED
@@ -1 +1,5 @@
1
- export {};
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
package/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[]}
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { SecurityPermission } from \"@webiny/app-security/types\";\n\nexport interface Group {\n id: string;\n name: string;\n description: string;\n slug: string;\n system?: boolean;\n}\nexport interface ApiKey {\n id: string;\n token: string;\n name: string;\n description: string;\n permissions: SecurityPermission[];\n}\n"],"mappings":""}
@@ -1,22 +1,37 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _inherits from "@babel/runtime/helpers/inherits";
4
- import _createSuper from "@babel/runtime/helpers/createSuper";
5
- import React from "react";
6
- import { InputElement } from "@webiny/app-admin/ui/elements/form/InputElement";
7
- import { GroupAutocomplete } from "../../components/GroupAutocomplete";
8
- export var GroupAutocompleteElement = /*#__PURE__*/function (_InputElement) {
9
- _inherits(GroupAutocompleteElement, _InputElement);
10
-
11
- var _super = _createSuper(GroupAutocompleteElement);
1
+ "use strict";
12
2
 
13
- function GroupAutocompleteElement() {
14
- _classCallCheck(this, GroupAutocompleteElement);
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.GroupAutocompleteElement = void 0;
9
+
10
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _createSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/createSuper"));
17
+
18
+ var _react = _interopRequireDefault(require("react"));
15
19
 
20
+ var _InputElement2 = require("@webiny/app-admin/ui/elements/form/InputElement");
21
+
22
+ var _GroupAutocomplete = require("../../components/GroupAutocomplete");
23
+
24
+ var GroupAutocompleteElement = /*#__PURE__*/function (_InputElement) {
25
+ (0, _inherits2.default)(GroupAutocompleteElement, _InputElement);
26
+
27
+ var _super = (0, _createSuper2.default)(GroupAutocompleteElement);
28
+
29
+ function GroupAutocompleteElement() {
30
+ (0, _classCallCheck2.default)(this, GroupAutocompleteElement);
16
31
  return _super.apply(this, arguments);
17
32
  }
18
33
 
19
- _createClass(GroupAutocompleteElement, [{
34
+ (0, _createClass2.default)(GroupAutocompleteElement, [{
20
35
  key: "render",
21
36
  value: function render(props) {
22
37
  var formProps = props.formProps;
@@ -33,16 +48,17 @@ export var GroupAutocompleteElement = /*#__PURE__*/function (_InputElement) {
33
48
  console.log(validators);
34
49
  }
35
50
 
36
- return /*#__PURE__*/React.createElement(Bind, {
51
+ return /*#__PURE__*/_react.default.createElement(Bind, {
37
52
  name: this.id,
38
53
  validators: typeof validators === "function" ? validators({
39
54
  formProps: formProps
40
55
  }) : []
41
- }, /*#__PURE__*/React.createElement(GroupAutocomplete, {
56
+ }, /*#__PURE__*/_react.default.createElement(_GroupAutocomplete.GroupAutocomplete, {
42
57
  label: "Group"
43
58
  }));
44
59
  }
45
60
  }]);
46
-
47
61
  return GroupAutocompleteElement;
48
- }(InputElement);
62
+ }(_InputElement2.InputElement);
63
+
64
+ exports.GroupAutocompleteElement = GroupAutocompleteElement;
@@ -1 +1 @@
1
- {"version":3,"sources":["GroupAutocompleteElement.tsx"],"names":["React","InputElement","GroupAutocomplete","GroupAutocompleteElement","props","formProps","Bind","validators","config","console","log","id"],"mappings":";;;;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AAEA,SAASC,YAAT,QAA6B,iDAA7B;AACA,SAASC,iBAAT;AAGA,WAAaC,wBAAb;AAAA;;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA,WACI,gBAAuBC,KAAvB,EAA+E;AAC3E,UAAQC,SAAR,GAAsBD,KAAtB,CAAQC,SAAR;AACA,iBAAiBA,SAAjB;AAAA,UAAQC,IAAR,QAAQA,IAAR;AACA,UAAMC,UAAU,GAAG,KAAKC,MAAL,CAAYD,UAA/B;AACA;AACR;AACA;AACA;;AACQ,UAAIA,UAAU,IAAI,OAAOA,UAAP,KAAsB,UAAxC,EAAoD;AAChDE,QAAAA,OAAO,CAACC,GAAR,CACI,4HADJ;AAGAD,QAAAA,OAAO,CAACC,GAAR,CAAYH,UAAZ;AACH;;AACD,0BACI,oBAAC,IAAD;AACI,QAAA,IAAI,EAAE,KAAKI,EADf;AAEI,QAAA,UAAU,EAAE,OAAOJ,UAAP,KAAsB,UAAtB,GAAmCA,UAAU,CAAC;AAAEF,UAAAA,SAAS,EAATA;AAAF,SAAD,CAA7C,GAA+D;AAF/E,sBAII,oBAAC,iBAAD;AAAmB,QAAA,KAAK,EAAE;AAA1B,QAJJ,CADJ;AAQH;AAvBL;;AAAA;AAAA,EAA8CJ,YAA9C","sourcesContent":["import React from \"react\";\nimport { FormRenderPropParams } from \"@webiny/form\";\nimport { InputElement } from \"@webiny/app-admin/ui/elements/form/InputElement\";\nimport { GroupAutocomplete } from \"~/components/GroupAutocomplete\";\nimport { FormFieldElementRenderProps } from \"@webiny/app-admin/ui/elements/form/FormFieldElement\";\n\nexport class GroupAutocompleteElement extends InputElement {\n public override render(props: FormFieldElementRenderProps): React.ReactElement {\n const { formProps } = props;\n const { Bind } = formProps as FormRenderPropParams;\n const validators = this.config.validators;\n /**\n * TODO @ts-refactor @bruno\n * Figure out what can validators be.\n */\n if (validators && typeof validators !== \"function\") {\n console.log(\n \"packages/app-security-access-management/src/ui/elements/GroupAutocompleteElement.tsx validators is set but not a function.\"\n );\n console.log(validators);\n }\n return (\n <Bind\n name={this.id}\n validators={typeof validators === \"function\" ? validators({ formProps }) : []}\n >\n <GroupAutocomplete label={\"Group\"} />\n </Bind>\n );\n }\n}\n"]}
1
+ {"version":3,"names":["GroupAutocompleteElement","props","formProps","Bind","validators","config","console","log","id","InputElement"],"sources":["GroupAutocompleteElement.tsx"],"sourcesContent":["import React from \"react\";\nimport { FormRenderPropParams } from \"@webiny/form\";\nimport { InputElement } from \"@webiny/app-admin/ui/elements/form/InputElement\";\nimport { GroupAutocomplete } from \"~/components/GroupAutocomplete\";\nimport { FormFieldElementRenderProps } from \"@webiny/app-admin/ui/elements/form/FormFieldElement\";\n\nexport class GroupAutocompleteElement extends InputElement {\n public override render(props: FormFieldElementRenderProps): React.ReactElement {\n const { formProps } = props;\n const { Bind } = formProps as FormRenderPropParams;\n const validators = this.config.validators;\n /**\n * TODO @ts-refactor @bruno\n * Figure out what can validators be.\n */\n if (validators && typeof validators !== \"function\") {\n console.log(\n \"packages/app-security-access-management/src/ui/elements/GroupAutocompleteElement.tsx validators is set but not a function.\"\n );\n console.log(validators);\n }\n return (\n <Bind\n name={this.id}\n validators={typeof validators === \"function\" ? validators({ formProps }) : []}\n >\n <GroupAutocomplete label={\"Group\"} />\n </Bind>\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;IAGaA,wB;;;;;;;;;;;;WACT,gBAAuBC,KAAvB,EAA+E;MAC3E,IAAQC,SAAR,GAAsBD,KAAtB,CAAQC,SAAR;MACA,WAAiBA,SAAjB;MAAA,IAAQC,IAAR,QAAQA,IAAR;MACA,IAAMC,UAAU,GAAG,KAAKC,MAAL,CAAYD,UAA/B;MACA;AACR;AACA;AACA;;MACQ,IAAIA,UAAU,IAAI,OAAOA,UAAP,KAAsB,UAAxC,EAAoD;QAChDE,OAAO,CAACC,GAAR,CACI,4HADJ;QAGAD,OAAO,CAACC,GAAR,CAAYH,UAAZ;MACH;;MACD,oBACI,6BAAC,IAAD;QACI,IAAI,EAAE,KAAKI,EADf;QAEI,UAAU,EAAE,OAAOJ,UAAP,KAAsB,UAAtB,GAAmCA,UAAU,CAAC;UAAEF,SAAS,EAATA;QAAF,CAAD,CAA7C,GAA+D;MAF/E,gBAII,6BAAC,oCAAD;QAAmB,KAAK,EAAE;MAA1B,EAJJ,CADJ;IAQH;;;EAvByCO,2B"}