- Título aquí 🐧
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam eu tristique elit. Nullam lorem turpis, cursus in augue id, dignissim rhoncus dolor. Suspendisse vitae elit et orci auctor rutrum. Sed lobortis iaculis dapibus. Mauris vel dapibus elit. In risus est, lobortis ut scelerisque at, luctus pretium lorem. Vestibulum condimentum erat ut sagittis commodo. Nulla facilisi. Praesent vel dolor molestie, molestie ipsum ut, efficitur est. Nulla rutrum pulvinar eros, a faucibus orci vehicula sed. In tincidunt in sapien vel convallis. Aliquam nec leo sit amet libero efficitur imperdiet ac sit amet leo. Vivamus ex tellus, tempor aliquam orci eu, eleifend tempus odio.
-
- Aliquam mollis sollicitudin pharetra. Quisque malesuada, nulla nec sodales consequat, nulla felis imperdiet metus, auctor aliquet lacus urna vel neque. Cras cursus nisl eu erat vehicula, sed semper turpis porttitor. Fusce ut lectus a erat gravida ullamcorper ut ut neque. Pellentesque rutrum, nibh vitae egestas ullamcorper, justo dolor hendrerit magna, in rhoncus ante magna at velit. Fusce cursus, ante sed dictum gravida, ex lacus pulvinar libero, quis egestas sapien leo id nisi. In eget vestibulum ante. Vivamus venenatis eros lorem, ac tincidunt tortor elementum at.
-
-
+
- {typeof error === 'string' ? error : 'An unexpected error occurred.'}
-
- );
-};
-
-export const resetErrorIfEditEnds = (editMode, setError) => {
- if (!editMode) setError(null);
-};
diff --git a/src/util/array.js b/src/util/array.js
new file mode 100644
index 0000000..7480a5d
--- /dev/null
+++ b/src/util/array.js
@@ -0,0 +1,5 @@
+const random = (arr) => {
+ return arr[Math.floor(Math.random() * arr.length)]
+}
+
+export { random }
\ No newline at end of file
diff --git a/src/util/parsers/dateParser.js b/src/util/parsers/dateParser.js
deleted file mode 100644
index dc80506..0000000
--- a/src/util/parsers/dateParser.js
+++ /dev/null
@@ -1,30 +0,0 @@
-export const DateParser = {
- sqlToString: (sqlDate) => {
- const [datePart] = sqlDate.split('T');
- const [year, month, day] = datePart.split('-');
- return `${day}/${month}/${year}`;
- },
-
- timestampToString: (timestamp) => {
- const [datePart] = timestamp.split('T');
- const [year, month, day] = datePart.split('-');
- return `${day}/${month}/${year}`;
- },
-
- isoToStringWithTime: (isoString) => {
- if (!isoString) return '—';
-
- const date = new Date(isoString);
- if (isNaN(date)) return '—'; // Para proteger aún más por si llega basura
-
- return new Intl.DateTimeFormat('es-ES', {
- day: '2-digit',
- month: '2-digit',
- year: 'numeric',
- hour: '2-digit',
- minute: '2-digit',
- hour12: false,
- timeZone: 'Europe/Madrid'
- }).format(date);
- }
-};
diff --git a/src/util/parsers/errorParser.js b/src/util/parsers/errorParser.js
deleted file mode 100644
index 971bcd8..0000000
--- a/src/util/parsers/errorParser.js
+++ /dev/null
@@ -1,10 +0,0 @@
-export const errorParser = (err) => {
- const message = err.response?.data?.message;
- try {
- const parsed = JSON.parse(message);
- return Object.values(parsed)[0];
- // eslint-disable-next-line no-unused-vars
- } catch (e) {
- return message || err.message || "Unknown error";
- }
-};
diff --git a/src/util/passwordGenerator.js b/src/util/passwordGenerator.js
deleted file mode 100644
index 9a99610..0000000
--- a/src/util/passwordGenerator.js
+++ /dev/null
@@ -1,29 +0,0 @@
-export const generateSecurePassword = (length = 12) => {
- const upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
- const lower = 'abcdefghijklmnopqrstuvwxyz';
- const digits = '0123456789';
- const symbols = '!@#$%^&*'; // <- compatibles con bcrypt
- const all = upper + lower + digits + symbols;
-
- if (length < 8) length = 8;
-
- const getRand = (chars) => chars[Math.floor(Math.random() * chars.length)];
-
- let password = [
- getRand(upper),
- getRand(lower),
- getRand(digits),
- getRand(symbols),
- ];
-
- for (let i = password.length; i < length; i++) {
- password.push(getRand(all));
- }
-
- for (let i = password.length - 1; i > 0; i--) {
- const j = Math.floor(Math.random() * (i + 1));
- [password[i], password[j]] = [password[j], password[i]];
- }
-
- return password.join('');
-};
diff --git a/src/util/tokenUtils.js b/src/util/tokenUtils.js
deleted file mode 100644
index 38e5970..0000000
--- a/src/util/tokenUtils.js
+++ /dev/null
@@ -1,7 +0,0 @@
-export const parseJwt = (token) => {
- try {
- return JSON.parse(atob(token.split('.')[1]));
- } catch (e) {
- return null;
- }
-};