From bdf42492a284ab625b98fda996310fb59a25cea3 Mon Sep 17 00:00:00 2001 From: lazaronazareno Date: Thu, 16 Jan 2025 02:46:44 -0300 Subject: [PATCH] fix(frontend): :bug: lint fixes for deploy --- frontend/public/sw.js | 2 +- .../app/students/(config)/add-new/page.tsx | 252 ------------------ .../students/(monitoring)/attendance/page.tsx | 9 +- .../(monitoring)/attitudinal/page.tsx | 8 +- .../app/students/(monitoring)/exam/page.tsx | 2 +- .../students/(monitoring)/homework/page.tsx | 2 +- .../src/components/multiStepForm/index.tsx | 8 +- .../studentsMonitoring/addNewStudent.tsx | 7 +- .../studentsMonitoring/dropdown.tsx | 4 +- .../dropdown/dropdownExam.tsx | 4 +- .../dropdown/dropdownHomework.tsx | 8 +- frontend/src/interfaces/IExam.interfaces.ts | 1 + .../src/interfaces/IHomework.interfaces.ts | 17 +- 13 files changed, 39 insertions(+), 285 deletions(-) delete mode 100644 frontend/src/app/students/(config)/add-new/page.tsx diff --git a/frontend/public/sw.js b/frontend/public/sw.js index 9bf3595..ab54f64 100644 --- a/frontend/public/sw.js +++ b/frontend/public/sw.js @@ -1 +1 @@ -if(!self.define){let e,a={};const i=(i,s)=>(i=new URL(i+".js",s).href,a[i]||new Promise((a=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=a,document.head.appendChild(e)}else e=i,importScripts(i),a()})).then((()=>{let e=a[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(s,t)=>{const n=e||("document"in self?document.currentScript.src:"")||location.href;if(a[n])return;let c={};const r=e=>i(e,n),f={module:{uri:n},exports:c,require:r};a[n]=Promise.all(s.map((e=>f[e]||r(e)))).then((e=>(t(...e),c)))}}define(["./workbox-4754cb34"],(function(e){"use strict";importScripts(),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"efc79f09a1169d6f35cb8cb81a368171"},{url:"/_next/static/MzaRi-P73_PRVNEQuf_R4/_buildManifest.js",revision:"d0efbec59a8e3e16223d0cda77c767c9"},{url:"/_next/static/MzaRi-P73_PRVNEQuf_R4/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/_next/static/chunks/13b76428-250fb8d199f8d754.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/174-081f2613a27a3c21.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/285-4ffc9c46cf369004.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/4bd1b696-48067afed94ad926.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/517-37f58c09ee300984.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/729-ddc3c33021125ad3.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/738-c6342d60902e7683.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/743-65dd8eee0ae689f4.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/839-621cd4c2eba6b95f.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/(auth)/login/page-e2097c63f473873a.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/(auth)/register/confirm/%5Bmail%5D/page-7e2c00d3738a2544.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/(auth)/register/page-741c0b65aecae7e0.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/_not-found/page-1e3aab99790b6e90.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/add-course/page-4040cbcd78f2a162.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/api/auth/route-ab6b97fb14b79a9b.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/home/layout-4d614b5780a56af3.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/home/page-6154c152610e3bb8.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/layout-b8d6050b979d1726.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/onboarding/page-d6d5e8181cb358f2.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/page-6ad79f59f8646f70.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/planification/%5BsubjectId%5D/page-568eaa6d326928e5.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/planification/page-7589a0834c037753.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/(monitoring)/attendance/page-2a1bcd7d2ff7b108.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/(monitoring)/attitudinal/page-1b75b2d0ffd0a42e.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/(monitoring)/exam/page-ad2615dd67c378fe.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/(monitoring)/homework/page-d3bc870a54d99aeb.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/(monitoring)/layout-6f14904d8df344a3.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/config/page-7880d708a06f9742.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/app/students/page-fa7fc0b2a024d678.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/e80c4f76-7c1fea4451f05081.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/framework-58f97e80b1d6e3ea.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/main-0d7f5d8b1538a9f6.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/main-app-1a95778d57d5608f.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/pages/_app-abffdcde9d309a0c.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/pages/_error-94b8133dd8229633.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/chunks/polyfills-42372ed130431b0a.js",revision:"846118c33b2c0e922d7b3a7676f81f6f"},{url:"/_next/static/chunks/webpack-aec7dd89d1301a1c.js",revision:"MzaRi-P73_PRVNEQuf_R4"},{url:"/_next/static/css/014dfbd8f7502d55.css",revision:"014dfbd8f7502d55"},{url:"/_next/static/css/70e13213c805a4d4.css",revision:"70e13213c805a4d4"},{url:"/_next/static/css/9cbfcc82d95fdb4e.css",revision:"9cbfcc82d95fdb4e"},{url:"/_next/static/css/a7d6a5e7eaf7ea49.css",revision:"a7d6a5e7eaf7ea49"},{url:"/_next/static/css/d987984f896d3f4e.css",revision:"d987984f896d3f4e"},{url:"/_next/static/css/dd35055f242c8ee6.css",revision:"dd35055f242c8ee6"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/6d93bde91c0c2823-s.woff2",revision:"621a07228c8ccbfd647918f1021b4868"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/a34f9d1faa5f3315-s.p.woff2",revision:"d4fe31e6a2aebc06b8d6e558c9141119"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/_next/static/media/dialog-box.cabed9f7.svg",revision:"648a6923b617fb98b9a898c1655efcb1"},{url:"/_next/static/media/fa-brands-400.86ee2658.woff2",revision:"86ee2658"},{url:"/_next/static/media/fa-brands-400.8eaf0c88.ttf",revision:"8eaf0c88"},{url:"/_next/static/media/fa-regular-400.849b82e2.woff2",revision:"849b82e2"},{url:"/_next/static/media/fa-regular-400.bd1cf947.ttf",revision:"bd1cf947"},{url:"/_next/static/media/fa-solid-900.7a5aa5ab.ttf",revision:"7a5aa5ab"},{url:"/_next/static/media/fa-solid-900.ee698398.woff2",revision:"ee698398"},{url:"/_next/static/media/fa-v4compatibility.59487ca3.woff2",revision:"59487ca3"},{url:"/_next/static/media/fa-v4compatibility.c63df8a6.ttf",revision:"c63df8a6"},{url:"/_next/static/media/globo_texto.a797bb4e.svg",revision:"eef833d10b1438369067492ea77143bf"},{url:"/_next/static/media/smile.e9c6f79c.svg",revision:"f1aec54859508f8c360636ab4ec09ae0"},{url:"/file.svg",revision:"d09f95206c3fa0bb9bd9fefabfd0ea71"},{url:"/globe.svg",revision:"e52c08ce0a255991e9cbf23bd6828555"},{url:"/icons/calendar.svg",revision:"29b7205c99da7df16fba7deb4b5a2743"},{url:"/manifest.js",revision:"7570ce7c86bcb069d3760e5868c36470"},{url:"/media/img/arrow.png",revision:"2eb7d98dd142feabd097ce3b12961948"},{url:"/media/img/dialog-box.svg",revision:"648a6923b617fb98b9a898c1655efcb1"},{url:"/media/img/globo_texto.svg",revision:"eef833d10b1438369067492ea77143bf"},{url:"/media/img/mas-info.svg",revision:"69ee10d51968ddcc780e8a8665215344"},{url:"/media/img/no-data-s.png",revision:"f1dc0c12740dd9b54b0aecb0ab4cf2ef"},{url:"/media/img/ob-1.png",revision:"051d93264c60aebe9aa469808394db0e"},{url:"/media/img/ob-2.png",revision:"427174a2292d475b127a3d5a7656d681"},{url:"/media/img/ob-3.png",revision:"adf5b3014bd5f58d3c5ac844f2a6f5e4"},{url:"/media/img/ob-4.png",revision:"6f770744e1bfbdffc1a7e6ca85f94250"},{url:"/media/img/planification-reseources-image.svg",revision:"35ad4d099a681856f51bbe46bcdb6bcd"},{url:"/media/img/smile.svg",revision:"f1aec54859508f8c360636ab4ec09ae0"},{url:"/media/img/students.png",revision:"ee5ed27f31caaafc9b9a8d0abd84af55"},{url:"/next.svg",revision:"8e061864f388b47f33a1c3780831193e"},{url:"/vercel.svg",revision:"c0af2f507b369b085b35ef4bbe3bcf1e"},{url:"/window.svg",revision:"a2760511c65806022ad20adf74370ff3"}],{ignoreURLParametersMatching:[]}),e.cleanupOutdatedCaches(),e.registerRoute("/",new e.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:e,response:a,event:i,state:s})=>a&&"opaqueredirect"===a.type?new Response(a.body,{status:200,statusText:"OK",headers:a.headers}):a}]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:gstatic)\.com\/.*/i,new e.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:31536e3})]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:googleapis)\.com\/.*/i,new e.StaleWhileRevalidate({cacheName:"google-fonts-stylesheets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:eot|otf|ttc|ttf|woff|woff2|font.css)$/i,new e.StaleWhileRevalidate({cacheName:"static-font-assets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:jpg|jpeg|gif|png|svg|ico|webp)$/i,new e.StaleWhileRevalidate({cacheName:"static-image-assets",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/image\?url=.+$/i,new e.StaleWhileRevalidate({cacheName:"next-image",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp3|wav|ogg)$/i,new e.CacheFirst({cacheName:"static-audio-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp4)$/i,new e.CacheFirst({cacheName:"static-video-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:js)$/i,new e.StaleWhileRevalidate({cacheName:"static-js-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:css|less)$/i,new e.StaleWhileRevalidate({cacheName:"static-style-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/data\/.+\/.+\.json$/i,new e.StaleWhileRevalidate({cacheName:"next-data",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:json|xml|csv)$/i,new e.NetworkFirst({cacheName:"static-data-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;const a=e.pathname;return!a.startsWith("/api/auth/")&&!!a.startsWith("/api/")}),new e.NetworkFirst({cacheName:"apis",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:16,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;return!e.pathname.startsWith("/api/")}),new e.NetworkFirst({cacheName:"others",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>!(self.origin===e.origin)),new e.NetworkFirst({cacheName:"cross-origin",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:3600})]}),"GET")})); \ No newline at end of file +if(!self.define){let e,s={};const i=(i,a)=>(i=new URL(i+".js",a).href,s[i]||new Promise((s=>{if("document"in self){const e=document.createElement("script");e.src=i,e.onload=s,document.head.appendChild(e)}else e=i,importScripts(i),s()})).then((()=>{let e=s[i];if(!e)throw new Error(`Module ${i} didn’t register its module`);return e})));self.define=(a,t)=>{const n=e||("document"in self?document.currentScript.src:"")||location.href;if(s[n])return;let c={};const o=e=>i(e,n),r={module:{uri:n},exports:c,require:o};s[n]=Promise.all(a.map((e=>r[e]||o(e)))).then((e=>(t(...e),c)))}}define(["./workbox-4754cb34"],(function(e){"use strict";importScripts(),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"/_next/app-build-manifest.json",revision:"d2867175ddd52b3d38a371628db1f01c"},{url:"/_next/static/chunks/13b76428-250fb8d199f8d754.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/174-081f2613a27a3c21.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/285-4ffc9c46cf369004.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/4bd1b696-48067afed94ad926.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/517-37f58c09ee300984.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/729-ddc3c33021125ad3.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/738-df7892cb61f4e7e1.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/743-65dd8eee0ae689f4.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/839-621cd4c2eba6b95f.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/(auth)/auth/verify-email/%5Btoken%5D/page-a683d43522209ecb.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/(auth)/login/page-65553087902e4a89.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/(auth)/register/confirm/%5Bmail%5D/page-d7dc94c79f81d03a.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/(auth)/register/page-b980cdf2449fe72b.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/_not-found/page-1e3aab99790b6e90.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/add-course/page-a70f004955963e83.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/api/auth/route-d0c4263208e5df7a.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/home/layout-6fb0d358c17bf99a.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/home/page-060e29c8afba2b73.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/layout-b8d6050b979d1726.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/onboarding/page-b597cebdb047e514.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/page-6ad79f59f8646f70.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/planification/%5BsubjectId%5D/page-06689c3ea6373128.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/planification/page-f81f4ecc012383a3.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(config)/config/page-56086a2257779b39.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(monitoring)/attendance/page-fc58bf426ed7225e.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(monitoring)/attitudinal/page-a54ee1a634464598.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(monitoring)/exam/page-8d496bd4d3b36fbb.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(monitoring)/homework/page-54b13d3b8583efbe.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/(monitoring)/layout-de77c25f2e3654bc.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/layout-085e2248a2889613.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/app/students/page-bbd3f8e3bcc769d8.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/e80c4f76-7c1fea4451f05081.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/framework-58f97e80b1d6e3ea.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/main-0d7f5d8b1538a9f6.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/main-app-1a95778d57d5608f.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/pages/_app-abffdcde9d309a0c.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/pages/_error-94b8133dd8229633.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/chunks/polyfills-42372ed130431b0a.js",revision:"846118c33b2c0e922d7b3a7676f81f6f"},{url:"/_next/static/chunks/webpack-aec7dd89d1301a1c.js",revision:"x011D_mNjEo4t2wznxveG"},{url:"/_next/static/css/014dfbd8f7502d55.css",revision:"014dfbd8f7502d55"},{url:"/_next/static/css/2281641492dbea1c.css",revision:"2281641492dbea1c"},{url:"/_next/static/css/70e13213c805a4d4.css",revision:"70e13213c805a4d4"},{url:"/_next/static/css/9cbfcc82d95fdb4e.css",revision:"9cbfcc82d95fdb4e"},{url:"/_next/static/css/a7d6a5e7eaf7ea49.css",revision:"a7d6a5e7eaf7ea49"},{url:"/_next/static/css/dd35055f242c8ee6.css",revision:"dd35055f242c8ee6"},{url:"/_next/static/media/26a46d62cd723877-s.woff2",revision:"befd9c0fdfa3d8a645d5f95717ed6420"},{url:"/_next/static/media/55c55f0601d81cf3-s.woff2",revision:"43828e14271c77b87e3ed582dbff9f74"},{url:"/_next/static/media/581909926a08bbc8-s.woff2",revision:"f0b86e7c24f455280b8df606b89af891"},{url:"/_next/static/media/6d93bde91c0c2823-s.woff2",revision:"621a07228c8ccbfd647918f1021b4868"},{url:"/_next/static/media/97e0cb1ae144a2a9-s.woff2",revision:"e360c61c5bd8d90639fd4503c829c2dc"},{url:"/_next/static/media/a34f9d1faa5f3315-s.p.woff2",revision:"d4fe31e6a2aebc06b8d6e558c9141119"},{url:"/_next/static/media/df0a9ae256c0569c-s.woff2",revision:"d54db44de5ccb18886ece2fda72bdfe0"},{url:"/_next/static/media/dialog-box.c9ebc97b.svg",revision:"a500487819b9b1c606251ffaae40965a"},{url:"/_next/static/media/fa-brands-400.86ee2658.woff2",revision:"86ee2658"},{url:"/_next/static/media/fa-brands-400.8eaf0c88.ttf",revision:"8eaf0c88"},{url:"/_next/static/media/fa-regular-400.849b82e2.woff2",revision:"849b82e2"},{url:"/_next/static/media/fa-regular-400.bd1cf947.ttf",revision:"bd1cf947"},{url:"/_next/static/media/fa-solid-900.7a5aa5ab.ttf",revision:"7a5aa5ab"},{url:"/_next/static/media/fa-solid-900.ee698398.woff2",revision:"ee698398"},{url:"/_next/static/media/fa-v4compatibility.59487ca3.woff2",revision:"59487ca3"},{url:"/_next/static/media/fa-v4compatibility.c63df8a6.ttf",revision:"c63df8a6"},{url:"/_next/static/media/globo_texto.407f647c.svg",revision:"16913ee4d7e77fa49e5e6862d1532fbd"},{url:"/_next/static/media/smile.e9c6f79c.svg",revision:"f1aec54859508f8c360636ab4ec09ae0"},{url:"/_next/static/x011D_mNjEo4t2wznxveG/_buildManifest.js",revision:"3a12f3cc882dea042139b7f20787e280"},{url:"/_next/static/x011D_mNjEo4t2wznxveG/_ssgManifest.js",revision:"b6652df95db52feb4daf4eca35380933"},{url:"/file.svg",revision:"d09f95206c3fa0bb9bd9fefabfd0ea71"},{url:"/globe.svg",revision:"e52c08ce0a255991e9cbf23bd6828555"},{url:"/icons/calendar.svg",revision:"29b7205c99da7df16fba7deb4b5a2743"},{url:"/manifest.js",revision:"7570ce7c86bcb069d3760e5868c36470"},{url:"/media/files/alumnos.xlsx",revision:"e0f2566e466e30ab04810768b60b3f59"},{url:"/media/img/arrow.png",revision:"2eb7d98dd142feabd097ce3b12961948"},{url:"/media/img/dialog-box.svg",revision:"a500487819b9b1c606251ffaae40965a"},{url:"/media/img/globo_texto.svg",revision:"16913ee4d7e77fa49e5e6862d1532fbd"},{url:"/media/img/mas-info.svg",revision:"6789b271d5e923a9d9649e83b9b6b8c1"},{url:"/media/img/no-data-s.png",revision:"f1dc0c12740dd9b54b0aecb0ab4cf2ef"},{url:"/media/img/ob-1.png",revision:"2169a7ab1ca92f82d0f0e065ca7d902f"},{url:"/media/img/ob-2.png",revision:"427174a2292d475b127a3d5a7656d681"},{url:"/media/img/ob-3.png",revision:"90665eee62284833549daf1b62d9941f"},{url:"/media/img/ob-4.png",revision:"afa0287c6298df4f95d55847bee57743"},{url:"/media/img/planification-reseources-image.svg",revision:"c361e8ff0ca714572a8d833a48d87c03"},{url:"/media/img/smile.svg",revision:"f1aec54859508f8c360636ab4ec09ae0"},{url:"/media/img/students.png",revision:"8c84481aec13c387749167614187852b"},{url:"/media/img/user-photo.png",revision:"5b6b41e31a065a75557e7a0af72ee93b"},{url:"/next.svg",revision:"8e061864f388b47f33a1c3780831193e"},{url:"/vercel.svg",revision:"c0af2f507b369b085b35ef4bbe3bcf1e"},{url:"/window.svg",revision:"a2760511c65806022ad20adf74370ff3"}],{ignoreURLParametersMatching:[]}),e.cleanupOutdatedCaches(),e.registerRoute("/",new e.NetworkFirst({cacheName:"start-url",plugins:[{cacheWillUpdate:async({request:e,response:s,event:i,state:a})=>s&&"opaqueredirect"===s.type?new Response(s.body,{status:200,statusText:"OK",headers:s.headers}):s}]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:gstatic)\.com\/.*/i,new e.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:31536e3})]}),"GET"),e.registerRoute(/^https:\/\/fonts\.(?:googleapis)\.com\/.*/i,new e.StaleWhileRevalidate({cacheName:"google-fonts-stylesheets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:eot|otf|ttc|ttf|woff|woff2|font.css)$/i,new e.StaleWhileRevalidate({cacheName:"static-font-assets",plugins:[new e.ExpirationPlugin({maxEntries:4,maxAgeSeconds:604800})]}),"GET"),e.registerRoute(/\.(?:jpg|jpeg|gif|png|svg|ico|webp)$/i,new e.StaleWhileRevalidate({cacheName:"static-image-assets",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/image\?url=.+$/i,new e.StaleWhileRevalidate({cacheName:"next-image",plugins:[new e.ExpirationPlugin({maxEntries:64,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp3|wav|ogg)$/i,new e.CacheFirst({cacheName:"static-audio-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:mp4)$/i,new e.CacheFirst({cacheName:"static-video-assets",plugins:[new e.RangeRequestsPlugin,new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:js)$/i,new e.StaleWhileRevalidate({cacheName:"static-js-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:css|less)$/i,new e.StaleWhileRevalidate({cacheName:"static-style-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\/_next\/data\/.+\/.+\.json$/i,new e.StaleWhileRevalidate({cacheName:"next-data",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute(/\.(?:json|xml|csv)$/i,new e.NetworkFirst({cacheName:"static-data-assets",plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;const s=e.pathname;return!s.startsWith("/api/auth/")&&!!s.startsWith("/api/")}),new e.NetworkFirst({cacheName:"apis",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:16,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>{if(!(self.origin===e.origin))return!1;return!e.pathname.startsWith("/api/")}),new e.NetworkFirst({cacheName:"others",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:86400})]}),"GET"),e.registerRoute((({url:e})=>!(self.origin===e.origin)),new e.NetworkFirst({cacheName:"cross-origin",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:32,maxAgeSeconds:3600})]}),"GET")})); diff --git a/frontend/src/app/students/(config)/add-new/page.tsx b/frontend/src/app/students/(config)/add-new/page.tsx deleted file mode 100644 index ebd6dc9..0000000 --- a/frontend/src/app/students/(config)/add-new/page.tsx +++ /dev/null @@ -1,252 +0,0 @@ -"use client" -import { AddStudentAction, ImportStudentsAction } from "@/actions/addCourse.action"; -import ButtonContinue from "@/ui/buttons/buttonContinue"; -import ButtonNormal from "@/ui/buttons/buttonNormal"; -import { startTransition, useActionState, useState, useEffect } from "react" -import LoadingFile from "@/components/multiStepForm/loadingFile"; -import { IStudentRequest } from "@/interfaces/IRequests.interface"; -import { IconInfo } from "@/icons"; -import Link from "next/link"; - -const INITIAL_STATE = { - data: null -}; - -interface Props { - setActiveTab: (index: number) => void; - courseId: number | null; -} - -export default function AddNewStudensts({ setActiveTab, courseId }: Props) { - const [formState, formAction] = useActionState( - AddStudentAction, - INITIAL_STATE - ); - console.log(formState); - console.log('courseId', courseId); - const [studentName, setStudentName] = useState(""); - const [studentList, setStudentList] = useState({ alumnos: [] }); - const [isModalOpen, setIsModalOpen] = useState(false); - const [isImportModalOpen, setIsImportModalOpen] = useState(false); - const [loading, setLoading] = useState(false); - const [excelFile, setExcelFile] = useState(null); - const [importError, setImportError] = useState(null); - const [importSuccess, setImportSuccess] = useState(null); - - const handleAddStudent = () => { - if (studentName.trim()) { - const [lastName, ...firstNameParts] = studentName.split(' '); - const firstName = firstNameParts.join(' '); - const updatedList = { - alumnos: [...studentList.alumnos, { curso_id: courseId!, nombre: firstName, apellido: lastName }] - }; - - setStudentList(updatedList); - localStorage.setItem('studentsData', JSON.stringify(updatedList)); - - setStudentName(""); - } - }; - - - const handleSubmit = async (event: React.FormEvent) => { - event.preventDefault(); - if (studentList.alumnos.length === 0) return; - startTransition(() => { - formAction(studentList); - }); - - }; - - const handleSkip = () => { - setIsModalOpen(true); - }; - - const handleConfirm = () => { - setIsModalOpen(false); - setImportSuccess('Estudiantes importados correctamente, será redirigido en breve...'); - startTransition(() => { - formAction(studentList); - }); - setTimeout(() => { - setActiveTab(2); - }, 3000); - }; - - const handleCancel = () => { - setIsModalOpen(false); - }; - - const handleImport = () => { - setIsImportModalOpen(true); - } - - //cambiar nombre de la funcion y la logica cuando se pueda conectar - const handleImportData = async () => { - setLoading(true); - setImportError(null); - - if (studentList.alumnos.length === 0 && excelFile) { - const formData = new FormData(); - formData.append('file', excelFile); - formData.append('curso_id', courseId!.toString()); - - try { - const result = await ImportStudentsAction(formData); - console.log(result); - if (result.success) { - setStudentList({ alumnos: result.data.alumnos }); - setIsImportModalOpen(false); - setExcelFile(null); - } else { - setImportError('Ocurrio un error al importar estudiantes'); - } - } catch (error) { - console.log(error); - setImportError('Ocurrio un error al importar estudiantes'); - } finally { - setLoading(false); - } - } - } - - const handleCancelImport = () => { - setIsImportModalOpen(false); - setExcelFile(null); - } - - /* useEffect(() => { - if (formState.success) { - setActiveTab(2); - } - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [formState.success]); */ - - useEffect(() => { - const storedStudents = localStorage.getItem('studentsData'); - if (storedStudents) { - setStudentList(JSON.parse(storedStudents)); - } - }, []); - - return ( -
-
-
-

¿Quieres añadir tu lista de alumnos?

- No te preocupes si ahora no tienes la lista competa, podrás agregar o editar alumnos más tarde -
-
- -
- setStudentName(e.target.value)} - /> - - - O - - - -
-
Tu lista quedará ordenará automáticamente por orden alfabético
-
    - {studentList.alumnos.sort().map((student, index) => ( -
  • -

    {`${student.apellido} ${student.nombre}`}

    - -
  • - ))} -
