@dexteel/mesf-core 5.10.0 → 5.11.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/dist/index.esm.js CHANGED
@@ -1,15 +1,15 @@
1
1
  export { LicenseManager } from 'ag-grid-enterprise';
2
- import { withStyles, DialogTitle as DialogTitle$1, DialogContent as DialogContent$1, DialogActions as DialogActions$1, createStyles, Grid, Button, alpha, makeStyles, Dialog as Dialog$1, TextField, Paper, List, ListItem, ListItemIcon, ListItemText, Chip, SvgIcon, Collapse, Typography as Typography$1, Checkbox, InputAdornment, IconButton as IconButton$1, MenuItem, Box, Card, CardContent, CardActions, Tooltip, FormControl, InputLabel, Select, CircularProgress, Snackbar, FormControlLabel, Switch, DialogContentText, Badge, useTheme, Input, CssBaseline, AppBar, Toolbar, Container, Menu, Hidden, Drawer, useMediaQuery, Divider, ListSubheader, debounce, createTheme, ThemeProvider } from '@material-ui/core';
2
+ import { withStyles, DialogTitle as DialogTitle$1, DialogContent as DialogContent$1, DialogActions as DialogActions$1, createStyles, Grid, Button, alpha, makeStyles, Dialog as Dialog$1, TextField, Paper, List, ListItem, ListItemIcon, ListItemText, Chip, SvgIcon, Collapse, Typography as Typography$1, Checkbox, InputAdornment, IconButton as IconButton$1, MenuItem, Box, Card, CardContent, CardActions, Tooltip, FormControl, InputLabel, Select, CircularProgress, Snackbar, FormControlLabel, Switch, DialogContentText, Badge, useTheme, Input, Divider, CssBaseline, AppBar, Toolbar, Container, Menu, Hidden, Drawer, useMediaQuery, ListSubheader, debounce, createTheme, ThemeProvider } from '@material-ui/core';
3
+ import { values, get, isNil, isEmpty, round, isNaN as isNaN$1, isNumber } from 'lodash-es';
4
+ import * as React from 'react';
5
+ import React__default, { useState, useRef, useEffect, useMemo, Component, createContext, useContext, useCallback, lazy, Suspense } from 'react';
3
6
  import IconButton from '@material-ui/core/IconButton';
4
7
  import CloseIcon from '@material-ui/icons/Close';
5
8
  import Alert$3 from '@material-ui/lab/Alert';
6
- import * as React from 'react';
7
- import React__default, { useState, useRef, useEffect, useMemo, Component, createContext, useContext, useCallback, lazy, Suspense } from 'react';
8
9
  import { ArrowBackRounded, ArrowForwardRounded, SkipNext, ChevronLeft, ChevronRight, ArrowRight, Send, Menu as Menu$1, People, Storage, Group, Assignment, Chat, Timeline, ViewList, Build, Settings as Settings$2 } from '@material-ui/icons';
9
10
  import { DatePicker } from '@mui/x-date-pickers/DatePicker';
10
11
  import moment$2 from 'moment-timezone';
11
12
  import { useParams, useNavigate, useSearchParams, Link, Navigate, Routes, Route, useLocation, BrowserRouter } from 'react-router-dom';
12
- import { values, get, isNil, isEmpty, round, isNaN as isNaN$1, isNumber } from 'lodash-es';
13
13
  import { ClearIcon, DatePicker as DatePicker$1, CalendarIcon, DateTimePicker, LocalizationProvider } from '@mui/x-date-pickers';
14
14
  import { AdapterMoment } from '@mui/x-date-pickers/AdapterMoment';
15
15
  import MenuIcon from '@material-ui/icons/Menu';
@@ -51,9 +51,10 @@ import ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';
51
51
  import SkipNextIcon from '@material-ui/icons/SkipNext';
52
52
  import { Line } from 'react-chartjs-2';
53
53
  import PersonPinCircleIcon from '@material-ui/icons/PersonPinCircle';
54
- import { makeStyles as makeStyles$1 } from '@material-ui/core/styles';
55
54
  import Dialog from '@material-ui/core/Dialog';
56
55
  import Typography from '@material-ui/core/Typography';
56
+ import { format, fromZonedTime, formatInTimeZone } from 'date-fns-tz';
57
+ import { findIana } from 'windows-iana';
57
58
  import { ResponsiveBar } from '@nivo/bar';
58
59
  import PropTypes from 'prop-types';
59
60
  import AccountTreeIcon from '@material-ui/icons/AccountTree';
@@ -63,8 +64,6 @@ import TreeView from '@material-ui/lab/TreeView';
63
64
  import { useSpring, animated } from '@react-spring/web';
64
65
  import { DataGrid, GridOverlay } from '@material-ui/data-grid';
65
66
  import GetAppIcon from '@material-ui/icons/GetApp';
66
- import { format, fromZonedTime, formatInTimeZone } from 'date-fns-tz';
67
- import { findIana } from 'windows-iana';
68
67
  import PersonOutlineIcon from '@material-ui/icons/PersonOutline';
69
68
  import PersonIcon from '@material-ui/icons/Person';
70
69
  import { LogLevel as LogLevel$1, PublicClientApplication } from '@azure/msal-browser';
@@ -910,7 +909,7 @@ var ModalTreeFilterControl = function (props) {
910
909
  React__default.createElement(Button, { onClick: function () { return handleOk(); }, color: "primary" }, "OK"))));
911
910
  };
912
911
 
