awing-library 2.1.6-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;
@@ -10,6 +10,15 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
+ if (ar || !(i in from)) {
16
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
+ ar[i] = from[i];
18
+ }
19
+ }
20
+ return to.concat(ar || Array.prototype.slice.call(from));
21
+ };
13
22
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
23
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
24
  };
@@ -23,6 +32,7 @@ var react_i18next_1 = require("react-i18next");
23
32
  var Enums_1 = require("./Enums");
24
33
  var styles_1 = require("@mui/styles");
25
34
  var AWING_1 = require("../../AWING");
35
+ var icons_material_1 = require("@mui/icons-material");
26
36
  var useStyles = (0, styles_1.makeStyles)(function () { return ({
27
37
  outlinedInput: {
28
38
  '& .MuiOutlinedInput-input': {
@@ -46,12 +56,13 @@ var useStyles = (0, styles_1.makeStyles)(function () { return ({
46
56
  },
47
57
  }); });
48
58
  function ControlPanel(_a) {
49
- var _b, _c, _d, _e, _f, _g;
59
+ var _b;
50
60
  var onChangeQueryInput = _a.onChangeQueryInput, onChangeExportInput = _a.onChangeExportInput, initialFilters = _a.initialFilters, isLoadings = _a.isLoadings, infoSX = _a.infoSX;
51
61
  var classes = useStyles();
52
62
  var t = (0, react_i18next_1.useTranslation)().t;
53
- var _h = (0, react_1.useState)(), queryInput = _h[0], setQueryInput = _h[1];
54
- var _j = (0, react_1.useState)(), elementInputs = _j[0], setElementInputs = _j[1];
63
+ var _c = (0, react_1.useState)(), queryInput = _c[0], setQueryInput = _c[1];
64
+ var _d = (0, react_1.useState)([]), elementInputs = _d[0], setElementInputs = _d[1];
65
+ var _e = (0, react_1.useState)(false), isShowFilterEnhanced = _e[0], setIsHideFieldAdvanced = _e[1];
55
66
  var handleInitialFilter = function (initialFilters) {
56
67
  var initValue = initialFilters === null || initialFilters === void 0 ? void 0 : initialFilters.reduce(function (acc, curr) {
57
68
  if ((curr === null || curr === void 0 ? void 0 : curr.type) === Enums_1.TYPE_FILTERS.DATE_RANGE_PICKER) {
@@ -73,90 +84,100 @@ function ControlPanel(_a) {
73
84
  handleChangeQueryInput('endDate', value.endDate);
74
85
  };
75
86
  var handleElementInput = function (initialFilters) {
76
- var updatedElementInputs = {};
77
- initialFilters.map(function (item) {
87
+ var updatedElementInputs = [];
88
+ initialFilters.map(function (item, idx) {
78
89
  var _a, _b, _c;
79
90
  switch (item === null || item === void 0 ? void 0 : item.type) {
80
91
  case Enums_1.TYPE_FILTERS.VIEW_BY: {
81
- updatedElementInputs.viewBy = ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
82
- return item === null || item === void 0 ? void 0 : item.onChange(Number(e.target.value));
83
- }, SelectProps: {
84
- native: true,
85
- }, variant: "outlined", style: { minWidth: 160 }, disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[0].value), children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[1].value), children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }));
92
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
93
+ return item === null || item === void 0 ? void 0 : item.onChange(Number(e.target.value));
94
+ }, SelectProps: {
95
+ native: true,
96
+ }, variant: "outlined", style: { minWidth: 160 }, disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[0].value), children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[1].value), children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'viewBy' }, item);
97
+ updatedElementInputs.push(element);
86
98
  break;
87
99
  }
88
100
  case Enums_1.TYPE_FILTERS.VIEW_USER: {
89
- updatedElementInputs.viewUser = ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
90
- return item === null || item === void 0 ? void 0 : item.onChange(Number(e.target.value));
91
- }, SelectProps: {
92
- native: true,
93
- }, variant: "outlined", style: { minWidth: 180 }, disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[0].value), children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[1].value), children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }));
101
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
102
+ return item === null || item === void 0 ? void 0 : item.onChange(Number(e.target.value));
103
+ }, SelectProps: {
104
+ native: true,
105
+ }, variant: "outlined", style: { minWidth: 180 }, disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[0].value), children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: Number(item === null || item === void 0 ? void 0 : item.initialData[1].value), children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'viewUser' }, item);
106
+ updatedElementInputs.push(element);
94
107
  break;
95
108
  }
