@dexteel/mesf-core 4.6.1 → 4.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/configuration/pages/forms/FormsPage.d.ts +4 -0
  3. package/dist/configuration/pages/forms/components/columns-table/ButtonToShowFormsAssetAndUsers copy.d.ts +8 -0
  4. package/dist/configuration/pages/forms/components/columns-table/ButtonToShowQuestions.d.ts +8 -0
  5. package/dist/configuration/pages/forms/components/filters/hooks/useFilterInQuery.d.ts +5 -0
  6. package/dist/configuration/pages/forms/components/filters/index.d.ts +7 -0
  7. package/dist/configuration/pages/forms/components/filters/searchFilter.d.ts +6 -0
  8. package/dist/configuration/pages/forms/components/formAssetsAndUsersTable/columns-table/assetName-column.d.ts +5 -0
  9. package/dist/configuration/pages/forms/components/formAssetsAndUsersTable/delete-form-asset-and-user-modal/delete-form-asset-and-user-modal.d.ts +7 -0
  10. package/dist/configuration/pages/forms/components/formAssetsAndUsersTable/formAssetandUsersTable.d.ts +7 -0
  11. package/dist/configuration/pages/forms/components/formAssetsAndUsersTable/new-form-asset-and-user-modal/new-form-asset-and-user.d.ts +7 -0
  12. package/dist/configuration/pages/forms/components/formAssetsAndUsersTable/picker/usersPicker.d.ts +8 -0
  13. package/dist/configuration/pages/forms/components/formsTable/formsTable.d.ts +2 -0
  14. package/dist/configuration/pages/forms/context/FormsContext.d.ts +215 -0
  15. package/dist/configuration/pages/forms/hooks/useSearchFormAssetsAndUsers.d.ts +6 -0
  16. package/dist/configuration/pages/forms/hooks/useSearchForms.d.ts +6 -0
  17. package/dist/configuration/pages/forms/index.d.ts +3 -0
  18. package/dist/configuration/pages/forms/models/AuthType.d.ts +4 -0
  19. package/dist/configuration/pages/forms/models/Form.d.ts +7 -0
  20. package/dist/configuration/pages/forms/models/FormAssetAndUser.d.ts +7 -0
  21. package/dist/configuration/pages/forms/models/ModalInitialValue.d.ts +2 -0
  22. package/dist/configuration/pages/forms/models/userFormAssetData.d.ts +8 -0
  23. package/dist/configuration/pages/forms/reducers/FormsReducer.d.ts +212 -0
  24. package/dist/configuration/pages/forms/repositories/FormsRepository.d.ts +5 -0
  25. package/dist/index.d.ts +1 -0
  26. package/dist/index.esm.js +1624 -220
  27. package/dist/index.esm.js.map +1 -1
  28. package/dist/pages/trendings/components/chart/TableComponent.d.ts +1 -0
  29. package/dist/pages/trendings/components/chart/Trending.d.ts +1 -0
  30. package/dist/pages/trendings/components/chart/components/modals/loadView/LoadViewModal.d.ts +1 -1
  31. package/dist/pages/trendings/components/chart/components/modals/saveAsView/SaveAsViewModal.d.ts +1 -1
  32. package/dist/pages/trendings/components/chart/components/modals/saveView/SaveViewModal.d.ts +7 -0
  33. package/dist/pages/trendings/components/chart/context/TrendingContext.d.ts +10 -0
  34. package/dist/utils/transforms.d.ts +30 -0
  35. package/package.json +1 -1
package/dist/index.esm.js CHANGED
@@ -1,4 +1,5 @@
1
- import { Typography, TextField, makeStyles as makeStyles$1, Button as Button$1, Grid as Grid$1, Dialog as Dialog$1, DialogTitle as DialogTitle$2, DialogContent as DialogContent$2, DialogContentText, DialogActions as DialogActions$2, FormHelperText, CircularProgress as CircularProgress$1, Badge, FormControlLabel, Checkbox, Snackbar as Snackbar$1, Paper as Paper$1, MenuItem as MenuItem$1, useTheme as useTheme$1, Box, Divider, Tooltip, IconButton as IconButton$1, FormControl as FormControl$1, Select as Select$1, debounce, createStyles as createStyles$1, List, ListItem, ListItemText } from '@material-ui/core';
1
+ export { LicenseManager } from 'ag-grid-enterprise';
2
+ import { Typography, TextField, makeStyles as makeStyles$1, Button as Button$1, Grid as Grid$1, Dialog as Dialog$1, DialogTitle as DialogTitle$2, DialogContent as DialogContent$2, DialogContentText, DialogActions as DialogActions$2, FormHelperText, CircularProgress as CircularProgress$1, Badge, FormControlLabel, Checkbox, Snackbar as Snackbar$1, Paper as Paper$1, MenuItem as MenuItem$1, useTheme as useTheme$1, createStyles as createStyles$1, FormControl as FormControl$1, Select as Select$1, Box, Divider, Tooltip, IconButton as IconButton$1, debounce, List, ListItem, ListItemText } from '@material-ui/core';
2
3
  import { values, get, isNil as isNil$1, isEmpty, isNaN } from 'lodash-es';
3
4
  import * as React from 'react';
4
5
  import React__default, { useState, useRef, useEffect, Component, createContext, useContext, useMemo, useCallback, lazy, Suspense } from 'react';
@@ -20,6 +21,11 @@ import Grid from '@material-ui/core/Grid';
20
21
  import { isNil, get as get$1 } from 'lodash';
21
22
  import { DndProvider } from 'react-dnd';
22
23
  import { HTML5Backend } from 'react-dnd-html5-backend';
24
+ import { AgGridReact } from 'ag-grid-react';
25
+ import { withStyles, alpha, makeStyles, createStyles, useTheme } from '@material-ui/core/styles';
26
+ import Typography$1 from '@material-ui/core/Typography';
27
+ import { useForm, Controller, get as get$2 } from 'react-hook-form';
28
+ import { Alert as Alert$3, TreeView as TreeView$1, TreeItem as TreeItem$1, Autocomplete } from '@material-ui/lab';
23
29
  import moment from 'moment';
24
30
  import axios from 'axios';
25
31
  import { _adapters, Chart, CategoryScale, LinearScale, PointElement, LineElement, Title, Tooltip as Tooltip$1, Legend, TimeScale } from 'chart.js';
@@ -28,14 +34,12 @@ import Popover from '@material-ui/core/Popover';
28
34
  import ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';
29
35
  import FolderIcon from '@material-ui/icons/Folder';
30
36
  import InsertDriveFileIcon from '@material-ui/icons/InsertDriveFile';
31
- import { Alert as Alert$3, TreeView as TreeView$1, TreeItem as TreeItem$1, Autocomplete } from '@material-ui/lab';
32
37
  import { ArrowRight, ChevronLeft, ChevronRight } from '@material-ui/icons';
33
38
  import { Line } from 'react-chartjs-2';
34
39
  import PersonPinCircleIcon from '@material-ui/icons/PersonPinCircle';
35
40
  import PropTypes from 'prop-types';
36
41
  import { ResponsiveBar } from '@nivo/bar';
37
42
  import Select from '@material-ui/core/Select';
38
- import { withStyles, alpha, makeStyles, createStyles, useTheme } from '@material-ui/core/styles';
39
43
  import Collapse from '@material-ui/core/Collapse';
40
44
  import SvgIcon from '@material-ui/core/SvgIcon';
41
45
  import Code from '@material-ui/icons/Code';
@@ -47,11 +51,9 @@ import { DataGrid, GridOverlay } from '@material-ui/data-grid';
47
51
  import Card from '@material-ui/core/Card';
48
52
  import CardActions from '@material-ui/core/CardActions';
49
53
  import CardContent from '@material-ui/core/CardContent';
50
- import Typography$1 from '@material-ui/core/Typography';
51
54
  import Snackbar from '@material-ui/core/Snackbar';
52
55
  import CircularProgress from '@material-ui/core/CircularProgress';
53
56
  import Alert$2 from '@material-ui/lab/Alert';
54
- import { AgGridReact } from 'ag-grid-react';
55
57
  import FormatListBulletedSharpIcon from '@material-ui/icons/FormatListBulletedSharp';
56
58
  import IconButton from '@material-ui/core/IconButton';
57
59
  import CloseIcon from '@material-ui/icons/Close';
@@ -59,8 +61,6 @@ import TextField$1 from '@material-ui/core/TextField';
59
61
  import { MuiPickersUtilsProvider, KeyboardDatePicker, KeyboardTimePicker } from '@material-ui/pickers';
60
62
  import MomentUtils from '@date-io/moment';
61
63
  import InputLabel from '@material-ui/core/InputLabel';
62
- import 'ag-grid-enterprise';
63
- import { useForm, Controller } from 'react-hook-form';
64
64
  import DialogContentText$1 from '@material-ui/core/DialogContentText';
65
65
  import DeleteIcon from '@material-ui/icons/Delete';
66
66
  import EditIcon from '@material-ui/icons/Edit';
@@ -1028,7 +1028,7 @@ var LazyLoading = function () {
1028
1028
  React__default.createElement("div", null))));
1029
1029
  };
1030
1030
 
