Kaynağa Gözat

fix broken dep en muilab

amenpunk 2 yıl önce
ebeveyn
işleme
80beabb72f

+ 1 - 1
package.json

@@ -11,8 +11,8 @@
11 11
         "@iconify/icons-eva": "^1.1.0",
12 12
         "@iconify/react": "^3.1.3",
13 13
         "@mui/icons-material": "^5.1.0",
14
-        "@mui/lab": "^5.0.0-alpha.59",
15 14
         "@mui/material": "^5.1.0",
15
+        "@mui/x-date-pickers": "^5.0.17",
16 16
         "@reduxjs/toolkit": "^1.8.6",
17 17
         "@testing-library/jest-dom": "^5.16.1",
18 18
         "@testing-library/react": "^11.2.7",

+ 4 - 4
src/Components/Home/Actividades.js

@@ -1,15 +1,15 @@
1 1
 import React, { useState } from 'react'
2 2
 import FlightTakeoffIcon from '@mui/icons-material/FlightTakeoff';
3
-import { DesktopDatePicker,LocalizationProvider } from '@mui/lab';
4 3
 
5 4
 import TextField from '@mui/material/TextField';
6 5
 import { Col, Row } from 'react-bootstrap';
7
-
8
-import DateFnsUtils from '@date-io/date-fns';
9
-
10 6
 import { HelpModal } from './HelpAcividades.jsx'
11 7
 import { LastActivitys } from './LastActivitys.jsx'
12 8
 