96
109
  case Enums_1.TYPE_FILTERS.VIEW_TIME: {
97
- updatedElementInputs.viewTime = ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
98
- return handleChangeQueryInput &&
99
- handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.value);
100
- }, SelectProps: {
101
- native: true,
102
- }, variant: "outlined", style: { minWidth: 150 }, disabled: false, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: item === null || item === void 0 ? void 0 : item.initialData[0].value, children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: item === null || item === void 0 ? void 0 : item.initialData[1].value, children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }));
110
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
111
+ return handleChangeQueryInput &&
112
+ handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.value);
113
+ }, SelectProps: {
114
+ native: true,
115
+ }, variant: "outlined", style: { minWidth: 150 }, disabled: false, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("option", { value: item === null || item === void 0 ? void 0 : item.initialData[0].value, children: item === null || item === void 0 ? void 0 : item.initialData[0].label }), (0, jsx_runtime_1.jsx)("option", { value: item === null || item === void 0 ? void 0 : item.initialData[1].value, children: item === null || item === void 0 ? void 0 : item.initialData[1].label })] }) }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'viewTime' }, item);
116
+ updatedElementInputs.push(element);
103
117
  break;
104
118
  }
105
119
  case Enums_1.TYPE_FILTERS.DATE_RANGE_PICKER: {
106
- updatedElementInputs.dateRangePicker = ((0, jsx_runtime_1.jsx)(AWING_1.DateRangePicker, __assign({ isShowCalendarInfo: true, label: "".concat(t('Common.StartDate'), " - ").concat(t('Common.EndDate')), initialStartDate: (item === null || item === void 0 ? void 0 : item.isPassTime)
107
- ? (0, moment_1.default)()
108
- : (0, moment_1.default)().subtract(7, 'days'), initialEndDate: (item === null || item === void 0 ? void 0 : item.isPassTime)
109
- ? (0, moment_1.default)().add(7, 'days')
110
- : (0, moment_1.default)(), variant: "outlined", textFieldProps: {
111
- fullWidth: true,
112
- className: classes.outlinedInput,
113
- }, callback: handleChangeDateRange }, ((item === null || item === void 0 ? void 0 : item.isDayBlocked) && {
114
- isDayBlocked: item.isDayBlocked,
115
- }))));
120
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(AWING_1.DateRangePicker, __assign({ isShowCalendarInfo: true, label: "".concat(t('Common.StartDate'), " - ").concat(t('Common.EndDate')), initialStartDate: (item === null || item === void 0 ? void 0 : item.isPassTime)
121
+ ? (0, moment_1.default)()
122
+ : (0, moment_1.default)().subtract(7, 'days'), initialEndDate: (item === null || item === void 0 ? void 0 : item.isPassTime)
123
+ ? (0, moment_1.default)().add(7, 'days')
124
+ : (0, moment_1.default)(), variant: "outlined", textFieldProps: {
125
+ fullWidth: true,
126
+ className: classes.outlinedInput,
127
+ }, callback: handleChangeDateRange }, ((item === null || item === void 0 ? void 0 : item.isDayBlocked) && {
128
+ isDayBlocked: item.isDayBlocked,
129
+ })), idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'dateRangePicker' }, item);
130
+ updatedElementInputs.push(element);
116
131
  break;
117
132
  }
118
133
  case Enums_1.TYPE_FILTERS.CAMPAIGN: {
119
134
  var CampaignFilter = item === null || item === void 0 ? void 0 : item.nodeElement;
120
- updatedElementInputs.campaign = ((0, jsx_runtime_1.jsx)(CampaignFilter, { defaultValue: [], disabled: queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignDefault, onSubmit: function (campaignIds) {
121
- return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, campaignIds);
122
- }, disableMulti: item === null || item === void 0 ? void 0 : item.disableMulti }));
135
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(CampaignFilter, { defaultValue: [], disabled: queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignDefault, onSubmit: function (campaignIds) {
136
+ return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, campaignIds);
137
+ }, disableMulti: item === null || item === void 0 ? void 0 : item.disableMulti }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'campaign' }, item);
138
+ updatedElementInputs.push(element);
123
139
  break;
124
140
  }
125
141
  case Enums_1.TYPE_FILTERS.PLACE: {
126
142
  var PlaceFilter = item === null || item === void 0 ? void 0 : item.nodeElement;
127
- updatedElementInputs.place = ((0, jsx_runtime_1.jsx)(PlaceFilter, { isDisplayTextField: true, onChange: function (placeIds) {
128
- return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, placeIds);
129
- } }));
143
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(PlaceFilter, { isDisplayTextField: true, onChange: function (placeIds) {
144
+ return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, placeIds);
145
+ } }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'place' }, item);
146
+ updatedElementInputs.push(element);
130
147
  break;
131
148
  }
132
149
  case Enums_1.TYPE_FILTERS.PLACE_AUTOCOMPLETE: {
133
150
  var PlaceFilter = item === null || item === void 0 ? void 0 : item.nodeElement;
134
- updatedElementInputs.placeAutoComplete = ((0, jsx_runtime_1.jsx)(PlaceFilter, { onChange: function (event, value) {
135
- return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, value === null || value === void 0 ? void 0 : value.placeId);
136
- } }));
151
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(PlaceFilter, { onChange: function (event, value) {
152
+ return handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, value === null || value === void 0 ? void 0 : value.placeId);
153
+ } }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'placeAutoComplete' }, item);
154
+ updatedElementInputs.push(element);
137
155
  break;
