awing-library 2.1.7-beta → 2.1.8-beta

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.
@@ -6,6 +6,7 @@ declare const Constants: {
6
6
  DIRECTORY_ADD_PERMISSION: string;
7
7
  DIRECTORY_ADD_PERMISSION_ADD_NEWAUTHEN: string;
8
8
  DIRECTORY_EDIT_PERMISSION: string;
9
+ MENU_DIRECTORY_PERMISSION: string;
9
10
  SYSTEM_DIRECTORY_PERMISSION: string;
10
11
  };
11
12
  export default Constants;
@@ -8,6 +8,7 @@ var Constants = {
8
8
  DIRECTORY_ADD_PERMISSION: 'AddPermission',
9
9
  DIRECTORY_ADD_PERMISSION_ADD_NEWAUTHEN: 'AddNewAuthen',
10
10
  DIRECTORY_EDIT_PERMISSION: 'EditPermission',
11
+ MENU_DIRECTORY_PERMISSION: 'MenuPermission',
11
12
  SYSTEM_DIRECTORY_PERMISSION: 'SystemPermission',
12
13
  };
13
14
  exports.default = Constants;
@@ -83,6 +83,7 @@ function DomainDirectory(props) {
83
83
  case 1:
84
84
  res = _a.sent();
85
85
  convertedData = (0, function_1.convertData)(res);
86
+ console.log({ convertedData: convertedData });
86
87
  return [2 /*return*/, convertedData[0]];
87
88
  }
88
89
  });
@@ -0,0 +1 @@
1
+ export default function MenuDirectory(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var jsx_runtime_1 = require("react/jsx-runtime");
43
+ var material_1 = require("@mui/material");
44
+ var AWING_1 = require("../../../AWING");
45
+ var react_1 = require("react");
46
+ var icons_material_1 = require("@mui/icons-material");
47
+ var function_1 = require("../function");
48
+ var Constant_1 = __importDefault(require("../Constant"));
49
+ var react_router_dom_1 = require("react-router-dom");
50
+ var Context_1 = __importDefault(require("../../../Context"));
51
+ var react_i18next_1 = require("react-i18next");
52
+ var uniq = require('lodash/uniq');
53
+ function MenuDirectory() {
54
+ var _this = this;
55
+ var _a = (0, react_1.useContext)(Context_1.default), service = _a.service, i18next = _a.i18next;
56
+ var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
57
+ var navigate = (0, react_router_dom_1.useNavigate)();
58
+ var _b = (0, react_1.useState)(), data = _b[0], setData = _b[1];
59
+ (0, react_1.useEffect)(function () {
60
+ // Call API to get data
61
+ handleFetchData();
62
+ }, []);
63
+ var handleConvertedData = function () { return __awaiter(_this, void 0, void 0, function () {
64
+ var res, convertedData;
65
+ return __generator(this, function (_a) {
66
+ switch (_a.label) {
67
+ case 0: return [4 /*yield*/, service.menusGetAll()];
68
+ case 1:
69
+ res = _a.sent();
70
+ convertedData = (0, function_1.convertMenuData)(res);
71
+ return [2 /*return*/, convertedData[0]];
72
+ }
73
+ });
74
+ }); };
75
+ var handleFetchData = function () { return __awaiter(_this, void 0, void 0, function () {
76
+ var dataAPI;
77
+ return __generator(this, function (_a) {
78
+ switch (_a.label) {
79
+ case 0: return [4 /*yield*/, handleConvertedData()];
80
+ case 1:
81
+ dataAPI = _a.sent();
82
+ setData(dataAPI);
83
+ return [2 /*return*/];
84
+ }
85
+ });
86
+ }); };
87
+ var handleGetMoreData = function (nodeId) { return __awaiter(_this, void 0, void 0, function () {
88
+ return __generator(this, function (_a) {
89
+ console.log(nodeId);
90
+ return [2 /*return*/];
91
+ });
92
+ }); };
93
+ if (!data) {
94
+ return (0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {});
95
+ }
96
+ return ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, spacing: 2, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, children: (0, jsx_runtime_1.jsx)(material_1.Paper, { style: { padding: '8px' }, children: (0, jsx_runtime_1.jsx)(AWING_1.HierarchyTree, { data: data, hideSelectCheckbox: true, onGetMoreData: handleGetMoreData, actionComponentProps: {
97
+ actions: [
98
+ {
99
+ icon: ((0, jsx_runtime_1.jsx)(icons_material_1.Settings, { fontSize: "small", color: "action" })),
100
+ tooltip: t('Common.Permission'),
101
+ action: function (node) {
102
+ navigate(Constant_1.default.MENU_DIRECTORY_PERMISSION +
103
+ '/' +
104
+ node.nodeId);
105
+ },
106
+ },
107
+ ],
108
+ }, startIcon: (0, jsx_runtime_1.jsx)(icons_material_1.FolderOpen, { color: "action" }) }) }) }) }));
109
+ }
110
+ exports.default = MenuDirectory;
@@ -135,12 +135,12 @@ function AddAuthen(props) {
135
135
  user.userId;
136
136
  }), onChange: function (e) {
137
137
  handleSelect('user', e.target.checked, user);
138
- } }), label: user.username }) }, user.userId)); })] })), groupsFilter.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, pt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { children: "".concat(t('Directory.Group'), " (").concat(groupsFilter.length, ")") }) }), groupsFilter.map(function (group) { return ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 3, children: (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: !!selected.find(function (s) {
138
+ } }), label: (0, Helpers_1.displayLongString)(user.username || '', 20) }) }, user.userId)); })] })), groupsFilter.length > 0 && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, pt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { children: "".concat(t('Directory.Group'), " (").concat(groupsFilter.length, ")") }) }), groupsFilter.map(function (group) { return ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 3, children: (0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { checked: !!selected.find(function (s) {
139
139
  return s.groupId &&
140
140
  s.groupId ==
141
141
  group.groupId;
142
142
  }), onChange: function (e) {
143
143
  handleSelect('group', e.target.checked, group);
144
- } }), label: group.name }) }, group.groupId)); })] }))] }) })) }));
144
+ } }), label: (0, Helpers_1.displayLongString)(group.name, 20) }) }, group.groupId)); })] }))] }) })) }));
145
145
  }
