@webiny/app-security-access-management 6.1.0 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/Extension.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React, { Fragment, memo } from "react";
2
- import { useRouter, AdminConfig, AdminLayout, Wcp } from "@webiny/app-admin";
2
+ import { useRouter, AdminConfig, AdminLayout, Wcp, RegisterFeature } from "@webiny/app-admin";
3
3
  import { HasPermission } from "@webiny/app-admin";
4
4
  import { Permission } from "./constants.js";
5
5
  import { Roles } from "./ui/views/Roles/index.js";
@@ -7,13 +7,16 @@ import { Teams } from "./ui/views/Teams/index.js";
7
7
  import { ApiKeys } from "./ui/views/ApiKeys/index.js";
8
8
  import { Routes } from "./routes.js";
9
9
  import { SecurityPermissions } from "./SecurityPermissions.js";
10
+ import { SecurityPermissionsFeature } from "./features/permissions/feature.js";
10
11
  const {
11
12
  Menu,
12
13
  Route
13
14
  } = AdminConfig;
14
15
  const AccessManagementExtension = () => {
15
16
  const router = useRouter();
16
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(SecurityPermissions, null), /*#__PURE__*/React.createElement(AdminConfig, null, /*#__PURE__*/React.createElement(HasPermission, {
17
+ return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(RegisterFeature, {
18
+ feature: SecurityPermissionsFeature
19
+ }), /*#__PURE__*/React.createElement(SecurityPermissions, null), /*#__PURE__*/React.createElement(AdminConfig, null, /*#__PURE__*/React.createElement(HasPermission, {
17
20
  name: Permission.Roles
18
21
  }, /*#__PURE__*/React.createElement(Route, {
19
22
  route: Routes.Roles.List,
@@ -37,16 +40,17 @@ const AccessManagementExtension = () => {
37
40
  })), /*#__PURE__*/React.createElement(HasPermission, {
38
41
  any: [Permission.Roles, Permission.ApiKeys, Permission.Teams]
39
42
  }, /*#__PURE__*/React.createElement(Menu, {
40
- name: "security.settings",
43
+ name: "settings.security",
41
44
  parent: "settings",
42
45
  element: /*#__PURE__*/React.createElement(Menu.Group, {
43
- text: "Access Management"
46
+ text: "Access Management",
47
+ collapsible: false
44
48
  })
45
49
  })), /*#__PURE__*/React.createElement(HasPermission, {
46
50
  name: Permission.Roles
47
51
  }, /*#__PURE__*/React.createElement(Menu, {
48
52
  name: "security.roles",
49
- parent: "settings",
53
+ parent: "settings.security",
50
54
  element: /*#__PURE__*/React.createElement(Menu.Link, {
51
55
  text: "Roles",
52
56
  to: router.getLink(Routes.Roles.List),
@@ -56,7 +60,7 @@ const AccessManagementExtension = () => {
56
60
  name: Permission.Teams
57
61
  }, /*#__PURE__*/React.createElement(Menu, {
58
62
  name: "security.teams",
59
- parent: "settings",
63
+ parent: "settings.security",
60
64
  element: /*#__PURE__*/React.createElement(Menu.Link, {
61
65
  text: "Teams",
62
66
  to: router.getLink(Routes.Teams.List),
@@ -66,7 +70,7 @@ const AccessManagementExtension = () => {
66
70
  name: Permission.ApiKeys
67
71
  }, /*#__PURE__*/React.createElement(Menu, {
68
72
  name: "security.apiKeys",
69
- parent: "settings",
73
+ parent: "settings.security",
70
74
  element: /*#__PURE__*/React.createElement(Menu.Link, {
71
75
  text: "API Keys",
72
76
  to: router.getLink(Routes.ApiKeys.List),
package/Extension.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["React","Fragment","memo","useRouter","AdminConfig","AdminLayout","Wcp","HasPermission","Permission","Roles","Teams","ApiKeys","Routes","SecurityPermissions","Menu","Route","AccessManagementExtension","router","createElement","name","route","List","element","title","CanUseTeams","any","parent","Group","text","Link","to","getLink","pinnable","AccessManagement"],"sources":["Extension.tsx"],"sourcesContent":["import React, { Fragment, memo } from \"react\";\nimport { useRouter, AdminConfig, AdminLayout, Wcp } from \"@webiny/app-admin\";\nimport { HasPermission } from \"@webiny/app-admin\";\nimport { Permission } from \"~/constants.js\";\nimport { Roles } from \"~/ui/views/Roles/index.js\";\nimport { Teams } from \"~/ui/views/Teams/index.js\";\nimport { ApiKeys } from \"~/ui/views/ApiKeys/index.js\";\nimport { Routes } from \"~/routes.js\";\nimport { SecurityPermissions } from \"./SecurityPermissions.js\";\n\nconst { Menu, Route } = AdminConfig;\n\nconst AccessManagementExtension = () => {\n const router = useRouter();\n\n return (\n <Fragment>\n <SecurityPermissions />\n <AdminConfig>\n <HasPermission name={Permission.Roles}>\n <Route\n route={Routes.Roles.List}\n element={\n <AdminLayout title={\"Access Management - Roles\"}>\n <Roles />\n </AdminLayout>\n }\n />\n </HasPermission>\n <Wcp.CanUseTeams>\n <HasPermission name={Permission.Teams}>\n <Route\n route={Routes.Teams.List}\n element={\n <AdminLayout title={\"Access Management - Teams\"}>\n <Teams />\n </AdminLayout>\n }\n />\n </HasPermission>\n </Wcp.CanUseTeams>\n <HasPermission name={Permission.ApiKeys}>\n <Route\n route={Routes.ApiKeys.List}\n element={\n <AdminLayout title={\"Access Management - API Keys\"}>\n <ApiKeys />\n </AdminLayout>\n }\n />\n </HasPermission>\n\n <HasPermission any={[Permission.Roles, Permission.ApiKeys, Permission.Teams]}>\n <Menu\n name={\"security.settings\"}\n parent={\"settings\"}\n element={<Menu.Group text={\"Access Management\"} />}\n />\n </HasPermission>\n <HasPermission name={Permission.Roles}>\n <Menu\n name={\"security.roles\"}\n parent={\"settings\"}\n element={\n <Menu.Link\n text={\"Roles\"}\n to={router.getLink(Routes.Roles.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n <Wcp.CanUseTeams>\n <HasPermission name={Permission.Teams}>\n <Menu\n name={\"security.teams\"}\n parent={\"settings\"}\n element={\n <Menu.Link\n text={\"Teams\"}\n to={router.getLink(Routes.Teams.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n </Wcp.CanUseTeams>\n\n <HasPermission name={Permission.ApiKeys}>\n <Menu\n name={\"security.apiKeys\"}\n parent={\"settings\"}\n element={\n <Menu.Link\n text={\"API Keys\"}\n to={router.getLink(Routes.ApiKeys.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n </AdminConfig>\n </Fragment>\n );\n};\n\nexport const AccessManagement = memo(AccessManagementExtension);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Fragment","memo","useRouter","AdminConfig","AdminLayout","Wcp","RegisterFeature","HasPermission","Permission","Roles","Teams","ApiKeys","Routes","SecurityPermissions","SecurityPermissionsFeature","Menu","Route","AccessManagementExtension","router","createElement","feature","name","route","List","element","title","CanUseTeams","any","parent","Group","text","collapsible","Link","to","getLink","pinnable","AccessManagement"],"sources":["Extension.tsx"],"sourcesContent":["import React, { Fragment, memo } from \"react\";\nimport { useRouter, AdminConfig, AdminLayout, Wcp, RegisterFeature } from \"@webiny/app-admin\";\nimport { HasPermission } from \"@webiny/app-admin\";\nimport { Permission } from \"~/constants.js\";\nimport { Roles } from \"~/ui/views/Roles/index.js\";\nimport { Teams } from \"~/ui/views/Teams/index.js\";\nimport { ApiKeys } from \"~/ui/views/ApiKeys/index.js\";\nimport { Routes } from \"~/routes.js\";\nimport { SecurityPermissions } from \"./SecurityPermissions.js\";\nimport { SecurityPermissionsFeature } from \"~/features/permissions/feature.js\";\n\nconst { Menu, Route } = AdminConfig;\n\nconst AccessManagementExtension = () => {\n const router = useRouter();\n\n return (\n <Fragment>\n <RegisterFeature feature={SecurityPermissionsFeature} />\n <SecurityPermissions />\n <AdminConfig>\n <HasPermission name={Permission.Roles}>\n <Route\n route={Routes.Roles.List}\n element={\n <AdminLayout title={\"Access Management - Roles\"}>\n <Roles />\n </AdminLayout>\n }\n />\n </HasPermission>\n <Wcp.CanUseTeams>\n <HasPermission name={Permission.Teams}>\n <Route\n route={Routes.Teams.List}\n element={\n <AdminLayout title={\"Access Management - Teams\"}>\n <Teams />\n </AdminLayout>\n }\n />\n </HasPermission>\n </Wcp.CanUseTeams>\n <HasPermission name={Permission.ApiKeys}>\n <Route\n route={Routes.ApiKeys.List}\n element={\n <AdminLayout title={\"Access Management - API Keys\"}>\n <ApiKeys />\n </AdminLayout>\n }\n />\n </HasPermission>\n\n <HasPermission any={[Permission.Roles, Permission.ApiKeys, Permission.Teams]}>\n <Menu\n name={\"settings.security\"}\n parent={\"settings\"}\n element={<Menu.Group text={\"Access Management\"} collapsible={false} />}\n />\n </HasPermission>\n <HasPermission name={Permission.Roles}>\n <Menu\n name={\"security.roles\"}\n parent={\"settings.security\"}\n element={\n <Menu.Link\n text={\"Roles\"}\n to={router.getLink(Routes.Roles.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n <Wcp.CanUseTeams>\n <HasPermission name={Permission.Teams}>\n <Menu\n name={\"security.teams\"}\n parent={\"settings.security\"}\n element={\n <Menu.Link\n text={\"Teams\"}\n to={router.getLink(Routes.Teams.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n </Wcp.CanUseTeams>\n\n <HasPermission name={Permission.ApiKeys}>\n <Menu\n name={\"security.apiKeys\"}\n parent={\"settings.security\"}\n element={\n <Menu.Link\n text={\"API Keys\"}\n to={router.getLink(Routes.ApiKeys.List)}\n pinnable={true}\n />\n }\n />\n </HasPermission>\n </AdminConfig>\n </Fragment>\n );\n};\n\nexport const AccessManagement = memo(AccessManagementExtension);\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,20 @@
1
+ export declare const SECURITY_PERMISSIONS_SCHEMA: {
2
+ readonly prefix: "security";
3
+ readonly fullAccess: true;
4
+ readonly entities: [{
5
+ readonly id: "apiKey";
6
+ readonly title: "API Keys";
7
+ readonly permission: "security.apiKey";
8
+ readonly scopes: ["full"];
9
+ }, {
10
+ readonly id: "group";
11
+ readonly title: "Roles";
12
+ readonly permission: "security.group";
13
+ readonly scopes: ["full"];
14
+ }, {
15
+ readonly id: "team";
16
+ readonly title: "Teams";
17
+ readonly permission: "security.team";
18
+ readonly scopes: ["full"];
19
+ }];
20
+ };
@@ -0,0 +1,23 @@
1
+ import { createPermissionSchema } from "@webiny/app-admin";
2
+ export const SECURITY_PERMISSIONS_SCHEMA = createPermissionSchema({
3
+ prefix: "security",
4
+ fullAccess: true,
5
+ entities: [{
6
+ id: "apiKey",
7
+ title: "API Keys",
8
+ permission: "security.apiKey",
9
+ scopes: ["full"]
10
+ }, {
11
+ id: "group",
12
+ title: "Roles",
13
+ permission: "security.group",
14
+ scopes: ["full"]
15
+ }, {
16
+ id: "team",
17
+ title: "Teams",
18
+ permission: "security.team",
19
+ scopes: ["full"]
20
+ }]
21
+ });
22
+
23
+ //# sourceMappingURL=permissionsSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createPermissionSchema","SECURITY_PERMISSIONS_SCHEMA","prefix","fullAccess","entities","id","title","permission","scopes"],"sources":["permissionsSchema.ts"],"sourcesContent":["import { createPermissionSchema } from \"@webiny/app-admin\";\n\nexport const SECURITY_PERMISSIONS_SCHEMA = createPermissionSchema({\n prefix: \"security\",\n fullAccess: true,\n entities: [\n {\n id: \"apiKey\",\n title: \"API Keys\",\n permission: \"security.apiKey\",\n scopes: [\"full\"]\n },\n {\n id: \"group\",\n title: \"Roles\",\n permission: \"security.group\",\n scopes: [\"full\"]\n },\n {\n id: \"team\",\n title: \"Teams\",\n permission: \"security.team\",\n scopes: [\"full\"]\n }\n ]\n});\n"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,mBAAmB;AAE1D,OAAO,MAAMC,2BAA2B,GAAGD,sBAAsB,CAAC;EAC9DE,MAAM,EAAE,UAAU;EAClBC,UAAU,EAAE,IAAI;EAChBC,QAAQ,EAAE,CACN;IACIC,EAAE,EAAE,QAAQ;IACZC,KAAK,EAAE,UAAU;IACjBC,UAAU,EAAE,iBAAiB;IAC7BC,MAAM,EAAE,CAAC,MAAM;EACnB,CAAC,EACD;IACIH,EAAE,EAAE,OAAO;IACXC,KAAK,EAAE,OAAO;IACdC,UAAU,EAAE,gBAAgB;IAC5BC,MAAM,EAAE,CAAC,MAAM;EACnB,CAAC,EACD;IACIH,EAAE,EAAE,MAAM;IACVC,KAAK,EAAE,OAAO;IACdC,UAAU,EAAE,eAAe;IAC3BC,MAAM,EAAE,CAAC,MAAM;EACnB,CAAC;AAET,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import type { Permissions } from "@webiny/app-admin/exports/admin/security.js";
2
+ import { SECURITY_PERMISSIONS_SCHEMA } from "../../domain/permissionsSchema.js";
3
+ export declare const SecurityPermissions: import("@webiny/di").Abstraction<{
4
+ canAccess: (entityId: "team" | "apiKey" | "group") => boolean;
5
+ canAction: (action: string, entityId: "team" | "apiKey" | "group") => boolean;
6
+ } & {
7
+ canRead: (entityId: string) => boolean;
8
+ canCreate: (entityId: string) => boolean;
9
+ canEdit: (entityId: string, item?: import("@webiny/app-admin/permissions").OwnableItem) => boolean;
10
+ canDelete: (entityId: string, item?: import("@webiny/app-admin/permissions").OwnableItem) => boolean;
11
+ } & {
12
+ canPublish: (entityId: string) => boolean;
13
+ canUnpublish: (entityId: string) => boolean;
14
+ }>;
15
+ export declare namespace SecurityPermissions {
16
+ type Interface = Permissions<typeof SECURITY_PERMISSIONS_SCHEMA>;
17
+ }
@@ -0,0 +1,5 @@
1
+ import { createPermissionsAbstraction } from "@webiny/app-admin/exports/admin/security.js";
2
+ import { SECURITY_PERMISSIONS_SCHEMA } from "../../domain/permissionsSchema.js";
3
+ export const SecurityPermissions = createPermissionsAbstraction(SECURITY_PERMISSIONS_SCHEMA);
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createPermissionsAbstraction","SECURITY_PERMISSIONS_SCHEMA","SecurityPermissions"],"sources":["abstractions.ts"],"sourcesContent":["import { createPermissionsAbstraction } from \"@webiny/app-admin/exports/admin/security.js\";\nimport type { Permissions } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { SECURITY_PERMISSIONS_SCHEMA } from \"~/domain/permissionsSchema.js\";\n\nexport const SecurityPermissions = createPermissionsAbstraction(SECURITY_PERMISSIONS_SCHEMA);\n\nexport namespace SecurityPermissions {\n export type Interface = Permissions<typeof SECURITY_PERMISSIONS_SCHEMA>;\n}\n"],"mappings":"AAAA,SAASA,4BAA4B,QAAQ,6CAA6C;AAE1F,SAASC,2BAA2B;AAEpC,OAAO,MAAMC,mBAAmB,GAAGF,4BAA4B,CAACC,2BAA2B,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ export declare const SecurityPermissionsFeature: import("@webiny/feature/admin/createFeature.js").FeatureDefinition<{
2
+ permissions: {
3
+ canAccess: (entityId: "team" | "apiKey" | "group") => boolean;
4
+ canAction: (action: string, entityId: "team" | "apiKey" | "group") => boolean;
5
+ } & {
6
+ canRead: (entityId: string) => boolean;
7
+ canCreate: (entityId: string) => boolean;
8
+ canEdit: (entityId: string, item?: import("@webiny/app-admin/index.js").OwnableItem) => boolean;
9
+ canDelete: (entityId: string, item?: import("@webiny/app-admin/index.js").OwnableItem) => boolean;
10
+ } & {
11
+ canPublish: (entityId: string) => boolean;
12
+ canUnpublish: (entityId: string) => boolean;
13
+ };
14
+ }, []>;
@@ -0,0 +1,6 @@
1
+ import { createPermissionsFeature } from "@webiny/app-admin/exports/admin/security.js";
2
+ import { SECURITY_PERMISSIONS_SCHEMA } from "../../domain/permissionsSchema.js";
3
+ import { SecurityPermissions } from "./abstractions.js";
4
+ export const SecurityPermissionsFeature = createPermissionsFeature(SECURITY_PERMISSIONS_SCHEMA, SecurityPermissions);
5
+
6
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createPermissionsFeature","SECURITY_PERMISSIONS_SCHEMA","SecurityPermissions","SecurityPermissionsFeature"],"sources":["feature.ts"],"sourcesContent":["import { createPermissionsFeature } from \"@webiny/app-admin/exports/admin/security.js\";\nimport { SECURITY_PERMISSIONS_SCHEMA } from \"~/domain/permissionsSchema.js\";\nimport { SecurityPermissions } from \"./abstractions.js\";\n\nexport const SecurityPermissionsFeature = createPermissionsFeature(\n SECURITY_PERMISSIONS_SCHEMA,\n SecurityPermissions\n);\n"],"mappings":"AAAA,SAASA,wBAAwB,QAAQ,6CAA6C;AACtF,SAASC,2BAA2B;AACpC,SAASC,mBAAmB;AAE5B,OAAO,MAAMC,0BAA0B,GAAGH,wBAAwB,CAC9DC,2BAA2B,EAC3BC,mBACJ,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/app-security-access-management",
3
- "version": "6.1.0",
3
+ "version": "6.2.0",
4
4
  "type": "module",
5
5
  "main": "index.js",
6
6
  "repository": {
@@ -15,22 +15,22 @@
15
15
  "license": "MIT",
16
16
  "dependencies": {
17
17
  "@apollo/react-hooks": "3.1.5",
18
- "@webiny/admin-ui": "6.1.0",
19
- "@webiny/app": "6.1.0",
20
- "@webiny/app-admin": "6.1.0",
21
- "@webiny/form": "6.1.0",
22
- "@webiny/icons": "6.1.0",
23
- "@webiny/ui": "6.1.0",
24
- "@webiny/validation": "6.1.0",
18
+ "@webiny/admin-ui": "6.2.0",
19
+ "@webiny/app": "6.2.0",
20
+ "@webiny/app-admin": "6.2.0",
21
+ "@webiny/form": "6.2.0",
22
+ "@webiny/icons": "6.2.0",
23
+ "@webiny/ui": "6.2.0",
24
+ "@webiny/validation": "6.2.0",
25
25
  "graphql-tag": "2.12.6",
26
- "lodash": "4.17.23",
27
- "react": "18.2.0",
28
- "react-dom": "18.2.0"
26
+ "lodash": "4.18.1",
27
+ "react": "18.3.1",
28
+ "react-dom": "18.3.1"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@emotion/babel-plugin": "11.13.5",
32
32
  "@types/react-helmet": "6.1.11",
33
- "@webiny/build-tools": "6.1.0",
33
+ "@webiny/build-tools": "6.2.0",
34
34
  "rimraf": "6.1.3",
35
35
  "typescript": "5.9.3"
36
36
  },
@@ -45,5 +45,5 @@
45
45
  ]
46
46
  }
47
47
  },
48
- "gitHead": "65e0ac1889b3392c99b8cac6cde508e1e831c715"
48
+ "gitHead": "3d3148358b6febbc857371930871743bec3b3939"
49
49
  }