138
156
  }
139
157
  case Enums_1.TYPE_FILTERS.NETWORK: {
140
- updatedElementInputs.isCampaignNetwork = ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_a = queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignNetwork) !== null && _a !== void 0 ? _a : true }), label: t('Statistic.Network.Title'), labelPlacement: "start", onChange: function (e) {
141
- handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
142
- } }));
158
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_a = queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignNetwork) !== null && _a !== void 0 ? _a : true }), label: t('Statistic.Network.Title'), labelPlacement: "start", onChange: function (e) {
159
+ handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
160
+ } }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'isCampaignNetwork' }, item);
161
+ updatedElementInputs.push(element);
143
162
  break;
144
163
  }
145
164
  case Enums_1.TYPE_FILTERS.CAMPAIGN_DEFAULT: {
146
- updatedElementInputs.isCampaignDefault = ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_b = queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignDefault) !== null && _b !== void 0 ? _b : false }), label: t('Statistic.CampaignDefault'), labelPlacement: "start", onChange: function (e) {
147
- handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
148
- } }));
165
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_b = queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignDefault) !== null && _b !== void 0 ? _b : false }), label: t('Statistic.CampaignDefault'), labelPlacement: "start", onChange: function (e) {
166
+ handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
167
+ } }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'isCampaignDefault' }, item);
168
+ updatedElementInputs.push(element);
149
169
  break;
150
170
  }
151
171
  case Enums_1.TYPE_FILTERS.INCLUDE_RESERVED: {
152
- updatedElementInputs.includeReserved = ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_c = queryInput === null || queryInput === void 0 ? void 0 : queryInput.includeReserved) !== null && _c !== void 0 ? _c : true }), label: t('StatisticSchedulePlan.IncludeCampaignReserved'), labelPlacement: "start", onChange: function (e) {
153
- handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
154
- } }));
172
+ var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_c = queryInput === null || queryInput === void 0 ? void 0 : queryInput.includeReserved) !== null && _c !== void 0 ? _c : true }), label: t('StatisticSchedulePlan.IncludeCampaignReserved'), labelPlacement: "start", onChange: function (e) {
173
+ handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
174
+ } }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'includeReserved' }, item);
175
+ updatedElementInputs.push(element);
155
176
  break;
156
177
  }
157
178
  }
158
179
  });
159
- setElementInputs(__assign(__assign({}, elementInputs), updatedElementInputs));
180
+ setElementInputs(__spreadArray([], updatedElementInputs, true));
160
181
  };
161
182
  (0, react_1.useEffect)(function () {
162
183
  setQueryInput(handleInitialFilter(initialFilters));
@@ -171,38 +192,57 @@ function ControlPanel(_a) {
171
192
  }
172
193
  onChangeQueryInput(tmpQueryInput);
173
194
  }, []);