-
-
-
- - - - -
-
-
- - {isModalOpen && ( -
-
-
-

Omitir Paso

- -
-

Puedes añadir esta información más tarde desde el menú de seguimiento.

-
- - -
-
-
- )} - - {isImportModalOpen && ( -
-
-
-
-

Importar desde Excel

-

Sube tu archivo Excel con la lista de alumnos. Asegúrate de que incluya una única columna para 'Apellido' y 'Nombre'.

-
- -
-
-
- setExcelFile(e.target.files![0])} - /> - -

{excelFile ? excelFile?.name + ' listo para subir' : ''}

-
-

O

-
-

{excelFile ? excelFile?.name : 'Arrastre y Suelte aquí'}

- setExcelFile(e.target.files![0])} - /> - - - -
-
-
- - -
- {importError &&
{importError}
} - {importSuccess &&
{importSuccess}
} -
-
- )} - {loading && } -
- ); -} \ No newline at end of file diff --git a/frontend/src/app/students/(monitoring)/attendance/page.tsx b/frontend/src/app/students/(monitoring)/attendance/page.tsx index b5a3208..0344abd 100644 --- a/frontend/src/app/students/(monitoring)/attendance/page.tsx +++ b/frontend/src/app/students/(monitoring)/attendance/page.tsx @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-unused-vars */ "use client"; import React, { useState, useEffect } from "react"; import SliderView from "@/components/studentsMonitoring/sliderOptionView"; @@ -18,7 +19,7 @@ export default function Attendance() { const configData = JSON.parse(localStorage.getItem("configData") || "{}"); const attendanceConfig = configData?.attendance?.selectedButtons || []; const studentData = localStorage.getItem("studentsData"); - + if (studentData) { const parsedData = JSON.parse(studentData); const studentsArray = Array.isArray(parsedData.alumnos) ? parsedData.alumnos : []; @@ -26,7 +27,7 @@ export default function Attendance() { } else { setStudentList(null); } - + setSelectedDays(attendanceConfig); setMounted(true); }, []); @@ -60,7 +61,7 @@ export default function Attendance() { return (
- +
{days.map(({ dayName, formattedDate, day }, index) => ( @@ -68,7 +69,7 @@ export default function Attendance() { diff --git a/frontend/src/app/students/(monitoring)/attitudinal/page.tsx b/frontend/src/app/students/(monitoring)/attitudinal/page.tsx index 51c72d2..fd173c1 100644 --- a/frontend/src/app/students/(monitoring)/attitudinal/page.tsx +++ b/frontend/src/app/students/(monitoring)/attitudinal/page.tsx @@ -14,7 +14,7 @@ export default function Attitudinal() { const daysOfWeek = ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado"]; const colors = ["bg-pink-300", "bg-yellow-100", "bg-green-200", "bg-cyan-200"]; const months = [ - "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", + "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre" ]; @@ -22,7 +22,7 @@ export default function Attitudinal() { const configData = JSON.parse(localStorage.getItem("configData") || "{}"); const attendanceConfig = configData?.attendance?.selectedButtons || []; const studentData = localStorage.getItem("studentsData"); - + if (studentData) { const parsedData = JSON.parse(studentData); const studentsArray = Array.isArray(parsedData.alumnos) ? parsedData.alumnos : []; @@ -93,7 +93,7 @@ export default function Attitudinal() { return (
- + { }} />
{selectedButton === "Diario" && days.map((day, index) => ( @@ -156,7 +156,7 @@ export default function Attitudinal() { type="button" className={`min-w-[170px] min-h-8 text-black border-2 border-black font-semibold text-sm px-4 rounded-md filter drop-shadow-[4px_4px_0px_#000000] ${colors[index % colors.length]}`} > - {cuatrimestre} + {cuatrimestre} {studentList && studentList.length > 0 && (
diff --git a/frontend/src/app/students/(monitoring)/exam/page.tsx b/frontend/src/app/students/(monitoring)/exam/page.tsx index 1ef6cb2..826ce58 100644 --- a/frontend/src/app/students/(monitoring)/exam/page.tsx +++ b/frontend/src/app/students/(monitoring)/exam/page.tsx @@ -100,7 +100,7 @@ export default function Exam() { return (
- + { }} />
diff --git a/frontend/src/app/students/(monitoring)/homework/page.tsx b/frontend/src/app/students/(monitoring)/homework/page.tsx index 4292946..96671aa 100644 --- a/frontend/src/app/students/(monitoring)/homework/page.tsx +++ b/frontend/src/app/students/(monitoring)/homework/page.tsx @@ -103,7 +103,7 @@ export default function Homework() { return (
- + { }} />
diff --git a/frontend/src/components/multiStepForm/index.tsx b/frontend/src/components/multiStepForm/index.tsx index ede4b51..f5504e6 100644 --- a/frontend/src/components/multiStepForm/index.tsx +++ b/frontend/src/components/multiStepForm/index.tsx @@ -11,10 +11,12 @@ interface Props { onlyPlanification?: boolean; subjectIdFromProps?: number; periodFromProps?: PeriodFromAction; + onlyStudents?: number; + courseIdFromParams?: number; } -export default function MultiStepForm({ onlyPlanification, subjectIdFromProps, periodFromProps }: Props) { - const [activeTab, setActiveTab] = useState(onlyPlanification ? 2 : 0); +export default function MultiStepForm({ onlyPlanification, subjectIdFromProps, periodFromProps, onlyStudents, courseIdFromParams }: Props) { + const [activeTab, setActiveTab] = useState(onlyStudents ? 1 : onlyPlanification ? 2 : 0); const [contentList, setContentList] = useState([]) const [courseId, setCourseId] = useState(null); const [planificationStep, setPlanificationStep] = useState(1); @@ -24,7 +26,7 @@ export default function MultiStepForm({ onlyPlanification, subjectIdFromProps, p const formElements = [ , - , + , , ]; diff --git a/frontend/src/components/studentsMonitoring/addNewStudent.tsx b/frontend/src/components/studentsMonitoring/addNewStudent.tsx index 8d57fb2..0b298f9 100644 --- a/frontend/src/components/studentsMonitoring/addNewStudent.tsx +++ b/frontend/src/components/studentsMonitoring/addNewStudent.tsx @@ -9,6 +9,7 @@ export default function AddNewStudent() { const [isEditMode, setIsEditMode] = useState(false); const [showModal, setShowModal] = useState(false); const [studentName, setStudentName] = useState(""); + // eslint-disable-next-line @typescript-eslint/no-unused-vars const [studentList, setStudentList] = useState({ alumnos: [] }); const [studentToDelete, setStudentToDelete] = useState(null); const [editingStudentId, setEditingStudentId] = useState(null); @@ -56,7 +57,7 @@ export default function AddNewStudent() { const handleEditModeToggle = () => { setIsEditMode((prevMode) => !prevMode); - + if (isEditMode) { window.location.reload(); } @@ -103,7 +104,7 @@ export default function AddNewStudent() { useEffect(() => { const alumnos = localStorage.getItem("studentsData"); - console.log("Cargando alumnos desde localStorage:", alumnos); + console.log("Cargando alumnos desde localStorage:", alumnos); try { const parsedData = alumnos ? JSON.parse(alumnos) : { alumnos: [] }; const studentsArray = Array.isArray(parsedData.alumnos) ? parsedData.alumnos : []; @@ -111,7 +112,7 @@ export default function AddNewStudent() { setData(studentsArray); } catch (error) { console.error("Error parsing students data:", error); - setData([]); + setData([]); } }, []) diff --git a/frontend/src/components/studentsMonitoring/dropdown.tsx b/frontend/src/components/studentsMonitoring/dropdown.tsx index 15b107a..c2ba444 100644 --- a/frontend/src/components/studentsMonitoring/dropdown.tsx +++ b/frontend/src/components/studentsMonitoring/dropdown.tsx @@ -73,9 +73,9 @@ export default function Dropdown() { }; const getInputBackgroundColor = () => { - if (numericValue !== "" && numericValue < passingGrade) { + if (numericValue !== "" && Number(numericValue) < passingGrade) { return "bg-red-200"; - } else if (numericValue !== "" && numericValue >= passingGrade) { + } else if (numericValue !== "" && Number(numericValue) >= passingGrade) { return "bg-green-200"; } return "bg-gray-100"; diff --git a/frontend/src/components/studentsMonitoring/dropdown/dropdownExam.tsx b/frontend/src/components/studentsMonitoring/dropdown/dropdownExam.tsx index 1947ad7..a08c7d3 100644 --- a/frontend/src/components/studentsMonitoring/dropdown/dropdownExam.tsx +++ b/frontend/src/components/studentsMonitoring/dropdown/dropdownExam.tsx @@ -52,9 +52,9 @@ export default function DropdownExam({ onGradeChange }: DropdownProps) { }; const getInputBackgroundColor = () => { - if (numericValue !== "" && numericValue < passingGrade) { + if (numericValue !== "" && Number(numericValue) < passingGrade) { return "bg-red-200"; - } else if (numericValue !== "" && numericValue >= passingGrade) { + } else if (numericValue !== "" && Number(numericValue) >= passingGrade) { return "bg-green-200"; } return "bg-gray-100"; diff --git a/frontend/src/components/studentsMonitoring/dropdown/dropdownHomework.tsx b/frontend/src/components/studentsMonitoring/dropdown/dropdownHomework.tsx index b72f332..caaff43 100644 --- a/frontend/src/components/studentsMonitoring/dropdown/dropdownHomework.tsx +++ b/frontend/src/components/studentsMonitoring/dropdown/dropdownHomework.tsx @@ -41,10 +41,10 @@ export default function DropdownHomework({ onGradeChange }: DropdownProps) { } }, []); - const handleSelectChange = (event: React.ChangeEvent) => { + /* const handleSelectChange = (event: React.ChangeEvent) => { setSelectedOption(event.target.value); onGradeChange(event.target.value); - }; + }; */ const handleInputChange = (event: React.ChangeEvent) => { const value = Number(event.target.value); @@ -57,9 +57,9 @@ export default function DropdownHomework({ onGradeChange }: DropdownProps) { }; const getInputBackgroundColor = () => { - if (numericValue !== "" && numericValue < passingGrade) { + if (numericValue !== "" && Number(numericValue) < passingGrade) { return "bg-red-200"; - } else if (numericValue !== "" && numericValue >= passingGrade) { + } else if (numericValue !== "" && Number(numericValue) >= passingGrade) { return "bg-green-200"; } return "bg-gray-100"; diff --git a/frontend/src/interfaces/IExam.interfaces.ts b/frontend/src/interfaces/IExam.interfaces.ts index dc76027..15688c8 100644 --- a/frontend/src/interfaces/IExam.interfaces.ts +++ b/frontend/src/interfaces/IExam.interfaces.ts @@ -1,3 +1,4 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ export interface IExam { alumno_id: number examen_asignado_id: number diff --git a/frontend/src/interfaces/IHomework.interfaces.ts b/frontend/src/interfaces/IHomework.interfaces.ts index 3e7a13c..296e42d 100644 --- a/frontend/src/interfaces/IHomework.interfaces.ts +++ b/frontend/src/interfaces/IHomework.interfaces.ts @@ -1,10 +1,11 @@ +/* eslint-disable @typescript-eslint/no-explicit-any */ export interface IHomework { - alumno_id: number - tarea_asignada_id: number - fecha: string - nombre: string - tipo_calificacion: 'approved' | 'numeric' | 'conceptual' - tipo_tarea: string - calificacion?: any - cuatrimestre?: any + alumno_id: number + tarea_asignada_id: number + fecha: string + nombre: string + tipo_calificacion: 'approved' | 'numeric' | 'conceptual' + tipo_tarea: string + calificacion?: any + cuatrimestre?: any }