913
- var useStyles$I = makeStyles(function (theme) { return ({
912
+ var useStyles$G = makeStyles(function (theme) { return ({
914
913
  root: {
915
914
  width: "100%",
916
915
  backgroundColor: theme.palette.background.paper,
@@ -926,7 +925,7 @@ var useStyles$I = makeStyles(function (theme) { return ({
926
925
  },
927
926
  }); });
928
927
  var TreePickerControl = function (props) {
929
- var classes = useStyles$I();
928
+ var classes = useStyles$G();
930
929
  var onSelect = props.onSelect, value = props.value; props.styleLabel; var dataSource = props.dataSource, _a = props.inputTitle, inputTitle = _a === void 0 ? "Asset" : _a; props.showPath; var _c = props.multipleSelectNodes, multipleSelectNodes = _c === void 0 ? false : _c, _d = props.showClearButton, showClearButton = _d === void 0 ? false : _d, showAssetTree = props.showAssetTree, onHide = props.onHide, _e = props.listAssetDrawings, listAssetDrawings = _e === void 0 ? [] : _e, onSuccess = props.onSuccess, isLoading = props.isLoading, _f = props.allowSearch, allowSearch = _f === void 0 ? false : _f, other = __rest(props, ["onSelect", "value", "styleLabel", "dataSource", "inputTitle", "showPath", "multipleSelectNodes", "showClearButton", "showAssetTree", "onHide", "listAssetDrawings", "onSuccess", "isLoading", "allowSearch"]);
931
930
  var _g = useState(showAssetTree || false), open = _g[0], setOpen = _g[1];
932
931
  var handleClickListItem = function (e) {
@@ -1010,7 +1009,7 @@ var TreePickerControl = function (props) {
1010
1009
  }, onHide: onHide, id: "modal-treeview-filters", title: props.title, keepMounted: true, open: open, onClose: handleClose, isLoading: isLoading, value: value, data: dataSource, onBackdropClick: function () { return setOpen(false); }, multipleSelectNodes: multipleSelectNodes, listAssetDrawings: listAssetDrawings, setListAssetDrawings: listAssetDrawings, onSuccess: onSuccess, allowSearch: allowSearch }, other)))));
1011
1010
  };
1012
1011
 
1013
- var useStyles$H = makeStyles(function (theme) { return ({
1012
+ var useStyles$F = makeStyles(function (theme) { return ({
1014
1013
  root: {
1015
1014
  width: "100%",
1016
1015
  backgroundColor: theme.palette.background.paper,
@@ -1061,7 +1060,7 @@ function getNodePath(node, nodeId, parentPath, isRoot) {
1061
1060
  return null;
1062
1061
  }
1063
1062
  var TreePickerControlV2 = function (props) {
1064
- var classes = useStyles$H();
1063
+ var classes = useStyles$F();
1065
1064
  var value = props.value, onSelect = props.onSelect; props.styleLabel; var dataSource = props.dataSource; props.getOptionName; var _a = props.inputTitle, inputTitle = _a === void 0 ? "Asset" : _a; props.showPath; var _c = props.multipleSelectNodes, multipleSelectNodes = _c === void 0 ? false : _c, _d = props.showClearButton, showClearButton = _d === void 0 ? false : _d, _e = props.showFullPath, showFullPath = _e === void 0 ? false : _e, showAssetTree = props.showAssetTree, onHide = props.onHide, _f = props.listAssetDrawings, listAssetDrawings = _f === void 0 ? [] : _f, onSuccess = props.onSuccess, isLoading = props.isLoading, _g = props.disabled, disabled = _g === void 0 ? false : _g, _h = props.mostUsedCount, mostUsedCount = _h === void 0 ? 0 : _h, _j = props.itemsWithParent, itemsWithParent = _j === void 0 ? [] : _j, _k = props.dialogMaxWidth, dialogMaxWidth = _k === void 0 ? "sm" : _k, _l = props.allowSearch, allowSearch = _l === void 0 ? false : _l, other = __rest(props, ["value", "onSelect", "styleLabel", "dataSource", "getOptionName", "inputTitle", "showPath", "multipleSelectNodes", "showClearButton", "showFullPath", "showAssetTree", "onHide", "listAssetDrawings", "onSuccess", "isLoading", "disabled", "mostUsedCount", "itemsWithParent", "dialogMaxWidth", "allowSearch"]);
1066
1065
  var _m = useState(false), open = _m[0], setOpen = _m[1];
1067
1066
  var handleClickListItem = function (event) {
@@ -1253,7 +1252,7 @@ DataGridControl.propTypes = {
1253
1252
  rows: PropTypes.array,
1254
1253
  };
1255
1254
 
1256
- var useStyles$G = makeStyles(function (theme) { return ({
1255
+ var useStyles$E = makeStyles(function (theme) { return ({
1257
1256
  contentWrapper: {
1258
1257
  padding: theme.spacing(2),
1259
1258
  },
@@ -1330,7 +1329,7 @@ var useStyles$G = makeStyles(function (theme) { return ({
1330
1329
  }); });
1331
1330
  var Alert$1 = function (_a) {
1332
1331
  var show = _a.show, variant = _a.variant, dismissible = _a.dismissible, onClose = _a.onClose, children = _a.children;
1333
- var classes = useStyles$G();
1332
+ var classes = useStyles$E();
1334
1333
  return (React__default.createElement(Collapse, { in: show },
1335
1334
  React__default.createElement(Paper, { className: "".concat(classes.alert, " ").concat(variant === "success" ? classes.success : classes.error), elevation: 0 },
1336
1335
  React__default.createElement("div", { className: classes.alertContent },
@@ -1341,7 +1340,7 @@ var Alert$1 = function (_a) {
1341
1340
  var GenericPanel = function (_a) {
1342
1341
  var _b;
1343
1342
  var title = _a.title, _c = _a.description, description = _c === void 0 ? "" : _c, _d = _a.showPromptSuccess, showPromptSuccess = _d === void 0 ? false : _d, _e = _a.showPromptError, showPromptError = _e === void 0 ? false : _e, _f = _a.onDismissSuccess, onDismissSuccess = _f === void 0 ? function () { return null; } : _f, _g = _a.onDismissError, onDismissError = _g === void 0 ? function () { return null; } : _g, successMessage = _a.successMessage, error = _a.error, children = _a.children;
1344
- var classes = useStyles$G();
1343
+ var classes = useStyles$E();
1345
1344
  return (React__default.createElement(Box, { className: classes.contentWrapper },
1346
1345
  React__default.createElement(Box, { className: classes.alertContainer },
1347
1346
  React__default.createElement(Alert$1, { show: showPromptError, variant: "danger", dismissible: true, onClose: onDismissError },
@@ -1360,7 +1359,7 @@ var GenericPanel = function (_a) {
1360
1359
  };
1361
1360
  var MasterDetailPanel = function (_a) {
1362
1361
  var title = _a.title, onSave = _a.onSave, onCancel = _a.onCancel, onDelete = _a.onDelete, saveStatus = _a.saveStatus, deleteStatus = _a.deleteStatus, _b = _a.showSave, showSave = _b === void 0 ? true : _b, showDelete = _a.showDelete, children = _a.children;
1363
- var classes = useStyles$G();
1362
+ var classes = useStyles$E();
1364
1363
  return (React__default.createElement(Box, { className: classes.masterDetailPanel },
1365
1364
  React__default.createElement(Card, { variant: "outlined" },
1366
1365
  React__default.createElement(CardContent, null,
@@ -1373,7 +1372,7 @@ var MasterDetailPanel = function (_a) {
1373
1372
  showDelete && (React__default.createElement(Button, { variant: "contained", color: "primary", className: classes.button, onClick: onDelete, disabled: !deleteStatus }, "Delete")))))));
1374
1373
  };
1375
1374
  var FilterPanel = function (props) {
1376
- var classes = useStyles$G();
1375
+ var classes = useStyles$E();
1377
1376
  var onClickExport = props.onClickExport, onClickReset = props.onClickReset, OnClickGo = props.OnClickGo, showButtons = props.showButtons, showExport = props.showExport, _a = props.extraButtons, extraButtons = _a === void 0 ? [] : _a, children = props.children;
1378
1377
  var handleExport = function () {
1379
1378
  if (onClickExport)
@@ -1398,7 +1397,7 @@ var FilterPanel = function (props) {
1398
1397
  showExport && (React__default.createElement(Button, { variant: "contained", className: "".concat(classes.button, " ").concat(classes.exportButton), onClick: handleExport, startIcon: React__default.createElement(GetAppIcon, null) }, "Excel"))))))));
1399
1398
  };
1400
1399
  var LongFilterPanel = function (props) {
1401
- var classes = useStyles$G();
1400
+ var classes = useStyles$E();
1402
1401
  var onClickExport = props.onClickExport, onClickReset = props.onClickReset, OnClickGo = props.OnClickGo, showButtons = props.showButtons, showExport = props.showExport, _a = props.extraButtons, extraButtons = _a === void 0 ? [] : _a, children = props.children;
1403
1402
  var handleExport = function () {
1404
1403
  if (onClickExport)
@@ -1861,7 +1860,7 @@ var getShiftsRangeByParameters = function (period_1) {
1861
1860
  });
1862
1861
  };
1863
1862
 
1864
- var useStyles$F = makeStyles(function (theme) { return ({
1863
+ var useStyles$D = makeStyles(function (theme) { return ({
1865
1864
  container: {
1866
1865
  display: "grid",
1867
1866
  gridTemplateColumns: "auto minmax(100px, 1fr) 80px minmax(100px, 1fr) auto auto",
@@ -1907,7 +1906,7 @@ var DEFAULT_PERIOD_OPTIONS = [
1907
1906
  var ShiftPeriodNavigatorControl = function (_a) {
1908
1907
  var _b;
1909
1908
  var value = _a.value, onChange = _a.onChange, _c = _a.showShiftAndCrews, showShiftAndCrews = _c === void 0 ? true : _c, _d = _a.dateFormat, dateFormat = _d === void 0 ? "MM/DD/YYYY HH:mm a" : _d, _e = _a.periodOptions, periodOptions = _e === void 0 ? DEFAULT_PERIOD_OPTIONS : _e;
1910
- var classes = useStyles$F();
1909
+ var classes = useStyles$D();
1911
1910
  var _f = useState(((_b = periodOptions[0]) === null || _b === void 0 ? void 0 : _b.value) || "Day"), period = _f[0], setPeriod = _f[1];
1912
1911
  var _g = useState(false), loadingShiftPeriodList = _g[0], setLoadingShiftPeriodList = _g[1];
1913
1912
  var _h = useState(""); _h[0]; var setError = _h[1];
@@ -2186,7 +2185,7 @@ var ShiftPeriodNavigatorControl = function (_a) {
2186
2185
  React__default.createElement(SkipNextIcon, null)))));
2187
2186
  };
2188
2187
 
2189
- var useStyles$E = makeStyles(function (theme) { return ({
2188
+ var useStyles$C = makeStyles(function (theme) { return ({
2190
2189
  contextMenu: {
2191
2190
  backgroundColor: "#fff",
2192
2191
  borderRadius: "2px",
@@ -2278,7 +2277,7 @@ var useContextMenuMESF = function () { return useContext(ContextMenuMESFContext)
2278
2277
 
2279
2278
  var ContextMenu$1 = function () {
2280
2279
  var _a = useContextMenuMESF(), show = _a.show, position = _a.position, options = _a.options;
2281
- var classes = useStyles$E();
2280
+ var classes = useStyles$C();
2282
2281
  var menuRef = useRef(null);
2283
2282
  var _b = useState("0"), x = _b[0], setX = _b[1];
2284
2283
  var _c = useState("0"), y = _c[0], setY = _c[1];
@@ -2715,7 +2714,7 @@ var JobsProvider = function (_a) {
2715
2714
  return (React__default.createElement(JobsContext.Provider, { value: { state: state, actions: actions } }, children));
2716
2715
  };
2717
2716
 
2718
- var useStyles$D = makeStyles(function (theme) { return ({
2717
+ var useStyles$B = makeStyles(function (theme) { return ({
2719
2718
  buttons: {
2720
2719
  opacity: 0,
2721
2720
  transition: "opacity 0.1s ease-in-out",
@@ -2733,7 +2732,7 @@ var useStyles$D = makeStyles(function (theme) { return ({
2733
2732
  var useJobsTableData = function (_a) {
2734
2733
  var setShowModal = _a.setShowModal, setJobSelected = _a.setJobSelected, showContextMenu = _a.showContextMenu;
2735
2734
  var rows = useJobsContext().state.jobsData;
2736
- useStyles$D();
2735
+ useStyles$B();
2737
2736
  var renderButtonMenu = function (params) {
2738
2737
  return (React__default.createElement(Button, { style: {}, onClick: function (e) { return showContextMenu(e, params.data, "jobsContext"); } },
2739
2738
  React__default.createElement(FormatListBulletedSharpIcon, { style: { height: "auto" }, color: "action" })));
@@ -2827,7 +2826,7 @@ var CustomStatusPanel = function (_a) {
2827
2826
  return (React.createElement(IconButton$1, { onClick: handleNew, color: "primary", style: { marginLeft: -15 } },
2828
2827
  React.createElement(PlaylistAddIcon, { style: { width: 30, height: 30 } })));
2829
2828
  };
2830
- var useStyles$C = makeStyles(function (theme) { return ({
2829
+ var useStyles$A = makeStyles(function (theme) { return ({
2831
2830
  root: {
2832
2831
  "& .MuiDataGrid-row": {
2833
2832
  cursor: "pointer",
@@ -2906,7 +2905,7 @@ var useStyles$C = makeStyles(function (theme) { return ({
2906
2905
  }); });
2907
2906
  var TableJobs = function (_a) {
2908
2907
  var getJobsFromAPI = _a.getJobsFromAPI, isLoading = _a.isLoading;
2909
- var classes = useStyles$C();
2908
+ var classes = useStyles$A();
2910
2909
  var _b = useState(null), jobSelected = _b[0], setJobSelected = _b[1];
2911
2910
  var _c = useState(null), gridApi = _c[0], setGridApi = _c[1];
2912
2911
  var _d = useState(""), errorMessage = _d[0], setErrorMessage = _d[1];
@@ -3284,7 +3283,7 @@ var SearchFilter = function (_a) {
3284
3283
  }, label: "Search", variant: "outlined", size: "small", value: search, onChange: function (e) { return setSearch(e.target.value); }, autoComplete: "off" })));
3285
3284
  };
3286
3285
 
3287
- var useStyles$B = makeStyles(function (theme) { return ({
3286
+ var useStyles$z = makeStyles(function (theme) { return ({
3288
3287
  title: {
3289
3288
  fontSize: 15,
3290
3289
  },
@@ -3316,7 +3315,7 @@ var formatTime = function (nowTime) {
3316
3315
  };
3317
3316
  var ModalLogSelected = function (_a) {
3318
3317
  var show = _a.show, onHide = _a.onHide, selectedLog = _a.selectedLog;
3319
- var classes = useStyles$B();
3318
+ var classes = useStyles$z();
3320
3319
  return (React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center" },
3321
3320
  React__default.createElement(MesfModal, { title: "LOG DETAILS", open: show, handleClose: function () { return onHide(false); }, maxWidth: "md", id: "log-details-modal" },
3322
3321
  React__default.createElement(MesfModal.Content, { style: { padding: "15px 30px" } },
@@ -3453,7 +3452,7 @@ var useLogTableData = function () {
3453
3452
  return { rows: rows, columnDefs: columnDefs };
3454
3453
  };
3455
3454
 
3456
- var useStyles$A = makeStyles(function (theme) { return ({
3455
+ var useStyles$y = makeStyles(function (theme) { return ({
3457
3456
  root: {
3458
3457
  "& .MuiDataGrid-row": {
3459
3458
  cursor: "pointer",
@@ -3522,7 +3521,7 @@ var useLogsOptionsFunctions = function (_a) {
3522
3521
  var TableLogs = function (_a) {
3523
3522
  var isLoading = _a.isLoading; _a.rowData; var refreshData = _a.refreshData;
3524
3523
  var _b = useLogsContext(), _c = _b.state, Timezone = _c.Timezone, _d = _c.searchData, Start = _d.Start, End = _d.End, Search = _d.Search, LogTypeCode = _d.LogTypeCode, _e = _b.actions, setLogTypeCodeFilter = _e.setLogTypeCodeFilter, setEndFilter = _e.setEndFilter, setStartFilter = _e.setStartFilter, setSearchFilter = _e.setSearchFilter, setTimezone = _e.setTimezone;
3525
- var classes = useStyles$A();
3524
+ var classes = useStyles$y();
3526
3525
  var gridStyle = useMemo(function () { return ({ height: "100%", width: "100%" }); }, []);
3527
3526
  var _f = useState(null); _f[0]; var setGridAPI = _f[1];
3528
3527
  var _g = useState(false), showLogModal = _g[0], setShowLogModal = _g[1];
@@ -3832,7 +3831,7 @@ var deleteProfile = function (profileId) { return __awaiter(void 0, void 0, void
3832
3831
  });
3833
3832
  }); };
3834
3833
 
3835
- var useStyles$z = makeStyles(function (theme) { return ({
3834
+ var useStyles$x = makeStyles(function (theme) { return ({
3836
3835
  title: {
3837
3836
  fontSize: 15,
3838
3837
  },
@@ -3855,7 +3854,7 @@ var CreateProfile = function (_a) {
3855
3854
  var _d = useState(""), message = _d[0], setMessage = _d[1];
3856
3855
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
3857
3856
  var _f = useState(""), error = _f[0], setError = _f[1];
3858
- var classes = useStyles$z();
3857
+ var classes = useStyles$x();
3859
3858
  var _g = useForm({ defaultValues: INITIAL_VALUES$3 }), register = _g.register, handleSubmit = _g.handleSubmit, reset = _g.reset, errors = _g.formState.errors;
3860
3859
  var onSubmit = function (data) { return __awaiter(void 0, void 0, void 0, function () {
3861
3860
  var res;
@@ -4091,7 +4090,7 @@ var DataTable = function (_a) {
4091
4090
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
4092
4091
  };
4093
4092
 
4094
- var useStyles$y = makeStyles(function (theme) { return ({
4093
+ var useStyles$w = makeStyles(function (theme) { return ({
4095
4094
  root: {
4096
4095
  "& .MuiFormLabel-asterisk": {
4097
4096
  display: "none",
@@ -4100,7 +4099,7 @@ var useStyles$y = makeStyles(function (theme) { return ({
4100
4099
  }); });
4101
4100
  var ActionsOfProfile = function (_a) {
4102
4101
  var profileForEdit = _a.profileForEdit, show = _a.show, onHide = _a.onHide;
4103
- var classes = useStyles$y();
4102
+ var classes = useStyles$w();
4104
4103
  var _b = useState(null), actionsOfProfile = _b[0], setActionsOfProfile = _b[1];
4105
4104
  var _c = useState(false), open = _c[0], setOpen = _c[1];
4106
4105
  var _d = useState(true), isLoading = _d[0], setIsLoading = _d[1];
@@ -4288,7 +4287,7 @@ var ProfilesProvider = function (_a) {
4288
4287
  return (React__default.createElement(ProfilesContext.Provider, { value: { state: state, actions: actions } }, children));
4289
4288
  };
4290
4289
 
4291
- var useStyles$x = makeStyles(function (theme) { return ({
4290
+ var useStyles$v = makeStyles(function (theme) { return ({
4292
4291
  buttons: {
4293
4292
  opacity: 0,
4294
4293
  transition: "opacity 0.1s ease-in-out",
@@ -4306,7 +4305,7 @@ var useStyles$x = makeStyles(function (theme) { return ({
4306
4305
  var useTableData$3 = function (_a) {
4307
4306
  var setProfileId = _a.setProfileId, setModalProceduresProfile = _a.setModalProceduresProfile, setModalDeleteProfile = _a.setModalDeleteProfile, showContextMenu = _a.showContextMenu;
4308
4307
  var state = useProfilesContext().state;
4309
- var classes = useStyles$x();
4308
+ var classes = useStyles$v();
4310
4309
  var rows = state.profiles.map(function (_a) {
4311
4310
  var ProfileId = _a.ProfileId, ProfileName = _a.ProfileName;
4312
4311
  return ({
@@ -4378,7 +4377,7 @@ var useTableData$3 = function (_a) {
4378
4377
  return { rows: rows, columnDefs: columnDefs };
4379
4378
  };
4380
4379
 
4381
- var useStyles$w = makeStyles(function (theme) { return ({
4380
+ var useStyles$u = makeStyles(function (theme) { return ({
4382
4381
  root: {
4383
4382
  "& .ag-icon-menu": {
4384
4383
  display: "none",
@@ -4449,7 +4448,7 @@ var TableProfiles = function (_a) {
4449
4448
  var _d = useState(false), modalDeleteProfile = _d[0], setModalDeleteProfile = _d[1];
4450
4449
  var _e = useState(null), profile = _e[0], setProfile = _e[1];
4451
4450
  var _f = useState(null), gridApi = _f[0], setGridApi = _f[1];
4452
- var classes = useStyles$w();
4451
+ var classes = useStyles$u();
4453
4452
  var loadingOverlayComponent = useMemo(function () {
4454
4453
  return LazyLoading;
4455
4454
  }, []);
@@ -4681,7 +4680,7 @@ var DeleteShiftParameters = function (PatternStart) { return __awaiter(void 0, v
4681
4680
  });
4682
4681
  }); };
4683
4682
 
4684
- var useStyles$v = makeStyles(function (theme) { return ({
4683
+ var useStyles$t = makeStyles(function (theme) { return ({
4685
4684
  title: {
4686
4685
  fontSize: 15,
4687
4686
  },
@@ -4707,7 +4706,7 @@ var CreateShift = function (_a) {
4707
4706
  var _d = useState(false), open = _d[0], setOpen = _d[1];
4708
4707
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
4709
4708
  var _f = useState(""), error = _f[0], setError = _f[1];
4710
- var classes = useStyles$v();
4709
+ var classes = useStyles$t();
4711
4710
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
4712
4711
  var _g = useForm({
4713
4712
  defaultValues: shiftTableData ? shiftTableData : INITIAL_VALUES$2,
@@ -4909,7 +4908,7 @@ var CreateShift = function (_a) {
4909
4908
  React.createElement(Alert, { severity: "success", onClose: handleClose }, "The shift was created successfully"))));
4910
4909
  };
4911
4910
 
4912
- var useStyles$u = makeStyles(function (theme) { return ({
4911
+ var useStyles$s = makeStyles(function (theme) { return ({
4913
4912
  title: {
4914
4913
  fontSize: 15,
4915
4914
  },
@@ -4935,7 +4934,7 @@ var DeleteShift = function (_a) {
4935
4934
  var _c = useState(false), open = _c[0], setOpen = _c[1];
4936
4935
  var _d = useState(false), isSubmitLoading = _d[0], setIsSubmitLoading = _d[1];
4937
4936
  var _e = useState(false), deleteAlert = _e[0], setDeleteAlert = _e[1];
4938
- var classes = useStyles$u();
4937
+ var classes = useStyles$s();
4939
4938
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
4940
4939
  var _f = useState(""), error = _f[0], setError = _f[1];
4941
4940
  var _g = useForm({ defaultValues: INITIAL_VALUES$2 }), control = _g.control, setValue = _g.setValue, reset = _g.reset, watch = _g.watch, errors = _g.formState.errors;
@@ -5074,7 +5073,7 @@ var DeleteShift = function (_a) {
5074
5073
  React.createElement(Alert, { severity: "warning", onClose: handleClose }, "The shift was deleted successfully"))));
5075
5074
  };
5076
5075
 
5077
- var useStyles$t = makeStyles(function (theme) { return ({
5076
+ var useStyles$r = makeStyles(function (theme) { return ({
5078
5077
  title: {
5079
5078
  fontSize: 15,
5080
5079
  },
@@ -5101,7 +5100,7 @@ var EditShift = function (_a) {
5101
5100
  var _d = useState(""), error = _d[0], setError = _d[1];
5102
5101
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
5103
5102
  var _f = useState(false), initialShiftPerDayAndCrewsNumber = _f[0], setInitialShiftPerDayAndCrewsNumber = _f[1];
5104
- var classes = useStyles$t();
5103
+ var classes = useStyles$r();
5105
5104
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
5106
5105
  var _g = useForm({ defaultValues: INITIAL_VALUES$2 }), control = _g.control, setValue = _g.setValue, handleSubmit = _g.handleSubmit, reset = _g.reset, watch = _g.watch, errors = _g.formState.errors;
5107
5106
  // Progress bar
@@ -5369,7 +5368,7 @@ var useShiftsOptionsFunctions = function (_a) {
5369
5368
  };
5370
5369
  };
5371
5370
 
5372
- var useStyles$s = makeStyles(function (theme) { return ({
5371
+ var useStyles$q = makeStyles(function (theme) { return ({
5373
5372
  root: {
5374
5373
  opacity: 0,
5375
5374
  transition: "opacity 0.1s ease-in-out",
@@ -5388,7 +5387,7 @@ var useTableData$2 = function (_a) {
5388
5387
  var _b;
5389
5388
  var setOpenModalEditShift = _a.setOpenModalEditShift, setOpenModalDeleteShift = _a.setOpenModalDeleteShift, showContextMenu = _a.showContextMenu;
5390
5389
  var _c = useShiftsCrewsContext(), state = _c.state, actions = _c.actions;
5391
- var classes = useStyles$s();
5390
+ var classes = useStyles$q();
5392
5391
  var rows = (_b = state.shifts) === null || _b === void 0 ? void 0 : _b.map(function (_a) {
5393
5392
  var PatternStart = _a.PatternStart, ShiftCodes = _a.ShiftCodes, Crews = _a.Crews, PatternDays = _a.PatternDays, CrewRotation = _a.CrewRotation, Comments = _a.Comments, CanEdit = _a.CanEdit;
5394
5393
  return ({
@@ -5499,7 +5498,7 @@ var useTableData$2 = function (_a) {
5499
5498
  return { rows: rows, columnDefs: columnDefs };
5500
5499
  };
5501
5500
 
5502
- var useStyles$r = makeStyles(function (theme) { return ({
5501
+ var useStyles$p = makeStyles(function (theme) { return ({
5503
5502
  root: {
5504
5503
  // "& .ag-icon-menu": {
5505
5504
  // display: "none",
@@ -5551,7 +5550,7 @@ var useStyles$r = makeStyles(function (theme) { return ({
5551
5550
  }); });
5552
5551
  var TableShiftsCrews = function (_a) {
5553
5552
  _a.isLoading; var getShiftsCrewsFromAPI = _a.getShiftsCrewsFromAPI;
5554
- var classes = useStyles$r();
5553
+ var classes = useStyles$p();
5555
5554
  var _b = useState(false), openModalNew = _b[0], setOpenModalNew = _b[1];
5556
5555
  var _c = useState(false), openModalEditShift = _c[0], setOpenModalEditShift = _c[1];
5557
5556
  var _d = useState(false), openModalDeleteShift = _d[0], setOpenModalDeleteShift = _d[1];
@@ -5835,6 +5834,65 @@ var ConfigurationAssetProvider = function (_a) {
5835
5834
  return (React__default.createElement(ConfigurationAssetContext.Provider, { value: { state: state, actions: actions } }, children));
5836
5835
  };
5837
5836
 
5837
+ var getUser = function (UserId, UserName) { return __awaiter(void 0, void 0, void 0, function () {
5838
+ var apiService, parameters, resp;
5839
+ return __generator(this, function (_a) {
5840
+ switch (_a.label) {
5841
+ case 0:
5842
+ apiService = new MESApiService();
5843
+ parameters = [];
5844
+ parameters.push({ name: "UserId", value: UserId });
5845
+ parameters.push({ name: "UserName", value: UserName });
5846
+ return [4 /*yield*/, apiService.callV2("[SEC].[GetUser]", parameters)];
5847
+ case 1:
5848
+ resp = _a.sent();
5849
+ return [2 /*return*/, resp];
5850
+ }
5851
+ });
5852
+ }); };
5853
+ var getAssets = function () { return __awaiter(void 0, void 0, void 0, function () {
5854
+ var apiService, resp;
5855
+ return __generator(this, function (_a) {
5856
+ switch (_a.label) {
5857
+ case 0:
5858
+ apiService = new MESApiService();
5859
+ return [4 /*yield*/, apiService.callV2("[MES].[GetAssets]", [])];
5860
+ case 1:
5861
+ resp = _a.sent();
5862
+ return [2 /*return*/, resp];
5863
+ }
5864
+ });
5865
+ }); };
5866
+ var getUTLSettings = function () { return __awaiter(void 0, void 0, void 0, function () {
5867
+ var apiService, resp;
5868
+ return __generator(this, function (_a) {
5869
+ switch (_a.label) {
5870
+ case 0:
5871
+ apiService = new MESApiService();
5872
+ return [4 /*yield*/, apiService.callV2("[UTL].[GetSettings]", [])];
5873
+ case 1:
5874
+ resp = _a.sent();
5875
+ return [2 /*return*/, resp];
5876
+ }
5877
+ });
5878
+ }); };
5879
+ var upsertDefaultAreaId = function (UserId, DefaultAreaId) { return __awaiter(void 0, void 0, void 0, function () {
5880
+ var apiService, parameters, resp;
5881
+ return __generator(this, function (_a) {
5882
+ switch (_a.label) {
5883
+ case 0:
5884
+ apiService = new MESApiService();
5885
+ parameters = [];
5886
+ parameters.push({ name: "UserId", value: UserId });
5887
+ parameters.push({ name: "DefaultAssetId", value: DefaultAreaId });
5888
+ return [4 /*yield*/, apiService.callV2("[SEC].[UpsertDefaultAssetId]", parameters)];
5889
+ case 1:
5890
+ resp = _a.sent();
5891
+ return [2 /*return*/, resp];
5892
+ }
5893
+ });
5894
+ }); };
5895
+
5838
5896
  var TransformAssetModelData = function (node) {
5839
5897
  var model = {
5840
5898
  id: node.AssetId,
@@ -5991,7 +6049,7 @@ var useAssetCodes = function () {
5991
6049
  return { loadFilterAssets: loadFilterAssets };
5992
6050
  };
5993
6051
 
5994
- var useStyles$q = makeStyles(function (theme) { return ({
6052
+ var useStyles$o = makeStyles(function (theme) { return ({
5995
6053
  root: {
5996
6054
  "& .input-group-text": {
5997
6055
  display: "none",
@@ -6034,7 +6092,7 @@ var useStyles$q = makeStyles(function (theme) { return ({
6034
6092
  }); });
6035
6093
  var CreateNewAssetDialog = function (_a) {
6036
6094
  var show = _a.show, onHide = _a.onHide;
6037
- var classes = useStyles$q();
6095
+ var classes = useStyles$o();
6038
6096
  var _b = useState(true), fullWidth = _b[0]; _b[1];
6039
6097
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
6040
6098
  var _d = useState(false), assetCreatedSuccess = _d[0], setAssetCreatedSuccess = _d[1];
@@ -6165,7 +6223,7 @@ var CreateNewAssetDialog = function (_a) {
6165
6223
  React__default.createElement(Alert$3, { severity: "info", onClose: handleClose }, "Document created successfully"))));
6166
6224
  };
6167
6225
 
6168
- var useStyles$p = makeStyles(function (theme) { return ({
6226
+ var useStyles$n = makeStyles(function (theme) { return ({
6169
6227
  root: {
6170
6228
  "& .input-group-text": {
6171
6229
  display: "none",
@@ -6213,7 +6271,7 @@ var useStyles$p = makeStyles(function (theme) { return ({
6213
6271
  }); });
6214
6272
  var EditAssetDialog = function (_a) {
6215
6273
  var show = _a.show, onHide = _a.onHide;
6216
- var classes = useStyles$p();
6274
+ var classes = useStyles$n();
6217
6275
  var _b = useState(true), fullWidth = _b[0]; _b[1];
6218
6276
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
6219
6277
  var _d = useState(false), assetEditedSuccess = _d[0], setAssetEditedSuccess = _d[1];
@@ -6333,7 +6391,7 @@ var EditAssetDialog = function (_a) {
6333
6391
  React__default.createElement(Alert$2, { severity: "info", onClose: handleClose }, "Document created succesfully")))))))));
6334
6392
  };
6335
6393
 
6336
- var useStyles$o = makeStyles(function (theme) { return ({
6394
+ var useStyles$m = makeStyles(function (theme) { return ({
6337
6395
  root: {
6338
6396
  "& .input-group-text": {
6339
6397
  display: "none",
@@ -6377,7 +6435,7 @@ var useStyles$o = makeStyles(function (theme) { return ({
6377
6435
  }); });
6378
6436
  var RemoveAssetDialog = function (_a) {
6379
6437
  var show = _a.show, onHide = _a.onHide;
6380
- var classes = useStyles$o();
6438
+ var classes = useStyles$m();
6381
6439
  var _b = useState(true), fullWidth = _b[0]; _b[1];
6382
6440
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
6383
6441
  var _d = useState(false), assetRemovedSuccess = _d[0], setAssetRemovedSuccess = _d[1];
@@ -6436,7 +6494,7 @@ var RemoveAssetDialog = function (_a) {
6436
6494
  React__default.createElement(Alert$3, { severity: "info", onClose: handleClose }, "Asset removed succesfully"))));
6437
6495
  };
6438
6496
 
6439
- var useStyles$n = makeStyles(function (theme) { return ({
6497
+ var useStyles$l = makeStyles(function (theme) { return ({
6440
6498
  root: {
6441
6499
  "& .input-group-text": {
6442
6500
  display: "none",
@@ -6487,7 +6545,7 @@ var useStyles$n = makeStyles(function (theme) { return ({
6487
6545
  }); });
6488
6546
  var ViewerAssetDialog = function (_a) {
6489
6547
  var show = _a.show, onHide = _a.onHide;
6490
- var classes = useStyles$n();
6548
+ var classes = useStyles$l();
6491
6549
  var _b = useState(true), fullWidth = _b[0]; _b[1];
6492
6550
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
6493
6551
  var _d = useConfigurationAssetContext().state, dataToCreateAsset = _d.dataToCreateAsset, assetNodeSelectedInTree = _d.assetNodeSelectedInTree;
@@ -6666,7 +6724,7 @@ var TypeIcon = function (props) {
6666
6724
  }
6667
6725
  };
6668
6726
 
6669
- var useStyles$m = makeStyles(function (theme) { return ({
6727
+ var useStyles$k = makeStyles(function (theme) { return ({
6670
6728
  root: {
6671
6729
  alignItems: "center",
6672
6730
  backgroundColor: "#1967d2",
@@ -6691,7 +6749,7 @@ var useStyles$m = makeStyles(function (theme) { return ({
6691
6749
  }); });
6692
6750
  var CustomDragPreview$1 = function (props) {
6693
6751
  var _a;
6694
- var classes = useStyles$m();
6752
+ var classes = useStyles$k();
6695
6753
  var item = props.monitorProps.item;
6696
6754
  return (React__default.createElement("div", { className: classes.root },
6697
6755
  React__default.createElement("div", { className: classes.icon },
@@ -6699,7 +6757,7 @@ var CustomDragPreview$1 = function (props) {
6699
6757
  React__default.createElement("div", { className: classes.label }, item.text)));
6700
6758
  };
6701
6759
 
6702
- var useStyles$l = makeStyles(function (theme) { return ({
6760
+ var useStyles$j = makeStyles(function (theme) { return ({
6703
6761
  root: {
6704
6762
  alignItems: "center",
6705
6763
  display: "flex",
@@ -6746,7 +6804,7 @@ var CustomNode = function (_a) {
6746
6804
  var _c = useConfigurationAssetContext(), openAssets = _c.state.openAssets, setOpenAssets = _c.actions.setOpenAssets;
6747
6805
  var _d = props.node, id = _d.id, droppable = _d.droppable, data = _d.data;
6748
6806
  var indent = props.depth * 24;
6749
- var classes = useStyles$l();
6807
+ var classes = useStyles$j();
6750
6808
  var nodeClasses = "".concat(classes.customNodeRoot, " ").concat(classes.root, " ").concat(isSelected ? classes.selected : "");
6751
6809
  var handleClick = function (e) {
6752
6810
  props.onClick(e, props.node);
@@ -6801,7 +6859,7 @@ var CustomNode = function (_a) {
6801
6859
  React__default.createElement(Typography$1, { variant: "body2" }, props.node.text))));
6802
6860
  };
6803
6861
 
6804
- var useStyles$k = makeStyles(function (theme) { return ({
6862
+ var useStyles$i = makeStyles(function (theme) { return ({
6805
6863
  root: {
6806
6864
  alignItems: "flex-start",
6807
6865
  backgroundColor: "#1967d2",
@@ -6834,7 +6892,7 @@ var useStyles$k = makeStyles(function (theme) { return ({
6834
6892
  },
6835
6893
  }); });
6836
6894
  var MultipleDragPreview = function (props) {
6837
- var classes = useStyles$k();
6895
+ var classes = useStyles$i();
6838
6896
  return (React__default.createElement(Badge, { classes: { badge: classes.badge }, color: "error", badgeContent: props.dragSources.length, anchorOrigin: { vertical: "top", horizontal: "right" } },
6839
6897
  React__default.createElement("div", { className: classes.root, "data-testid": "custom-drag-preview" }, props.dragSources.map(function (node) {
6840
6898
  var _a;
@@ -6845,7 +6903,7 @@ var MultipleDragPreview = function (props) {
6845
6903
  }))));
6846
6904
  };
6847
6905
 
6848
- var useStyles$j = makeStyles(function (theme) { return ({
6906
+ var useStyles$h = makeStyles(function (theme) { return ({
6849
6907
  root: {},
6850
6908
  contextMenu: {
6851
6909
  backgroundColor: "#F8F8F8",
@@ -6891,7 +6949,7 @@ var useStyles$j = makeStyles(function (theme) { return ({
6891
6949
  }); });
6892
6950
  var AssetViewComponent = function () {
6893
6951
  var _a = useState([]), selectedNodes = _a[0], setSelectedNodes = _a[1];
6894
- var classes = useStyles$j();
6952
+ var classes = useStyles$h();
6895
6953
  var _b = useState(false), isDragging = _b[0], setIsDragging = _b[1];
6896
6954
  var _c = useState(false), isCtrlPressing = _c[0], setIsCtrlPressing = _c[1];
6897
6955
  var _d = useState(false), isDoubleClick = _d[0], setIsDoubleClick = _d[1];
@@ -7110,227 +7168,53 @@ var AssetPage = function (props) {
7110
7168
  React.createElement(ConfigurationAssetPage, null)));
7111
7169
  };
7112
7170
 
7113
- var getUsers = function () { return __awaiter(void 0, void 0, void 0, function () {
7114
- var apiService, resp;
7115
- return __generator(this, function (_a) {
7116
- switch (_a.label) {
7117
- case 0:
7118
- apiService = new MESApiService();
7119
- return [4 /*yield*/, apiService.callV2("[SEC].[GetUsers]", [])];
7120
- case 1:
7121
- resp = _a.sent();
7122
- return [2 /*return*/, resp];
7171
+ var INITIAL_VALUES$1 = {
7172
+ UserId: null,
7173
+ UserName: "",
7174
+ FirstName: "",
7175
+ LastName: "",
7176
+ AuthTypeId: 1,
7177
+ IsActive: true,
7178
+ LastLogin: null,
7179
+ DefaultAssetId: null,
7180
+ ProfilesId: [],
7181
+ Profiles: [],
7182
+ };
7183
+
7184
+ var AssetSelector = function (_a) {
7185
+ var value = _a.value, onChange = _a.onChange, _b = _a.disabled, disabled = _b === void 0 ? false : _b;
7186
+ var _c = useAssetContext().state, areasList = _c.areasList, plantAssetId = _c.plantAssetId;
7187
+ var hasAssets = areasList && areasList.length > 0;
7188
+ var displayValue = React__default.useMemo(function () {
7189
+ if (!hasAssets) {
7190
+ return "";
7123
7191
  }
7124
- });
7125
- }); };
7126
- var getDataUser = function (UserId) { return __awaiter(void 0, void 0, void 0, function () {
7127
- var apiService, parameters, resp;
7128
- return __generator(this, function (_a) {
7129
- switch (_a.label) {
7130
- case 0:
7131
- apiService = new MESApiService();
7132
- parameters = [];
7133
- parameters.push({ name: "UserId", value: UserId });
7134
- parameters.push({ name: "UserName", value: null });
7135
- return [4 /*yield*/, apiService.callV2("[SEC].[GetUser]", parameters)];
7136
- case 1:
7137
- resp = _a.sent();
7138
- return [2 /*return*/, resp];
7192
+ if (isNil$1(value)) {
7193
+ return plantAssetId;
7139
7194
  }
7140
- });
7141
- }); };
7142
- var getProfiles = function () { return __awaiter(void 0, void 0, void 0, function () {
7143
- var apiService, resp;
7144
- return __generator(this, function (_a) {
7145
- switch (_a.label) {
7146
- case 0:
7147
- apiService = new MESApiService();
7148
- return [4 /*yield*/, apiService.callV2("[SEC].[GetProfiles]", [])];
7149
- case 1:
7150
- resp = _a.sent();
7151
- return [2 /*return*/, resp];
7195
+ return value;
7196
+ }, [value, hasAssets, plantAssetId]);
7197
+ var handleChange = function (event) {
7198
+ var selectedValue = event.target.value;
7199
+ if (selectedValue === "") {
7200
+ onChange(null);
7152
7201
  }
7153
- });
7154
- }); };
7155
- var deleteUser = function (userId) { return __awaiter(void 0, void 0, void 0, function () {
7156
- var apiService, parameters, resp;
7157
- return __generator(this, function (_a) {
7158
- switch (_a.label) {
7159
- case 0:
7160
- apiService = new MESApiService();
7161
- parameters = [];
7162
- parameters.push({ name: "UserId", value: userId });
7163
- return [4 /*yield*/, apiService.callV2("[SEC].[DeleteUser]", parameters)];
7164
- case 1:
7165
- resp = _a.sent();
7166
- return [2 /*return*/, resp];
7202
+ else {
7203
+ onChange(Number(selectedValue));
7167
7204
  }
7168
- });
7169
- }); };
7170
- var setPassword = function (userId, password) { return __awaiter(void 0, void 0, void 0, function () {
7171
- var apiService, resp, e_1;
7172
- return __generator(this, function (_a) {
7173
- switch (_a.label) {
7174
- case 0:
7175
- apiService = new MESApiService();
7176
- _a.label = 1;
7177
- case 1:
7178
- _a.trys.push([1, 3, , 4]);
7179
- return [4 /*yield*/, apiService.changePassword(userId.toString(), password)];
7180
- case 2:
7181
- resp = _a.sent();
7182
- return [2 /*return*/, {
7183
- ok: true,
7184
- data: resp,
7185
- }];
7186
- case 3:
7187
- e_1 = _a.sent();
7188
- return [2 /*return*/, { ok: false, message: e_1.toString() }];
7189
- case 4: return [2 /*return*/];
7190
- }
7191
- });
7192
- }); };
7193
- var upsertUser = function (user) { return __awaiter(void 0, void 0, void 0, function () {
7194
- var apiService, parameters, resp;
7195
- return __generator(this, function (_a) {
7196
- switch (_a.label) {
7197
- case 0:
7198
- apiService = new MESApiService();
7199
- parameters = [];
7200
- parameters.push({ name: "UserId", value: user.UserId });
7201
- parameters.push({ name: "UserName", value: user.UserName });
7202
- parameters.push({ name: "Name", value: user.FirstName });
7203
- parameters.push({ name: "LastName", value: user.LastName });
7204
- parameters.push({ name: "AuthTypeId", value: user.AuthTypeId });
7205
- parameters.push({ name: "IsActive", value: user.IsActive });
7206
- parameters.push({ name: "DefaultAssetId", value: user.DefaultAssetId });
7207
- return [4 /*yield*/, apiService.callV2("[SEC].[UpsertUser]", parameters)];
7208
- case 1:
7209
- resp = _a.sent();
7210
- return [2 /*return*/, resp];
7211
- }
7212
- });
7213
- }); };
7214
- var getAuthTypes = function () { return __awaiter(void 0, void 0, void 0, function () {
7215
- var apiService, resp;
7216
- return __generator(this, function (_a) {
7217
- switch (_a.label) {
7218
- case 0:
7219
- apiService = new MESApiService();
7220
- return [4 /*yield*/, apiService.callV2("[SEC].[GetAuthTypes]", [])];
7221
- case 1:
7222
- resp = _a.sent();
7223
- return [2 /*return*/, resp];
7224
- }
7225
- });
7226
- }); };
7227
- var setProfilesToUser = function (UserId, profileIds) { return __awaiter(void 0, void 0, void 0, function () {
7228
- var apiService, parameters, resp;
7229
- return __generator(this, function (_a) {
7230
- switch (_a.label) {
7231
- case 0:
7232
- apiService = new MESApiService();
7233
- parameters = [];
7234
- parameters.push({ name: "UserId", value: UserId });
7235
- parameters.push({ name: "ProfileIds", value: profileIds.join(" , ") });
7236
- return [4 /*yield*/, apiService.callV2("[SEC].[setProfilesToUser]", parameters)];
7237
- case 1:
7238
- resp = _a.sent();
7239
- return [2 /*return*/, resp];
7240
- }
7241
- });
7242
- }); };
7243
- var getUserPermissionsFromAPI = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
7244
- var apiService, parameters, resp, rows;
7245
- var _c = _b.UserId, UserId = _c === void 0 ? null : _c, _d = _b.UserName, UserName = _d === void 0 ? null : _d;
7246
- return __generator(this, function (_e) {
7247
- switch (_e.label) {
7248
- case 0:
7249
- apiService = new MESApiService();
7250
- parameters = [];
7251
- parameters.push({ name: "UserId", value: UserId });
7252
- parameters.push({ name: "UserName", value: UserName });
7253
- return [4 /*yield*/, apiService.callV2("SEC.GetPermissions", parameters)];
7254
- case 1:
7255
- resp = _e.sent();
7256
- rows = get(resp, "data.tables[0].rows", []);
7257
- return [2 /*return*/, rows[0] ? rows[0] : null];
7258
- }
7259
- });
7260
- }); };
7261
-
7262
- var ChangePassword$1 = function (_a) {
7263
- var show = _a.show, userId = _a.userId, onHide = _a.onHide;
7264
- var _b = useState(""), password = _b[0], setPasswordText = _b[1];
7265
- var _c = useState(false), isDirty = _c[0], setIsDirty = _c[1];
7266
- var handleSubmit = useCallback(function (ev) { return __awaiter(void 0, void 0, void 0, function () {
7267
- return __generator(this, function (_a) {
7268
- switch (_a.label) {
7269
- case 0:
7270
- ev.preventDefault();
7271
- return [4 /*yield*/, setPassword(userId, password)];
7272
- case 1:
7273
- _a.sent();
7274
- onHide(true);
7275
- return [2 /*return*/];
7276
- }
7277
- });
7278
- }); }, [userId, password]);
7279
- useEffect(function () {
7280
- if (show) {
7281
- setPasswordText("");
7282
- setIsDirty(false);
7205
+ };
7206
+ React__default.useEffect(function () {
7207
+ if (isNil$1(value)) {
7208
+ onChange(plantAssetId);
7283
7209
  }
7284
- }, [show]);
7285
- if (userId) {
7286
- return (React.createElement(React.Fragment, null,
7287
- React.createElement(MesfModal, { title: "Change password", open: show, handleClose: function () { return onHide(false); }, maxWidth: "lg" },
7288
- React.createElement(Grid, { container: true },
7289
- React.createElement(Grid, { item: true, md: 12, xs: 12 },
7290
- React.createElement(MesfModal.Content, { style: { padding: "6px 16px 16px" } },
7291
- React.createElement("form", { onSubmit: handleSubmit },
7292
- React.createElement(Grid, { item: true, md: 12, xs: 12 },
7293
- React.createElement(TextField, { label: "New Password", value: password, onChange: function (el) {
7294
- setIsDirty(true);
7295
- setPasswordText(el.target.value);
7296
- }, variant: "outlined", error: isEmpty(password) && isDirty, fullWidth: true,
7297
- // margin="dense"
7298
- autoComplete: "off" })),
7299
- React.createElement(Grid, { item: true, md: 12, xs: 12, style: { marginTop: 15 } },
7300
- React.createElement(Button, { fullWidth: true, variant: "contained", color: "primary", type: "submit" }, "APPLY")))))))));
7301
- }
7302
- else {
7303
- return React.createElement(React.Fragment, null);
7304
- }
7305
- };
7306
-
7307
- var INITIAL_VALUES$1 = {
7308
- UserId: null,
7309
- UserName: "",
7310
- FirstName: "",
7311
- LastName: "",
7312
- AuthTypeId: 1,
7313
- IsActive: true,
7314
- LastLogin: null,
7315
- DefaultAssetId: null,
7316
- ProfilesId: [],
7317
- Profiles: [],
7318
- };
7319
-
7320
- var AssetSelector = function (_a) {
7321
- var value = _a.value, onChange = _a.onChange, _b = _a.disabled, disabled = _b === void 0 ? false : _b;
7322
- var areasList = useAssetContext().state.areasList;
7210
+ }, [value, onChange, plantAssetId]);
7323
7211
  return (React__default.createElement(FormControl, { variant: "outlined", fullWidth: true, margin: "dense", disabled: disabled },
7324
7212
  React__default.createElement(InputLabel, null, "Default Asset"),
7325
- React__default.createElement(Select, { value: value || "", onChange: function (e) {
7326
- return onChange(e.target.value ? Number(e.target.value) : null);
7327
- }, label: "Default Asset" },
7328
- React__default.createElement(MenuItem, { value: "" },
7329
- React__default.createElement("em", null, "None")),
7330
- areasList.map(function (area) { return (React__default.createElement(MenuItem, { key: area === null || area === void 0 ? void 0 : area.AssetId, value: area === null || area === void 0 ? void 0 : area.AssetId }, area === null || area === void 0 ? void 0 : area.AssetName)); }))));
7213
+ React__default.createElement(Select, { value: displayValue, onChange: handleChange, label: "Default Asset" }, !hasAssets ? (React__default.createElement(MenuItem, { value: "" },
7214
+ React__default.createElement("em", null, "None"))) : (areasList.map(function (area) { return (React__default.createElement(MenuItem, { key: area === null || area === void 0 ? void 0 : area.AssetId, value: area === null || area === void 0 ? void 0 : area.AssetId }, area === null || area === void 0 ? void 0 : area.AssetName)); })))));
7331
7215
  };
7332
7216
 
7333
- var useStyles$i = makeStyles(function (theme) { return ({
7217
+ var useStyles$g = makeStyles(function (theme) { return ({
7334
7218
  root: {
7335
7219
  "& .MuiSelect-select": {
7336
7220
  minHeight: "40px",
@@ -7363,7 +7247,7 @@ var MenuProps$1 = {
7363
7247
  };
7364
7248
  var AuthTypeSelector = function (_a) {
7365
7249
  var value = _a.value, onChange = _a.onChange, disabled = _a.disabled;
7366
- var classes = useStyles$i();
7250
+ var classes = useStyles$g();
7367
7251
  var _b = useState([]), authTypes = _b[0], setAuthTypes = _b[1];
7368
7252
  var _c = useState(true), isLoading = _c[0], setIsLoading = _c[1];
7369
7253
  var theme = useTheme();
@@ -7399,7 +7283,7 @@ var AuthTypeSelector = function (_a) {
7399
7283
  React.createElement(Chip, { key: "selected-authType-".concat(selected), label: selectedAuthTypeName, className: classes.chip }))); }, MenuProps: MenuProps$1 }, authTypes.map(function (authType) { return (React.createElement(MenuItem, { key: "auth-".concat(authType.AuthTypeId), value: authType.AuthTypeId, style: getStyles(authType.AuthTypeId, authTypes, theme) }, authType.Name)); })))) : (React.createElement(React.Fragment, null))));
7400
7284
  };
7401
7285
 
7402
- var useStyles$h = makeStyles(function (theme) { return ({
7286
+ var useStyles$f = makeStyles(function (theme) { return ({
7403
7287
  root: {
7404
7288
  "& .MuiSelect-select": {
7405
7289
  height: "auto",
@@ -7440,7 +7324,7 @@ var MenuProps = {
7440
7324
  };
7441
7325
  var ProfilesPicker = function (_a) {
7442
7326
  var value = _a.value, onChange = _a.onChange; _a.userIdForDelete; var setprofileError = _a.setprofileError, disabled = _a.disabled;
7443
- var classes = useStyles$h();
7327
+ var classes = useStyles$f();
7444
7328
  var theme = useTheme();
7445
7329
  var _b = useState(true), isLoading = _b[0], setIsLoading = _b[1];
7446
7330
  var _c = useState([]), profiles = _c[0], setProfiles = _c[1];
@@ -7481,7 +7365,7 @@ var ProfilesPicker = function (_a) {
7481
7365
  React__default.createElement(Select, { autoWidth: true, labelId: "demo-mutiple-chip-label", id: "demo-mutiple-chip", multiple: true, value: value, onChange: onChange, input: React__default.createElement(Input, { id: "select-multiple-chip" }), renderValue: function (selected) { return (React__default.createElement("div", { className: classes.chips }, selected.map(function (profileId) { return (React__default.createElement(Chip, { key: "selected-profile-".concat(profileId), label: getProfileNameById(profileId), className: classes.chip })); }))); }, MenuProps: MenuProps }, profiles.map(function (profile) { return (React__default.createElement(MenuItem, { key: "profile-".concat(profile.ProfileId), value: profile.ProfileId, style: getStyles(profile.ProfileId, profiles, theme) }, profile.ProfileName.replaceAll("Profile", ""))); })))) : (React__default.createElement(React__default.Fragment, null))));
7482
7366
  };
7483
7367
 
7484
- var useStyles$g = makeStyles(function (theme) { return ({
7368
+ var useStyles$e = makeStyles(function (theme) { return ({
7485
7369
  checkbox: {
7486
7370
  userSelect: "none",
7487
7371
  },
@@ -7503,7 +7387,7 @@ var CreateUser = function (_a) {
7503
7387
  var _f = useState(false), isSubmitLoading = _f[0], setIsSubmitLoading = _f[1];
7504
7388
  var _g = useState(""), error = _g[0], setError = _g[1];
7505
7389
  var _h = useState(""), profileError = _h[0], setprofileError = _h[1];
7506
- var classes = useStyles$g();
7390
+ var classes = useStyles$e();
7507
7391
  var _j = useForm({ defaultValues: INITIAL_VALUES$1 }), register = _j.register, control = _j.control, handleSubmit = _j.handleSubmit, reset = _j.reset, watch = _j.watch, errors = _j.formState.errors;
7508
7392
  var handleClose = function (event, reason) {
7509
7393
  if (reason === "clickaway") {
@@ -8032,7 +7916,7 @@ function useToken() {
8032
7916
  };
8033
7917
  }
8034
7918
 
8035
- var useStyles$f = makeStyles(function (theme) { return ({
7919
+ var useStyles$d = makeStyles(function (theme) { return ({
8036
7920
  checkbox: {
8037
7921
  userSelect: "none",
8038
7922
  },
@@ -8051,7 +7935,7 @@ var useStyles$f = makeStyles(function (theme) { return ({
8051
7935
  var EditUser = function (_a) {
8052
7936
  var _b, _c, _d;
8053
7937
  var userId = _a.userId, show = _a.show, onHide = _a.onHide;
8054
- var classes = useStyles$f();
7938
+ var classes = useStyles$d();
8055
7939
  var _e = useState(false), open = _e[0], setOpen = _e[1];
8056
7940
  var _f = useState(false), isLoading = _f[0], setIsLoading = _f[1];
8057
7941
  var _g = useState(false), isSubmitLoading = _g[0], setIsSubmitLoading = _g[1];
@@ -8221,7 +8105,7 @@ var UsersProvider = function (_a) {
8221
8105
  return (React__default.createElement(UsersContext.Provider, { value: { state: state, actions: actions } }, children));
8222
8106
  };
8223
8107
 
8224
- var useStyles$e = makeStyles(function (theme) { return ({
8108
+ var useStyles$c = makeStyles(function (theme) { return ({
8225
8109
  buttons: {
8226
8110
  opacity: 0,
8227
8111
  transition: "opacity 0.1s ease-in-out",
@@ -8237,7 +8121,7 @@ var useStyles$e = makeStyles(function (theme) { return ({
8237
8121
  },
8238
8122
  }); });
8239
8123
  var buttonsCellRenderer = function (params) {
8240
- var classes = useStyles$e();
8124
+ var classes = useStyles$c();
8241
8125
  var setUserId = params.setUserId, setOpenModalEditDataUser = params.setOpenModalEditDataUser, setOpenModalDeleteUser = params.setOpenModalDeleteUser, setOpenModalChangePasswordd = params.setOpenModalChangePasswordd, showContextMenu = params.showContextMenu;
8242
8126
  return (React__default.createElement(Grid, { container: true, style: {
8243
8127
  height: "100%",
@@ -9255,7 +9139,20 @@ var MESApiService = /** @class */ (function () {
9255
9139
  return MESApiService;
9256
9140
  }());
9257
9141
 
9258
- var getUser = function (UserId, UserName) { return __awaiter(void 0, void 0, void 0, function () {
9142
+ var getUsers = function () { return __awaiter(void 0, void 0, void 0, function () {
9143
+ var apiService, resp;
9144
+ return __generator(this, function (_a) {
9145
+ switch (_a.label) {
9146
+ case 0:
9147
+ apiService = new MESApiService();
9148
+ return [4 /*yield*/, apiService.callV2("[SEC].[GetUsers]", [])];
9149
+ case 1:
9150
+ resp = _a.sent();
9151
+ return [2 /*return*/, resp];
9152
+ }
9153
+ });
9154
+ }); };
9155
+ var getDataUser = function (UserId) { return __awaiter(void 0, void 0, void 0, function () {
9259
9156
  var apiService, parameters, resp;
9260
9157
  return __generator(this, function (_a) {
9261
9158
  switch (_a.label) {
@@ -9263,7 +9160,7 @@ var getUser = function (UserId, UserName) { return __awaiter(void 0, void 0, voi
9263
9160
  apiService = new MESApiService();
9264
9161
  parameters = [];
9265
9162
  parameters.push({ name: "UserId", value: UserId });
9266
- parameters.push({ name: "UserName", value: UserName });
9163
+ parameters.push({ name: "UserName", value: null });
9267
9164
  return [4 /*yield*/, apiService.callV2("[SEC].[GetUser]", parameters)];
9268
9165
  case 1:
9269
9166
  resp = _a.sent();
@@ -9271,33 +9168,92 @@ var getUser = function (UserId, UserName) { return __awaiter(void 0, void 0, voi
9271
9168
  }
9272
9169
  });
9273
9170
  }); };
9274
- var getAssets = function () { return __awaiter(void 0, void 0, void 0, function () {
9171
+ var getProfiles = function () { return __awaiter(void 0, void 0, void 0, function () {
9275
9172
  var apiService, resp;
9276
9173
  return __generator(this, function (_a) {
9277
9174
  switch (_a.label) {
9278
9175
  case 0:
9279
9176
  apiService = new MESApiService();
9280
- return [4 /*yield*/, apiService.callV2("[MES].[GetAssets]", [])];
9177
+ return [4 /*yield*/, apiService.callV2("[SEC].[GetProfiles]", [])];
9281
9178
  case 1:
9282
9179
  resp = _a.sent();
9283
9180
  return [2 /*return*/, resp];
9284
9181
  }
9285
9182
  });
9286
9183
  }); };
9287
- var getUTLSettings = function () { return __awaiter(void 0, void 0, void 0, function () {
9184
+ var deleteUser = function (userId) { return __awaiter(void 0, void 0, void 0, function () {
9185
+ var apiService, parameters, resp;
9186
+ return __generator(this, function (_a) {
9187
+ switch (_a.label) {
9188
+ case 0:
9189
+ apiService = new MESApiService();
9190
+ parameters = [];
9191
+ parameters.push({ name: "UserId", value: userId });
9192
+ return [4 /*yield*/, apiService.callV2("[SEC].[DeleteUser]", parameters)];
9193
+ case 1:
9194
+ resp = _a.sent();
9195
+ return [2 /*return*/, resp];
9196
+ }
9197
+ });
9198
+ }); };
9199
+ var setPassword = function (userId, password) { return __awaiter(void 0, void 0, void 0, function () {
9200
+ var apiService, resp, e_1;
9201
+ return __generator(this, function (_a) {
9202
+ switch (_a.label) {
9203
+ case 0:
9204
+ apiService = new MESApiService();
9205
+ _a.label = 1;
9206
+ case 1:
9207
+ _a.trys.push([1, 3, , 4]);
9208
+ return [4 /*yield*/, apiService.changePassword(userId.toString(), password)];
9209
+ case 2:
9210
+ resp = _a.sent();
9211
+ return [2 /*return*/, {
9212
+ ok: true,
9213
+ data: resp,
9214
+ }];
9215
+ case 3:
9216
+ e_1 = _a.sent();
9217
+ return [2 /*return*/, { ok: false, message: e_1.toString() }];
9218
+ case 4: return [2 /*return*/];
9219
+ }
9220
+ });
9221
+ }); };
9222
+ var upsertUser = function (user) { return __awaiter(void 0, void 0, void 0, function () {
9223
+ var apiService, parameters, resp;
9224
+ return __generator(this, function (_a) {
9225
+ switch (_a.label) {
9226
+ case 0:
9227
+ apiService = new MESApiService();
9228
+ parameters = [];
9229
+ parameters.push({ name: "UserId", value: user.UserId });
9230
+ parameters.push({ name: "UserName", value: user.UserName });
9231
+ parameters.push({ name: "Name", value: user.FirstName });
9232
+ parameters.push({ name: "LastName", value: user.LastName });
9233
+ parameters.push({ name: "AuthTypeId", value: user.AuthTypeId });
9234
+ parameters.push({ name: "IsActive", value: user.IsActive });
9235
+ parameters.push({ name: "DefaultAssetId", value: user.DefaultAssetId });
9236
+ return [4 /*yield*/, apiService.callV2("[SEC].[UpsertUser]", parameters)];
9237
+ case 1:
9238
+ resp = _a.sent();
9239
+ return [2 /*return*/, resp];
9240
+ }
9241
+ });
9242
+ }); };
9243
+ var getAuthTypes = function () { return __awaiter(void 0, void 0, void 0, function () {
9288
9244
  var apiService, resp;
9289
9245
  return __generator(this, function (_a) {
9290
9246
  switch (_a.label) {
9291
9247
  case 0:
9292
9248
  apiService = new MESApiService();
9293
- return [4 /*yield*/, apiService.callV2("[UTL].[GetSettings]", [])];
9249
+ return [4 /*yield*/, apiService.callV2("[SEC].[GetAuthTypes]", [])];
9294
9250
  case 1:
9295
9251
  resp = _a.sent();
9296
9252
  return [2 /*return*/, resp];
9297
9253
  }
9298
9254
  });
9299
9255
  }); };
9300
- var upsertDefaultAreaId = function (UserId, DefaultAreaId) { return __awaiter(void 0, void 0, void 0, function () {
9256
+ var setProfilesToUser = function (UserId, profileIds) { return __awaiter(void 0, void 0, void 0, function () {
9301
9257
  var apiService, parameters, resp;
9302
9258
  return __generator(this, function (_a) {
9303
9259
  switch (_a.label) {
@@ -9305,85 +9261,206 @@ var upsertDefaultAreaId = function (UserId, DefaultAreaId) { return __awaiter(vo
9305
9261
  apiService = new MESApiService();
9306
9262
  parameters = [];
9307
9263
  parameters.push({ name: "UserId", value: UserId });
9308
- parameters.push({ name: "DefaultAssetId", value: DefaultAreaId });
9309
- return [4 /*yield*/, apiService.callV2("[SEC].[UpsertDefaultAssetId]", parameters)];
9264
+ parameters.push({ name: "ProfileIds", value: profileIds.join(" , ") });
9265
+ return [4 /*yield*/, apiService.callV2("[SEC].[setProfilesToUser]", parameters)];
9310
9266
  case 1:
9311
9267
  resp = _a.sent();
9312
9268
  return [2 /*return*/, resp];
9313
9269
  }
9314
9270
  });
9315
9271
  }); };
9272
+ var getUserPermissionsFromAPI = function (_a) { return __awaiter(void 0, [_a], void 0, function (_b) {
9273
+ var apiService, parameters, resp, rows;
9274
+ var _c = _b.UserId, UserId = _c === void 0 ? null : _c, _d = _b.UserName, UserName = _d === void 0 ? null : _d;
9275
+ return __generator(this, function (_e) {
9276
+ switch (_e.label) {
9277
+ case 0:
9278
+ apiService = new MESApiService();
9279
+ parameters = [];
9280
+ parameters.push({ name: "UserId", value: UserId });
9281
+ parameters.push({ name: "UserName", value: UserName });
9282
+ return [4 /*yield*/, apiService.callV2("SEC.GetPermissions", parameters)];
9283
+ case 1:
9284
+ resp = _e.sent();
9285
+ rows = get(resp, "data.tables[0].rows", []);
9286
+ return [2 /*return*/, rows[0] ? rows[0] : null];
9287
+ }
9288
+ });
9289
+ }); };
9290
+
9291
+ var ChangePassword$1 = function (_a) {
9292
+ var show = _a.show, userId = _a.userId, onHide = _a.onHide;
9293
+ var _b = useState(""), password = _b[0], setPasswordText = _b[1];
9294
+ var _c = useState(false), isDirty = _c[0], setIsDirty = _c[1];
9295
+ var handleSubmit = useCallback(function (ev) { return __awaiter(void 0, void 0, void 0, function () {
9296
+ return __generator(this, function (_a) {
9297
+ switch (_a.label) {
9298
+ case 0:
9299
+ ev.preventDefault();
9300
+ return [4 /*yield*/, setPassword(userId, password)];
9301
+ case 1:
9302
+ _a.sent();
9303
+ onHide(true);
9304
+ return [2 /*return*/];
9305
+ }
9306
+ });
9307
+ }); }, [userId, password]);
9308
+ useEffect(function () {
9309
+ if (show) {
9310
+ setPasswordText("");
9311
+ setIsDirty(false);
9312
+ }
9313
+ }, [show]);
9314
+ if (userId) {
9315
+ return (React.createElement(React.Fragment, null,
9316
+ React.createElement(MesfModal, { title: "Change password", open: show, handleClose: function () { return onHide(false); }, maxWidth: "lg" },
9317
+ React.createElement(Grid, { container: true },
9318
+ React.createElement(Grid, { item: true, md: 12, xs: 12 },
9319
+ React.createElement(MesfModal.Content, { style: { padding: "6px 16px 16px" } },
9320
+ React.createElement("form", { onSubmit: handleSubmit },
9321
+ React.createElement(Grid, { item: true, md: 12, xs: 12 },
9322
+ React.createElement(TextField, { label: "New Password", value: password, onChange: function (el) {
9323
+ setIsDirty(true);
9324
+ setPasswordText(el.target.value);
9325
+ }, variant: "outlined", error: isEmpty(password) && isDirty, fullWidth: true,
9326
+ // margin="dense"
9327
+ autoComplete: "off" })),
9328
+ React.createElement(Grid, { item: true, md: 12, xs: 12, style: { marginTop: 15 } },
9329
+ React.createElement(Button, { fullWidth: true, variant: "contained", color: "primary", type: "submit" }, "APPLY")))))))));
9330
+ }
9331
+ else {
9332
+ return React.createElement(React.Fragment, null);
9333
+ }
9334
+ };
9316
9335
 
9317
- var useStyles$d = makeStyles$1(function (theme) { return ({
9318
- root: {
9319
- padding: theme.spacing(3),
9320
- },
9321
- paper: {
9322
- padding: theme.spacing(3),
9323
- marginBottom: theme.spacing(3),
9324
- },
9325
- title: {
9326
- marginBottom: theme.spacing(2),
9327
- },
9328
- formRow: {
9329
- marginBottom: theme.spacing(2),
9330
- },
9331
- changePasswordButton: {
9332
- marginLeft: theme.spacing(2),
9333
- },
9334
- textArea: {
9335
- width: "100%",
9336
- height: "50vh",
9337
- padding: theme.spacing(1),
9338
- fontFamily: "inherit",
9339
- border: "1px solid ".concat(theme.palette.divider),
9340
- borderRadius: 4,
9341
- backgroundColor: theme.palette.action.disabledBackground,
9342
- },
9343
- successMessage: {
9344
- padding: theme.spacing(1),
9345
- marginBottom: theme.spacing(2),
9346
- backgroundColor: theme.palette.success.light,
9347
- color: theme.palette.success.contrastText,
9348
- borderRadius: 4,
9349
- },
9350
- }); });
9351
9336
  var Account = function () {
9352
- var classes = useStyles$d();
9353
- var _a = useState(""), error = _a[0], setError = _a[1];
9354
- var _b = useState(""), userLastName = _b[0], setUserLastName = _b[1];
9355
- var _c = useState(""), userFirstName = _c[0], setUserFirstName = _c[1];
9356
- var user = useState(function () {
9337
+ var _a = useToken(), getUserId = _a.getUserId; _a.getUserName; _a.getFirstName; _a.getLastName;
9338
+ var getUserNameFromStorage = function () {
9357
9339
  var sessionData = localStorage.getItem("userMESData");
9358
- return JSON.parse(sessionData || "{}");
9359
- })[0];
9360
- var _d = useState(""), userName = _d[0], setUserName = _d[1];
9361
- var _e = useState(false), userIsDomain = _e[0], setUserIsDomain = _e[1];
9362
- var _f = useState(false), userIsActive = _f[0], setUserIsActive = _f[1];
9363
- var _g = useState(""), userProfiles = _g[0], setUserProfiles = _g[1];
9364
- var _h = useState(""), userPermissions = _h[0], setUserPermissions = _h[1];
9365
- var _j = useState(""), userProcedures = _j[0], setUserProcedures = _j[1];
9366
- var _k = useState(false); _k[0]; _k[1];
9367
- var _l = useState(false), showSuccess = _l[0], setShowSuccess = _l[1];
9368
- var _m = useState(""), successMessage = _m[0], setSuccessMessage = _m[1];
9340
+ if (sessionData) {
9341
+ var userData = JSON.parse(sessionData);
9342
+ return (userData.userName || userData.UserName || userData.username || null);
9343
+ }
9344
+ return null;
9345
+ };
9346
+ var _b = useState(""), error = _b[0], setError = _b[1];
9347
+ var _c = useState(""), userName = _c[0], setUserName = _c[1];
9348
+ var _d = useState(""), userFirstName = _d[0], setUserFirstName = _d[1];
9349
+ var _e = useState(""), userLastName = _e[0], setUserLastName = _e[1];
9350
+ var _f = useState(false), userIsDomain = _f[0], setUserIsDomain = _f[1];
9351
+ var _g = useState(false), userIsActive = _g[0], setUserIsActive = _g[1];
9352
+ var _h = useState(""), userProfiles = _h[0], setUserProfiles = _h[1];
9353
+ var _j = useState(""), userPermissions = _j[0], setUserPermissions = _j[1];
9354
+ var _k = useState(""), userProcedures = _k[0], setUserProcedures = _k[1];
9355
+ var _l = useState(""), editFirstName = _l[0], setEditFirstName = _l[1];
9356
+ var _m = useState(""), editLastName = _m[0], setEditLastName = _m[1];
9357
+ var _o = useState(false), isSaving = _o[0], setIsSaving = _o[1];
9358
+ var _p = useState(false), showPasswordModal = _p[0], setShowPasswordModal = _p[1];
9359
+ var _q = useState(false), showSuccess = _q[0], setShowSuccess = _q[1];
9360
+ var _r = useState(""), successMessage = _r[0], setSuccessMessage = _r[1];
9361
+ var hasChanges = function () {
9362
+ return editFirstName !== userFirstName || editLastName !== userLastName;
9363
+ };
9364
+ var handleSave = function () { return __awaiter(void 0, void 0, void 0, function () {
9365
+ var userId, user, resp, sessionData, userData, err_1;
9366
+ return __generator(this, function (_a) {
9367
+ switch (_a.label) {
9368
+ case 0:
9369
+ if (!hasChanges() || !editFirstName.trim() || !editLastName.trim())
9370
+ return [2 /*return*/];
9371
+ setIsSaving(true);
9372
+ _a.label = 1;
9373
+ case 1:
9374
+ _a.trys.push([1, 3, 4, 5]);
9375
+ userId = getUserId();
9376
+ user = {
9377
+ UserId: userId,
9378
+ UserName: userName,
9379
+ FirstName: editFirstName.trim(),
9380
+ LastName: editLastName.trim(),
9381
+ AuthTypeId: userIsDomain ? 1 : 0,
9382
+ IsActive: userIsActive,
9383
+ LastLogin: null,
9384
+ DefaultAssetId: null,
9385
+ ProfilesId: "",
9386
+ Profiles: "",
9387
+ };
9388
+ return [4 /*yield*/, upsertUser(user)];
9389
+ case 2:
9390
+ resp = _a.sent();
9391
+ if (resp.ok) {
9392
+ setUserFirstName(editFirstName.trim());
9393
+ setUserLastName(editLastName.trim());
9394
+ sessionData = localStorage.getItem("userMESData");
9395
+ if (sessionData) {
9396
+ userData = JSON.parse(sessionData);
9397
+ userData.firstName = editFirstName.trim();
9398
+ userData.lastName = editLastName.trim();
9399
+ localStorage.setItem("userMESData", JSON.stringify(userData));
9400
+ }
9401
+ setShowSuccess(true);
9402
+ setSuccessMessage("Profile updated successfully.");
9403
+ }
9404
+ else {
9405
+ setError(resp.message || "Failed to update profile");
9406
+ }
9407
+ return [3 /*break*/, 5];
9408
+ case 3:
9409
+ err_1 = _a.sent();
9410
+ setError(err_1.toString());
9411
+ return [3 /*break*/, 5];
9412
+ case 4:
9413
+ setIsSaving(false);
9414
+ return [7 /*endfinally*/];
9415
+ case 5: return [2 /*return*/];
9416
+ }
9417
+ });
9418
+ }); };
9419
+ var handlePasswordChange = function (success) {
9420
+ setShowPasswordModal(false);
9421
+ if (success) {
9422
+ setShowSuccess(true);
9423
+ setSuccessMessage("Password changed successfully.");
9424
+ }
9425
+ };
9426
+ var handleKeyDown = function (e) {
9427
+ if (e.key === "Enter" &&
9428
+ hasChanges() &&
9429
+ editFirstName.trim() &&
9430
+ editLastName.trim() &&
9431
+ !isSaving) {
9432
+ handleSave();
9433
+ }
9434
+ };
9369
9435
  var stringToList = function (s) {
9370
9436
  s = s.replace(/,/g, "\n");
9371
9437
  s = s.replace(/ *\([^)]*\) */g, "");
9372
9438
  return s;
9373
9439
  };
9374
9440
  var loadUserData = function () { return __awaiter(void 0, void 0, void 0, function () {
9375
- var resp, userData;
9441
+ var userId, currentUserName, resp, userData, firstName, lastName;
9376
9442
  var _a, _b, _c, _d, _e, _f, _g, _h;
9377
9443
  return __generator(this, function (_j) {
9378
9444
  switch (_j.label) {
9379
- case 0: return [4 /*yield*/, getUser(user.UserId, user.UserName)];
9445
+ case 0:
9446
+ userId = getUserId();
9447
+ currentUserName = getUserNameFromStorage();
9448
+ if (!userId || userId === -1) {
9449
+ setError("UserId is NULL. Please login again.");
9450
+ return [2 /*return*/];
9451
+ }
9452
+ return [4 /*yield*/, getUser(userId, currentUserName)];
9380
9453
  case 1:
9381
9454
  resp = _j.sent();
9382
9455
  if (resp.ok) {
9383
9456
  userData = get(resp, "data.tables[0].rows", null);
9384
- setUserName((_a = userData[0]) === null || _a === void 0 ? void 0 : _a.UserName);
9385
- setUserLastName((_b = userData[0]) === null || _b === void 0 ? void 0 : _b.LastName);
9386
- setUserFirstName((_c = userData[0]) === null || _c === void 0 ? void 0 : _c.FirstName);
9457
+ firstName = ((_a = userData[0]) === null || _a === void 0 ? void 0 : _a.FirstName) || "";
9458
+ lastName = ((_b = userData[0]) === null || _b === void 0 ? void 0 : _b.LastName) || "";
9459
+ setUserName((_c = userData[0]) === null || _c === void 0 ? void 0 : _c.UserName);
9460
+ setUserFirstName(firstName);
9461
+ setUserLastName(lastName);
9462
+ setEditFirstName(firstName);
9463
+ setEditLastName(lastName);
9387
9464
  setUserIsDomain((_d = userData[0]) === null || _d === void 0 ? void 0 : _d.AuthTypeId);
9388
9465
  setUserIsActive((_e = userData[0]) === null || _e === void 0 ? void 0 : _e.IsActive);
9389
9466
  setUserProfiles(stringToList(((_f = userData[0]) === null || _f === void 0 ? void 0 : _f.Profiles) || ""));
@@ -9420,42 +9497,98 @@ var Account = function () {
9420
9497
  closeMessage();
9421
9498
  }
9422
9499
  }, [showSuccess]);
9423
- return (React__default.createElement(Box, { className: classes.root },
9424
- React__default.createElement(Paper, { className: classes.paper },
9425
- React__default.createElement(Typography$1, { variant: "h5", component: "h1", className: classes.title }, "Account Configuration"),
9426
- showSuccess && (React__default.createElement(Box, { className: classes.successMessage },
9427
- React__default.createElement(Typography$1, null, successMessage))),
9500
+ return (React__default.createElement(Box, { p: 3, maxWidth: "100%" },
9501
+ showSuccess && (React__default.createElement(Paper, { elevation: 2, style: {
9502
+ padding: 16,
9503
+ marginBottom: 16,
9504
+ backgroundColor: "#c8e6c9",
9505
+ color: "#1b5e20",
9506
+ display: "flex",
9507
+ alignItems: "center",
9508
+ } },
9509
+ React__default.createElement(Typography$1, null, successMessage))),
9510
+ React__default.createElement(Box, null,
9511
+ React__default.createElement(Typography$1, { variant: "h5", component: "h1", gutterBottom: true, style: { fontWeight: 600, marginBottom: 16 } }, "Account Configuration"),
9428
9512
  React__default.createElement(Grid, { container: true, spacing: 3 },
9429
9513
  React__default.createElement(Grid, { item: true, xs: 12, md: 6 },
9430
- React__default.createElement(Box, { display: "flex", alignItems: "center", className: classes.formRow },
9431
- React__default.createElement(TextField, { label: "Username", value: userName, variant: "outlined", size: "small", fullWidth: true, InputProps: {
9432
- readOnly: true,
9433
- } })),
9434
- React__default.createElement(Box, { className: classes.formRow },
9435
- React__default.createElement(TextField, { label: "Name", value: userFirstName, variant: "outlined", size: "small", fullWidth: true, InputProps: {
9436
- readOnly: true,
9437
- } })),
9438
- React__default.createElement(Box, { className: classes.formRow },
9439
- React__default.createElement(TextField, { label: "Lastname", value: userLastName, variant: "outlined", size: "small", fullWidth: true, InputProps: {
9440
- readOnly: true,
9441
- } })),
9442
- React__default.createElement(Box, { className: classes.formRow },
9443
- React__default.createElement(FormControlLabel, { control: React__default.createElement(Checkbox, { checked: userIsDomain, disabled: true }), label: "Domain User" })),
9444
- React__default.createElement(Box, { className: classes.formRow },
9445
- React__default.createElement(FormControlLabel, { control: React__default.createElement(Checkbox, { checked: userIsActive, disabled: true }), label: "Active" })))),
9446
- React__default.createElement(Grid, { container: true, spacing: 3 },
9447
- React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9448
- React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true }, "Profiles"),
9449
- React__default.createElement("textarea", { className: classes.textArea, placeholder: userProfiles, readOnly: true, value: userProfiles })),
9450
- React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9451
- React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true }, "Permissions"),
9452
- React__default.createElement("textarea", { className: classes.textArea, placeholder: userPermissions, readOnly: true, value: userPermissions })),
9453
- React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9454
- React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true }, "Procedures"),
9455
- React__default.createElement("textarea", { className: classes.textArea, placeholder: userProcedures, readOnly: true, value: userProcedures })))),
9514
+ React__default.createElement(Paper, { style: { padding: 24, height: "100%", minHeight: "350px" } },
9515
+ React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true, style: { marginBottom: 24, fontWeight: 600 } }, "Account Information"),
9516
+ React__default.createElement(Box, { mb: 2 },
9517
+ React__default.createElement(TextField, { label: "Username", value: userName, variant: "outlined", fullWidth: true, style: {
9518
+ pointerEvents: "none",
9519
+ cursor: "default",
9520
+ }, InputProps: {
9521
+ readOnly: true,
9522
+ }, tabIndex: -1 })),
9523
+ React__default.createElement(Box, { mt: 3, display: "flex", flexDirection: "column", style: { gap: 4 } },
9524
+ React__default.createElement(FormControlLabel, { control: React__default.createElement(Checkbox, { checked: userIsDomain, disabled: true }), label: "Domain User" }),
9525
+ React__default.createElement(FormControlLabel, { control: React__default.createElement(Checkbox, { checked: userIsActive, disabled: true }), label: "Active Account" })))),
9526
+ React__default.createElement(Grid, { item: true, xs: 12, md: 6 },
9527
+ React__default.createElement(Paper, { style: { padding: 24, height: "100%", minHeight: "350px" } },
9528
+ React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true, style: { marginBottom: 24, fontWeight: 600 } }, "Personal Details"),
9529
+ React__default.createElement(Box, { mb: 2 },
9530
+ React__default.createElement(TextField, { label: "First Name", value: editFirstName, variant: "outlined", fullWidth: true, onChange: function (e) { return setEditFirstName(e.target.value); }, onKeyDown: handleKeyDown, error: !editFirstName.trim(), helperText: !editFirstName.trim() ? "First name is required" : "" })),
9531
+ React__default.createElement(Box, { mb: 2 },
9532
+ React__default.createElement(TextField, { label: "Last Name", value: editLastName, variant: "outlined", fullWidth: true, onChange: function (e) { return setEditLastName(e.target.value); }, onKeyDown: handleKeyDown, error: !editLastName.trim(), helperText: !editLastName.trim() ? "Last name is required" : "" })),
9533
+ React__default.createElement(Divider, { style: { margin: "24px 0 20px" } }),
9534
+ React__default.createElement(Box, { mt: 2, display: "flex", flexDirection: "column", style: { gap: 8 } },
9535
+ React__default.createElement(Button, { fullWidth: true, startIcon: isSaving && React__default.createElement(CircularProgress, { size: "1rem" }), disabled: !hasChanges() ||
9536
+ isSaving ||
9537
+ !editFirstName.trim() ||
9538
+ !editLastName.trim(), variant: "contained", color: "primary", onClick: handleSave, style: { marginBottom: "8px" } }, "Save Changes"),
9539
+ React__default.createElement(Button, { fullWidth: true, variant: "contained", color: "primary", onClick: function () { return setShowPasswordModal(true); } }, "Change Password"))))),
9540
+ React__default.createElement(Paper, { elevation: 2, style: { padding: 24, marginBottom: 24, marginTop: 24 } },
9541
+ React__default.createElement(Typography$1, { variant: "h6", gutterBottom: true, style: { marginBottom: 24, fontWeight: 600 } }, "Permissions & Access"),
9542
+ React__default.createElement(Grid, { container: true, spacing: 3 },
9543
+ React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9544
+ React__default.createElement(Typography$1, { variant: "body1", gutterBottom: true, color: "textSecondary" }, "Assigned Profiles"),
9545
+ React__default.createElement("textarea", { style: {
9546
+ width: "100%",
9547
+ minHeight: "300px",
9548
+ padding: 16,
9549
+ fontFamily: "inherit",
9550
+ fontSize: "14px",
9551
+ lineHeight: "1.5",
9552
+ border: "2px solid #e0e0e0",
9553
+ borderRadius: 8,
9554
+ backgroundColor: "#fff",
9555
+ resize: "vertical",
9556
+ outline: "none",
9557
+ }, placeholder: "No profiles assigned", readOnly: true, value: userProfiles })),
9558
+ React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9559
+ React__default.createElement(Typography$1, { variant: "body1", gutterBottom: true, color: "textSecondary" }, "System Permissions"),
9560
+ React__default.createElement("textarea", { style: {
9561
+ width: "100%",
9562
+ minHeight: "300px",
9563
+ padding: 16,
9564
+ fontFamily: "inherit",
9565
+ fontSize: "14px",
9566
+ lineHeight: "1.5",
9567
+ border: "2px solid #e0e0e0",
9568
+ borderRadius: 8,
9569
+ backgroundColor: "#fff",
9570
+ resize: "vertical",
9571
+ outline: "none",
9572
+ }, placeholder: "No permissions assigned", readOnly: true, value: userPermissions })),
9573
+ React__default.createElement(Grid, { item: true, xs: 12, md: 4 },
9574
+ React__default.createElement(Typography$1, { variant: "body1", gutterBottom: true, color: "textSecondary" }, "Available Procedures"),
9575
+ React__default.createElement("textarea", { style: {
9576
+ width: "100%",
9577
+ minHeight: "300px",
9578
+ padding: 16,
9579
+ fontFamily: "inherit",
9580
+ fontSize: "14px",
9581
+ lineHeight: "1.5",
9582
+ border: "2px solid #e0e0e0",
9583
+ borderRadius: 8,
9584
+ backgroundColor: "#fff",
9585
+ resize: "vertical",
9586
+ outline: "none",
9587
+ }, placeholder: "No procedures available", readOnly: true, value: userProcedures }))))),
9456
9588
  React__default.createElement(ErrorModal, { error: error, onHide: function () {
9457
9589
  setError("");
9458
- } })));
9590
+ } }),
9591
+ React__default.createElement(ChangePassword$1, { show: showPasswordModal, userId: getUserId(), onHide: handlePasswordChange })));
9459
9592
  };
9460
9593
 
9461
9594
  function ChangePassword(props) {
@@ -9546,7 +9679,7 @@ var Unauthenticated = function (_a) {
9546
9679
  return React__default.createElement(Login, { authConfig: authConfig });
9547
9680
  };
9548
9681
 
9549
- var useStyles$c = makeStyles(function (theme) { return ({
9682
+ var useStyles$b = makeStyles(function (theme) { return ({
9550
9683
  button: {
9551
9684
  padding: theme.spacing(1.2),
9552
9685
  fontWeight: 600,
@@ -9561,7 +9694,7 @@ var useStyles$c = makeStyles(function (theme) { return ({
9561
9694
  },
9562
9695
  }); });
9563
9696
  var LoginAsGuest = function () {
9564
- var classes = useStyles$c();
9697
+ var classes = useStyles$b();
9565
9698
  var _a = React__default.useState(false), showError = _a[0], setShowError = _a[1];
9566
9699
  var _b = React__default.useState(undefined), error = _b[0], setError = _b[1];
9567
9700
  var saveUserData = React__default.useContext(AuthContext).saveUserData;
@@ -9601,7 +9734,7 @@ var LoginAsGuest = function () {
9601
9734
  React__default.createElement(Button, { fullWidth: true, variant: "contained", color: "primary", className: classes.button, style: { backgroundColor: "#479DC4", color: "white" }, role: "button", onClick: loginAsGuest, startIcon: React__default.createElement(PersonOutlineIcon, { className: classes.icon }) }, "Guest Access")));
9602
9735
  };
9603
9736
 
9604
- var useStyles$b = makeStyles(function (theme) { return ({
9737
+ var useStyles$a = makeStyles(function (theme) { return ({
9605
9738
  form: {
9606
9739
  width: "100%",
9607
9740
  marginTop: theme.spacing(1),
@@ -9624,7 +9757,7 @@ var useStyles$b = makeStyles(function (theme) { return ({
9624
9757
  },
9625
9758
  }); });
9626
9759
  var LoginWithEmailAndPassword = function () {
9627
- var classes = useStyles$b();
9760
+ var classes = useStyles$a();
9628
9761
  var _a = useState(""), username = _a[0], setUserName = _a[1];
9629
9762
  var _b = useState(""), password = _b[0], setPassword = _b[1];
9630
9763
  var _c = React__default.useState(false), showError = _c[0], setShowError = _c[1];
@@ -9683,7 +9816,7 @@ var WindowsLogo = function (_a) {
9683
9816
  React__default.createElement("path", { color: color, d: "M12 16H3v7.75l9 1.238zm0-11L3 6.25V14h9zm2-.25V14h13V3zM14 16v9.25L27 27V16z" })));
9684
9817
  };
9685
9818
 
9686
- var useStyles$a = makeStyles(function (theme) { return ({
9819
+ var useStyles$9 = makeStyles(function (theme) { return ({
9687
9820
  button: {
9688
9821
  padding: theme.spacing(1.2),
9689
9822
  fontWeight: 600,
@@ -9701,7 +9834,7 @@ var useStyles$a = makeStyles(function (theme) { return ({
9701
9834
  },
9702
9835
  }); });
9703
9836
  var LoginWithWindowsAuthentication = function () {
9704
- var classes = useStyles$a();
9837
+ var classes = useStyles$9();
9705
9838
  var _a = React__default.useState(false), showError = _a[0], setShowError = _a[1];
9706
9839
  var _b = React__default.useState(undefined), error = _b[0], setError = _b[1];
9707
9840
  var saveUserData = React__default.useContext(AuthContext).saveUserData;
@@ -9824,7 +9957,7 @@ var loginRequest = {
9824
9957
  scopes: ["User.Read"],
9825
9958
  };
9826
9959
 
9827
- var useStyles$9 = makeStyles(function (theme) { return ({
9960
+ var useStyles$8 = makeStyles(function (theme) { return ({
9828
9961
  button: {
9829
9962
  padding: theme.spacing(1.2),
9830
9963
  fontWeight: 600,
@@ -9839,7 +9972,7 @@ var useStyles$9 = makeStyles(function (theme) { return ({
9839
9972
  },
9840
9973
  }); });
9841
9974
  var LoginWithAzureADForm = function () {
9842
- var classes = useStyles$9();
9975
+ var classes = useStyles$8();
9843
9976
  var saveUserData = React__default.useContext(AuthContext).saveUserData;
9844
9977
  var instance = useMsal().instance;
9845
9978
  var login = function (e) { return __awaiter(void 0, void 0, void 0, function () {
@@ -9890,7 +10023,7 @@ var LoginWithAzureAD = function (_a) {
9890
10023
  React__default.createElement(LoginWithAzureADForm, null))));
9891
10024
  };
9892
10025
 
9893
- var useStyles$8 = makeStyles(function (theme) { return ({
10026
+ var useStyles$7 = makeStyles(function (theme) { return ({
9894
10027
  root: {
9895
10028
  minHeight: "100vh",
9896
10029
  backgroundImage: "linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%)",
@@ -9969,7 +10102,7 @@ var useStyles$8 = makeStyles(function (theme) { return ({
9969
10102
  }); });
9970
10103
  function Login(_a) {
9971
10104
  var authConfig = _a.authConfig;
9972
- var classes = useStyles$8();
10105
+ var classes = useStyles$7();
9973
10106
  var params = useRef(new URL(document.location).searchParams);
9974
10107
  var _b = useState(false), open = _b[0], setOpen = _b[1];
9975
10108
  var _c = useState(""), message = _c[0], setMessage = _c[1];
@@ -10064,7 +10197,7 @@ var useSearchAssets = function (setError) {
10064
10197
  return { searchAssets: searchAssets };
10065
10198
  };
10066
10199
 
10067
- var useStyles$7 = makeStyles(function (theme) { return ({
10200
+ var useStyles$6 = makeStyles(function (theme) { return ({
10068
10201
  container: {
10069
10202
  display: "flex",
10070
10203
  alignItems: "center",
@@ -10087,13 +10220,18 @@ var useStyles$7 = makeStyles(function (theme) { return ({
10087
10220
  }); });
10088
10221
  var TimeAndUserMenu = function (_a) {
10089
10222
  var className = _a.className;
10090
- var classes = useStyles$7();
10223
+ var classes = useStyles$6();
10091
10224
  var getUserName = useToken().getUserName;
10092
- var userName = useState(getUserName())[0];
10093
- var _b = useState(new Date()), date = _b[0], setDate = _b[1];
10094
- var _c = useState(null), userMenuAnchorEl = _c[0], setUserMenuAnchorEl = _c[1];
10225
+ var _b = useState(getUserName()), userName = _b[0], setUserName = _b[1];
10226
+ var _c = useState(new Date()), date = _c[0], setDate = _c[1];
10227
+ var _d = useState(null), userMenuAnchorEl = _d[0], setUserMenuAnchorEl = _d[1];
10095
10228
  var tick = function () {
10096
10229
  setDate(new Date());
10230
+ // Also update username in case it changed
10231
+ var currentName = getUserName();
10232
+ if (currentName !== userName) {
10233
+ setUserName(currentName);
10234
+ }
10097
10235
  };
10098
10236
  useEffect(function () {
10099
10237
  var timerID = setTimeout(function () {
@@ -10124,7 +10262,7 @@ var AreaSelector$1 = lazy(function () {
10124
10262
  default: mod.AreaSelector,
10125
10263
  }); });
10126
10264
  });
10127
- var useStyles$6 = makeStyles(function (theme) { return ({
10265
+ var useStyles$5 = makeStyles(function (theme) { return ({
10128
10266
  appBar: {
10129
10267
  // You can use dark or light variants of the primary color
10130
10268
  // backgroundColor: theme.palette.primary.dark, // Darker shade
@@ -10180,7 +10318,7 @@ var useStyles$6 = makeStyles(function (theme) { return ({
10180
10318
  }); });
10181
10319
  function Header$1(_a) {
10182
10320
  var _b = _a.showAreaSelector, showAreaSelector = _b === void 0 ? false : _b, _c = _a.showTrendingsIcon, showTrendingsIcon = _c === void 0 ? true : _c, _d = _a.navbarTitle, navbarTitle = _d === void 0 ? "MESF" : _d;
10183
- var classes = useStyles$6();
10321
+ var classes = useStyles$5();
10184
10322
  var _e = useState(""), error = _e[0], setError = _e[1];
10185
10323
  var CustomNavbar = useContext(NavbarContext);
10186
10324
  var searchAssets = useSearchAssets(setError).searchAssets;
@@ -10251,7 +10389,7 @@ var Home = function () { return (React__default.createElement("div", { style: {
10251
10389
  position: "absolute",
10252
10390
  } })); };
10253
10391
 
10254
- var useStyles$5 = makeStyles(function (theme) { return ({
10392
+ var useStyles$4 = makeStyles(function (theme) { return ({
10255
10393
  root: {
10256
10394
  width: "100%",
10257
10395
  maxWidth: 800,
@@ -10281,7 +10419,7 @@ var useStyles$5 = makeStyles(function (theme) { return ({
10281
10419
  },
10282
10420
  }); });
10283
10421
  var ChatComponent = function () {
10284
- var classes = useStyles$5();
10422
+ var classes = useStyles$4();
10285
10423
  var _a = useState("/ws"), hubUrl = _a[0]; _a[1];
10286
10424
  var _b = useState(null), connection = _b[0], setConnection = _b[1];
10287
10425
  var _c = useState({
@@ -10396,28 +10534,8 @@ var ChatComponent = function () {
10396
10534
  React__default.createElement(Button, { type: "submit", variant: "contained", color: "primary", disabled: !connectionState.isConnected || !user || !message, endIcon: React__default.createElement(Send, null) }, "Send"))));
10397
10535
  };
10398
10536
 
10399
- var useStyles$4 = makeStyles(function (theme) { return ({
10400
- root: {
10401
- height: "100vh",
10402
- padding: theme.spacing(4),
10403
- },
10404
- header: {
10405
- marginBottom: theme.spacing(4),
10406
- display: "flex",
10407
- justifyContent: "space-between",
10408
- alignItems: "center",
10409
- },
10410
- gridContainer: {
10411
- height: "75%",
10412
- width: "100%",
10413
- },
10414
- autocomplete: {
10415
- marginTop: theme.spacing(2),
10416
- marginBottom: theme.spacing(2),
10417
- },
10418
- }); });
10419
10537
  var QueryCacheInvalidations = function () {
10420
- var classes = useStyles$4();
10538
+ var gridRef = useRef(null);
10421
10539
  var _a = useState([]), rowData = _a[0], setRowData = _a[1];
10422
10540
  var _b = useState([]), actions = _b[0], setActions = _b[1];
10423
10541
  var _c = useState(""), modal = _c[0], setModal = _c[1];
@@ -10430,14 +10548,31 @@ var QueryCacheInvalidations = function () {
10430
10548
  targets: [],
10431
10549
  },
10432
10550
  }), control = _g.control, reset = _g.reset, handleSubmit = _g.handleSubmit; _g.setValue;
10551
+ var defaultColDef = useMemo(function () {
10552
+ return {
10553
+ sortable: true,
10554
+ wrapText: true,
10555
+ autoHeight: true,
10556
+ wrapHeaderText: true,
10557
+ cellStyle: {
10558
+ display: "flex",
10559
+ alignItems: "center",
10560
+ justifyContent: "center",
10561
+ },
10562
+ };
10563
+ }, []);
10433
10564
  var columnDefs = [
10434
- { field: "SourceId", headerName: "Source ID" },
10435
- { field: "Source", headerName: "Source" },
10436
- { field: "TargetsCSV", headerName: "Targets" },
10565
+ { field: "SourceId", headerName: "Source ID", flex: 1 },
10566
+ { field: "Source", headerName: "Source", flex: 2 },
10567
+ { field: "TargetsCSV", headerName: "Targets", flex: 3 },
10437
10568
  {
10438
10569
  headerName: "Actions",
10439
- cellRenderer: function (params) { return (React__default.createElement(Box, null,
10440
- React__default.createElement(Button, { variant: "contained", color: "primary", onClick: function () { return handleEdit(params.data); } }, "Edit"))); },
10570
+ flex: 1,
10571
+ cellRenderer: function (params) { return (React__default.createElement(Button, { variant: "contained", color: "primary", onClick: function () { return handleEdit(params.data); }, style: {
10572
+ width: "100%",
10573
+ height: "28px",
10574
+ minWidth: "60px",
10575
+ } }, "EDIT")); },
10441
10576
  },
10442
10577
  ];
10443
10578
  var fetchData = function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -10530,31 +10665,37 @@ var QueryCacheInvalidations = function () {
10530
10665
  }
10531
10666
  });
10532
10667
  }); };
10533
- return (React__default.createElement(Box, { className: classes.root },
10534
- React__default.createElement(Box, { className: classes.header },
10535
- React__default.createElement(Typography$1, { variant: "h4", component: "h2" }, "Query Cache Invalidations"),
10536
- React__default.createElement(Button, { variant: "contained", color: "primary", onClick: handleAdd }, "Add New")),
10537
- React__default.createElement(Box, { className: "".concat(classes.gridContainer) },
10538
- React__default.createElement(AgGridReact, { gridOptions: {
10539
- theme: themeMaterial.withParams({
10540
- spacing: 2,
10541
- }),
10542
- }, rowData: rowData, columnDefs: columnDefs, defaultColDef: { flex: 1 } })),
10668
+ return (React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center" },
10669
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { padding: "0 15px" } },
10670
+ React__default.createElement(Typography$1, { variant: "h5", style: { margin: "20px 0", fontWeight: 600 } }, "Query Cache Invalidations")),
10671
+ React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center" },
10672
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { padding: "0 15px" } },
10673
+ React__default.createElement(Grid, { component: Paper, item: true, md: 12, xs: 12, style: {
10674
+ height: "70vh",
10675
+ } },
10676
+ React__default.createElement(AgGridReact, { gridOptions: {
10677
+ theme: themeMaterial,
10678
+ }, ref: gridRef, rowData: rowData, columnDefs: columnDefs, defaultColDef: defaultColDef, rowHeight: 34, headerHeight: 34, animateRows: true, rowSelection: "single", onRowDoubleClicked: function (event) {
10679
+ handleEdit(event.data);
10680
+ } })),
10681
+ React__default.createElement(Grid, { container: true, justifyContent: "flex-end", style: { marginTop: 10 } },
10682
+ React__default.createElement(Grid, { item: true, md: 2, xs: 12 },
10683
+ React__default.createElement(Button, { variant: "contained", color: "primary", onClick: handleAdd, fullWidth: true }, "ADD NEW"))))),
10543
10684
  React__default.createElement(MesfModal, { title: modal === "add" ? "Add Cache Invalidation" : "Edit Cache Invalidation", open: ["add", "edit"].includes(modal), handleClose: function () { return setModal(""); } },
10544
10685
  React__default.createElement("form", { onSubmit: handleSubmit(onSubmit) },
10545
10686
  React__default.createElement(MesfModal.Content, { dividers: true },
10546
10687
  React__default.createElement(Grid, { container: true, spacing: 3 },
10547
10688
  React__default.createElement(Grid, { item: true, xs: 12 },
10548
- React__default.createElement(Controller, { control: control, name: "source", render: function (params) { return (React__default.createElement(Autocomplete, { options: actions, getOptionLabel: function (option) { return "".concat(option.ActionName); }, value: params.field.value, onChange: function (_, value) { return params.field.onChange(value); }, renderInput: function (params) { return (React__default.createElement(TextField, __assign({}, params, { label: "Select Source Action", variant: "outlined" }))); }, className: classes.autocomplete, disabled: modal === "edit" })); } })),
10689
+ React__default.createElement(Controller, { control: control, name: "source", render: function (params) { return (React__default.createElement(Autocomplete, { options: actions, getOptionLabel: function (option) { return "".concat(option.ActionName); }, value: params.field.value, onChange: function (_, value) { return params.field.onChange(value); }, renderInput: function (params) { return (React__default.createElement(TextField, __assign({}, params, { label: "Select Source Action", variant: "outlined" }))); }, style: { marginTop: 16, marginBottom: 16 }, disabled: modal === "edit" })); } })),
10549
10690
  React__default.createElement(Grid, { item: true, xs: 12 },
10550
10691
  React__default.createElement(Controller, { control: control, name: "targets", render: function (params) { return (React__default.createElement(Autocomplete, { multiple: true, options: actions.filter(function (a) { var _a; return a.ActionId !== ((_a = control._formValues.source) === null || _a === void 0 ? void 0 : _a.ActionId); }), getOptionLabel: function (option) { return option.ActionName; }, value: params.field.value, onChange: function (_, value) {
10551
10692
  params.field.onChange(value);
10552
- }, renderInput: function (params) { return (React__default.createElement(TextField, __assign({}, params, { label: "Select Target Actions", variant: "outlined" }))); }, className: classes.autocomplete })); } })))),
10693
+ }, renderInput: function (params) { return (React__default.createElement(TextField, __assign({}, params, { label: "Select Target Actions", variant: "outlined" }))); }, style: { marginTop: 16, marginBottom: 16 } })); } })))),
10553
10694
  React__default.createElement(MesfModal.Actions, null,
10554
10695
  React__default.createElement(Grid, { container: true, spacing: 2, justifyContent: "flex-end" },
10555
- React__default.createElement(Grid, { item: true, md: 3, xs: 12, style: { margin: 0 } },
10696
+ React__default.createElement(Grid, { item: true, md: 3, xs: 12 },
10556
10697
  React__default.createElement(Button, { fullWidth: true, variant: "contained", color: "default", onClick: function () { return setModal(""); } }, "Cancel")),
10557
- React__default.createElement(Grid, { item: true, md: 3, xs: 12, style: { margin: 0 } },
10698
+ React__default.createElement(Grid, { item: true, md: 3, xs: 12 },
10558
10699
  React__default.createElement(Button, { fullWidth: true, startIcon: isLoading && React__default.createElement(CircularProgress, { size: "1rem" }), disabled: isLoading, variant: "contained", color: "primary", type: "submit" }, "Save"))))))));
10559
10700
  };
10560
10701
 
@@ -14440,7 +14581,7 @@ var MESFMainRouter = function () {
14440
14581
  React__default.createElement(Routes, null,
14441
14582
  React__default.createElement(Route, { path: "/", element: React__default.createElement(Navigate, { replace: true, to: "/home" }) }),
14442
14583
  canShowSettings && (React__default.createElement(Route, { path: "/configuration/*", element: React__default.createElement(Configuration, null) })),
14443
- React__default.createElement(Route, { path: "/account", element: React__default.createElement(Navigate, { replace: true, to: "/" }) }),
14584
+ React__default.createElement(Route, { path: "/account", element: React__default.createElement(Account, null) }),
14444
14585
  React__default.createElement(Route, { path: "/trendings", element: React__default.createElement(index, null) }),
14445
14586
  React__default.createElement(Route, { path: "/home", element: React__default.createElement(Home, null) })),
14446
14587
  React__default.createElement(CustomRoutes, null)));
@@ -14800,5 +14941,5 @@ var areaSelector = /*#__PURE__*/Object.freeze({
14800
14941
  AreaSelector: AreaSelector
14801
14942
  });
14802
14943
 
14803
- export { Account, AssetProvider, AuthContext, AuthProvider, BarChartControl, ButtonWithLoading, ChangePassword, CheckBoxControl, Configuration$1 as Configuration, ContextMenu$1 as ContextMenu, ContextMenuMESFProvider, CurrencyFormatter, DataGridControl, DateFormatter, DateTimeFormatter, ErrorModal, FetchError, FilterPanel, GenericPanel, GenericTable, GetCrewColor, GetShiftColor, IntegerFormatter, Login, Logout, LongFilterPanel, MESApiService, MESFMain, MESSAGE_API, MESSAGE_ERRORS, MasterDetailPanel, MesfModal, ModalTreeFilterControl, MultipleSelectorControl, NumberFormatter, ShiftDayNavigatorControl, ShiftNavigatorProvider, ShiftPeriodNavigatorControl, SimplePasswordControl, SimpleSelectorControl, TimeAndUserMenu, TimeFormatter, TimeService, TreePickerControl, TreePickerControlV2, TrendingsPage, USER_LABELS, UTLSettingsProvider, UserProvider, axiosInstance, deleteUser, dxtServerTimeZone, dxtToLocalServerTime, dxtToUTC, formatNumber, getAuthTypes, getCrewStyle, getDataUser, getError, getMomentTz, getProfiles, getShiftByParameters, getShiftStyle, getShiftsRangeByParameters, getTokenFromLS, getUserPermissionsFromAPI, getUsers, renewToken, setPassword, setProfilesToUser, themeMESF, upsertUser, useAssetContext, useContextMenuMESF, useHasPermission, useMesfRealtime, useShiftNavigator, useShiftNavigatorManager, useStyles$E as useStyles, useToken, useUTLSettingsContext, useUserContext };
14944
+ export { Account, AssetProvider, AuthContext, AuthProvider, BarChartControl, ButtonWithLoading, ChangePassword, CheckBoxControl, Configuration$1 as Configuration, ContextMenu$1 as ContextMenu, ContextMenuMESFProvider, CurrencyFormatter, DataGridControl, DateFormatter, DateTimeFormatter, ErrorModal, FetchError, FilterPanel, GenericPanel, GenericTable, GetCrewColor, GetShiftColor, IntegerFormatter, Login, Logout, LongFilterPanel, MESApiService, MESFMain, MESSAGE_API, MESSAGE_ERRORS, MasterDetailPanel, MesfModal, ModalTreeFilterControl, MultipleSelectorControl, NumberFormatter, ShiftDayNavigatorControl, ShiftNavigatorProvider, ShiftPeriodNavigatorControl, SimplePasswordControl, SimpleSelectorControl, TimeAndUserMenu, TimeFormatter, TimeService, TreePickerControl, TreePickerControlV2, TrendingsPage, USER_LABELS, UTLSettingsProvider, UserProvider, axiosInstance, deleteUser, dxtServerTimeZone, dxtToLocalServerTime, dxtToUTC, formatNumber, getAuthTypes, getCrewStyle, getDataUser, getError, getMomentTz, getProfiles, getShiftByParameters, getShiftStyle, getShiftsRangeByParameters, getTokenFromLS, getUserPermissionsFromAPI, getUsers, renewToken, setPassword, setProfilesToUser, themeMESF, upsertUser, useAssetContext, useContextMenuMESF, useHasPermission, useMesfRealtime, useShiftNavigator, useShiftNavigatorManager, useStyles$C as useStyles, useToken, useUTLSettingsContext, useUserContext };
14804
14945
  //# sourceMappingURL=index.esm.js.map