146
146
  exports.default = AddAuthen;
@@ -1,5 +1,6 @@
1
1
  interface Props {
2
2
  isSystemDirectory?: boolean;
3
+ isMenuDirectory?: boolean;
3
4
  }
4
5
  export default function CreateOrEditPermission(props: Props): import("react/jsx-runtime").JSX.Element;
5
6
  export {};
@@ -40,7 +40,7 @@ function CreateOrEditPermission(props) {
40
40
  exports.default = CreateOrEditPermission;
41
41
  function Permission(props) {
42
42
  var t = (0, react_i18next_1.useTranslation)().t;
43
- var isSystemDirectory = props.isSystemDirectory;
43
+ var isSystemDirectory = props.isSystemDirectory, isMenuDirectory = props.isMenuDirectory;
44
44
  var _a = (0, react_1.useContext)(Context_1.default), service = _a.service, snackbar = _a.appHelper.snackbar;
45
45
  var _b = (0, AWING_1.useDrawer)(), drawerState = _b.drawerState, setDrawerState = _b.setDrawerState, setDrawerTitle = _b.setDrawerTitle, setConfirmExit = _b.setConfirmExit;
46
46
  var _c = (0, react_router_dom_1.useParams)(), directoryId = _c.directoryId, type = _c.type, id = _c.id;
@@ -56,6 +56,12 @@ function Permission(props) {
56
56
  var getPermission = isSystemDirectory
57
57
  ? service.systemDirectoryPermissionGet
58
58
  : service.directoryPermissionGet;
59
+ if (isSystemDirectory) {
60
+ getPermission = service.systemDirectoryPermissionGet;
61
+ }
62
+ if (isMenuDirectory) {
63
+ getPermission = service.menuPermissionGet;
64
+ }
59
65
  getPermission(directoryId)
60
66
  .then(function (res) {
61
67
  var currentPermission = res.permissions.find(function (p) { return p.authenId == id; });
@@ -211,9 +217,13 @@ function Permission(props) {
211
217
  result.inheritedPermissions = [];
212
218
  return result;
213
219
  });
214
- var updatePermission = isSystemDirectory
215
- ? service.systemDirectoryPermissionPut
216
- : service.directoryPermissionPut;
220
+ var updatePermission = service.directoryPermissionPut;
221
+ if (isSystemDirectory) {
222
+ updatePermission = service.systemDirectoryPermissionPut;
223
+ }
224
+ if (isMenuDirectory) {
225
+ updatePermission = service.menuPermissionPut;
226
+ }
217
227
  return updatePermission(directoryId, {
218
228
  directoryId: directoryId,
219
229
  permissions: convertPermissions,
@@ -1,5 +1,6 @@
1
1
  interface Props {
2
2
  isSystemDirectory?: boolean;
3
+ isMenuDirectory?: boolean;
3
4
  }
4
5
  export default function Permission(props: Props): import("react/jsx-runtime").JSX.Element;
5
6
  export {};
@@ -58,7 +58,7 @@ function Permission(props) {
58
58
  exports.default = Permission;
59
59
  function FolderPermission(props) {
60
60
  var t = (0, react_i18next_1.useTranslation)().t;
61
- var isSystemDirectory = props.isSystemDirectory;
61
+ var isSystemDirectory = props.isSystemDirectory, isMenuDirectory = props.isMenuDirectory;
62
62
  var setDrawerTitle = (0, AWING_1.useDrawer)().setDrawerTitle;
63
63
  var navigate = (0, react_router_dom_1.useNavigate)();
64
64
  var directoryId = (0, react_router_dom_1.useParams)().directoryId;
@@ -67,9 +67,13 @@ function FolderPermission(props) {
67
67
  var _b = (0, react_1.useState)(false), loading = _b[0], setLoading = _b[1];
68
68
  var _c = (0, react_1.useState)([]), permissions = _c[0], setPermissions = _c[1];
69
69
  (0, react_1.useEffect)(function () {
70
- var getDirectory = isSystemDirectory
71
- ? service.systemDirectoriesGet
72
- : service.directoriesGet;
70
+ var getDirectory = service.directoriesGet;
71
+ if (isSystemDirectory) {
72
+ getDirectory = service.systemDirectoriesGet;
73
+ }
74
+ if (isMenuDirectory) {
75
+ getDirectory = service.menusGet;
76
+ }
73
77
  getDirectory(directoryId).then(function (res) {
74
78
  setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(res.name));
75
79
  });
@@ -86,11 +90,16 @@ function FolderPermission(props) {
86
90
  }, [directoryId]);
87
91
  var fetchPermission = function () {
88
92
  setLoading(true);
89
- var getPermission = isSystemDirectory
90
- ? service.systemDirectoryPermissionGet
91
- : service.directoryPermissionGet;
93
+ var getPermission = service.directoryPermissionGet;
94
+ if (isSystemDirectory) {
95
+ getPermission = service.systemDirectoryPermissionGet;
96
+ }
97
+ if (isMenuDirectory) {
98
+ getPermission = service.menuPermissionGet;
99
+ }
92
100
  getPermission(directoryId)
93
101
  .then(function (res) {
102
+ console.log({ res: res });
94
103
  setPermissions(res.permissions.map(function (p) { return convertPermission(p); }));
95
104
  setLoading(false);
96
105
  })
@@ -101,9 +110,13 @@ function FolderPermission(props) {
101
110
  };
102
111
  var handleDeletePermission = function (authenId, authenType) {
103
112
  confirm(function () {
104
- var deletePermission = isSystemDirectory
105
- ? service.systemDirectoryPermissionDelete
106
- : service.directoryPermissionDelete;
113
+ var deletePermission = service.directoryPermissionDelete;
114
+ if (isSystemDirectory) {
115
+ deletePermission = service.systemDirectoryPermissionDelete;
116
+ }
117
+ if (isMenuDirectory) {
118
+ deletePermission = service.menuPermissionDelete;
119
+ }
107
120
  deletePermission(directoryId, authenId, authenType)
108
121
  .then(function () {
109
122
  snackbar('success');
@@ -0,0 +1 @@
1
+ export default function Permission(): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,145 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var jsx_runtime_1 = require("react/jsx-runtime");
7
+ var AWING_1 = require("../../../../../AWING");
8
+ var react_i18next_1 = require("react-i18next");
9
+ var react_1 = require("react");
10
+ var icons_material_1 = require("@mui/icons-material");
11
+ var material_1 = require("@mui/material");
12
+ var react_router_dom_1 = require("react-router-dom");
13
+ var Context_1 = __importDefault(require("../../../../../Context"));
14
+ var Constant_1 = __importDefault(require("../../../Constant"));
15
+ var PubSub_1 = require("../../../../../AWING/PubSub");
16
+ function Permission() {
17
+ var i18next = (0, react_1.useContext)(Context_1.default).i18next;
18
+ var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
19
+ return ((0, jsx_runtime_1.jsx)(AWING_1.DrawerNavigate, { title: t('Directory.ObjectPermission'), customButtonSubmit: (0, jsx_runtime_1.jsx)(material_1.Button, { component: react_router_dom_1.Link, color: 'primary', variant: "contained", to: Constant_1.default.DIRECTORY_ADD_PERMISSION, children: t('Directory.AddPermission') }), childrenWrapperStyle: { padding: function (theme) { return theme.spacing(3); } }, children: (0, jsx_runtime_1.jsx)(MenuPermissions, {}) }));
20
+ }
21
+ exports.default = Permission;
22
+ function MenuPermissions() {
23
+ var _a = (0, react_1.useContext)(Context_1.default), appHelper = _a.appHelper, service = _a.service, i18next = _a.i18next;
24
+ var t = (0, react_i18next_1.useTranslation)(undefined, { i18n: i18next }).t;
25
+ var setDrawerTitle = (0, AWING_1.useDrawer)().setDrawerTitle;
26
+ var directoryId = (0, react_router_dom_1.useParams)().directoryId;
27
+ var confirm = appHelper.confirm, snackbar = appHelper.snackbar;
28
+ var _b = (0, react_1.useState)(false), loading = _b[0], setLoading = _b[1];
29
+ var _c = (0, react_1.useState)([]), permissions = _c[0], setPermissions = _c[1];
30
+ var _d = (0, react_1.useState)([]), users = _d[0], setUsers = _d[1];
31
+ var _e = (0, react_1.useState)([]), groups = _e[0], setGroups = _e[1];
32
+ var _f = (0, react_1.useState)(false), loadingAuthen = _f[0], setLoadingAuthen = _f[1];
33
+ (0, react_1.useEffect)(function () {
34
+ setLoadingAuthen(true);
35
+ var loader = [service.usersGet(), service.groupsGetAll()];
36
+ Promise.all(loader)
37
+ .then(function (responses) {
38
+ if (responses[0] && responses[1]) {
39
+ setUsers(responses[0]);
40
+ setGroups(responses[1]);
41
+ }
42
+ setLoadingAuthen(false);
43
+ })
44
+ .catch(function (err) {
45
+ console.log(err);
46
+ snackbar('error');
47
+ });
48
+ }, []);
49
+ (0, react_1.useEffect)(function () {
50
+ var getDirectory = service.menusGet;
51
+ getDirectory(directoryId).then(function (res) {
52
+ setDrawerTitle("".concat(t('Directory.ObjectPermission'), ": ").concat(res.name));
53
+ });
54
+ var randomKey = (0, PubSub_1.getRandomKey)();
55
+ (0, PubSub_1.sub)('update-directory-permission', function () {
56
+ fetchPermission();
57
+ }, randomKey);
58
+ return function () { return (0, PubSub_1.off)(randomKey); };
59
+ }, []);
60
+ (0, react_1.useEffect)(function () {
61
+ if (directoryId) {
62
+ (0, PubSub_1.pub)('update-directory-permission');
63
+ }
64
+ }, [directoryId]);
65
+ var fetchPermission = function () {
66
+ setLoading(true);
67
+ var getPermission = service.menuPermissionGet;
68
+ getPermission(directoryId)
69
+ .then(function (res) {
70
+ console.log({ res: res });
71
+ setPermissions(res.permissions);
72
+ setLoading(false);
73
+ })
74
+ .catch(function (err) {
75
+ snackbar('error');
76
+ console.log(err);
77
+ });
78
+ };
79
+ var handleDeletePermission = function (authenId, authenType) {
80
+ confirm(function () {
81
+ var deletePermission = service.menuPermissionDelete;
82
+ deletePermission(directoryId, authenId, authenType)
83
+ .then(function () {
84
+ snackbar('success');
85
+ (0, PubSub_1.pub)('update-directory-permission');
86
+ })
87
+ .catch(function (err) {
88
+ snackbar('error');
89
+ console.log(err);
90
+ });
91
+ });
92
+ };
93
+ return loading && loadingAuthen ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {})) : ((0, jsx_runtime_1.jsx)(AWING_1.DataGrid, { columns: [
94
+ {
95
+ field: '',
96
+ width: 50,
97
+ headerName: '#',
98
+ valueGetter: function (row, idx) {
99
+ return idx + 1;
100
+ },
101
+ },
102
+ {
103
+ field: 'authenType',
104
+ width: 50,
105
+ headerName: '',
106
+ valueGetter: function (row, idx) {
107
+ return row.authenType == 0 ? ((0, jsx_runtime_1.jsx)(icons_material_1.Person, { fontSize: "small" })) : ((0, jsx_runtime_1.jsx)(icons_material_1.Group, { fontSize: "small" }));
108
+ },
109
+ },
110
+ {
111
+ field: 'name',
112
+ headerName: t('Common.UserGroupUser'),
113
+ valueGetter: function (row, idx) {
114
+ var _a, _b;
115
+ return row.authenType == 0
116
+ ? (_a = users.find(function (u) { return u.userId == row.authenId; })) === null || _a === void 0 ? void 0 : _a.username
117
+ : (_b = groups.find(function (g) { return g.groupId == row.authenId; })) === null || _b === void 0 ? void 0 : _b.name;
118
+ },
119
+ },
120
+ {
121
+ field: 'inheritedPermission',
122
+ headerName: t('Directory.InheritedPermission'),
123
+ valueGetter: function (row, idx) {
124
+ return row.inheritedPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
125
+ },
126
+ },
127
+ {
128
+ field: 'explicitPermission',
129
+ headerName: t('Directory.ExplicitPermission'),
130
+ valueGetter: function (row, idx) {
131
+ return row.explicitPermission ? ((0, jsx_runtime_1.jsx)(icons_material_1.Check, { color: "primary" })) : ('');
132
+ },
133
+ },
134
+ ], rows: permissions, rowActions: [
135
+ {
136
+ icon: (0, jsx_runtime_1.jsx)(icons_material_1.Clear, { fontSize: "small" }),
137
+ tooltipTitle: t('Common.Delete'),
138
+ action: function (id) {
139
+ var row = permissions[id];
140
+ handleDeletePermission(row.authenId, row.authenType);
141
+ },
142
+ isShouldHideActions: function (row) { return !row.explicitPermission; },
143
+ },
144
+ ] }));
145
+ }
@@ -1,5 +1,6 @@
1
1
  interface Props {
2
2
  isSystemDirectory?: boolean;
3
+ isMenuDirectory?: boolean;
3
4
  }
4
5
  export default function DirectoryPermission(props: Props): import("react/jsx-runtime").JSX.Element;
5
6
  export {};
@@ -13,10 +13,10 @@ var CreateOrEditPermission_1 = __importDefault(require("./CreateOrEditPermission
13
13
  var react_router_dom_1 = require("react-router-dom");
14
14
  function DirectoryPermission(props) {
15
15
  var i18next = (0, react_1.useContext)(Context_1.default).i18next;
16
- var isSystemDirectory = props.isSystemDirectory;
17
- return ((0, jsx_runtime_1.jsxs)(react_i18next_1.I18nextProvider, { i18n: i18next, children: [(0, jsx_runtime_1.jsx)(Management_1.default, { isSystemDirectory: isSystemDirectory }), (0, jsx_runtime_1.jsxs)(react_router_dom_1.Routes, { children: [(0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_ADD_PERMISSION + '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory }) }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_EDIT_PERMISSION +
16
+ var isSystemDirectory = props.isSystemDirectory, isMenuDirectory = props.isMenuDirectory;
17
+ return ((0, jsx_runtime_1.jsxs)(react_i18next_1.I18nextProvider, { i18n: i18next, children: [(0, jsx_runtime_1.jsx)(Management_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }), (0, jsx_runtime_1.jsxs)(react_router_dom_1.Routes, { children: [(0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_ADD_PERMISSION + '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }) }), (0, jsx_runtime_1.jsx)(react_router_dom_1.Route, { path: Constant_1.default.DIRECTORY_EDIT_PERMISSION +
18
18
  '/:type' +
19
19
  '/:id' +
20
- '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory }) })] })] }));
20
+ '/*', element: (0, jsx_runtime_1.jsx)(CreateOrEditPermission_1.default, { isSystemDirectory: isSystemDirectory, isMenuDirectory: isMenuDirectory }) })] })] }));
21
21
  }
22
22
  exports.default = DirectoryPermission;
@@ -2,3 +2,4 @@ import { IRawData } from './interface';
2
2
  import { TreeNode } from '../../AWING';
3
3
  export declare const replaceChildren: (object1: TreeNode, object2: TreeNode) => TreeNode;
4
4
  export declare const convertData: (input: IRawData[], parentId?: string | null) => TreeNode[];
5
+ export declare const convertMenuData: (input: any[], parentId?: string | null) => TreeNode[];
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.convertData = exports.replaceChildren = void 0;
14
+ exports.convertMenuData = exports.convertData = exports.replaceChildren = void 0;
15
15
  var AWING_1 = require("../../AWING");
16
16
  var replaceChildren = function (object1, object2) {
17
17
  if (object1.nodeId === object2.nodeId) {
@@ -54,3 +54,27 @@ var convertData = function (input, parentId) {
54
54
  return result;
55
55
  };
56
56
  exports.convertData = convertData;
57
+ var convertMenuData = function (input, parentId) {
58
+ if (parentId === void 0) { parentId = input[0].parentMenuId; }
59
+ var result = [];
60
+ for (var i = 0; i < input.length; i++) {
61
+ var item = input[i];
62
+ if (item.parentMenuId === parentId) {
63
+ var newItem = {
64
+ name: item.name,
65
+ nodeId: item.menuId,
66
+ status: AWING_1.NodeStatus.Unchecked,
67
+ isSystem: true,
68
+ parentId: item.parentMenuId,
69
+ children: [],
70
+ };
71
+ var children = (0, exports.convertMenuData)(input, item.menuId);
72
+ if (children.length > 0) {
73
+ newItem.children = children;
74
+ }
75
+ result.push(newItem);
76
+ }
77
+ }
78
+ return result;
79
+ };
80
+ exports.convertMenuData = convertMenuData;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awing-library",
3
- "version": "2.1.7-beta",
3
+ "version": "2.1.8-beta",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",