9
+import { AdapterDateFns as DateFnsUtils } from '@mui/x-date-pickers/AdapterDateFns';
10
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
11
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
12
+
13 13
 export default function Actividades() {
14 14
 
15 15
     const [value, setValue] = React.useState(new Date());

+ 3 - 2
src/Components/Modal/AgregarManual.js

@@ -4,8 +4,9 @@ import { useFormik, Form, FormikProvider } from 'formik';
4 4
 import { Modal } from 'react-bootstrap'
5 5
 import toast, { Toaster } from 'react-hot-toast';
6 6
 
7
-import DateFnsUtils from '@date-io/date-fns';
8
-import { DesktopDatePicker, LocalizationProvider } from '@mui/lab';
7
+import { AdapterDateFns as DateFnsUtils } from '@mui/x-date-pickers/AdapterDateFns';
8
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
9
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
9 10
 
10 11
 import {
11 12
   Button, Stack, TextField, MenuItem, FormControl, InputLabel, Select,

+ 4 - 2
src/Components/Modal/EditPlaza.js

@@ -4,9 +4,11 @@ import { useForm, Controller } from "react-hook-form";
4 4
 import { yupResolver } from '@hookform/resolvers/yup';
5 5
 import * as Yup from 'yup';
6 6
 
7
-import DateFnsUtils from '@date-io/date-fns';
8
-import { DesktopDatePicker, LocalizationProvider } from '@mui/lab';
7
+
9 8
 import { TabPanel } from './TabPanel'
9
+import { AdapterDateFns as DateFnsUtils } from '@mui/x-date-pickers/AdapterDateFns';
10
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
11
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
10 12
 
11 13
 import {
12 14
   Button, Stack, TextField, MenuItem, FormControl, InputLabel, Select,

+ 3 - 10
src/Components/Password/Operation.jsx

@@ -16,9 +16,10 @@ import { Service } from '../../Utils/HTTP.js'
16 16
 import { useSelector } from 'react-redux'
17 17
 
18 18
 import { useFormik, Form, FormikProvider } from 'formik';
19
+import { AdapterDateFns as DateFnsUtils } from '@mui/x-date-pickers/AdapterDateFns';
20
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
21
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
19 22
 
20
-import DateFnsUtils from '@date-io/date-fns';
21
-import { DesktopDatePicker, LocalizationProvider } from '@mui/lab';
22 23
 
23 24
 export function Operation(props) {
24 25
 
@@ -57,14 +58,6 @@ function ModalEdit(props) {
57 58
 
58 59
   let { data: result } = useQuery('contra', getPassword);
59 60
   console.log('PWD INFO ', result)
60
-  //
61
-  // const getPuestos = async () => {
62
-  //     let rest = new Service('/plaza/getall')
63
-  //     return rest.getQuery(token.current);
64
-  // }
65
-  //
66
-  // let { data } = useQuery('puestos', getPuestos)
67
-  // let puestos = data ? data.data.map(({ nombrepuesto, id }) => ({ nombrepuesto, id })) : []
68 61
 
69 62
   let initialValues = {
70 63
     id: result?.data?.id,

+ 5 - 5
src/Components/Password/Steps/MailTable.jsx

@@ -1,6 +1,6 @@
1 1
 import * as React from 'react';
2
-import { 
3
-  Table, TableBody,TableCell, TableContainer, TableHead,
2
+import {
3
+  Table, TableBody, TableCell, TableContainer, TableHead,
4 4
   TableRow, Paper, ButtonBase
5 5
 } from '@mui/material'
6 6
 
@@ -22,7 +22,7 @@ export function MailTable(props) {
22 22
           </TableRow>
23 23
         </TableHead>
24 24
         <TableBody>
25
-          {users ? users.map((row,i) => (
25
+          {users ? users.map((row, i) => (
26 26
             <TableRow key={i} sx={{ '&:last-child td, &:last-child th': { border: 0 } }} >
27 27
               <TableCell component="th" scope="row">
28 28
                 {row.mail}
@@ -31,11 +31,11 @@ export function MailTable(props) {
31 31
               <TableCell align="right">{row.apellidos}</TableCell>
32 32
               <TableCell align="right">
33 33
                 <ButtonBase>
34
-                  <DisabledByDefault onClick={() => remove(row.mail)} color="primary"/>
34
+                  <DisabledByDefault onClick={() => remove(row.mail)} style={{color:'var(--main)'}} />
35 35
                 </ButtonBase>
36 36
               </TableCell>
37 37
             </TableRow>
38
-          ) ) :  null }
38
+          )) : null}
39 39
         </TableBody>
40 40
       </Table>
41 41
     </TableContainer>

+ 7 - 1
src/Components/Password/Steps/candidato.jsx

@@ -51,9 +51,15 @@ export function Candidato(props) {
51 51
   const { errors, touched, handleSubmit, getFieldProps, values, resetForm,isValid } = formik;
52 52
 
53 53
   const addToList = () => {
54
+
55
+    if(!values.nombres || !values.apellidos || !values.mail){
56
+      return toast.error("Completa la informacion del candidato")
57
+    }
58
+
54 59
     if(!isValid) {
55 60
       return toast.error("Completa la informacion del candidato")
56 61
     }
62
+
57 63
     let user = {
58 64
       'nombres': values.nombres,
59 65
       'apellidos': values.apellidos,
@@ -108,7 +114,7 @@ export function Candidato(props) {
108 114
             />
109 115
 
110 116
             <Button onClick={addToList}>
111
-              <AddCircle/>
117
+              <AddCircle style={{color:'var(--main)'}}/>
112 118
             </Button>
113 119
 
114 120
           </Stack>

+ 139 - 141
src/Components/Password/Steps/password.jsx

@@ -2,153 +2,151 @@ import React from 'react'
2 2
 import * as Yup from 'yup';
3 3
 import { useFormik, Form, FormikProvider } from 'formik';
4 4
 
5
-import {  
6
-    Box, Button,
7
-    Stack, TextField, 
5
+import {
6
+  Box, Button,
7
+  Stack, TextField,
8 8
 } from '@mui/material';
9 9
 
10
-import DateFnsUtils from '@date-io/date-fns';
11
-import { DesktopDatePicker, LocalizationProvider } from '@mui/lab';
12
-
10
+import { AdapterDateFns as DateFnsUtils } from '@mui/x-date-pickers/AdapterDateFns';
11
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
12
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
13 13
 
14 14
 export function Password(props) {
15
-    
16
-    // console.log(props.password)
17 15
 
18
-    const [uid,setUID] = React.useState(null);
16
+  const [uid, setUID] = React.useState(null);
19 17
 
20
-    const PasswordSchema = Yup.object().shape({
21
-        pwd: 
22
-        Yup
18
+  const PasswordSchema = Yup.object().shape({
19
+    pwd:
20
+      Yup
23 21
         .string()
24 22
         .required('Ingresa un identificador válido')
25
-        .min(5,"Ingresa un identificador válido")
26
-        .max(50,"identificador demasiado largo"),
27
-        deadpwd: Yup.date("Ingresa una fecha válida"),
28
-        dateToActived: Yup.date("Ingresa una fecha válida"),
29
-    });
30
-
31
-    let {  handleNext, handleBack, password, setPassword } = props
32
-
33
-    const formik = useFormik({
34
-        initialValues: {
35
-            pwd: password.pwd ,
36
-            deadpwd: password.deadpwd,
37
-            dateToActived: password.dateToActived,
38
-        },
39
-        onSubmit: (fields) => {
40
-            fields['deadpwd'] = new Date(fields.deadpwd).toISOString();
41
-            fields['dateToActived'] = new Date(fields.dateToActived).toISOString();
42
-            setPassword({
43
-                ...password,
44
-                ...fields
45
-            })
46
-            handleNext()
47
-        },
48
-        validationSchema: PasswordSchema,
49
-    });
50
-
51
-    const {errors, touched, handleSubmit, getFieldProps, values,setValues } = formik;
52
-
53
-    return (
54
-        <FormikProvider style={{ padding : 25, paddingTop : 5 }} value={formik}>
55
-            <Form autoComplete="off" noValidate onSubmit={handleSubmit}>
56
-                <Stack spacing={3}>
57
-
58
-                    <TextField
59
-                        fullWidth
60
-                        type="text"
61
-                        label="Nombre o identificador"
62
-                        {...getFieldProps('pwd')}
63
-                        onChange={(event)=>{
64
-                            let value = event.target.value
65
-                            setUID(btoa(value));
66
-                            setValues({
67
-                                ...values,
68
-                                pwd:value
69
-                            })
70
-                        }}
71
-                        error={Boolean(touched.pwd && errors.pwd)}
72
-                        helperText={touched.pwd && errors.pwd}
73
-                        />
74
-                    
75
-                    <TextField
76
-                        value={uid? uid: btoa(values.pwd)}
77
-                        disabled
78
-                        fullWidth
79
-                        type="text"
80
-                        label="Identificador Codificado"
81
-                        variant="filled"
82
-                        />
83
-
84
-                    <Stack direction={{ xs: 'column', sm: 'row' }} spacing={2}>
85
-
86
-                        <LocalizationProvider
87
-                            dateAdapter={DateFnsUtils}>
88
-                            <DesktopDatePicker
89
-                                label="Fecha de Activación"
90
-                                fullWidth
91
-                                inputFormat="dd/MM/yyyy"
92
-                                {...getFieldProps('dateToActived')}
93
-                                value={values.dateToActived}
94
-                                onChange={(val) => setValues({ ...values, dateToActived: new Date(val) })
95
-                                }
96
-                                renderInput={(params) =>
97
-                                    <TextField
98
-                                        error={Boolean(touched.dateToActived && errors.dateToActived)}
99
-                                        helperText={touched.dateToActived && errors.dateToActived}
100
-                                        disabled={true}
101
-                                        label="Fecha de Activación"
102
-                                        fullWidth
103
-                                        {...params}
104
-                                        />}
105
-                                />
106
-                        </LocalizationProvider>
107
-
108
-                        <LocalizationProvider
109
-                            dateAdapter={DateFnsUtils}>
110
-                            <DesktopDatePicker
111
-                                label="Fecha de Caducidad"
112
-                                fullWidth
113
-                                inputFormat="dd/MM/yyyy"
114
-                                {...getFieldProps('deadpwd')}
115
-                                value={values.deadpwd}
116
-                                onChange={(val) => setValues({ ...values, deadpwd: new Date(val) }) }
117
-                                renderInput={(params) =>
118
-                                    <TextField
119
-                                        error={Boolean(touched.deadpwd && errors.deadpwd)}
120
-                                        helperText={touched.deadpwd && errors.deadpwd}
121
-                                        disabled={true}
122
-                                        label="Fecha de Caducidad"
123
-                                        fullWidth
124
-                                        {...params}
125
-                                    />}
126
-                                />
127
-                        </LocalizationProvider>
128
-                    </Stack>
129
-
130
-                    <Box sx={{ mb: 2 }}>
131
-                        <div style={{ paddingTop  : 15}}>
132
-                            <Button
133
-                                type="submit"
134
-                                className="registerBtn" 
135
-                                variant="contained"
136
-                                sx={{ mt: 1, mr: 1 }}
137
-                            >
138
-                                {'Siguiente'}
139
-                            </Button>
140
-                            <Button
141
-                                disabled={false}
142
-                                onClick={handleBack}
143
-                                sx={{ mt: 1, mr: 1 }}
144
-                            >
145
-                                Regresar
146
-                            </Button>
147
-                        </div>
148
-                    </Box>
149
-
150
-                </Stack>
151
-            </Form>
152
-        </FormikProvider>
153
-    );
23
+        .min(5, "Ingresa un identificador válido")
24
+        .max(50, "identificador demasiado largo"),
25
+    deadpwd: Yup.date("Ingresa una fecha válida"),
26
+    dateToActived: Yup.date("Ingresa una fecha válida"),
27
+  });
28
+
29
+  let { handleNext, handleBack, password, setPassword } = props
30
+
31
+  const formik = useFormik({
32
+    initialValues: {
33
+      pwd: password.pwd,
34
+      deadpwd: password.deadpwd,
35
+      dateToActived: password.dateToActived,
36
+    },
37
+    onSubmit: (fields) => {
38
+      fields['deadpwd'] = new Date(fields.deadpwd).toISOString();
39
+      fields['dateToActived'] = new Date(fields.dateToActived).toISOString();
40
+      setPassword({
41
+        ...password,
42
+        ...fields
43
+      })
44
+      handleNext()
45
+    },
46
+    validationSchema: PasswordSchema,
47
+  });
48
+
49
+  const { errors, touched, handleSubmit, getFieldProps, values, setValues } = formik;
50
+
51
+  return (
52
+    <FormikProvider style={{ padding: 25, paddingTop: 5 }} value={formik}>
53
+      <Form autoComplete="off" noValidate onSubmit={handleSubmit}>
54
+        <Stack spacing={3}>
55
+
56
+          <TextField
57
+            value={uid ? uid : btoa(values.pwd)}
58
+            disabled
59
+            fullWidth
60
+            type="text"
61
+            label="Identificador Codificado"
62
+            variant="standard"
63
+          />
64
+
65
+          <TextField
66
+            fullWidth
67
+            type="text"
68
+            label="Nombre o identificador"
69
+            {...getFieldProps('pwd')}
70
+            onChange={(event) => {
71
+              let value = event.target.value
72
+              setUID(btoa(value));
73
+              setValues({
74
+                ...values,
75
+                pwd: value
76
+              })
77
+            }}
78
+            error={Boolean(touched.pwd && errors.pwd)}
79
+            helperText={touched.pwd && errors.pwd}
80
+          />
81
+
82
+
83
+          <Stack direction={{ xs: 'column', sm: 'row' }} spacing={2}>
84
+
85
+            <LocalizationProvider dateAdapter={DateFnsUtils}>
86
+
87
+              <DesktopDatePicker
88
+                label="Fecha de Activación"
89
+                fullWidth
90
+                inputFormat="dd/MM/yyyy"
91
+                {...getFieldProps('dateToActived')}
92
+                value={values.dateToActived}
93
+                onChange={(val) => setValues({ ...values, dateToActived: new Date(val) })}
94
+                renderInput={(params) =>
95
+                  <TextField
96
+                    error={Boolean(touched.dateToActived && errors.dateToActived)}
97
+                    helperText={touched.dateToActived && errors.dateToActived}
98
+                    disabled={true}
99
+                    label="Fecha de Activación"
100
+                    fullWidth
101
+                    {...params}
102
+                  />}
103
+              />
104
+
105
+              <DesktopDatePicker
106
+                label="Fecha de Caducidad"
107
+                fullWidth
108
+                inputFormat="dd/MM/yyyy"
109
+                {...getFieldProps('deadpwd')}
110
+                value={values.deadpwd}
111
+                onChange={(val) => setValues({ ...values, deadpwd: new Date(val) })}
112
+                renderInput={(params) =>
113
+                  <TextField
114
+                    error={Boolean(touched.deadpwd && errors.deadpwd)}
115
+                    helperText={touched.deadpwd && errors.deadpwd}
116
+                    disabled={true}
117
+                    label="Fecha de Caducidad"
118
+                    fullWidth
119
+                    {...params}
120
+                  />}
121
+              />
122
+
123
+            </LocalizationProvider>
124
+
125
+
126
+          </Stack>
127
+
128
+          <Box sx={{ mb: 2 }}>
129
+            <div style={{ paddingTop: 15 }}>
130
+              <Button
131
+                type="submit"
132
+                className="registerBtn"
133
+                variant="contained"
134
+                sx={{ mt: 1, mr: 1 }}
135
+              >
136
+                {'Siguiente'}
137
+              </Button>
138
+              <Button
139
+                disabled={false}
140
+                onClick={handleBack}
141
+                sx={{ mt: 1, mr: 1 }}
142
+              >
143
+                Regresar
144
+              </Button>
145
+            </div>
146
+          </Box>
147
+
148
+        </Stack>
149
+      </Form>
150
+    </FormikProvider>
151
+  );
154 152
 }

+ 44 - 47
src/temp.js

@@ -1,54 +1,51 @@
1 1
 import * as React from 'react';
2
-import Table from '@mui/material/Table';
3
-import TableBody from '@mui/material/TableBody';
4
-import TableCell from '@mui/material/TableCell';
5
-import TableContainer from '@mui/material/TableContainer';
6
-import TableHead from '@mui/material/TableHead';
7
-import TableRow from '@mui/material/TableRow';
8
-import Paper from '@mui/material/Paper';
2
+import dayjs from 'dayjs';
3
+import Stack from '@mui/material/Stack';
4
+import TextField from '@mui/material/TextField';
5
+import { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';
6
+import { AdapterDayjs } from '@mui/x-date-pickers/AdapterDayjs';
7
+import { TimePicker } from '@mui/x-date-pickers/TimePicker';
8
+import { DateTimePicker } from '@mui/x-date-pickers/DateTimePicker';
9
+import { DesktopDatePicker } from '@mui/x-date-pickers/DesktopDatePicker';
10
+import { MobileDatePicker } from '@mui/x-date-pickers/MobileDatePicker';
9 11
 
10
-function createData(name, calories, fat, carbs, protein) {
11
-  return { name, calories, fat, carbs, protein };
12
-}
12
+export default function MaterialUIPickers() {
13
+  const [value, setValue] = React.useState(dayjs('2014-08-18T21:11:54'));
13 14
 
14
-const rows = [
15
-  createData('Frozen yoghurt', 159, 6.0, 24, 4.0),
16
-  createData('Ice cream sandwich', 237, 9.0, 37, 4.3),
17
-  createData('Eclair', 262, 16.0, 24, 6.0),
18
-  createData('Cupcake', 305, 3.7, 67, 4.3),
19
-  createData('Gingerbread', 356, 16.0, 49, 3.9),
20
-];
15
+  const handleChange = (newValue) => {
16
+    setValue(newValue);
17
+  };
21 18
 
22
-export default function DenseTable() {
23 19
   return (
24
-    <TableContainer component={Paper}>
25
-      <Table sx={{ minWidth: 650 }} size="small" aria-label="a dense table">
26
-        <TableHead>
27
-          <TableRow>
28
-            <TableCell>Dessert (100g serving)</TableCell>
29
-            <TableCell align="right">Calories</TableCell>
30
-            <TableCell align="right">Fat&nbsp;(g)</TableCell>
31
-            <TableCell align="right">Carbs&nbsp;(g)</TableCell>
32
-            <TableCell align="right">Protein&nbsp;(g)</TableCell>
33
-          </TableRow>
34
-        </TableHead>
35
-        <TableBody>
36
-          {rows.map((row) => (
37
-            <TableRow
38
-              key={row.name}
39
-              sx={{ '&:last-child td, &:last-child th': { border: 0 } }}
40
-            >
41
-              <TableCell component="th" scope="row">
42
-                {row.name}
43
-              </TableCell>
44
-              <TableCell align="right">{row.calories}</TableCell>
45
-              <TableCell align="right">{row.fat}</TableCell>
46
-              <TableCell align="right">{row.carbs}</TableCell>
47
-              <TableCell align="right">{row.protein}</TableCell>
48
-            </TableRow>
49
-          ))}
50
-        </TableBody>
51
-      </Table>
52
-    </TableContainer>
20
+    <LocalizationProvider dateAdapter={AdapterDayjs}>
21
+      <Stack spacing={3}>
22
+        <DesktopDatePicker
23
+          label="Date desktop"
24
+          inputFormat="MM/DD/YYYY"
25
+          value={value}
26
+          onChange={handleChange}
27
+          renderInput={(params) => <TextField {...params} />}
28
+        />
29
+        <MobileDatePicker
30
+          label="Date mobile"
31
+          inputFormat="MM/DD/YYYY"
32
+          value={value}
33
+          onChange={handleChange}
34
+          renderInput={(params) => <TextField {...params} />}
35
+        />
36
+        <TimePicker
37
+          label="Time"
38
+          value={value}
39
+          onChange={handleChange}
40
+          renderInput={(params) => <TextField {...params} />}
41
+        />
42
+        <DateTimePicker
43
+          label="Date&Time picker"
44
+          value={value}
45
+          onChange={handleChange}
46
+          renderInput={(params) => <TextField {...params} />}
47
+        />
48
+      </Stack>
49
+    </LocalizationProvider>
53 50
   );
54 51
 }