1031
- var useStyles$s = makeStyles$1(function (theme) { return ({
1031
+ var useStyles$z = makeStyles$1(function (theme) { return ({
1032
1032
  buttons: {
1033
1033
  opacity: 0,
1034
1034
  transition: "opacity 0.1s ease-in-out",
@@ -1046,7 +1046,7 @@ var useStyles$s = makeStyles$1(function (theme) { return ({
1046
1046
  var useJobsTableData = function (_a) {
1047
1047
  var setRowSelected = _a.setRowSelected;
1048
1048
  var _b = useJobsContext().state, jobsData = _b.jobsData, blockButtons = _b.blockButtons;
1049
- var classes = useStyles$s();
1049
+ var classes = useStyles$z();
1050
1050
  var rows = jobsData.map(function (_a) {
1051
1051
  var JobId = _a.JobId, sProcedure = _a.sProcedure, Running = _a.Running, LastStarted = _a.LastStarted, LastCounter = _a.LastCounter, Enabled = _a.Enabled, RestartAfterFailure = _a.RestartAfterFailure, PeriodTime = _a.PeriodTime, StartTime = _a.StartTime, NextExecutionTime = _a.NextExecutionTime;
1052
1052
  return ({
@@ -1414,7 +1414,7 @@ var OnEnableJob = function (_a) {
1414
1414
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
1415
1415
  };
1416
1416
 
1417
- var useStyles$r = makeStyles(function (theme) { return ({
1417
+ var useStyles$y = makeStyles(function (theme) { return ({
1418
1418
  root: {
1419
1419
  "& .MuiDataGrid-row": {
1420
1420
  cursor: "pointer"
@@ -1475,7 +1475,7 @@ var useStyles$r = makeStyles(function (theme) { return ({
1475
1475
  }
1476
1476
  }); });
1477
1477
  var TableJobs = function () {
1478
- var classes = useStyles$r();
1478
+ var classes = useStyles$y();
1479
1479
  var _a = useState(""), error = _a[0], setError = _a[1];
1480
1480
  var _b = useState(true), loading = _b[0], setLoading = _b[1];
1481
1481
  var _c = useState(null), rowSelected = _c[0], setRowSelected = _c[1];
@@ -1704,7 +1704,7 @@ var LOG_TYPE_CODES = [
1704
1704
  { id: "E", description: "Error" },
1705
1705
  ];
1706
1706
 
1707
- var useStyles$q = makeStyles$1(function (theme) { return ({
1707
+ var useStyles$x = makeStyles$1(function (theme) { return ({
1708
1708
  buttons: {
1709
1709
  opacity: 0,
1710
1710
  transition: "opacity 0.1s ease-in-out",
@@ -1722,7 +1722,7 @@ var useStyles$q = makeStyles$1(function (theme) { return ({
1722
1722
  var useLogTableData = function () {
1723
1723
  var _a;
1724
1724
  var state = useLogsContext().state;
1725
- var classes = useStyles$q();
1725
+ var classes = useStyles$x();
1726
1726
  var formatTime = function (nowTime) {
1727
1727
  return (nowTime.toLocaleDateString("en-US") + " " + nowTime.toLocaleTimeString());
1728
1728
  };
@@ -1871,7 +1871,7 @@ var useGetLogsFromAPI = function (_a) {
1871
1871
  return update;
1872
1872
  };
1873
1873
 
1874
- var useStyles$p = makeStyles(function (theme) { return ({
1874
+ var useStyles$w = makeStyles(function (theme) { return ({
1875
1875
  title: {
1876
1876
  fontSize: 15
1877
1877
  },
@@ -1888,7 +1888,7 @@ var formatTime = function (nowTime) {
1888
1888
  };
1889
1889
  var ModalLogSelected = function (_a) {
1890
1890
  var show = _a.show, onHide = _a.onHide, selectedLog = _a.selectedLog;
1891
- var classes = useStyles$p();
1891
+ var classes = useStyles$w();
1892
1892
  return (React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center" },
1893
1893
  React__default.createElement(Modal$1, __assign({}, { show: show }, { onHide: function () { return onHide(false); }, size: "lg", "aria-labelledby": "contained-modal-title-vcenter", centered: true }),
1894
1894
  React__default.createElement(Modal$1.Header, { closeButton: true, style: { padding: "10px 30px" } },
@@ -1986,7 +1986,7 @@ var SearchFilter = function (_a) {
1986
1986
  React__default.createElement(FormHelperText, { style: { marginBottom: 10, marginTop: -15 } }, "Search by Source, Message or User")));
1987
1987
  };
1988
1988
 
1989
- var useStyles$o = makeStyles(function (theme) { return ({
1989
+ var useStyles$v = makeStyles(function (theme) { return ({
1990
1990
  root: {
1991
1991
  "& .MuiDataGrid-row": {
1992
1992
  cursor: "pointer"
@@ -2047,7 +2047,7 @@ var useStyles$o = makeStyles(function (theme) { return ({
2047
2047
  }); });
2048
2048
  var TableLogs = function () {
2049
2049
  var _a = useLogsContext(), _b = _a.state.searchData, Start = _b.Start, End = _b.End, Search = _b.Search, LogTypeCode = _b.LogTypeCode, _c = _a.actions, setStartFilter = _c.setStartFilter, setEndFilter = _c.setEndFilter, setSearchFilter = _c.setSearchFilter, setLogTypeCodeFilter = _c.setLogTypeCodeFilter, resetFilters = _c.resetFilters;
2050
- var classes = useStyles$o();
2050
+ var classes = useStyles$v();
2051
2051
  var gridStyle = useMemo(function () { return ({ height: "100%", width: "100%" }); }, []);
2052
2052
  var gridRef = useRef(null);
2053
2053
  var _d = useState(false), showLogModal = _d[0], setShowLogModal = _d[1];
@@ -2325,7 +2325,7 @@ var deleteProfile = function (profileId) { return __awaiter(void 0, void 0, void
2325
2325
  });
2326
2326
  }); };
2327
2327
 
2328
- var useStyles$n = makeStyles(function (theme) { return ({
2328
+ var useStyles$u = makeStyles(function (theme) { return ({
2329
2329
  title: {
2330
2330
  fontSize: 15
2331
2331
  },
@@ -2348,7 +2348,7 @@ var CreateProfile = function (_a) {
2348
2348
  var _d = useState(""), message = _d[0], setMessage = _d[1];
2349
2349
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
2350
2350
  var _f = useState(""), error = _f[0], setError = _f[1];
2351
- var classes = useStyles$n();
2351
+ var classes = useStyles$u();
2352
2352
  var _g = useForm({ defaultValues: INITIAL_VALUES$2 }), register = _g.register, handleSubmit = _g.handleSubmit, reset = _g.reset, errors = _g.formState.errors;
2353
2353
  var onSubmit = function (data) { return __awaiter(void 0, void 0, void 0, function () {
2354
2354
  var res;
@@ -2487,7 +2487,7 @@ var DeleteProfile = function (_a) {
2487
2487
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
2488
2488
  };
2489
2489
 
2490
- var useStyles$m = makeStyles$1(function (theme) { return ({
2490
+ var useStyles$t = makeStyles$1(function (theme) { return ({
2491
2491
  buttons: {
2492
2492
  opacity: 0,
2493
2493
  transition: "opacity 0.1s ease-in-out",
@@ -2505,7 +2505,7 @@ var useStyles$m = makeStyles$1(function (theme) { return ({
2505
2505
  var useTableData$2 = function (_a) {
2506
2506
  var setProfileForEdit = _a.setProfileForEdit, setModalProceduresProfile = _a.setModalProceduresProfile, setProfileForDelete = _a.setProfileForDelete, setModalDeleteProfile = _a.setModalDeleteProfile;
2507
2507
  var state = useProfilesContext().state;
2508
- var classes = useStyles$m();
2508
+ var classes = useStyles$t();
2509
2509
  var rows = state.profiles.map(function (_a) {
2510
2510
  var ProfileId = _a.ProfileId, ProfileName = _a.ProfileName;
2511
2511
  return ({
@@ -2678,7 +2678,7 @@ var DataTable = function (_a) {
2678
2678
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
2679
2679
  };
2680
2680
 
2681
- var useStyles$l = makeStyles$1(function (theme) { return ({
2681
+ var useStyles$s = makeStyles$1(function (theme) { return ({
2682
2682
  root: {
2683
2683
  "& .MuiFormLabel-asterisk": {
2684
2684
  display: "none"
@@ -2687,7 +2687,7 @@ var useStyles$l = makeStyles$1(function (theme) { return ({
2687
2687
  }); });
2688
2688
  var ActionsOfProfile = function (_a) {
2689
2689
  var profileForEdit = _a.profileForEdit, show = _a.show, onHide = _a.onHide;
2690
- var classes = useStyles$l();
2690
+ var classes = useStyles$s();
2691
2691
  var _b = useState(null), actionsOfProfile = _b[0], setActionsOfProfile = _b[1];
2692
2692
  var _c = useState(false), open = _c[0], setOpen = _c[1];
2693
2693
  var _d = useState(true), isLoading = _d[0], setIsLoading = _d[1];
@@ -2815,7 +2815,7 @@ var ActionsOfProfile = function (_a) {
2815
2815
  React.createElement(ErrorModal, { error: nameError, onHide: function () { return setNameError(""); } })));
2816
2816
  };
2817
2817
 
2818
- var useStyles$k = makeStyles(function (theme) { return ({
2818
+ var useStyles$r = makeStyles(function (theme) { return ({
2819
2819
  root: {
2820
2820
  "& .ag-icon-menu": {
2821
2821
  display: "none"
@@ -2887,7 +2887,7 @@ var TableProfiles = function (_a) {
2887
2887
  var _f = useState(null), profileForDelete = _f[0], setProfileForDelete = _f[1];
2888
2888
  var gridStyle = useMemo(function () { return ({ height: "100%", width: "100%" }); }, []);
2889
2889
  var _g = useState(null), gridApi = _g[0], setGridApi = _g[1];
2890
- var classes = useStyles$k();
2890
+ var classes = useStyles$r();
2891
2891
  var loadingOverlayComponent = useMemo(function () {
2892
2892
  return LazyLoading;
2893
2893
  }, []);
@@ -3140,7 +3140,7 @@ var DeleteShiftParameters = function (PatternStart) { return __awaiter(void 0, v
3140
3140
  });
3141
3141
  }); };
3142
3142
 
3143
- var useStyles$j = makeStyles(function (theme) { return ({
3143
+ var useStyles$q = makeStyles(function (theme) { return ({
3144
3144
  title: {
3145
3145
  fontSize: 15
3146
3146
  },
@@ -3166,7 +3166,7 @@ var CreateShift = function (_a) {
3166
3166
  var _d = useState(false), open = _d[0], setOpen = _d[1];
3167
3167
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
3168
3168
  var _f = useState(""), error = _f[0], setError = _f[1];
3169
- var classes = useStyles$j();
3169
+ var classes = useStyles$q();
3170
3170
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
3171
3171
  var _g = useForm({
3172
3172
  defaultValues: shiftTableData ? shiftTableData : INITIAL_VALUES$1
@@ -3370,7 +3370,7 @@ var CreateShift = function (_a) {
3370
3370
  React.createElement(Alert, { severity: "success", onClose: handleClose }, "The shift was created successfully"))));
3371
3371
  };
3372
3372
 
3373
- var useStyles$i = makeStyles(function (theme) { return ({
3373
+ var useStyles$p = makeStyles(function (theme) { return ({
3374
3374
  title: {
3375
3375
  fontSize: 15
3376
3376
  },
@@ -3396,7 +3396,7 @@ var DeleteShift = function (_a) {
3396
3396
  var _c = useState(false), open = _c[0], setOpen = _c[1];
3397
3397
  var _d = useState(false), isSubmitLoading = _d[0], setIsSubmitLoading = _d[1];
3398
3398
  var _e = useState(false), deleteAlert = _e[0], setDeleteAlert = _e[1];
3399
- var classes = useStyles$i();
3399
+ var classes = useStyles$p();
3400
3400
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
3401
3401
  var _f = useState(""), error = _f[0], setError = _f[1];
3402
3402
  var _g = useForm({ defaultValues: INITIAL_VALUES$1 }), control = _g.control, setValue = _g.setValue, reset = _g.reset, watch = _g.watch, errors = _g.formState.errors;
@@ -3537,7 +3537,7 @@ var DeleteShift = function (_a) {
3537
3537
  React.createElement(Alert, { severity: "warning", onClose: handleClose }, "The shift was deleted successfully"))));
3538
3538
  };
3539
3539
 
3540
- var useStyles$h = makeStyles(function (theme) { return ({
3540
+ var useStyles$o = makeStyles(function (theme) { return ({
3541
3541
  title: {
3542
3542
  fontSize: 15
3543
3543
  },
@@ -3564,7 +3564,7 @@ var EditShift = function (_a) {
3564
3564
  var _d = useState(""), error = _d[0], setError = _d[1];
3565
3565
  var _e = useState(false), isSubmitLoading = _e[0], setIsSubmitLoading = _e[1];
3566
3566
  var _f = useState(false), initialShiftPerDayAndCrewsNumber = _f[0], setInitialShiftPerDayAndCrewsNumber = _f[1];
3567
- var classes = useStyles$h();
3567
+ var classes = useStyles$o();
3568
3568
  var shiftTableData = useShiftsCrewsContext().state.shiftTableData;
3569
3569
  var _g = useForm({ defaultValues: INITIAL_VALUES$1 }), control = _g.control, setValue = _g.setValue, handleSubmit = _g.handleSubmit, reset = _g.reset, watch = _g.watch, errors = _g.formState.errors;
3570
3570
  // Progress bar
@@ -3781,7 +3781,7 @@ var EditShift = function (_a) {
3781
3781
  React.createElement(Alert, { severity: "success", onClose: handleClose }, "The shift was created successfully"))));
3782
3782
  };
3783
3783
 
3784
- var useStyles$g = makeStyles$1(function (theme) { return ({
3784
+ var useStyles$n = makeStyles$1(function (theme) { return ({
3785
3785
  root: {
3786
3786
  opacity: 0,
3787
3787
  transition: "opacity 0.1s ease-in-out",
@@ -3800,7 +3800,7 @@ var useTableData$1 = function (_a) {
3800
3800
  var _b;
3801
3801
  var setOpenModalEditShift = _a.setOpenModalEditShift, setOpenModalDeleteShift = _a.setOpenModalDeleteShift;
3802
3802
  var _c = useShiftsCrewsContext(), state = _c.state, actions = _c.actions;
3803
- var classes = useStyles$g();
3803
+ var classes = useStyles$n();
3804
3804
  var rows = (_b = state.shifts) === null || _b === void 0 ? void 0 : _b.map(function (_a) {
3805
3805
  var PatternStart = _a.PatternStart, ShiftCodes = _a.ShiftCodes, Crews = _a.Crews, PatternDays = _a.PatternDays, CrewRotation = _a.CrewRotation, Comments = _a.Comments, CanEdit = _a.CanEdit;
3806
3806
  return ({
@@ -3894,7 +3894,7 @@ var useTableData$1 = function (_a) {
3894
3894
  return { rows: rows, columnDefs: columnDefs };
3895
3895
  };
3896
3896
 
3897
- var useStyles$f = makeStyles(function (theme) { return ({
3897
+ var useStyles$m = makeStyles(function (theme) { return ({
3898
3898
  root: {
3899
3899
  "& .ag-icon-menu": {
3900
3900
  display: "none"
@@ -3943,7 +3943,7 @@ var useStyles$f = makeStyles(function (theme) { return ({
3943
3943
  }); });
3944
3944
  var TableShiftsCrews = function (_a) {
3945
3945
  _a.isLoading; var getShiftsCrewsFromAPI = _a.getShiftsCrewsFromAPI;
3946
- var classes = useStyles$f();
3946
+ var classes = useStyles$m();
3947
3947
  var _b = useState(false), openModalNew = _b[0], setOpenModalNew = _b[1];
3948
3948
  var _c = useState(false), openModalEditShift = _c[0], setOpenModalEditShift = _c[1];
3949
3949
  var _d = useState(false), openModalDeleteShift = _d[0], setOpenModalDeleteShift = _d[1];
@@ -4229,7 +4229,7 @@ var ConfigurationAssetProvider = function (_a) {
4229
4229
  return (React__default.createElement(ConfigurationAssetContext.Provider, { value: { state: state, actions: actions } }, children));
4230
4230
  };
4231
4231
 
4232
- var useStyles$e = makeStyles$1(function (theme) { return ({
4232
+ var useStyles$l = makeStyles$1(function (theme) { return ({
4233
4233
  root: {
4234
4234
  alignItems: "center",
4235
4235
  display: "flex",
@@ -4276,7 +4276,7 @@ var CustomNode = function (_a) {
4276
4276
  var _c = useConfigurationAssetContext(), openAssets = _c.state.openAssets, setOpenAssets = _c.actions.setOpenAssets;
4277
4277
  var _d = props.node, id = _d.id, droppable = _d.droppable, data = _d.data;
4278
4278
  var indent = props.depth * 24;
4279
- var classes = useStyles$e();
4279
+ var classes = useStyles$l();
4280
4280
  var nodeClasses = "".concat(classes.customNodeRoot, " ").concat(classes.root, " ").concat(isSelected ? classes.selected : "");
4281
4281
  var handleClick = function (e) {
4282
4282
  props.onClick(e, props.node);
@@ -4331,7 +4331,7 @@ var CustomNode = function (_a) {
4331
4331
  React__default.createElement(Typography, { variant: "body2" }, props.node.text))));
4332
4332
  };
4333
4333
 
4334
- var useStyles$d = makeStyles$1(function (theme) { return ({
4334
+ var useStyles$k = makeStyles$1(function (theme) { return ({
4335
4335
  root: {
4336
4336
  alignItems: "flex-start",
4337
4337
  backgroundColor: "#1967d2",
@@ -4363,7 +4363,7 @@ var useStyles$d = makeStyles$1(function (theme) { return ({
4363
4363
  }
4364
4364
  }); });
4365
4365
  var MultipleDragPreview = function (props) {
4366
- var classes = useStyles$d();
4366
+ var classes = useStyles$k();
4367
4367
  return (React__default.createElement(Badge, { classes: { badge: classes.badge }, color: "error", badgeContent: props.dragSources.length, anchorOrigin: { vertical: "top", horizontal: "right" } },
4368
4368
  React__default.createElement("div", { className: classes.root, "data-testid": "custom-drag-preview" }, props.dragSources.map(function (node) {
4369
4369
  var _a;
@@ -4374,7 +4374,7 @@ var MultipleDragPreview = function (props) {
4374
4374
  }))));
4375
4375
  };
4376
4376
 
4377
- var useStyles$c = makeStyles$1(function (theme) { return ({
4377
+ var useStyles$j = makeStyles$1(function (theme) { return ({
4378
4378
  root: {
4379
4379
  alignItems: "center",
4380
4380
  backgroundColor: "#1967d2",
@@ -4399,7 +4399,7 @@ var useStyles$c = makeStyles$1(function (theme) { return ({
4399
4399
  }); });
4400
4400
  var CustomDragPreview = function (props) {
4401
4401
  var _a;
4402
- var classes = useStyles$c();
4402
+ var classes = useStyles$j();
4403
4403
  var item = props.monitorProps.item;
4404
4404
  return (React__default.createElement("div", { className: classes.root },
4405
4405
  React__default.createElement("div", { className: classes.icon },
@@ -4692,7 +4692,7 @@ var useAssetCodes = function () {
4692
4692
  return { loadFilterAssets: loadFilterAssets };
4693
4693
  };
4694
4694
 
4695
- var useStyles$b = makeStyles(function (theme) { return ({
4695
+ var useStyles$i = makeStyles(function (theme) { return ({
4696
4696
  root: {
4697
4697
  "& .input-group-text": {
4698
4698
  display: "none"
@@ -4735,7 +4735,7 @@ var useStyles$b = makeStyles(function (theme) { return ({
4735
4735
  }); });
4736
4736
  var CreateNewAssetDialog = function (_a) {
4737
4737
  var show = _a.show, onHide = _a.onHide;
4738
- var classes = useStyles$b();
4738
+ var classes = useStyles$i();
4739
4739
  var _b = useState(true), fullWidth = _b[0]; _b[1];
4740
4740
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
4741
4741
  var _d = useState(false), assetCreatedSuccess = _d[0], setAssetCreatedSuccess = _d[1];
@@ -4854,7 +4854,7 @@ var CreateNewAssetDialog = function (_a) {
4854
4854
  React__default.createElement(Alert$2, { severity: "info", onClose: handleClose }, "Document created succesfully"))));
4855
4855
  };
4856
4856
 
4857
- var useStyles$a = makeStyles(function (theme) { return ({
4857
+ var useStyles$h = makeStyles(function (theme) { return ({
4858
4858
  root: {
4859
4859
  "& .input-group-text": {
4860
4860
  display: "none"
@@ -4905,7 +4905,7 @@ var useStyles$a = makeStyles(function (theme) { return ({
4905
4905
  }); });
4906
4906
  var ViewerAssetDialog = function (_a) {
4907
4907
  var show = _a.show, onHide = _a.onHide;
4908
- var classes = useStyles$a();
4908
+ var classes = useStyles$h();
4909
4909
  var _b = useState(true), fullWidth = _b[0]; _b[1];
4910
4910
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
4911
4911
  var _d = useConfigurationAssetContext().state, dataToCreateAsset = _d.dataToCreateAsset, assetNodeSelectedInTree = _d.assetNodeSelectedInTree;
@@ -4969,7 +4969,7 @@ var ViewerAssetDialog = function (_a) {
4969
4969
  } })))))))))));
4970
4970
  };
4971
4971
 
4972
- var useStyles$9 = makeStyles(function (theme) { return ({
4972
+ var useStyles$g = makeStyles(function (theme) { return ({
4973
4973
  root: {
4974
4974
  "& .input-group-text": {
4975
4975
  display: "none"
@@ -5013,7 +5013,7 @@ var useStyles$9 = makeStyles(function (theme) { return ({
5013
5013
  }); });
5014
5014
  var RemoveAssetDialog = function (_a) {
5015
5015
  var show = _a.show, onHide = _a.onHide;
5016
- var classes = useStyles$9();
5016
+ var classes = useStyles$g();
5017
5017
  var _b = useState(true), fullWidth = _b[0]; _b[1];
5018
5018
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
5019
5019
  var _d = useState(false), assetRemovedSuccess = _d[0], setAssetRemovedSuccess = _d[1];
@@ -5072,7 +5072,7 @@ var RemoveAssetDialog = function (_a) {
5072
5072
  React__default.createElement(Alert$2, { severity: "info", onClose: handleClose }, "Asset removed succesfully"))));
5073
5073
  };
5074
5074
 
5075
- var useStyles$8 = makeStyles(function (theme) { return ({
5075
+ var useStyles$f = makeStyles(function (theme) { return ({
5076
5076
  root: {
5077
5077
  "& .input-group-text": {
5078
5078
  display: "none"
@@ -5120,7 +5120,7 @@ var useStyles$8 = makeStyles(function (theme) { return ({
5120
5120
  }); });
5121
5121
  var EditAssetDialog = function (_a) {
5122
5122
  var show = _a.show, onHide = _a.onHide;
5123
- var classes = useStyles$8();
5123
+ var classes = useStyles$f();
5124
5124
  var _b = useState(true), fullWidth = _b[0]; _b[1];
5125
5125
  var _c = useState("sm"), maxWidth = _c[0]; _c[1];
5126
5126
  var _d = useState(false), assetEditedSuccess = _d[0], setAssetEditedSuccess = _d[1];
@@ -5240,7 +5240,7 @@ var EditAssetDialog = function (_a) {
5240
5240
  React__default.createElement(Alert$3, { severity: "info", onClose: handleClose }, "Document created succesfully")))))))));
5241
5241
  };
5242
5242
 
5243
- var useStyles$7 = makeStyles$1(function (theme) { return ({
5243
+ var useStyles$e = makeStyles$1(function (theme) { return ({
5244
5244
  root: {},
5245
5245
  contextMenu: {
5246
5246
  fontSize: "14px",
@@ -5271,7 +5271,7 @@ var useStyles$7 = makeStyles$1(function (theme) { return ({
5271
5271
  }); });
5272
5272
  var AssetViewComponent = function () {
5273
5273
  var _a = useState([]), selectedNodes = _a[0], setSelectedNodes = _a[1];
5274
- var classes = useStyles$7();
5274
+ var classes = useStyles$e();
5275
5275
  var _b = useState(false), isDragging = _b[0], setIsDragging = _b[1];
5276
5276
  var _c = useState(false), isCtrlPressing = _c[0], setIsCtrlPressing = _c[1];
5277
5277
  var _d = useState(false), isDoubleClick = _d[0], setIsDoubleClick = _d[1];
@@ -5630,7 +5630,7 @@ var setProfilesToUser = function (UserId, profileIds) { return __awaiter(void 0,
5630
5630
  });
5631
5631
  }); };
5632
5632
 
5633
- var useStyles$6 = makeStyles(function (theme) { return ({
5633
+ var useStyles$d = makeStyles(function (theme) { return ({
5634
5634
  root: {
5635
5635
  "& .MuiSelect-select": {
5636
5636
  height: "auto",
@@ -5659,19 +5659,19 @@ var getStyles = function (profileId, profiles, theme) {
5659
5659
  : theme.typography.fontWeightMedium
5660
5660
  };
5661
5661
  };
5662
- var ITEM_HEIGHT$1 = 48;
5663
- var ITEM_PADDING_TOP$1 = 8;
5664
- var MenuProps$1 = {
5662
+ var ITEM_HEIGHT$2 = 48;
5663
+ var ITEM_PADDING_TOP$2 = 8;
5664
+ var MenuProps$2 = {
5665
5665
  PaperProps: {
5666
5666
  style: {
5667
- maxHeight: ITEM_HEIGHT$1 * 4.5 + ITEM_PADDING_TOP$1,
5667
+ maxHeight: ITEM_HEIGHT$2 * 4.5 + ITEM_PADDING_TOP$2,
5668
5668
  width: 250
5669
5669
  }
5670
5670
  }
5671
5671
  };
5672
5672
  var ProfilesPicker = function (_a) {
5673
5673
  var value = _a.value, onChange = _a.onChange, userIdForDelete = _a.userIdForDelete, setprofileError = _a.setprofileError;
5674
- var classes = useStyles$6();
5674
+ var classes = useStyles$d();
5675
5675
  var theme = useTheme();
5676
5676
  var _b = useState(true), isLoading = _b[0], setIsLoading = _b[1];
5677
5677
  var _c = useState([]), profiles = _c[0], setProfiles = _c[1];
@@ -5708,7 +5708,7 @@ var ProfilesPicker = function (_a) {
5708
5708
  React__default.createElement(InputLabel, { id: "demo-mutiple-chip-label", style: value.length
5709
5709
  ? { display: "flex", alignItems: "center" }
5710
5710
  : { display: "flex", alignItems: "center", marginTop: 10 } }, "Profiles"),
5711
- 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$1 }, 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))));
5711
+ 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$2 }, 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))));
5712
5712
  };
5713
5713
 
5714
5714
  var INITIAL_VALUES = {
@@ -5724,7 +5724,7 @@ var INITIAL_VALUES = {
5724
5724
  };
5725
5725
 
5726
5726
  // @flow
5727
- var useStyles$5 = makeStyles$1(function (theme) { return ({
5727
+ var useStyles$c = makeStyles$1(function (theme) { return ({
5728
5728
  root: {
5729
5729
  "& .MuiSelect-select": {
5730
5730
  minHeight: "40px"
@@ -5745,19 +5745,19 @@ var useStyles$5 = makeStyles$1(function (theme) { return ({
5745
5745
  marginTop: theme.spacing(3)
5746
5746
  }
5747
5747
  }); });
5748
- var ITEM_HEIGHT = 48;
5749
- var ITEM_PADDING_TOP = 8;
5750
- var MenuProps = {
5748
+ var ITEM_HEIGHT$1 = 48;
5749
+ var ITEM_PADDING_TOP$1 = 8;
5750
+ var MenuProps$1 = {
5751
5751
  PaperProps: {
5752
5752
  style: {
5753
- maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,
5753
+ maxHeight: ITEM_HEIGHT$1 * 4.5 + ITEM_PADDING_TOP$1,
5754
5754
  width: 250
5755
5755
  }
5756
5756
  }
5757
5757
  };
5758
5758
  var AuthTypeSelector = function (_a) {
5759
5759
  var value = _a.value, onChange = _a.onChange;
5760
- var classes = useStyles$5();
5760
+ var classes = useStyles$c();
5761
5761
  var _b = useState([]), authTypes = _b[0], setAuthTypes = _b[1];
5762
5762
  var _c = useState(true), isLoading = _c[0], setIsLoading = _c[1];
5763
5763
  var theme = useTheme$1();
@@ -5790,10 +5790,10 @@ var AuthTypeSelector = function (_a) {
5790
5790
  return (React.createElement("div", { className: classes.root }, !isLoading && authTypes.length ? (React.createElement(FormControl, { className: classes.formControl },
5791
5791
  React.createElement(InputLabel, { id: "demo-mutiple-chip-label" }, "Auth type"),
5792
5792
  React.createElement(Select, { autoWidth: true, labelId: "demo-mutiple-chip-label", id: "demo-mutiple-chip", value: value, style: { padding: 0 }, onChange: onChange, input: React.createElement(Input, { id: "select-multiple-chip" }), renderValue: function (selected) { return (React.createElement("div", { className: classes.chips },
5793
- React.createElement(Chip, { key: "selected-authType-".concat(selected), label: selectedAuthTypeName, className: classes.chip }))); }, MenuProps: MenuProps }, 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))));
5793
+ 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))));
5794
5794
  };
5795
5795
 
5796
- var useStyles$4 = makeStyles(function (theme) { return ({
5796
+ var useStyles$b = makeStyles(function (theme) { return ({
5797
5797
  checkbox: {
5798
5798
  userSelect: "none"
5799
5799
  },
@@ -5815,7 +5815,7 @@ var CreateUser = function (_a) {
5815
5815
  var _f = useState(false), isSubmitLoading = _f[0], setIsSubmitLoading = _f[1];
5816
5816
  var _g = useState(""), error = _g[0], setError = _g[1];
5817
5817
  var _h = useState(""), profileError = _h[0], setprofileError = _h[1];
5818
- var classes = useStyles$4();
5818
+ var classes = useStyles$b();
5819
5819
  var _j = useForm({ defaultValues: INITIAL_VALUES }), register = _j.register, control = _j.control, handleSubmit = _j.handleSubmit, reset = _j.reset, watch = _j.watch, errors = _j.formState.errors;
5820
5820
  var handleClose = function (event, reason) {
5821
5821
  if (reason === "clickaway") {
@@ -5907,7 +5907,7 @@ var CreateUser = function (_a) {
5907
5907
  React.createElement(Alert, { severity: "success", onClose: handleClose }, "The user was created successfully"))));
5908
5908
  };
5909
5909
 
5910
- var useStyles$3 = makeStyles(function (theme) { return ({
5910
+ var useStyles$a = makeStyles(function (theme) { return ({
5911
5911
  checkbox: {
5912
5912
  userSelect: "none"
5913
5913
  },
@@ -5926,7 +5926,7 @@ var useStyles$3 = makeStyles(function (theme) { return ({
5926
5926
  var EditUser = function (_a) {
5927
5927
  var _b, _c, _d;
5928
5928
  var userIdForEdit = _a.userIdForEdit, show = _a.show, onHide = _a.onHide;
5929
- var classes = useStyles$3();
5929
+ var classes = useStyles$a();
5930
5930
  var _e = useState(false), open = _e[0], setOpen = _e[1];
5931
5931
  var _f = useState(false), isLoading = _f[0], setIsLoading = _f[1];
5932
5932
  var _g = useState(false), isSubmitLoading = _g[0], setIsSubmitLoading = _g[1];
@@ -6181,7 +6181,7 @@ var DeleteUser = function (_a) {
6181
6181
  React__default.createElement(ErrorModal, { error: profileError, onHide: function () { return setprofileError(""); } })));
6182
6182
  };
6183
6183
 
6184
- var useStyles$2 = makeStyles$1(function (theme) { return ({
6184
+ var useStyles$9 = makeStyles$1(function (theme) { return ({
6185
6185
  buttons: {
6186
6186
  opacity: 0,
6187
6187
  transition: "opacity 0.1s ease-in-out",
@@ -6199,7 +6199,7 @@ var useStyles$2 = makeStyles$1(function (theme) { return ({
6199
6199
  var useTableData = function (_a) {
6200
6200
  var setUserIdForEdit = _a.setUserIdForEdit, setOpenModalEditDataUser = _a.setOpenModalEditDataUser, setUserIdForDelete = _a.setUserIdForDelete, setOpenModalDeleteUser = _a.setOpenModalDeleteUser, setOpenModalChangePasswordd = _a.setOpenModalChangePasswordd, setUserForPasswordChange = _a.setUserForPasswordChange;
6201
6201
  var state = useUsersContext().state;
6202
- var classes = useStyles$2();
6202
+ var classes = useStyles$9();
6203
6203
  var onActionsClick = function (e, params) {
6204
6204
  params.api.contextMenuFactory.showMenu(params.node, params.column, undefined, e);
6205
6205
  };
@@ -6357,7 +6357,7 @@ var ChangePassword$1 = function (_a) {
6357
6357
  }
6358
6358
  };
6359
6359
 
6360
- var useStyles$1 = makeStyles(function (theme) { return ({
6360
+ var useStyles$8 = makeStyles(function (theme) { return ({
6361
6361
  root: {
6362
6362
  "& .ag-icon-menu": {
6363
6363
  display: "none"
@@ -6427,7 +6427,7 @@ var TableUsers = function (_a) {
6427
6427
  var _c = useState(false), openModalEditDataUser = _c[0], setOpenModalEditDataUser = _c[1];
6428
6428
  var _d = useState(false), openModalDeleteUser = _d[0], setOpenModalDeleteUser = _d[1];
6429
6429
  var _e = useState(false), openModalChangePassword = _e[0], setOpenModalChangePasswordd = _e[1];
6430
- var classes = useStyles$1();
6430
+ var classes = useStyles$8();
6431
6431
  var _f = useState(null), userIdForEdit = _f[0], setUserIdForEdit = _f[1];
6432
6432
  var _g = useState(null), userIdForDelete = _g[0], setUserIdForDelete = _g[1];
6433
6433
  var _h = useState(null), userForPasswordChange = _h[0], setUserForPasswordChange = _h[1];
@@ -8205,116 +8205,1440 @@ function Header$1(_a) {
8205
8205
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
8206
8206
  }
8207
8207
 
8208
- function Configuration() {
8209
- var option = useParams().option;
8210
- var _a = useContext(ConfigurationContext), customConfiguration = _a[0], CustomSidebar = _a[1];
8211
- var routes = __spreadArray(__spreadArray([
8212
- {
8213
- path: "/",
8214
- sidebar: function () { return React__default.createElement("div", null, "Configuration"); },
8215
- main: function () { return React__default.createElement(Navigate, { to: "users" }); }
8208
+ var INITIAL_VALUES_MODAL = {
8209
+ FormAssetId: null,
8210
+ AssetId: 1,
8211
+ AssetName: "Plant",
8212
+ UserId: null,
8213
+ UserName: "",
8214
+ IsDefault: null
8215
+ };
8216
+
8217
+ var FormsInitialState = {
8218
+ formsList: [],
8219
+ searchText: "",
8220
+ firstTime: true,
8221
+ formAssetsAndUsersList: [],
8222
+ assetCodes: {},
8223
+ userFormAssetData: INITIAL_VALUES_MODAL,
8224
+ users: [],
8225
+ FormId: null,
8226
+ FormName: ""
8227
+ };
8228
+ var FormsReducer = createSlice({
8229
+ name: "__",
8230
+ initialState: FormsInitialState,
8231
+ reducers: {
8232
+ setFormsList: function (state, _a) {
8233
+ var payload = _a.payload;
8234
+ state.formsList = payload;
8216
8235
  },
8217
- {
8218
- path: "shifts",
8219
- sidebar: function () { return React__default.createElement("div", null, "Shifts"); },
8220
- main: function () { return React__default.createElement(ShiftsCrewsPage, null); }
8236
+ setSearchText: function (state, _a) {
8237
+ var payload = _a.payload;
8238
+ state.searchText = payload;
8221
8239
  },
8222
- {
8223
- path: "asset",
8224
- sidebar: function () { return React__default.createElement("div", null, "Configuration Asset"); },
8225
- main: function () { return React__default.createElement(AssetPage, null); }
8240
+ setFirstTime: function (state, _a) {
8241
+ var payload = _a.payload;
8242
+ state.firstTime = payload;
8226
8243
  },
8227
- {
8228
- path: "users",
8229
- sidebar: function () { return React__default.createElement("div", null, "Users"); },
8230
- main: function () { return React__default.createElement(UsersPage, null); }
8244
+ setFormAssetsAndUsersList: function (state, _a) {
8245
+ var payload = _a.payload;
8246
+ state.formAssetsAndUsersList = payload;
8231
8247
  },
8232
- {
8233
- path: "profiles",
8234
- sidebar: function () { return React__default.createElement("div", null, "profiles"); },
8235
- main: function () { return React__default.createElement(UsersPage$1, null); }
8236
- }
8237
- ], customConfiguration, true), [
8238
- {
8239
- path: "logs",
8240
- sidebar: function () { return React__default.createElement("div", null, "Logs"); },
8241
- main: function () { return React__default.createElement(LogsPage, null); }
8248
+ setAssetCodes: function (state, _a) {
8249
+ var payload = _a.payload;
8250
+ state.assetCodes = payload;
8242
8251
  },
8243
- {
8244
- path: "jobs",
8245
- sidebar: function () { return React__default.createElement("div", null, "Jobs"); },
8246
- main: function () { return React__default.createElement(JobsPage, null); }
8252
+ setUsers: function (state, _a) {
8253
+ var payload = _a.payload;
8254
+ state.users = payload;
8247
8255
  },
8248
- ], false);
8249
- return (React__default.createElement(GenericPanel, { title: "Configuration", description: "" },
8250
- React__default.createElement("div", { className: "row", style: { display: "flex" } },
8251
- React__default.createElement("div", { className: "col-md-2 mt-3 pt-0 pr-0 mes-div-submenu", style: { flex: "20%" } },
8252
- React__default.createElement("h3", { className: "mes-menu-group" }, "Plant"),
8253
- React__default.createElement(MenuList, { className: "mes-submenu" },
8254
- React__default.createElement(MenuItem, { selected: option === "shifts", className: "p-0" },
8255
- React__default.createElement(Link, { to: "/configuration/shifts", className: "nav-link" }, "Shift / Crews")),
8256
- React__default.createElement(MenuItem, { selected: option === "asset", className: "p-0" },
8257
- React__default.createElement(Link, { to: "/configuration/asset", className: "nav-link" }, "Assets Tree"))),
8258
- React__default.createElement("h3", { className: "mes-menu-group" }, "Security"),
8259
- React__default.createElement(MenuList, { className: "mes-submenu" },
8260
- React__default.createElement(MenuItem, { selected: option === "users", className: "p-0" },
8261
- React__default.createElement(Link, { to: "/configuration/users", className: "nav-link" }, "Users")),
8262
- React__default.createElement(MenuItem, { selected: option === "profiles", className: "p-0" },
8263
- React__default.createElement(Link, { to: "/configuration/profiles", className: "nav-link" }, "Profiles"))),
8264
- React__default.createElement(CustomSidebar, { option: option }),
8265
- React__default.createElement("h3", { className: "mes-menu-group" }, "Maintenance"),
8266
- React__default.createElement(MenuList, { className: "mes-submenu" },
8267
- React__default.createElement(MenuItem, { selected: option === "logs", className: "p-0" },
8268
- React__default.createElement(Link, { to: "/configuration/logs", className: "nav-link" }, "Logs")),
8269
- React__default.createElement(MenuItem, { selected: option === "jobs", className: "p-0" },
8270
- React__default.createElement(Link, { to: "/configuration/jobs", className: "nav-link" }, "Jobs")))),
8271
- React__default.createElement("div", { className: "col-md-10 m-3", style: { flex: "80%" } },
8272
- React__default.createElement(Routes, null, routes.map(function (route, index) { return (React__default.createElement(Route, { key: index, path: route.path, element: React__default.createElement(route.main, null) })); }))))));
8273
- }
8256
+ setFormId: function (state, _a) {
8257
+ var payload = _a.payload;
8258
+ state.FormId = payload;
8259
+ },
8260
+ setFormName: function (state, _a) {
8261
+ var payload = _a.payload;
8262
+ state.FormName = payload;
8263
+ },
8264
+ // userFormAssetData
8265
+ setUserFormAssetData: function (state, _a) {
8266
+ var payload = _a.payload;
8267
+ state.userFormAssetData = payload;
8268
+ },
8269
+ setAssetId: function (state, _a) {
8270
+ var payload = _a.payload;
8271
+ state.userFormAssetData.AssetId = payload;
8272
+ },
8273
+ setAssetName: function (state, _a) {
8274
+ var payload = _a.payload;
8275
+ state.userFormAssetData.AssetName = payload;
8276
+ },
8277
+ setUserId: function (state, _a) {
8278
+ var payload = _a.payload;
8279
+ state.userFormAssetData.UserId = payload;
8280
+ },
8281
+ setIsDefault: function (state, _a) {
8282
+ var payload = _a.payload;
8283
+ state.userFormAssetData.IsDefault = payload;
8284
+ },
8285
+ setFormAssetId: function (state, _a) {
8286
+ var payload = _a.payload;
8287
+ state.userFormAssetData.FormAssetId = payload;
8288
+ }
8289
+ }
8290
+ });
8274
8291
 
8275
- var Home = function () { return (React__default.createElement("div", { style: {
8276
- backgroundImage: "url(\"/home.jpg\")",
8277
- backgroundPosition: "center",
8278
- backgroundSize: "cover",
8279
- backgroundRepeat: "no-repeat",
8280
- minHeight: "100%",
8281
- height: "100vh",
8282
- width: "100%",
8283
- position: "absolute"
8284
- } })); };
8292
+ var FormsContext = createContext({
8293
+ state: FormsReducer.getInitialState(),
8294
+ actions: FormsReducer.actions
8295
+ });
8296
+ var useFormsContext = function () { return useContext(FormsContext); };
8297
+ var FormsProvider = function (_a) {
8298
+ var children = _a.children;
8299
+ var _b = useComplexState({
8300
+ initialState: FormsReducer.getInitialState(),
8301
+ reducers: FormsReducer.caseReducers
8302
+ }), state = _b[0], actions = _b[1];
8303
+ return (React__default.createElement(FormsContext.Provider, { value: { state: state, actions: actions } }, children));
8304
+ };
8285
8305
 
8286
- var TrendingsInitialState = {
8287
- timeScopeStart: moment(new Date()).subtract(1, "days").toDate(),
8288
- timeScopeEnd: new Date(),
8289
- scope: "1 day",
8290
- graphPan: false,
8291
- graphShouldUpdate: 0,
8292
- views: [
8293
- {
8294
- ViewId: 0,
8295
- ViewName: '',
8296
- UserName: null,
8297
- IsPublic: false,
8298
- LastModified: null,
8299
- LastModifiedBy: null
8306
+ var getForms = function (SearchText) { return __awaiter(void 0, void 0, void 0, function () {
8307
+ var apiService, parameters, resp;
8308
+ return __generator(this, function (_a) {
8309
+ switch (_a.label) {
8310
+ case 0:
8311
+ apiService = new MESApiService();
8312
+ parameters = [];
8313
+ parameters.push({ name: "SearchText", value: SearchText });
8314
+ return [4 /*yield*/, apiService.callV2("[FORMS].[GetForms]", parameters)];
8315
+ case 1:
8316
+ resp = _a.sent();
8317
+ return [2 /*return*/, resp];
8300
8318
  }
8301
- ],
8302
- viewSelected: null,
8303
- viewTags: [
8304
- {
8305
- ViewId: 0,
8306
- TagId: 0,
8307
- TagName: '',
8308
- Color: '',
8309
- IsVisible: true,
8310
- MinScale: 0,
8311
- MaxScale: 0,
8312
- IsAutoScale: true,
8313
- Alias: '',
8314
- TagType: '',
8315
- Unit: ''
8319
+ });
8320
+ }); };
8321
+ var getFormAssetsAndUsers = function (FormId) { return __awaiter(void 0, void 0, void 0, function () {
8322
+ var apiService, parameters, resp;
8323
+ return __generator(this, function (_a) {
8324
+ switch (_a.label) {
8325
+ case 0:
8326
+ apiService = new MESApiService();
8327
+ parameters = [];
8328
+ parameters.push({ name: "FormId", value: FormId });
8329
+ return [4 /*yield*/, apiService.callV2("[FORMS].[GetFormAssetsAndUsers]", parameters)];
8330
+ case 1:
8331
+ resp = _a.sent();
8332
+ return [2 /*return*/, resp];
8316
8333
  }
8317
- ]
8334
+ });
8335
+ }); };
8336
+ var upsertUserFormAsset = function (FormId, AssetId, UserId, IsDefault) { return __awaiter(void 0, void 0, void 0, function () {
8337
+ var apiService, parameters, resp;
8338
+ return __generator(this, function (_a) {
8339
+ switch (_a.label) {
8340
+ case 0:
8341
+ apiService = new MESApiService();
8342
+ parameters = [];
8343
+ parameters.push({ name: "FormId", value: FormId });
8344
+ parameters.push({ name: "AssetId", value: AssetId });
8345
+ parameters.push({ name: "UserId", value: UserId });
8346
+ parameters.push({ name: "IsDefault", value: IsDefault });
8347
+ return [4 /*yield*/, apiService.callV2("[FORMS].[UpsertUserFormAsset]", parameters)];
8348
+ case 1:
8349
+ resp = _a.sent();
8350
+ return [2 /*return*/, resp];
8351
+ }
8352
+ });
8353
+ }); };
8354
+ var deleteUserFormAsset = function (FormAssetId, UserId) { return __awaiter(void 0, void 0, void 0, function () {
8355
+ var apiService, parameters, resp;
8356
+ return __generator(this, function (_a) {
8357
+ switch (_a.label) {
8358
+ case 0:
8359
+ apiService = new MESApiService();
8360
+ parameters = [];
8361
+ parameters.push({ name: "FormAssetId", value: FormAssetId });
8362
+ parameters.push({ name: "UserId", value: UserId });
8363
+ return [4 /*yield*/, apiService.callV2("[FORMS].[DeleteUserFormAsset]", parameters)];
8364
+ case 1:
8365
+ resp = _a.sent();
8366
+ return [2 /*return*/, resp];
8367
+ }
8368
+ });
8369
+ }); };
8370
+
8371
+ var useSearchForms = function (_a) {
8372
+ var setIsLoading = _a.setIsLoading, setError = _a.setError;
8373
+ var _b = useFormsContext(), searchText = _b.state.searchText, setFormsList = _b.actions.setFormsList;
8374
+ return function () { return __awaiter(void 0, void 0, void 0, function () {
8375
+ var res, rowsSource;
8376
+ return __generator(this, function (_a) {
8377
+ switch (_a.label) {
8378
+ case 0:
8379
+ setFormsList([]);
8380
+ setIsLoading(true);
8381
+ return [4 /*yield*/, getForms(searchText)];
8382
+ case 1:
8383
+ res = _a.sent();
8384
+ if (res.ok) {
8385
+ rowsSource = get$2(res, "data.tables[0].rows", []);
8386
+ if (rowsSource.length) {
8387
+ setFormsList(rowsSource);
8388
+ }
8389
+ else {
8390
+ setFormsList([]);
8391
+ }
8392
+ setIsLoading(false);
8393
+ }
8394
+ else {
8395
+ setError(res.message);
8396
+ setIsLoading(false);
8397
+ }
8398
+ return [2 /*return*/];
8399
+ }
8400
+ });
8401
+ }); };
8402
+ };
8403
+
8404
+ var useSearchFormAssetsAndUsers = function (_a) {
8405
+ var setIsLoading = _a.setIsLoading, setError = _a.setError;
8406
+ var _b = useFormsContext(), FormId = _b.state.FormId, setFormAssetsAndUsersList = _b.actions.setFormAssetsAndUsersList;
8407
+ return function () { return __awaiter(void 0, void 0, void 0, function () {
8408
+ var res, rowsSource;
8409
+ return __generator(this, function (_a) {
8410
+ switch (_a.label) {
8411
+ case 0:
8412
+ setFormAssetsAndUsersList([]);
8413
+ setIsLoading(true);
8414
+ return [4 /*yield*/, getFormAssetsAndUsers(FormId)];
8415
+ case 1:
8416
+ res = _a.sent();
8417
+ if (res.ok) {
8418
+ rowsSource = get$2(res, "data.tables[0].rows", []);
8419
+ if (rowsSource.length) {
8420
+ setFormAssetsAndUsersList(rowsSource);
8421
+ }
8422
+ else {
8423
+ setFormAssetsAndUsersList([]);
8424
+ }
8425
+ setIsLoading(false);
8426
+ }
8427
+ else {
8428
+ setError(res.message);
8429
+ setIsLoading(false);
8430
+ }
8431
+ return [2 /*return*/];
8432
+ }
8433
+ });
8434
+ }); };
8435
+ };
8436
+
8437
+ var useStyles$7 = makeStyles(function (theme) {
8438
+ return createStyles({
8439
+ root: {
8440
+ "& .ag-icon-menu": {
8441
+ display: "none"
8442
+ },
8443
+ "& .ag-checkbox-input-wrapper": {
8444
+ margin: "0 10px"
8445
+ },
8446
+ "& .ag-cell": {
8447
+ alignItems: "center",
8448
+ padding: "0 !important",
8449
+ backgroundColor: "#FFFF !important",
8450
+ border: "unset !important"
8451
+ },
8452
+ "& .ag-header-cell": {
8453
+ padding: "0px !important",
8454
+ textAlign: "center !important",
8455
+ fontSize: 10
8456
+ },
8457
+ "& .ag-root-wrapper": {
8458
+ minHeight: "100% !important",
8459
+ borderRadius: 3,
8460
+ paddingBottom: 45
8461
+ },
8462
+ "& .ag-cell-wrapper": {
8463
+ width: "95%",
8464
+ textAlign: "center"
8465
+ },
8466
+ "& .ag-body-viewport": {
8467
+ borderBottom: "2px solid #DDE2EB"
8468
+ },
8469
+ "& .ag-menu-option": {
8470
+ cursor: "pointer"
8471
+ }
8472
+ }
8473
+ });
8474
+ });
8475
+ var AssetNameColumn = function (_a) {
8476
+ var data = _a.data;
8477
+ var classes = useStyles$7();
8478
+ var _b = useState(""), assetName = _b[0], setAssetName = _b[1];
8479
+ var allAssets = useAssetContext().state.allAssets;
8480
+ var getAssetName = function () {
8481
+ var _a;
8482
+ setAssetName(((_a = allAssets.find(function (asset) { return asset.AssetId === parseInt(data.AssetId); })) === null || _a === void 0 ? void 0 : _a.AssetName) || "Unknown");
8483
+ };
8484
+ useEffect(function () {
8485
+ getAssetName();
8486
+ }, []);
8487
+ if (data) {
8488
+ return (React__default.createElement(Grid$1, { container: true, className: classes.root, spacing: 1, style: { alignItems: "center", justifyContent: "center" } },
8489
+ React__default.createElement(Grid$1, { item: true, style: { alignItems: "center", justifyContent: "center" } }, assetName)));
8490
+ }
8491
+ else {
8492
+ return React__default.createElement(React__default.Fragment, null);
8493
+ }
8494
+ };
8495
+
8496
+ var TransformAssetCodeModel = function (data) {
8497
+ var model = {
8498
+ id: data.AssetId,
8499
+ parentId: data.ParentAssetId,
8500
+ name: data.AssetName,
8501
+ isActive: true
8502
+ };
8503
+ return model;
8504
+ };
8505
+
8506
+ var ITEM_HEIGHT = 48;
8507
+ var ITEM_PADDING_TOP = 8;
8508
+ var MenuProps = {
8509
+ PaperProps: {
8510
+ style: {
8511
+ maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,
8512
+ width: 250
8513
+ }
8514
+ }
8515
+ };
8516
+ var useStyles$6 = makeStyles$1(function (theme) {
8517
+ return createStyles$1({
8518
+ root: {
8519
+ "& .MuiSelect-root": {
8520
+ backgroundColor: "#FFF"
8521
+ }
8522
+ },
8523
+ inputLabel: {
8524
+ position: "absolute",
8525
+ top: -6,
8526
+ left: 8,
8527
+ fontSize: 11.3,
8528
+ backgroundColor: "#FFF",
8529
+ color: "#0000008A",
8530
+ width: "auto",
8531
+ height: "auto",
8532
+ zIndex: 100,
8533
+ padding: "0 3px",
8534
+ borderRadius: 3,
8535
+ fontWeight: 400,
8536
+ lineHeight: "1.1876em",
8537
+ letterSpacing: "0.04208em",
8538
+ fontFamily: "'Roboto', 'Helvetica', 'Arial', sans-serif"
8539
+ },
8540
+ formControl: {
8541
+ width: "99%",
8542
+ marginTop: 8
8543
+ },
8544
+ chips: {
8545
+ display: "flex",
8546
+ flexWrap: "wrap"
8547
+ },
8548
+ chip: {
8549
+ margin: 2
8550
+ },
8551
+ noLabel: {
8552
+ marginTop: theme.spacing(3)
8553
+ }
8554
+ });
8555
+ });
8556
+ var UsersPicker = function (_a) {
8557
+ var value = _a.value, onChange = _a.onChange, disabled = _a.disabled;
8558
+ var classes = useStyles$6();
8559
+ var _b = useState(false); _b[0]; var setIsLoading = _b[1];
8560
+ var _c = useState(""), error = _c[0], setError = _c[1];
8561
+ var _d = useFormsContext(), users = _d.state.users, setUsers = _d.actions.setUsers;
8562
+ useEffect(function () {
8563
+ var searchUsers = function () { return __awaiter(void 0, void 0, void 0, function () {
8564
+ var res, listUsers;
8565
+ return __generator(this, function (_a) {
8566
+ switch (_a.label) {
8567
+ case 0:
8568
+ setIsLoading(true);
8569
+ return [4 /*yield*/, getUsers()];
8570
+ case 1:
8571
+ res = _a.sent();
8572
+ if (res.ok) {
8573
+ listUsers = get(res, "data.tables[0].rows", []);
8574
+ // Ordenar usuarios alfabéticamente
8575
+ listUsers.sort(function (a, b) { return a.UserName.localeCompare(b.UserName); });
8576
+ setUsers(listUsers);
8577
+ setIsLoading(false);
8578
+ }
8579
+ else {
8580
+ setError(res.message);
8581
+ setIsLoading(false);
8582
+ }
8583
+ return [2 /*return*/];
8584
+ }
8585
+ });
8586
+ }); };
8587
+ searchUsers();
8588
+ }, []);
8589
+ return (React__default.createElement("div", { className: classes.root },
8590
+ users.length ? (React__default.createElement(FormControl$1, { className: classes.formControl, style: { position: "relative" } },
8591
+ React__default.createElement("p", { className: classes.inputLabel }, "User"),
8592
+ React__default.createElement(Select$1, { disabled: disabled ? disabled : false, style: { padding: "0 !important" }, variant: "outlined", margin: "dense", labelId: "demo-simple-select-label", id: "demo-simple-select", autoWidth: true, value: value, onChange: onChange, MenuProps: MenuProps }, users.map(function (user) { return (React__default.createElement(MenuItem$1, { key: "user-".concat(user.UserId), value: user.UserId },
8593
+ React__default.createElement(Grid$1, { container: true, alignItems: "center" },
8594
+ React__default.createElement("div", { style: {
8595
+ color: "#FFF",
8596
+ fontWeight: 600,
8597
+ margin: "auto 0",
8598
+ lineHeight: 0
8599
+ } },
8600
+ React__default.createElement("div", { style: { marginLeft: "-40px" } }, user.UserName.charAt(0) || "")),
8601
+ React__default.createElement("div", null, user.UserName)))); })))) : (React__default.createElement(React__default.Fragment, null)),
8602
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
8603
+ };
8604
+
8605
+ var useStyles$5 = makeStyles$1(function (theme) { return ({
8606
+ root: {
8607
+ "& .input-group-text": {
8608
+ display: "none"
8609
+ },
8610
+ "& .MuiDialogContent-dividers": {
8611
+ padding: 0
8612
+ }
8613
+ },
8614
+ checkbox: {
8615
+ userSelect: "none"
8616
+ },
8617
+ assetPicker: {
8618
+ "& .MuiGrid-item": {
8619
+ width: "500px"
8620
+ }
8621
+ },
8622
+ modalTitle: {
8623
+ backgroundColor: "#ced2cc",
8624
+ color: "#495057",
8625
+ textAlign: "center"
8626
+ },
8627
+ modalWarning: {
8628
+ color: "white",
8629
+ backgroundColor: "#dc3545",
8630
+ textAlign: "center"
8631
+ },
8632
+ messageTitle: {
8633
+ fontSize: 15,
8634
+ fontWeight: "bold",
8635
+ color: "#0000008A"
8636
+ },
8637
+ inputEditable: {
8638
+ "& .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline": {
8639
+ border: "2px solid #3F51B5"
8640
+ }
8641
+ },
8642
+ comments: {
8643
+ "& .MuiOutlinedInput-root .MuiOutlinedInput-notchedOutline": {
8644
+ border: "1px solid #3F51B5"
8645
+ }
8646
+ }
8647
+ }); });
8648
+ var AddFormAssetAndUserModal = function (_a) {
8649
+ var show = _a.show, onHide = _a.onHide;
8650
+ var classes = useStyles$5();
8651
+ var _b = useState(false), addSuccess = _b[0], setAddSuccess = _b[1];
8652
+ var _c = useState(false), isSubmitLoading = _c[0], setIsSubmitLoading = _c[1];
8653
+ var _d = useState(""), error = _d[0], setError = _d[1];
8654
+ var _e = useFormsContext(), _f = _e.state, assetCodes = _f.assetCodes, FormId = _f.FormId, FormName = _f.FormName, _g = _f.userFormAssetData, AssetId = _g.AssetId, AssetName = _g.AssetName, UserId = _g.UserId, IsDefault = _g.IsDefault, _h = _e.actions, setAssetCodes = _h.setAssetCodes, setAssetId = _h.setAssetId, setAssetName = _h.setAssetName, setUserId = _h.setUserId, setIsDefault = _h.setIsDefault;
8655
+ var allAssets = useAssetContext().state.allAssets;
8656
+ var _j = useForm({ defaultValues: INITIAL_VALUES_MODAL, mode: "onChange" }), control = _j.control, handleSubmit = _j.handleSubmit, setValue = _j.setValue, watch = _j.watch, isValid = _j.formState.isValid, reset = _j.reset;
8657
+ //states
8658
+ var _k = useState(true), fullWidth = _k[0]; _k[1];
8659
+ var _l = useState("sm"), maxWidth = _l[0]; _l[1];
8660
+ var handleCancel = function () { return __awaiter(void 0, void 0, void 0, function () {
8661
+ return __generator(this, function (_a) {
8662
+ reset();
8663
+ setAssetId(1);
8664
+ setAssetName("Plant");
8665
+ onHide(false);
8666
+ return [2 /*return*/];
8667
+ });
8668
+ }); };
8669
+ var buildTreeAssets = function (nodes) {
8670
+ if (nodes === undefined)
8671
+ return;
8672
+ //tree build functions
8673
+ var idMapping = nodes.reduce(function (acc, el, i) {
8674
+ acc[el.id] = i;
8675
+ return acc;
8676
+ }, {});
8677
+ var root;
8678
+ nodes.forEach(function (el) {
8679
+ if (el.parentId === null) {
8680
+ root = el;
8681
+ return;
8682
+ }
8683
+ var parentEl = nodes[idMapping[el.parentId]];
8684
+ if (parentEl) {
8685
+ parentEl.children = __spreadArray(__spreadArray([], ((parentEl === null || parentEl === void 0 ? void 0 : parentEl.children) || []), true), [el], false);
8686
+ }
8687
+ });
8688
+ setAssetCodes(root);
8689
+ };
8690
+ var loadFilterAssets = function () {
8691
+ var mydataSource = [];
8692
+ allAssets.forEach(function (row) {
8693
+ var code = TransformAssetCodeModel(row);
8694
+ mydataSource = __spreadArray(__spreadArray([], mydataSource, true), [code], false);
8695
+ });
8696
+ buildTreeAssets(mydataSource);
8697
+ };
8698
+ var changeSearchAsset = function (value, description) {
8699
+ setValue("AssetId", parseInt(value));
8700
+ setAssetId(parseInt(value));
8701
+ setAssetName(description);
8702
+ };
8703
+ var handleClose = function (event, reason) {
8704
+ if (reason === "clickaway") {
8705
+ return;
8706
+ }
8707
+ setAddSuccess(false);
8708
+ };
8709
+ var userId = watch("UserId");
8710
+ var changeUserId = function () {
8711
+ setUserId(userId);
8712
+ };
8713
+ var isDefault = watch("IsDefault");
8714
+ var changeIsDefault = function () {
8715
+ setIsDefault(isDefault);
8716
+ };
8717
+ var onSubmit = function () { return __awaiter(void 0, void 0, void 0, function () {
8718
+ var res;
8719
+ return __generator(this, function (_a) {
8720
+ switch (_a.label) {
8721
+ case 0:
8722
+ setIsSubmitLoading(true);
8723
+ return [4 /*yield*/, upsertUserFormAsset(FormId, AssetId, UserId, IsDefault)];
8724
+ case 1:
8725
+ res = _a.sent();
8726
+ if (res.ok) {
8727
+ setIsSubmitLoading(false);
8728
+ setAddSuccess(true);
8729
+ reset();
8730
+ onHide(true);
8731
+ }
8732
+ else {
8733
+ setIsSubmitLoading(false);
8734
+ setError(res.message);
8735
+ }
8736
+ return [2 /*return*/];
8737
+ }
8738
+ });
8739
+ }); };
8740
+ useEffect(function () {
8741
+ if (show) {
8742
+ reset();
8743
+ setAssetId(1),
8744
+ setAssetName('Plant'),
8745
+ setValue("UserId", UserId);
8746
+ setValue("IsDefault", IsDefault);
8747
+ setIsSubmitLoading(false);
8748
+ loadFilterAssets();
8749
+ }
8750
+ }, [show]);
8751
+ useEffect(function () {
8752
+ changeUserId();
8753
+ }, [userId]);
8754
+ useEffect(function () {
8755
+ changeIsDefault();
8756
+ }, [isDefault]);
8757
+ return (React__default.createElement(React__default.Fragment, null,
8758
+ React__default.createElement(Dialog$1, { fullWidth: fullWidth, maxWidth: maxWidth, open: show, onClose: function () { return handleCancel(); } },
8759
+ React__default.createElement("form", { onSubmit: handleSubmit(onSubmit) },
8760
+ React__default.createElement(Grid$1, { container: true, style: { padding: "15px 0 20px" } },
8761
+ React__default.createElement(DialogTitle$2, { style: {
8762
+ padding: "5px 40px 10px 24px",
8763
+ marginRight: 20,
8764
+ width: "100%"
8765
+ } },
8766
+ React__default.createElement(Grid$1, { item: true, md: 12, xs: 12 },
8767
+ React__default.createElement("h1", { style: { fontSize: "1em" } },
8768
+ "FORM: ",
8769
+ FormName))),
8770
+ React__default.createElement(Grid$1, { container: true, item: true },
8771
+ React__default.createElement(DialogContent$2, { dividers: true },
8772
+ React__default.createElement(Grid$1, { container: true },
8773
+ React__default.createElement(Grid$1, { item: true, md: 12, xs: 12, style: { paddingLeft: 0 }, className: classes.inputEditable },
8774
+ React__default.createElement(Controller, { name: "AssetId", control: control, render: function (_a) { return (React__default.createElement(TreePickerControl, { className: classes.assetPicker, inputTitle: "Asset", title: "Choose Asset", dataSource: assetCodes, value: AssetId, description: AssetName, onSelect: changeSearchAsset, selectBranch: true, selectActive: false, selectInternal: false })); } }))),
8775
+ React__default.createElement(Grid$1, { container: true },
8776
+ React__default.createElement(Grid$1, { item: true, md: 6, xs: 12, style: { paddingLeft: 0 } },
8777
+ React__default.createElement(Controller, { name: "UserId", control: control, rules: { required: 'User is required' }, render: function (_a) {
8778
+ var _b = _a.field, onChange = _b.onChange, value = _b.value;
8779
+ return (React__default.createElement(UsersPicker, { value: value, onChange: onChange }));
8780
+ } })),
8781
+ React__default.createElement(Grid$1, { item: true, xs: 12, md: 6, style: { marginTop: 8, paddingLeft: "20px" } },
8782
+ React__default.createElement(Controller, { name: "IsDefault", control: control, render: function (_a) {
8783
+ var field = _a.field;
8784
+ return (React__default.createElement(FormControlLabel, { className: classes.checkbox, control: React__default.createElement(Checkbox, { checked: field.value, onChange: field.onChange, name: "IsDefault", color: "primary" }), label: "Default for User" }));
8785
+ } })))),
8786
+ React__default.createElement(Grid$1, { item: true, md: 12, xs: 12, justifyContent: "flex-end", style: { marginTop: "15px" } },
8787
+ React__default.createElement(DialogActions$2, { style: { padding: "0px 24px" } },
8788
+ React__default.createElement(Grid$1, { container: true, justifyContent: "flex-end", spacing: 2, style: { margin: 0 } },
8789
+ React__default.createElement(Grid$1, { item: true, md: 3, xs: 4 },
8790
+ React__default.createElement(Button$1, { fullWidth: true, variant: "contained", color: "default", onClick: handleCancel }, "Cancel")),
8791
+ React__default.createElement(Grid$1, { item: true, md: 3, xs: 4, style: { paddingRight: 0 } },
8792
+ React__default.createElement(Button$1, { fullWidth: true, startIcon: isSubmitLoading && React__default.createElement(CircularProgress$1, { size: "1rem" }), disabled: !isValid || isSubmitLoading, variant: "contained", color: "primary", type: "submit" }, "Save"))))))))),
8793
+ React__default.createElement(Snackbar$1, { open: addSuccess, autoHideDuration: 2500, onClose: handleClose },
8794
+ React__default.createElement(Alert$3, { severity: "info", onClose: handleClose }, "Success")),
8795
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
8796
+ };
8797
+
8798
+ var useStyles$4 = makeStyles$1(function (theme) { return ({
8799
+ root: {
8800
+ "& .input-group-text": {
8801
+ display: "none"
8802
+ },
8803
+ "& .MuiDialogContent-dividers": {
8804
+ padding: 0
8805
+ }
8806
+ },
8807
+ modalTitle: {
8808
+ backgroundColor: "#ced2cc",
8809
+ color: "#495057",
8810
+ textAlign: "center"
8811
+ },
8812
+ modalTitleCloseWO: {
8813
+ backgroundColor: "#28a745",
8814
+ color: "white",
8815
+ textAlign: "center"
8816
+ },
8817
+ modalWarning: {
8818
+ color: "white",
8819
+ backgroundColor: "#dc3545",
8820
+ textAlign: "center"
8821
+ },
8822
+ messageTitle: {
8823
+ fontSize: 15,
8824
+ fontWeight: "bold",
8825
+ color: "#0000008A"
8826
+ },
8827
+ formControl: {
8828
+ margin: theme.spacing(2),
8829
+ minWidth: 120
8830
+ },
8831
+ errorLabel: {
8832
+ fontSize: 12,
8833
+ color: "#F44336"
8834
+ },
8835
+ infoLabel: {
8836
+ fontSize: 12,
8837
+ color: "#757575"
8838
+ }
8839
+ }); });
8840
+ var DeleteFormAssetAndUserModal = function (_a) {
8841
+ var show = _a.show, onHide = _a.onHide;
8842
+ var classes = useStyles$4();
8843
+ var _b = useState(true), fullWidth = _b[0]; _b[1];
8844
+ var _c = useState("sm"), maxWidth = _c[0]; _c[1];
8845
+ var _d = useState(false), isSubmitLoading = _d[0], setIsSubmitLoading = _d[1];
8846
+ var _e = useState(""), error = _e[0], setError = _e[1];
8847
+ var _f = useState(false), formAssetAndUserRemovedSuccess = _f[0], setFormAssetAndUserRemovedSuccess = _f[1];
8848
+ var _g = useFormsContext().state.userFormAssetData, FormAssetId = _g.FormAssetId, UserId = _g.UserId;
8849
+ var handleCancel = function () {
8850
+ setIsSubmitLoading(false);
8851
+ onHide(false);
8852
+ };
8853
+ var handleClose = function (event, reason) {
8854
+ if (reason === "clickaway") {
8855
+ return;
8856
+ }
8857
+ setFormAssetAndUserRemovedSuccess(false);
8858
+ };
8859
+ var handleRemoveFormAssetAndUser = function () { return __awaiter(void 0, void 0, void 0, function () {
8860
+ var res;
8861
+ return __generator(this, function (_a) {
8862
+ switch (_a.label) {
8863
+ case 0:
8864
+ setIsSubmitLoading(true);
8865
+ return [4 /*yield*/, deleteUserFormAsset(FormAssetId, UserId)];
8866
+ case 1:
8867
+ res = _a.sent();
8868
+ if (res.ok) {
8869
+ setFormAssetAndUserRemovedSuccess(true);
8870
+ setIsSubmitLoading(false);
8871
+ onHide(true);
8872
+ }
8873
+ else {
8874
+ setError(res.message);
8875
+ setIsSubmitLoading(false);
8876
+ }
8877
+ return [2 /*return*/];
8878
+ }
8879
+ });
8880
+ }); };
8881
+ return (React__default.createElement(React__default.Fragment, null,
8882
+ React__default.createElement(Dialog$1, { fullWidth: fullWidth, maxWidth: maxWidth, open: show, onClose: function () { return handleCancel(); }, disableEnforceFocus: true, className: classes.root },
8883
+ React__default.createElement(DialogTitle$2, { id: "responsive-dialog-title" }, "WARNING"),
8884
+ React__default.createElement(DialogContent$2, null,
8885
+ React__default.createElement(DialogContentText, { style: { padding: 0, margin: 0 } }, "Be careful, once deleted you will not be able to recover this, are you sure you want to delete?")),
8886
+ React__default.createElement(DialogActions$2, { style: { padding: "16px 24px" } },
8887
+ React__default.createElement(Button$1, { onClick: function () { return onHide(false); }, autoFocus: true, color: "default" }, "CANCEL"),
8888
+ React__default.createElement(Button$1, { autoFocus: true, color: "secondary", startIcon: isSubmitLoading && React__default.createElement(CircularProgress$1, { size: "1rem" }), onClick: handleRemoveFormAssetAndUser }, "Delete"))),
8889
+ React__default.createElement(Snackbar$1, { open: formAssetAndUserRemovedSuccess, autoHideDuration: 2500, onClose: handleClose },
8890
+ React__default.createElement(Alert$3, { severity: "info", onClose: handleClose }, "Success")),
8891
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
8892
+ };
8893
+
8894
+ var useStyles$3 = makeStyles(function (theme) {
8895
+ var _a, _b, _c, _d, _e;
8896
+ return ({
8897
+ root: {
8898
+ "& h3": {
8899
+ display: "inline-block",
8900
+ marginTop: 0,
8901
+ paddingBotton: 0,
8902
+ paddingLeft: 20,
8903
+ border: "none",
8904
+ userSelect: "none"
8905
+ },
8906
+ "& .content-wrapper": {
8907
+ border: "none"
8908
+ },
8909
+ "& .ag-icon-menu": {
8910
+ display: "none"
8911
+ },
8912
+ "& .ag-root-wrapper": {
8913
+ borderRadius: 3
8914
+ },
8915
+ "& .ag-header-cell": {
8916
+ padding: "0px !important",
8917
+ textAlign: "center !important",
8918
+ fontSize: 10
8919
+ },
8920
+ "& .ag-header-cell-label": {
8921
+ justifyContent: "center"
8922
+ },
8923
+ "& .ag-cell": {
8924
+ padding: "0px !important",
8925
+ textAlign: "center !important",
8926
+ fontSize: 12,
8927
+ lineBreak: "auto",
8928
+ display: "flex",
8929
+ justifyContent: "center",
8930
+ alignItems: "center",
8931
+ border: "0 !important",
8932
+ wordBreak: "break-word"
8933
+ },
8934
+ "& .ag-comments": {
8935
+ display: "flex",
8936
+ justifyContent: "flex-start",
8937
+ alignItems: "center"
8938
+ },
8939
+ "& .ag-selection-checkbox": {
8940
+ marginLeft: "10px !important"
8941
+ }
8942
+ },
8943
+ modalTitle: {
8944
+ backgroundColor: "#ced2cc",
8945
+ color: "#495057",
8946
+ textAlign: "center"
8947
+ },
8948
+ modalTitleCloseWO: {
8949
+ backgroundColor: "#28a745",
8950
+ color: "white",
8951
+ textAlign: "center"
8952
+ },
8953
+ modalWarning: {
8954
+ color: "white",
8955
+ backgroundColor: "#dc3545",
8956
+ textAlign: "center"
8957
+ },
8958
+ messageTitle: {
8959
+ fontSize: 15,
8960
+ fontWeight: "bold",
8961
+ color: "#0000008A"
8962
+ },
8963
+ responsive: (_a = {},
8964
+ _a[theme.breakpoints.up("md")] = {
8965
+ padding: "0 10px 0 0 !important",
8966
+ marginTop: "0 !important"
8967
+ },
8968
+ _a),
8969
+ responsiveTwo: (_b = {},
8970
+ _b[theme.breakpoints.up("md")] = {
8971
+ padding: "0 0 0 10px !important",
8972
+ marginTop: "0 !important"
8973
+ },
8974
+ _b),
8975
+ responsiveThree: (_c = {},
8976
+ _c[theme.breakpoints.up("md")] = {
8977
+ padding: "0 !important"
8978
+ },
8979
+ _c),
8980
+ responsiveFour: (_d = {},
8981
+ _d[theme.breakpoints.up("md")] = {
8982
+ padding: "0 10px 0 0 !important"
8983
+ },
8984
+ _d),
8985
+ responsiveFive: (_e = {},
8986
+ _e[theme.breakpoints.up("md")] = {
8987
+ padding: "0 0 0 10px !important"
8988
+ },
8989
+ _e)
8990
+ });
8991
+ });
8992
+ var FormAssetandUsersTable = function (_a) {
8993
+ var show = _a.show, onHide = _a.onHide;
8994
+ var _b = useState(null), gridApi = _b[0], setGridApi = _b[1];
8995
+ var classes = useStyles$3();
8996
+ var gridStyle = useMemo(function () { return ({ height: "100%", width: "100%" }); }, []);
8997
+ var _c = useState(true), fullWidth = _c[0]; _c[1];
8998
+ var _d = useState("md"), maxWidth = _d[0]; _d[1];
8999
+ var _e = useState([]), columnDefs = _e[0], setColumnDefs = _e[1];
9000
+ var _f = useState(false), isLoading = _f[0], setIsLoading = _f[1];
9001
+ var _g = useState(""), error = _g[0], setError = _g[1];
9002
+ var searchFormAssetsAndUsers = useSearchFormAssetsAndUsers({ setIsLoading: setIsLoading, setError: setError });
9003
+ var _h = useState(false), openAddFormAssetAndUserModal = _h[0], setOpenAddFormAssetAndUserModal = _h[1];
9004
+ var _j = useState(false), openDeleteFormAssetAndUserModal = _j[0], setOpenDeleteFormAssetAndUserModal = _j[1];
9005
+ var _k = useState(false), shouldUpdateWhenExit = _k[0], setShouldUpdateWhenExit = _k[1];
9006
+ var _l = useFormsContext(), _m = _l.state, FormName = _m.FormName; _m.userFormAssetData; var formAssetsAndUsersList = _m.formAssetsAndUsersList, setUserFormAssetData = _l.actions.setUserFormAssetData;
9007
+ var loadingOverlayComponent = useMemo(function () {
9008
+ return LazyLoading;
9009
+ }, []);
9010
+ var gridOptions = {
9011
+ overlayNoRowsTemplate: "ㅤ"
9012
+ };
9013
+ var handleCancel = function () {
9014
+ onHide(shouldUpdateWhenExit);
9015
+ };
9016
+ var getContextMenuItems = useCallback(function (params) {
9017
+ var _a;
9018
+ var data = (_a = params.node) === null || _a === void 0 ? void 0 : _a.data;
9019
+ var result = [];
9020
+ if (data) {
9021
+ result.push({
9022
+ name: "New Form/Asset/User",
9023
+ action: function () {
9024
+ setUserFormAssetData(data);
9025
+ setOpenAddFormAssetAndUserModal(true);
9026
+ }
9027
+ });
9028
+ }
9029
+ if (data) {
9030
+ {
9031
+ result.push("separator", {
9032
+ name: "Delete Form/Asset/User",
9033
+ action: function () {
9034
+ setUserFormAssetData(data);
9035
+ setOpenDeleteFormAssetAndUserModal(true);
9036
+ }
9037
+ });
9038
+ }
9039
+ }
9040
+ var addNewForm = [];
9041
+ if (!data) {
9042
+ addNewForm.push({
9043
+ name: "New Form/Asset/User",
9044
+ action: function () {
9045
+ }
9046
+ });
9047
+ }
9048
+ return data ? result : addNewForm;
9049
+ }, [formAssetsAndUsersList]);
9050
+ useEffect(function () {
9051
+ if (show) {
9052
+ setShouldUpdateWhenExit(false);
9053
+ searchFormAssetsAndUsers();
9054
+ setColumnDefs([]);
9055
+ var newColumns = [];
9056
+ newColumns.push({
9057
+ field: "AssetId",
9058
+ headerName: "Asset",
9059
+ sortable: false,
9060
+ flex: 7,
9061
+ minWidth: 130,
9062
+ cellRenderer: AssetNameColumn
9063
+ }),
9064
+ newColumns.push({
9065
+ field: "UserName",
9066
+ headerName: "User",
9067
+ sortable: false,
9068
+ flex: 4,
9069
+ minWidth: 130
9070
+ }),
9071
+ newColumns.push({
9072
+ field: "isDefault",
9073
+ headerName: "Default",
9074
+ sortable: false,
9075
+ flex: 1,
9076
+ minWidth: 80,
9077
+ valueFormatter: function (params) {
9078
+ return params.value ? 'Yes' : 'No';
9079
+ }
9080
+ });
9081
+ setColumnDefs(newColumns);
9082
+ }
9083
+ }, [show]);
9084
+ useEffect(function () {
9085
+ if (isLoading) {
9086
+ gridApi === null || gridApi === void 0 ? void 0 : gridApi.showLoadingOverlay();
9087
+ }
9088
+ else
9089
+ gridApi === null || gridApi === void 0 ? void 0 : gridApi.hideOverlay();
9090
+ }, [isLoading]);
9091
+ return (React__default.createElement(React__default.Fragment, null,
9092
+ React__default.createElement(Dialog$1, { fullWidth: fullWidth, maxWidth: maxWidth, open: show, onClose: handleCancel, style: { margin: "20px 25%" }, className: classes.root },
9093
+ React__default.createElement(Grid, { container: true, style: { padding: "15px 0 0" } },
9094
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12 },
9095
+ React__default.createElement(DialogTitle$2, { id: "max-width-dialog-title", style: { padding: "5px 24px 10px" } },
9096
+ "FORM NAME: ",
9097
+ FormName)),
9098
+ React__default.createElement(Grid, { container: true, item: true },
9099
+ React__default.createElement(DialogContent$2, { dividers: true, style: { height: "65vh", paddingTop: "20px" } }, isLoading ? (React__default.createElement(Grid, { container: true, style: {
9100
+ height: "59vh",
9101
+ width: "100%",
9102
+ justifyContent: "center",
9103
+ alignItems: "center",
9104
+ position: "relative"
9105
+ } },
9106
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: {
9107
+ position: "absolute",
9108
+ top: "50%",
9109
+ left: "50%",
9110
+ transform: "translate(-50%, -50%)"
9111
+ } },
9112
+ React__default.createElement(LazyLoading, null)))) : (React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: {
9113
+ height: "59vh",
9114
+ border: "4px solid #ccc",
9115
+ borderRadius: 10,
9116
+ margin: "0",
9117
+ padding: "0"
9118
+ } },
9119
+ React__default.createElement("div", { style: gridStyle, className: "ag-theme-alpine" },
9120
+ React__default.createElement(AgGridReact, { onGridReady: function (params) { return setGridApi(params.api); }, getContextMenuItems: getContextMenuItems, loadingOverlayComponent: loadingOverlayComponent, rowData: formAssetsAndUsersList, columnDefs: columnDefs, gridOptions: gridOptions, rowHeight: 45, headerHeight: 32, rowSelection: "single", animateRows: true, pagination: true })))))),
9121
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { padding: "20px 0" } },
9122
+ React__default.createElement(DialogActions$2, { style: { padding: "0px 24px" } },
9123
+ React__default.createElement(Grid, { item: true, md: 3, xs: 6 },
9124
+ React__default.createElement(Button, { fullWidth: true, variant: "contained", color: "default", onClick: handleCancel }, "CLOSE")),
9125
+ React__default.createElement(Grid, { item: true, md: 3, xs: 6 },
9126
+ React__default.createElement(Button, { fullWidth: true, variant: "contained", color: "primary", onClick: function () { return setOpenAddFormAssetAndUserModal(true); } }, "ADD NEW")))))),
9127
+ React__default.createElement(AddFormAssetAndUserModal, { show: openAddFormAssetAndUserModal, onHide: function (shouldUpdate) {
9128
+ if (shouldUpdate) {
9129
+ searchFormAssetsAndUsers();
9130
+ setShouldUpdateWhenExit(true);
9131
+ }
9132
+ setOpenAddFormAssetAndUserModal(false);
9133
+ } }),
9134
+ React__default.createElement(DeleteFormAssetAndUserModal, { show: openDeleteFormAssetAndUserModal, onHide: function (shouldUpdate) {
9135
+ if (shouldUpdate) {
9136
+ searchFormAssetsAndUsers();
9137
+ setShouldUpdateWhenExit(true);
9138
+ }
9139
+ setOpenDeleteFormAssetAndUserModal(false);
9140
+ } }),
9141
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
9142
+ };
9143
+
9144
+ var useStyles$2 = makeStyles(function (theme) {
9145
+ return createStyles({
9146
+ root: {
9147
+ "& .ag-icon-menu": {
9148
+ display: "none"
9149
+ },
9150
+ "& .ag-checkbox-input-wrapper": {
9151
+ margin: "0 10px"
9152
+ },
9153
+ "& .ag-cell": {
9154
+ alignItems: "center",
9155
+ padding: "0 !important",
9156
+ border: "unset !important"
9157
+ },
9158
+ "& .ag-header-cell": {
9159
+ padding: "0px !important",
9160
+ textAlign: "center !important",
9161
+ fontSize: 10
9162
+ },
9163
+ "& .ag-root-wrapper": {
9164
+ minHeight: "100% !important",
9165
+ borderRadius: 3,
9166
+ paddingBottom: 45
9167
+ },
9168
+ "& .ag-cell-wrapper": {
9169
+ width: "95%",
9170
+ textAlign: "center"
9171
+ },
9172
+ "& .ag-body-viewport": {
9173
+ borderBottom: "2px solid #DDE2EB"
9174
+ },
9175
+ "& .ag-menu-option": {
9176
+ cursor: "pointer"
9177
+ }
9178
+ }
9179
+ });
9180
+ });
9181
+ var ButtonToShowFormsAssetAndUsers = function (_a) {
9182
+ var _b, _c, _d, _e, _f;
9183
+ var params = _a.params, setOpenFormAssetAndUsersTable = _a.setOpenFormAssetAndUsersTable;
9184
+ useStyles$2();
9185
+ var _g = useFormsContext().actions, setFormId = _g.setFormId, setFormName = _g.setFormName;
9186
+ var handleOpenAssetAndUsersTable = function () {
9187
+ var _a, _b;
9188
+ setOpenFormAssetAndUsersTable(true);
9189
+ setFormId((_a = params.data) === null || _a === void 0 ? void 0 : _a.FormId);
9190
+ setFormName((_b = params.data) === null || _b === void 0 ? void 0 : _b.FormName);
9191
+ };
9192
+ if (params.data) {
9193
+ return (React__default.createElement("div", { style: {
9194
+ display: "flex",
9195
+ justifyContent: "center",
9196
+ alignItems: "center",
9197
+ height: "100%",
9198
+ padding: 5
9199
+ } },
9200
+ React__default.createElement(Button$1, { style: { height: "100%", maxHeight: "27px" }, fullWidth: true, variant: ((_b = params.data) === null || _b === void 0 ? void 0 : _b.AssetCount) !== 0 ? "contained" : "outlined", color: "primary", onClick: function () { return handleOpenAssetAndUsersTable(); } }, ((_c = params.data) === null || _c === void 0 ? void 0 : _c.AssetCount) !== 0 ?
9201
+ (((_d = params.data) === null || _d === void 0 ? void 0 : _d.AssetCount) <= 1 ? "".concat((_e = params.data) === null || _e === void 0 ? void 0 : _e.AssetCount, " ASSET") : "".concat((_f = params.data) === null || _f === void 0 ? void 0 : _f.AssetCount, " ASSETS"))
9202
+ : "add asset")));
9203
+ }
9204
+ else
9205
+ return React__default.createElement(React__default.Fragment, null);
9206
+ };
9207
+
9208
+ makeStyles(function (theme) {
9209
+ return createStyles({
9210
+ root: {
9211
+ "& .ag-icon-menu": {
9212
+ display: "none"
9213
+ },
9214
+ "& .ag-checkbox-input-wrapper": {
9215
+ margin: "0 10px"
9216
+ },
9217
+ "& .ag-cell": {
9218
+ alignItems: "center",
9219
+ padding: "0 !important",
9220
+ border: "unset !important"
9221
+ },
9222
+ "& .ag-header-cell": {
9223
+ padding: "0px !important",
9224
+ textAlign: "center !important",
9225
+ fontSize: 10
9226
+ },
9227
+ "& .ag-root-wrapper": {
9228
+ minHeight: "100% !important",
9229
+ borderRadius: 3,
9230
+ paddingBottom: 45
9231
+ },
9232
+ "& .ag-cell-wrapper": {
9233
+ width: "95%",
9234
+ textAlign: "center"
9235
+ },
9236
+ "& .ag-body-viewport": {
9237
+ borderBottom: "2px solid #DDE2EB"
9238
+ },
9239
+ "& .ag-menu-option": {
9240
+ cursor: "pointer"
9241
+ }
9242
+ }
9243
+ });
9244
+ });
9245
+ var ButtonToShowQuestions = function (_a) {
9246
+ var _b;
9247
+ var params = _a.params, setOpenFormQuestions = _a.setOpenFormQuestions;
9248
+ var _c = useFormsContext().actions, setFormId = _c.setFormId, setFormName = _c.setFormName;
9249
+ var handleOpenAssetAndUsersTable = function () {
9250
+ var _a, _b;
9251
+ setOpenFormQuestions(true);
9252
+ setFormId((_a = params.data) === null || _a === void 0 ? void 0 : _a.FormId);
9253
+ setFormName((_b = params.data) === null || _b === void 0 ? void 0 : _b.FormName);
9254
+ };
9255
+ if (params.data) {
9256
+ return (React__default.createElement("div", { style: {
9257
+ display: "flex",
9258
+ justifyContent: "center",
9259
+ alignItems: "center",
9260
+ height: "100%",
9261
+ padding: 5
9262
+ } },
9263
+ React__default.createElement(Button$1, { style: { height: "100%", maxHeight: "27px" }, fullWidth: true, variant: ((_b = params.data) === null || _b === void 0 ? void 0 : _b.AssetCount) !== 0 ? "contained" : "outlined", color: "primary", onClick: function () { return handleOpenAssetAndUsersTable(); }, disabled: true }, "QUESTIONS")));
9264
+ }
9265
+ else
9266
+ return React__default.createElement(React__default.Fragment, null);
9267
+ };
9268
+
9269
+ var useStyles$1 = makeStyles(function (theme) {
9270
+ var _a, _b, _c;
9271
+ return ({
9272
+ root: {
9273
+ "& .ag-icon-menu": {
9274
+ display: "none"
9275
+ },
9276
+ "& .ag-header-cell-label": {
9277
+ display: "flex",
9278
+ alignItems: "center",
9279
+ justifyContent: "center"
9280
+ },
9281
+ "& .ag-header-cell-text": {
9282
+ textAlign: "center !important"
9283
+ },
9284
+ "& .ag-checkbox-input-wrapper": {
9285
+ margin: "0 10px"
9286
+ },
9287
+ "& .ag-cell": {
9288
+ alignItems: "center",
9289
+ padding: "0 !important",
9290
+ border: "unset !important"
9291
+ },
9292
+ "& .ag-header-cell": {
9293
+ padding: "0px !important",
9294
+ textAlign: "center !important",
9295
+ fontSize: 10,
9296
+ display: "flex",
9297
+ alignItems: "center",
9298
+ justifyContent: "center"
9299
+ },
9300
+ "& .ag-cell-wrapper": {
9301
+ textAlign: "center"
9302
+ },
9303
+ "& .ag-menu-option": {
9304
+ cursor: "pointer"
9305
+ },
9306
+ "& .MuiDataGrid-row": {
9307
+ cursor: "pointer"
9308
+ },
9309
+ "& .MuiDataGrid-columnHeaderTitle, & .MuiTablePagination-caption": {
9310
+ fontWeight: "bold",
9311
+ fontSize: "12px"
9312
+ },
9313
+ "& .MuiDataGrid-columnHeaderTitleContainer": {
9314
+ padding: "0"
9315
+ },
9316
+ "& .MuiDataGrid-cell--textLeft": {
9317
+ fontSize: "12px"
9318
+ }
9319
+ },
9320
+ relative: {
9321
+ position: "relative"
9322
+ },
9323
+ textfield: {
9324
+ margin: theme.spacing(2)
9325
+ },
9326
+ btnModal: {
9327
+ display: "flex",
9328
+ justifyContent: "flex-end"
9329
+ },
9330
+ btnSearch: (_a = {},
9331
+ _a[theme.breakpoints.up("md")] = {
9332
+ marginLeft: "10px !important"
9333
+ },
9334
+ _a),
9335
+ buttonsFilter: (_b = {},
9336
+ _b[theme.breakpoints.up("md")] = {
9337
+ padding: "0 8px 8px 8px"
9338
+ },
9339
+ _b),
9340
+ flexEnd: (_c = {},
9341
+ _c[theme.breakpoints.up("md")] = {
9342
+ justifyContent: "flex-end",
9343
+ marginTop: "-12px"
9344
+ },
9345
+ _c),
9346
+ dataTable: {
9347
+ padding: theme.spacing(1, 2)
9348
+ }
9349
+ });
9350
+ });
9351
+ var FormsTable = function () {
9352
+ var gridStyle = useMemo(function () { return ({ height: "100%", width: "100%" }); }, []);
9353
+ var classes = useStyles$1();
9354
+ var _a = useState(null), gridApi = _a[0], setGridApi = _a[1];
9355
+ var _b = useState(false), isLoading = _b[0], setIsLoading = _b[1];
9356
+ var _c = useState(""), error = _c[0], setError = _c[1];
9357
+ var _d = useState(), columnDefs = _d[0], setColumnDefs = _d[1];
9358
+ useNavigate();
9359
+ var searchForms = useSearchForms({ setIsLoading: setIsLoading, setError: setError });
9360
+ var _e = useFormsContext(), formsList = _e.state.formsList, _f = _e.actions, setFormId = _f.setFormId, setFormName = _f.setFormName;
9361
+ var _g = useState(false), openFormAssetAndUsersTable = _g[0], setOpenFormAssetAndUsersTable = _g[1];
9362
+ var _h = useState(false); _h[0]; var setOpenFormQuestions = _h[1];
9363
+ // const onKeyDown = (e: any) => {
9364
+ // if (e.keyCode === 13) {
9365
+ // searchForms();
9366
+ // }
9367
+ // };
9368
+ var loadingOverlayComponent = useMemo(function () {
9369
+ return LazyLoading;
9370
+ }, []);
9371
+ var defaultColDef = useMemo(function () {
9372
+ return {
9373
+ sortable: true,
9374
+ wrapText: true,
9375
+ autoHeight: true,
9376
+ wrapHeaderText: true
9377
+ };
9378
+ }, []);
9379
+ var renderColumns = function () {
9380
+ setColumnDefs([]);
9381
+ var newColumns = [];
9382
+ newColumns.push({
9383
+ field: "FormName",
9384
+ headerName: "Form Name",
9385
+ sortable: true,
9386
+ flex: 3,
9387
+ minWidth: 130
9388
+ }),
9389
+ newColumns.push({
9390
+ field: "IncludesComment",
9391
+ headerName: "Includes Comment",
9392
+ sortable: false,
9393
+ flex: 1,
9394
+ minWidth: 130,
9395
+ valueFormatter: function (params) {
9396
+ return params.value ? 'Yes' : 'No';
9397
+ }
9398
+ }),
9399
+ newColumns.push({
9400
+ field: "LayoutCode",
9401
+ headerName: "Layout",
9402
+ sortable: false,
9403
+ flex: 1,
9404
+ minWidth: 130
9405
+ }),
9406
+ newColumns.push({
9407
+ field: "IsEnabled",
9408
+ headerName: "Is Enabled",
9409
+ sortable: false,
9410
+ flex: 1,
9411
+ minWidth: 130,
9412
+ valueFormatter: function (params) {
9413
+ return params.value ? 'Yes' : 'No';
9414
+ }
9415
+ }),
9416
+ newColumns.push({
9417
+ field: "Questions",
9418
+ headerName: "Questions",
9419
+ sortable: false,
9420
+ flex: 3,
9421
+ minWidth: 130,
9422
+ cellRenderer: function (params) { return ButtonToShowQuestions({ params: params, setOpenFormQuestions: setOpenFormQuestions }); }
9423
+ }),
9424
+ newColumns.push({
9425
+ field: "AssetAndUsers",
9426
+ headerName: "Assets and Users",
9427
+ sortable: false,
9428
+ flex: 3,
9429
+ minWidth: 130,
9430
+ cellRenderer: function (params) { return ButtonToShowFormsAssetAndUsers({ params: params, setOpenFormAssetAndUsersTable: setOpenFormAssetAndUsersTable }); }
9431
+ }),
9432
+ setColumnDefs(newColumns);
9433
+ };
9434
+ var getContextMenuItems = useCallback(function (params) {
9435
+ var _a;
9436
+ var data = (_a = params.node) === null || _a === void 0 ? void 0 : _a.data;
9437
+ var result = [];
9438
+ if (data) {
9439
+ result.push({
9440
+ name: "View Forms Assets",
9441
+ action: function () {
9442
+ setOpenFormAssetAndUsersTable(true);
9443
+ setFormId(data === null || data === void 0 ? void 0 : data.FormId);
9444
+ setFormName(data === null || data === void 0 ? void 0 : data.FormName);
9445
+ }
9446
+ });
9447
+ }
9448
+ return result;
9449
+ }, [formsList]);
9450
+ // const resetFilter = () => {
9451
+ // navigate(`/configuration/forms`, { replace: true });
9452
+ // };
9453
+ useEffect(function () {
9454
+ renderColumns();
9455
+ }, [formsList]);
9456
+ useEffect(function () {
9457
+ if (isLoading) {
9458
+ gridApi === null || gridApi === void 0 ? void 0 : gridApi.showLoadingOverlay();
9459
+ }
9460
+ else {
9461
+ gridApi === null || gridApi === void 0 ? void 0 : gridApi.hideOverlay();
9462
+ }
9463
+ }, [isLoading, formsList, gridApi]);
9464
+ return (React__default.createElement(Grid, { container: true, justifyContent: "center" },
9465
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { padding: "0 15px" } },
9466
+ React__default.createElement(Typography$1, { variant: "h5", style: { margin: "20px 0 20px", fontWeight: 600 } }, "Forms")),
9467
+ React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center", className: classes.root },
9468
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { padding: "0 15px" }, className: classes.relative },
9469
+ React__default.createElement(FormAssetandUsersTable, { show: openFormAssetAndUsersTable, onHide: function (shouldUpdate) {
9470
+ if (shouldUpdate) {
9471
+ searchForms();
9472
+ }
9473
+ setOpenFormAssetAndUsersTable(false);
9474
+ } }),
9475
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: {
9476
+ height: "61vh",
9477
+ border: "4px solid #ccc",
9478
+ borderRadius: 10,
9479
+ padding: 10,
9480
+ margin: "20px 0 10px"
9481
+ } },
9482
+ React__default.createElement("div", { style: gridStyle, className: "ag-theme-alpine" },
9483
+ React__default.createElement(AgGridReact, { rowData: formsList, columnDefs: columnDefs, defaultColDef: defaultColDef, rowHeight: 38, headerHeight: 42, loadingOverlayComponent: loadingOverlayComponent, animateRows: true, getContextMenuItems: function (e) { return getContextMenuItems(e); }, pagination: true, onRowDoubleClicked: function (event) {
9484
+ var _a, _b;
9485
+ setFormId((_a = event.data) === null || _a === void 0 ? void 0 : _a.FormId);
9486
+ setFormName((_b = event.data) === null || _b === void 0 ? void 0 : _b.FormName);
9487
+ setOpenFormAssetAndUsersTable(true);
9488
+ }, rowSelection: "single", onGridReady: function (params) { return setGridApi(params.api); } }))))),
9489
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(""); } })));
9490
+ };
9491
+
9492
+ var ConfigurationFormsPage = function (prop) {
9493
+ var _a = useState(true); _a[0]; var setIsLoading = _a[1];
9494
+ var _b = useState(""); _b[0]; var setError = _b[1];
9495
+ // const { state: { searchText }, actions: { setSearchText } } = useFormsContext();
9496
+ var _c = useState(""); _c[0]; _c[1];
9497
+ // const setupIsReady = useFilterInQuery([
9498
+ // {
9499
+ // key: 'search',
9500
+ // value: searchText,
9501
+ // setter: setSearchText
9502
+ // }
9503
+ // ])
9504
+ var searchForms = useSearchForms({ setIsLoading: setIsLoading, setError: setError });
9505
+ useEffect(function () {
9506
+ searchForms();
9507
+ }, []);
9508
+ return (React__default.createElement(Grid, { container: true, justifyContent: "center", alignItems: "center" },
9509
+ React__default.createElement(Grid, { item: true, md: 12, xs: 12, style: { margin: 0 } },
9510
+ React__default.createElement(Paper, { elevation: 1, style: {
9511
+ width: "100%",
9512
+ padding: "10px 0 20px",
9513
+ borderRadius: "0.75rem"
9514
+ } },
9515
+ React__default.createElement(FormsTable, null)))));
9516
+ };
9517
+
9518
+ var FormsPage = function () {
9519
+ return (React__default.createElement(FormsProvider, null,
9520
+ React__default.createElement(ConfigurationFormsPage, null)));
9521
+ };
9522
+
9523
+ function Configuration() {
9524
+ var option = useParams().option;
9525
+ var _a = useContext(ConfigurationContext), customConfiguration = _a[0], CustomSidebar = _a[1];
9526
+ var routes = __spreadArray(__spreadArray([
9527
+ {
9528
+ path: "/",
9529
+ sidebar: function () { return React__default.createElement("div", null, "Configuration"); },
9530
+ main: function () { return React__default.createElement(Navigate, { to: "users" }); }
9531
+ },
9532
+ {
9533
+ path: "shifts",
9534
+ sidebar: function () { return React__default.createElement("div", null, "Shifts"); },
9535
+ main: function () { return React__default.createElement(ShiftsCrewsPage, null); }
9536
+ },
9537
+ {
9538
+ path: "asset",
9539
+ sidebar: function () { return React__default.createElement("div", null, "Configuration Asset"); },
9540
+ main: function () { return React__default.createElement(AssetPage, null); }
9541
+ },
9542
+ {
9543
+ path: "users",
9544
+ sidebar: function () { return React__default.createElement("div", null, "Users"); },
9545
+ main: function () { return React__default.createElement(UsersPage, null); }
9546
+ },
9547
+ {
9548
+ path: "profiles",
9549
+ sidebar: function () { return React__default.createElement("div", null, "profiles"); },
9550
+ main: function () { return React__default.createElement(UsersPage$1, null); }
9551
+ }
9552
+ ], customConfiguration, true), [
9553
+ {
9554
+ path: "logs",
9555
+ sidebar: function () { return React__default.createElement("div", null, "Logs"); },
9556
+ main: function () { return React__default.createElement(LogsPage, null); }
9557
+ },
9558
+ {
9559
+ path: "jobs",
9560
+ sidebar: function () { return React__default.createElement("div", null, "Jobs"); },
9561
+ main: function () { return React__default.createElement(JobsPage, null); }
9562
+ },
9563
+ {
9564
+ path: "forms",
9565
+ sidebar: function () { return React__default.createElement("div", null, "Forms"); },
9566
+ main: function () { return React__default.createElement(FormsPage, null); }
9567
+ },
9568
+ ], false);
9569
+ return (React__default.createElement(GenericPanel, { title: "Configuration", description: "" },
9570
+ React__default.createElement("div", { className: "row", style: { display: "flex" } },
9571
+ React__default.createElement("div", { className: "col-md-2 mt-3 pt-0 pr-0 mes-div-submenu", style: { flex: "20%" } },
9572
+ React__default.createElement("h3", { className: "mes-menu-group" }, "Plant"),
9573
+ React__default.createElement(MenuList, { className: "mes-submenu" },
9574
+ React__default.createElement(MenuItem, { selected: option === "shifts", className: "p-0" },
9575
+ React__default.createElement(Link, { to: "/configuration/shifts", className: "nav-link" }, "Shift / Crews")),
9576
+ React__default.createElement(MenuItem, { selected: option === "asset", className: "p-0" },
9577
+ React__default.createElement(Link, { to: "/configuration/asset", className: "nav-link" }, "Assets Tree"))),
9578
+ React__default.createElement("h3", { className: "mes-menu-group" }, "Security"),
9579
+ React__default.createElement(MenuList, { className: "mes-submenu" },
9580
+ React__default.createElement(MenuItem, { selected: option === "users", className: "p-0" },
9581
+ React__default.createElement(Link, { to: "/configuration/users", className: "nav-link" }, "Users")),
9582
+ React__default.createElement(MenuItem, { selected: option === "profiles", className: "p-0" },
9583
+ React__default.createElement(Link, { to: "/configuration/profiles", className: "nav-link" }, "Profiles"))),
9584
+ React__default.createElement(CustomSidebar, { option: option }),
9585
+ React__default.createElement("h3", { className: "mes-menu-group" }, "Maintenance"),
9586
+ React__default.createElement(MenuList, { className: "mes-submenu" },
9587
+ React__default.createElement(MenuItem, { selected: option === "logs", className: "p-0" },
9588
+ React__default.createElement(Link, { to: "/configuration/logs", className: "nav-link" }, "Logs")),
9589
+ React__default.createElement(MenuItem, { selected: option === "jobs", className: "p-0" },
9590
+ React__default.createElement(Link, { to: "/configuration/jobs", className: "nav-link" }, "Jobs"))),
9591
+ React__default.createElement("h3", { className: "mes-menu-group" }, "Forms"),
9592
+ React__default.createElement(MenuList, { className: "mes-submenu" },
9593
+ React__default.createElement(MenuItem, { selected: option === "forms", className: "p-0" },
9594
+ React__default.createElement(Link, { to: "/configuration/forms", className: "nav-link" }, "Form Settings")))),
9595
+ React__default.createElement("div", { className: "col-md-10 m-3", style: { flex: "80%" } },
9596
+ React__default.createElement(Routes, null, routes.map(function (route, index) { return (React__default.createElement(Route, { key: index, path: route.path, element: React__default.createElement(route.main, null) })); }))))));
9597
+ }
9598
+
9599
+ var Home = function () { return (React__default.createElement("div", { style: {
9600
+ backgroundImage: "url(\"/home.jpg\")",
9601
+ backgroundPosition: "center",
9602
+ backgroundSize: "cover",
9603
+ backgroundRepeat: "no-repeat",
9604
+ minHeight: "100%",
9605
+ height: "100vh",
9606
+ width: "100%",
9607
+ position: "absolute"
9608
+ } })); };
9609
+
9610
+ var TrendingsInitialState = {
9611
+ timeScopeStart: moment(new Date()).subtract(1, "days").toDate(),
9612
+ timeScopeEnd: new Date(),
9613
+ scope: "1 day",
9614
+ graphPan: false,
9615
+ graphShouldUpdate: 0,
9616
+ views: [
9617
+ {
9618
+ ViewId: 0,
9619
+ ViewName: '',
9620
+ UserName: null,
9621
+ IsPublic: false,
9622
+ LastModified: null,
9623
+ LastModifiedBy: null
9624
+ }
9625
+ ],
9626
+ viewSelected: null,
9627
+ viewTags: [
9628
+ {
9629
+ ViewId: 0,
9630
+ TagId: 0,
9631
+ TagName: '',
9632
+ Color: '',
9633
+ IsVisible: true,
9634
+ MinScale: 0,
9635
+ MaxScale: 0,
9636
+ IsAutoScale: true,
9637
+ Alias: '',
9638
+ TagType: '',
9639
+ Unit: ''
9640
+ }
9641
+ ]
8318
9642
  };
8319
9643
  var TrendingsReducer = createSlice({
8320
9644
  name: "__",
@@ -8881,7 +10205,7 @@ var upsertViewTag = function (ViewId, TagId, Color, MinScale, MaxScale, IsVisibl
8881
10205
 
8882
10206
  var LoadViewModal = function (_a) {
8883
10207
  var open = _a.open, handleClose = _a.handleClose;
8884
- var _b = useTrendingContext(), _c = _b.state; _c.viewTags; var views = _c.views, viewSelected = _c.viewSelected, _d = _b.actions; _d.setViews; var setViewTags = _d.setViewTags, setViewSelected = _d.setViewSelected;
10208
+ var _b = useTrendingContext(), _c = _b.state, views = _c.views, viewSelected = _c.viewSelected, _d = _b.actions; _d.setViews; var setViewTags = _d.setViewTags, setViewSelected = _d.setViewSelected;
8885
10209
  var _e = useState(false), isLoading = _e[0], setIsLoading = _e[1];
8886
10210
  var _f = useState(''), error = _f[0], setError = _f[1];
8887
10211
  var handleSelect = function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -8901,21 +10225,21 @@ var LoadViewModal = function (_a) {
8901
10225
  setError(viewTagsResp.message);
8902
10226
  }
8903
10227
  setIsLoading(false);
8904
- handleClose();
10228
+ handleClose(true);
8905
10229
  _a.label = 2;
8906
10230
  case 2: return [2 /*return*/];
8907
10231
  }
8908
10232
  });
8909
10233
  }); };
8910
10234
  return (React__default.createElement("div", null,
8911
- React__default.createElement(MesfModal, { open: open, handleClose: handleClose, maxWidth: "xl", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Tags' },
10235
+ React__default.createElement(MesfModal, { open: open, handleClose: function () { return handleClose(false); }, maxWidth: "xl", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Tags' },
8912
10236
  React__default.createElement(MesfModal.Content, null,
8913
10237
  React__default.createElement(Grid$1, { container: true },
8914
10238
  React__default.createElement(Grid$1, { item: true, md: 12 }, views.length ? (React__default.createElement(Autocomplete, { size: 'small', id: "list-of-views", options: views, getOptionLabel: function (option) { return option.ViewName; }, onChange: function (ev, val) { return setViewSelected(val); }, style: { width: "100%" }, renderInput: function (params) { return React__default.createElement(TextField, __assign({}, params, { label: "Views", variant: "outlined" })); } })) :
8915
10239
  (React__default.createElement("div", null, "No tag views detected, please add one"))))),
8916
10240
  React__default.createElement(MesfModal.Actions, null,
8917
10241
  React__default.createElement("div", { style: { paddingTop: "1rem" } },
8918
- React__default.createElement(Button$1, { variant: 'outlined', style: { marginRight: "1rem" }, color: 'secondary', onClick: handleClose }, "Cancel"),
10242
+ React__default.createElement(Button$1, { variant: 'outlined', style: { marginRight: "1rem" }, color: 'secondary', onClick: function () { return handleClose(false); } }, "Cancel"),
8919
10243
  React__default.createElement(ButtonWithLoading, { onClick: handleSelect, variant: 'contained', color: 'primary', isLoading: isLoading, style: { marginRight: "1rem" } }, "Apply")))),
8920
10244
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
8921
10245
  };
@@ -9027,7 +10351,7 @@ var SaveAsViewModal = function (_a) {
9027
10351
  setError("Tag ".concat(index, " failed with reason: ").concat(result.reason));
9028
10352
  }
9029
10353
  else {
9030
- handleClose();
10354
+ handleClose(true);
9031
10355
  }
9032
10356
  });
9033
10357
  return [3 /*break*/, 4];
@@ -9041,7 +10365,7 @@ var SaveAsViewModal = function (_a) {
9041
10365
  });
9042
10366
  }); };
9043
10367
  return (React__default.createElement(React__default.Fragment, null,
9044
- React__default.createElement(MesfModal, { open: open, handleClose: handleClose, maxWidth: "xl", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Tags' },
10368
+ React__default.createElement(MesfModal, { open: open, handleClose: function () { return handleClose(false); }, maxWidth: "xl", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Tags' },
9045
10369
  React__default.createElement(Divider, null),
9046
10370
  React__default.createElement(MesfModal.Content, null,
9047
10371
  React__default.createElement(Grid$1, { container: true, spacing: 5, style: { padding: "1rem" } },
@@ -9055,7 +10379,7 @@ var SaveAsViewModal = function (_a) {
9055
10379
  React__default.createElement(MesfModal.Actions, null,
9056
10380
  React__default.createElement(Grid$1, { container: true, spacing: 1, style: { display: 'flex', alignItems: 'flex-end', justifyContent: 'flex-end' } },
9057
10381
  React__default.createElement(Grid$1, { item: true },
9058
- React__default.createElement(Button$1, { variant: 'outlined', color: 'secondary', onClick: handleClose }, "Cancel")),
10382
+ React__default.createElement(Button$1, { variant: 'outlined', color: 'secondary', onClick: function () { return handleClose(false); } }, "Cancel")),
9059
10383
  React__default.createElement(Grid$1, { item: true },
9060
10384
  React__default.createElement(ButtonWithLoading, { variant: 'contained', color: 'primary', onClick: handleSubmit, isLoading: isLoading }, "Save"))))),
9061
10385
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
@@ -9193,8 +10517,73 @@ var timeDifference = function (start, end) {
9193
10517
  return "".concat(hours, "h ").concat(remainingMinutes, "m ").concat(remainingSeconds, "s");
9194
10518
  };
9195
10519
 
10520
+ var SaveViewModal = function (_a) {
10521
+ var open = _a.open, handleClose = _a.handleClose;
10522
+ var _b = useState(false), isLoading = _b[0], setIsLoading = _b[1];
10523
+ var _c = useState(''), error = _c[0], setError = _c[1];
10524
+ var _d = useTrendingContext().state, viewTags = _d.viewTags, viewSelected = _d.viewSelected;
10525
+ var handleSubmit = function () { return __awaiter(void 0, void 0, void 0, function () {
10526
+ var resp, results;
10527
+ return __generator(this, function (_a) {
10528
+ switch (_a.label) {
10529
+ case 0:
10530
+ setIsLoading(true);
10531
+ if (!(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId)) return [3 /*break*/, 4];
10532
+ return [4 /*yield*/, upsertView(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId, viewSelected.ViewName, viewSelected.IsPublic)];
10533
+ case 1:
10534
+ resp = _a.sent();
10535
+ if (!resp.ok) return [3 /*break*/, 3];
10536
+ return [4 /*yield*/, Promise.allSettled(viewTags.map(function (_a) {
10537
+ var TagId = _a.TagId, Color = _a.Color, MinScale = _a.MinScale, MaxScale = _a.MaxScale, IsAutoScale = _a.IsAutoScale, IsVisible = _a.IsVisible;
10538
+ upsertViewTag(viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewId, TagId, Color, MinScale, MaxScale, IsVisible, IsAutoScale)
10539
+ .then(function (r) {
10540
+ if (!r.ok) {
10541
+ setError(r.message);
10542
+ }
10543
+ });
10544
+ }))];
10545
+ case 2:
10546
+ results = _a.sent();
10547
+ results.forEach(function (result, index) {
10548
+ if (result.status === "rejected") {
10549
+ setError("Tag ".concat(index, " failed with reason: ").concat(result.reason));
10550
+ }
10551
+ else {
10552
+ handleClose(true);
10553
+ }
10554
+ });
10555
+ return [3 /*break*/, 4];
10556
+ case 3:
10557
+ setError(resp.message);
10558
+ _a.label = 4;
10559
+ case 4:
10560
+ setIsLoading(false);
10561
+ return [2 /*return*/];
10562
+ }
10563
+ });
10564
+ }); };
10565
+ return (React__default.createElement(React__default.Fragment, null,
10566
+ React__default.createElement(MesfModal, { open: open, handleClose: function () { return handleClose(false); }, maxWidth: "xl", "aria-labelledby": "modal-modal-title", "aria-describedby": "modal-modal-description", title: 'Tags' },
10567
+ React__default.createElement(Divider, null),
10568
+ React__default.createElement(MesfModal.Content, null,
10569
+ React__default.createElement(Grid$1, { container: true, spacing: 5, style: { padding: "1rem" } },
10570
+ React__default.createElement(Grid$1, { item: true, md: 12, xs: 12, style: { padding: "10px", width: "100%" } },
10571
+ React__default.createElement(Typography, null,
10572
+ "Do you want to save changes on ",
10573
+ React__default.createElement("strong", null, viewSelected === null || viewSelected === void 0 ? void 0 : viewSelected.ViewName),
10574
+ " ?")))),
10575
+ React__default.createElement(Divider, null),
10576
+ React__default.createElement(MesfModal.Actions, null,
10577
+ React__default.createElement(Grid$1, { container: true, spacing: 1, style: { display: 'flex', alignItems: 'flex-end', justifyContent: 'flex-end' } },
10578
+ React__default.createElement(Grid$1, { item: true },
10579
+ React__default.createElement(Button$1, { variant: 'outlined', color: 'secondary', onClick: function () { return handleClose(false); } }, "Cancel")),
10580
+ React__default.createElement(Grid$1, { item: true },
10581
+ React__default.createElement(ButtonWithLoading, { variant: 'contained', color: 'primary', onClick: handleSubmit, isLoading: isLoading }, "Save"))))),
10582
+ React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
10583
+ };
10584
+
9196
10585
  var TableComponent = function (_a) {
9197
- var chartData = _a.chartData, cursorData = _a.cursorData;
10586
+ var chartData = _a.chartData, cursorData = _a.cursorData, getTagsFromAPI = _a.getTagsFromAPI;
9198
10587
  var classes = useTagsTableStyles();
9199
10588
  var _b = useTrendingContext(), _c = _b.state, viewTags = _c.viewTags, viewSelected = _c.viewSelected, _d = _b.actions, setViewTags = _d.setViewTags, setGraphShouldUpdate = _d.setGraphShouldUpdate;
9200
10589
  var _e = useState(''), error = _e[0], setError = _e[1];
@@ -9242,8 +10631,9 @@ var TableComponent = function (_a) {
9242
10631
  };
9243
10632
  var _g = useState(null), selectedRowIndex = _g[0], setSelectedRowIndex = _g[1];
9244
10633
  var _h = useState(false), addTagModalOpen = _h[0], setAddTagModalOpen = _h[1];
9245
- var _j = useState(false), saveAsViewModalOpen = _j[0], setSaveAsViewModalOpen = _j[1];
9246
- var _k = useState(false), loadViewOpen = _k[0], setLoadViewOpen = _k[1];
10634
+ var _j = useState(false), saveViewModalOpen = _j[0], setSaveViewModalOpen = _j[1];
10635
+ var _k = useState(false), saveAsViewModalOpen = _k[0], setSaveAsViewModalOpen = _k[1];
10636
+ var _l = useState(false), loadViewOpen = _l[0], setLoadViewOpen = _l[1];
9247
10637
  var handleClose = function () { return setAddTagModalOpen(false); };
9248
10638
  var ContextMenu = function (_a) {
9249
10639
  var x = _a.x, y = _a.y, options = _a.options;
@@ -9254,12 +10644,13 @@ var TableComponent = function (_a) {
9254
10644
  React__default.createElement("ul", null, options.map(function (option) { return (React__default.createElement("li", { key: option.id, onClick: option.onClick }, option.label)); }))));
9255
10645
  };
9256
10646
  // Position state for the context menu
9257
- var _l = useState({ x: 0, y: 0 }), contextMenuPosition = _l[0], setContextMenuPosition = _l[1];
10647
+ var _m = useState({ x: 0, y: 0 }), contextMenuPosition = _m[0], setContextMenuPosition = _m[1];
9258
10648
  var contextMenuOptions = [
9259
10649
  { id: 'delete', label: 'Remove Tag', onClick: function () { return handleDelete(); } },
9260
10650
  { id: 'add', label: 'Add Tag', onClick: function () { return setAddTagModalOpen(true); } },
9261
10651
  { id: 'saveDefault', label: 'Save Default To Tag', onClick: function () { return handleSaveDefaultToTag(); } },
9262
- { id: 'saveAsView', label: 'Save as View', onClick: function () { return setSaveAsViewModalOpen(true); } },
10652
+ { id: 'saveView', label: 'Save View', onClick: function () { setSaveViewModalOpen(true); } },
10653
+ { id: 'saveViewAs', label: 'Save View as', onClick: function () { return setSaveAsViewModalOpen(true); } },
9263
10654
  { id: 'loadView', label: 'Load View', onClick: function () { return setLoadViewOpen(true); } },
9264
10655
  ];
9265
10656
  var handleTagSelect = function (selectedTag) {
@@ -9484,8 +10875,21 @@ var TableComponent = function (_a) {
9484
10875
  React__default.createElement(Button$1, { onClick: function () { return setLoadViewOpen(true); }, variant: 'outlined', color: 'primary' }, " Load view"))))))),
9485
10876
  selectedRowIndex !== null && (React__default.createElement(ContextMenu, { x: contextMenuPosition.x, y: contextMenuPosition.y, options: contextMenuOptions })),
9486
10877
  React__default.createElement(AddTagModal, { open: addTagModalOpen, handleClose: handleClose, onTagSelect: handleTagSelect }),
9487
- React__default.createElement(SaveAsViewModal, { open: saveAsViewModalOpen, handleClose: function () { return setSaveAsViewModalOpen(false); } }),
9488
- React__default.createElement(LoadViewModal, { open: loadViewOpen, handleClose: function () { return setLoadViewOpen(false); } })),
10878
+ React__default.createElement(SaveViewModal, { open: saveViewModalOpen, handleClose: function (shouldUpdate) {
10879
+ setSaveViewModalOpen(false);
10880
+ if (shouldUpdate)
10881
+ getTagsFromAPI().then(function () { });
10882
+ } }),
10883
+ React__default.createElement(SaveAsViewModal, { open: saveAsViewModalOpen, handleClose: function (shouldUpdate) {
10884
+ setSaveAsViewModalOpen(false);
10885
+ if (shouldUpdate)
10886
+ getTagsFromAPI().then(function () { });
10887
+ } }),
10888
+ React__default.createElement(LoadViewModal, { open: loadViewOpen, handleClose: function (shouldUpdate) {
10889
+ setLoadViewOpen(false);
10890
+ if (shouldUpdate)
10891
+ getTagsFromAPI().then(function () { });
10892
+ } })),
9489
10893
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); } })));
9490
10894
  };
9491
10895
 
@@ -10005,7 +11409,7 @@ var TrendingChart = function (_a) {
10005
11409
 
10006
11410
  Chart.register(CategoryScale, LinearScale, PointElement, LineElement, Title, Tooltip$1, Legend, TimeScale, zoomPlugin);
10007
11411
  var Trending = function (_a) {
10008
- _a.title;
11412
+ _a.title; var getTagsFromAPI = _a.getTagsFromAPI;
10009
11413
  var _b = useTrendingContext(), state = _b.state, viewTags = _b.state.viewTags;
10010
11414
  var _c = useState(''), error = _c[0], setError = _c[1];
10011
11415
  var _d = useState(true), loading = _d[0], setLoading = _d[1];
@@ -10062,7 +11466,7 @@ var Trending = function (_a) {
10062
11466
  React__default.createElement(Grid$1, { item: true, xs: 12, style: { height: '45%' } },
10063
11467
  React__default.createElement(TrendingChart, { series: series, chartData: chartData, setChartData: setChartData, chartOptions: chartOptions, setChartOptions: setChartOptions, setCursorData: setCursorData })),
10064
11468
  React__default.createElement(Grid$1, { item: true, xs: 12, style: { height: '40%', minWidth: "100%", paddingTop: "3rem" } },
10065
- React__default.createElement(TableComponent, { chartData: chartData, cursorData: cursorData })),
11469
+ React__default.createElement(TableComponent, { chartData: chartData, cursorData: cursorData, getTagsFromAPI: getTagsFromAPI })),
10066
11470
  loading && (React__default.createElement(Grid$1, { item: true, xs: 12, style: { textAlign: 'center' } },
10067
11471
  React__default.createElement("p", null, "Loading...")))),
10068
11472
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); }, title: "ERROR" })));
@@ -10071,44 +11475,44 @@ var Trending = function (_a) {
10071
11475
  var TrendingsPage = function (props) {
10072
11476
  var _a = useState(''), error = _a[0], setError = _a[1];
10073
11477
  var _b = useTrendingContext().actions, setViews = _b.setViews, setViewTags = _b.setViewTags, setViewSelected = _b.setViewSelected;
11478
+ var getTagsFromAPI = function () { return __awaiter(void 0, void 0, void 0, function () {
11479
+ var viewsResp, lastCreated, viewTagsResp;
11480
+ return __generator(this, function (_a) {
11481
+ switch (_a.label) {
11482
+ case 0: return [4 /*yield*/, getViews(null)];
11483
+ case 1:
11484
+ viewsResp = _a.sent();
11485
+ if (!viewsResp.ok) return [3 /*break*/, 3];
11486
+ setViews(viewsResp.data.tables[0].rows);
11487
+ lastCreated = viewsResp.data.tables[0].rows.reduce(function (prev, current) { return (prev.ViewId > current.ViewId) ? prev : current; });
11488
+ //viewSelected
11489
+ setViewSelected(lastCreated);
11490
+ return [4 /*yield*/, getViewTags(lastCreated.ViewId)];
11491
+ case 2:
11492
+ viewTagsResp = _a.sent();
11493
+ if (viewTagsResp.ok) {
11494
+ setViewTags(viewTagsResp.data.tables[0].rows);
11495
+ }
11496
+ else {
11497
+ setError(viewTagsResp.message);
11498
+ }
11499
+ return [3 /*break*/, 4];
11500
+ case 3:
11501
+ setError(viewsResp.message);
11502
+ _a.label = 4;
11503
+ case 4: return [2 /*return*/];
11504
+ }
11505
+ });
11506
+ }); };
10074
11507
  useEffect(function () {
10075
- var getTags = function () { return __awaiter(void 0, void 0, void 0, function () {
10076
- var viewsResp, lastCreated, viewTagsResp;
10077
- return __generator(this, function (_a) {
10078
- switch (_a.label) {
10079
- case 0: return [4 /*yield*/, getViews(null)];
10080
- case 1:
10081
- viewsResp = _a.sent();
10082
- if (!viewsResp.ok) return [3 /*break*/, 3];
10083
- setViews(viewsResp.data.tables[0].rows);
10084
- lastCreated = viewsResp.data.tables[0].rows.reduce(function (prev, current) { return (prev.ViewId > current.ViewId) ? prev : current; });
10085
- //viewSelected
10086
- setViewSelected(lastCreated);
10087
- return [4 /*yield*/, getViewTags(lastCreated.ViewId)];
10088
- case 2:
10089
- viewTagsResp = _a.sent();
10090
- if (viewTagsResp.ok) {
10091
- setViewTags(viewTagsResp.data.tables[0].rows);
10092
- }
10093
- else {
10094
- setError(viewTagsResp.message);
10095
- }
10096
- return [3 /*break*/, 4];
10097
- case 3:
10098
- setError(viewsResp.message);
10099
- _a.label = 4;
10100
- case 4: return [2 /*return*/];
10101
- }
10102
- });
10103
- }); };
10104
- getTags();
11508
+ getTagsFromAPI();
10105
11509
  }, []);
10106
11510
  return (React__default.createElement(React__default.Fragment, null,
10107
11511
  React__default.createElement(Box, { p: 3, style: { maxWidth: "100%" } },
10108
11512
  React__default.createElement(Paper, null,
10109
11513
  React__default.createElement(Grid$1, { container: true, spacing: 3, style: { padding: "20px" } },
10110
11514
  React__default.createElement(Grid$1, { item: true, xs: 12 },
10111
- React__default.createElement(Trending, { title: "Trending Chart" }))))),
11515
+ React__default.createElement(Trending, { title: "Trending Chart", getTagsFromAPI: getTagsFromAPI }))))),
10112
11516
  React__default.createElement(ErrorModal, { error: error, onHide: function () { return setError(''); }, size: "xl", title: "ERROR" })));
10113
11517
  };
10114
11518