174
- return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, justifyContent: 'flex-end', children: [((elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewBy) ||
175
- (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewTime) ||
176
- (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewUser)) && ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, item: true, lg: 1, justifyContent: "flex-start", children: (_c = (_b = elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewBy) !== null && _b !== void 0 ? _b : elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewTime) !== null && _c !== void 0 ? _c : elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewUser })), (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, item: true, lg: (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewBy) ||
177
- (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewTime) ||
178
- (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.viewUser)
179
- ? 11
180
- : 12, style: { display: 'flex' }, justifyContent: "flex-end", spacing: 2, children: [(elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.dateRangePicker) && ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, lg: (infoSX === null || infoSX === void 0 ? void 0 : infoSX.dateRangePicker) || 3, xs: 12, sx: {
181
- '& .MuiInputBase-input': {
182
- height: '1.25rem',
183
- },
184
- }, children: elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.dateRangePicker })), (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.campaign) && ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, lg: (infoSX === null || infoSX === void 0 ? void 0 : infoSX.campaign) || 3, children: elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.campaign })), ((elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.place) ||
185
- (elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.placeAutoComplete)) && ((0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, lg: (infoSX === null || infoSX === void 0 ? void 0 : infoSX.place) || (infoSX === null || infoSX === void 0 ? void 0 : infoSX.placeAutoComplete) || 3, sx: {
186
- '& .MuiInputBase-input': {
187
- textOverflow: 'ellipsis',
188
- },
189
- }, children: (_d = elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.place) !== null && _d !== void 0 ? _d : elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.placeAutoComplete })), (0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, style: {
190
- paddingTop: '24px',
195
+ var onShowFilterEnhanced = function () {
196
+ setIsHideFieldAdvanced(!isShowFilterEnhanced);
197
+ };
198
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, justifyContent: "flex-end", spacing: 2, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 10, spacing: 2, sx: { paddingRight: '0.5rem' }, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, justifyContent: "flex-end", spacing: 2, children: elementInputs
199
+ .filter(function (item) {
200
+ return item.isEnhanced === false ||
201
+ item.isEnhanced === undefined;
202
+ })
203
+ .map(function (fieldFilterEnhanced) {
204
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(material_1.Grid, __assign({ item: true, xs: (fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.col)
205
+ ? fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.col
206
+ : 3 }, ((fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.type) ===
207
+ Enums_1.TYPE_FILTERS.DATE_RANGE_PICKER
208
+ ? {
209
+ sx: {
210
+ '& .MuiInputBase-input': {
211
+ height: '1.25rem',
212
+ },
213
+ },
214
+ }
215
+ : {}), { children: fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.component })) }));
216
+ }) }) }), (0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, xs: 2, style: {
217
+ paddingTop: '24px',
218
+ display: 'flex',
219
+ flex: 'none',
220
+ }, justifyContent: "flex-end", children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "primary", onClick: function () {
221
+ onChangeQueryInput(queryInput);
222
+ }, style: { height: '40px' }, disabled: (_b = isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading) !== null && _b !== void 0 ? _b : false, children: t('Common.View') }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", title: t('Common.Download'), onClick: function () { return onChangeExportInput(queryInput); }, color: "inherit", disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.exportLoading, style: {
223
+ marginLeft: '16px',
224
+ height: '40px',
225
+ }, children: (isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.exportLoading) ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, { styleWrap: {
226
+ display: 'flex',
227
+ justifyContent: 'center',
228
+ }, styleIcon: {
229
+ width: '25px !important',
230
+ height: '25px !important',
231
+ } })) : ((0, jsx_runtime_1.jsx)(GetApp_1.default, {})) }), elementInputs.filter(function (item) { return item.isEnhanced === true; })
232
+ .length > 0 && ((0, jsx_runtime_1.jsx)("div", { style: { marginLeft: '10px' }, children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { onClick: onShowFilterEnhanced, children: isShowFilterEnhanced ? ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandMore, {})) : ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandLess, {})) }) }))] })] }), isShowFilterEnhanced && ((0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, justifyContent: "flex-end", spacing: 2, sx: { paddingRight: '3rem' }, children: elementInputs
233
+ .filter(function (item) { return item.isEnhanced === true; })
234
+ .map(function (fieldFilterEnhanced) {
235
+ return ((0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: (fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.col)
236
+ ? fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.col
237
+ : 3, style: __assign({}, ((fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.type) ===
238
+ Enums_1.TYPE_FILTERS.INCLUDE_RESERVED ||
239
+ Enums_1.TYPE_FILTERS.CAMPAIGN_DEFAULT
240
+ ? {
241
+ paddingTop: '1.5rem',
191
242
  display: 'flex',
192
- }, justifyContent: "flex-end", children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "primary", onClick: function () {
193
- onChangeQueryInput(queryInput);
194
- }, style: { height: '40px' }, disabled: (_e = isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.chartLoading) !== null && _e !== void 0 ? _e : false, children: t('Common.View') }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", title: t('Common.Download'), onClick: function () { return onChangeExportInput(queryInput); }, color: "inherit", disabled: isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.exportLoading, style: {
195
- marginLeft: '16px',
196
- height: '40px',
197
- }, children: (isLoadings === null || isLoadings === void 0 ? void 0 : isLoadings.exportLoading) ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, { styleWrap: {
198
- display: 'flex',
199
- justifyContent: 'center',
200
- }, styleIcon: {
201
- width: '25px !important',
202
- height: '25px !important',
203
- } })) : ((0, jsx_runtime_1.jsx)(GetApp_1.default, {})) })] })] })] }), (0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, xs: 12, justifyContent: "flex-end", style: {
204
- marginTop: 0,
205
- marginLeft: 0,
206
- }, spacing: 2, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, item: true, justifyContent: "flex-end", children: (_g = (_f = elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.isCampaignNetwork) !== null && _f !== void 0 ? _f : elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.isCampaignDefault) !== null && _g !== void 0 ? _g : elementInputs === null || elementInputs === void 0 ? void 0 : elementInputs.includeReserved }) })] }));
243
+ flex: 'none',
244
+ }
245
+ : null)), children: fieldFilterEnhanced === null || fieldFilterEnhanced === void 0 ? void 0 : fieldFilterEnhanced.component }) }));
246
+ }) }))] }));
207
247
  }
208
248
  exports.default = ControlPanel;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awing-library",
3
- "version": "2.1.6-beta",
3
+ "version": "2.1.8-beta",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",