From 94fd0c618811fe075c2cb433a477372517f0aa81 Mon Sep 17 00:00:00 2001 From: Ravinou <39600829+Ravinou@users.noreply.github.com> Date: Mon, 13 May 2024 22:24:53 +0200 Subject: [PATCH 001/366] =?UTF-8?q?=F0=9F=A5=87=20Thanking=20a=20new=20spo?= =?UTF-8?q?nsor=20=F0=9F=A5=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thank you very much @royalmoose for sponsoring ! This commit is dedicated to thanking you. You give me strength to continue the work! --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0441a61..691ab1b 100644 --- a/README.md +++ b/README.md @@ -70,10 +70,14 @@ Check the online documentation [just here](https://borgwarehouse.com/docs/admin- ## ❤️ Special thanks to sponsors ❤️ - +### 🥇 Current sponsors 🥇 + +#### Past sponsors + + [next.js]: https://img.shields.io/badge/next.js-000000?style=for-the-badge&logo=nextdotjs&logoColor=white [next-url]: https://nextjs.org/ [react.js]: https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB From 779cceacf223e04b6ce2593285aa268a225b230f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 19:56:46 +0000 Subject: [PATCH 002/366] --- updated-dependencies: - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1e645f5..292de3e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.51.4", + "react-hook-form": "^7.51.5", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", @@ -4015,9 +4015,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.51.4", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.4.tgz", - "integrity": "sha512-V14i8SEkh+V1gs6YtD0hdHYnoL4tp/HX/A45wWQN15CYr9bFRmmRdYStSO5L65lCCZRF+kYiSKhm9alqbcdiVA==", + "version": "7.51.5", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.5.tgz", + "integrity": "sha512-J2ILT5gWx1XUIJRETiA7M19iXHlG74+6O3KApzvqB/w8S5NQR7AbU8HVZrMALdmDgWpRPYiZJl0zx8Z4L2mP6Q==", "engines": { "node": ">=12.22.0" }, diff --git a/package.json b/package.json index f94b117..8bbe6e2 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.51.4", + "react-hook-form": "^7.51.5", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", From a79a91ecb0cc47c3977f8a17d8843818a1a2e487 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 21 May 2024 19:57:00 +0000 Subject: [PATCH 003/366] --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 1e645f5..7b38bcc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.3.0", + "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.2", "next": "^14.2.3", @@ -710,20 +710,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.3.0.tgz", - "integrity": "sha512-PLVe9d7b59sKytbx00KgeGhQG3N176Ezv8YMmsnSz4s0ifDzMWlp/h2wEfQZ0ZNe8e377GY2OW6kovUe3Rnd0g==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.5.0.tgz", + "integrity": "sha512-I53dC3ZSHQ2MZFGvDYJelfXm91L2bTTixS4w5jTAulLhHbCZso5Bih4Rk/NYZxlngLQMKHvEYwZQ+6w/WluKiA==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.3.0.tgz", - "integrity": "sha512-Qn1Po+0gErh1zCWlaOdoVoGqeonWfSuiboYgwZBs6PIJNsj7yr3bIa4BkHmgJgtlXLT9LvCzt/RvwlgjxLfjjg==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.5.0.tgz", + "integrity": "sha512-bn05XKZV3ZfOv5Jr1FCTmVPOQGBVJoA4NefrnR919rqg6WGXAa08NovONHJGSuMxXUMV3b9Cni85diIW/E9yuw==", "dependencies": { - "@tabler/icons": "3.3.0" + "@tabler/icons": "3.5.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index f94b117..74fa340 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@tabler/icons-react": "^3.3.0", + "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.2", "next": "^14.2.3", From 56098d3f8dd9faeba672888f9e28899e1445afe1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 24 May 2024 21:25:28 +0000 Subject: [PATCH 004/366] build(deps): bump chart.js from 4.4.2 to 4.4.3 Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.2 to 4.4.3. - [Release notes](https://github.com/chartjs/Chart.js/releases) - [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.2...v4.4.3) --- updated-dependencies: - dependency-name: chart.js dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7b38bcc..0d4dee1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "dependencies": { "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", - "chart.js": "^4.4.2", + "chart.js": "^4.4.3", "next": "^14.2.3", "next-auth": "^4.24.7", "nodemailer": "^6.9.13", @@ -1293,9 +1293,9 @@ } }, "node_modules/chart.js": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.2.tgz", - "integrity": "sha512-6GD7iKwFpP5kbSD4MeRRRlTnQvxfQREy36uEtm1hzHzcOqwWx0YEHuspuoNlslu+nciLIB7fjjsHkUv/FzFcOg==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.3.tgz", + "integrity": "sha512-qK1gkGSRYcJzqrrzdR6a+I0vQ4/R+SoODXyAjscQ/4mzuNzySaMCd+hyVxitSY1+L2fjPD1Gbn+ibNqRmwQeLw==", "dependencies": { "@kurkle/color": "^0.3.0" }, diff --git a/package.json b/package.json index 74fa340..c215d1e 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "dependencies": { "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", - "chart.js": "^4.4.2", + "chart.js": "^4.4.3", "next": "^14.2.3", "next-auth": "^4.24.7", "nodemailer": "^6.9.13", From 52ed5512006f13b5b3a2d5ed9df601d3b941e5a4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jun 2024 19:11:41 +0000 Subject: [PATCH 005/366] build(deps-dev): bump prettier from 3.2.5 to 3.3.2 Bumps [prettier](https://github.com/prettier/prettier) from 3.2.5 to 3.3.2. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.2.5...3.3.2) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 64c3491..2622f77 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ }, "devDependencies": { "eslint-config-next": "^14.2.3", - "prettier": "^3.2.5" + "prettier": "^3.3.2" } }, "node_modules/@babel/code-frame": { @@ -3923,9 +3923,9 @@ } }, "node_modules/prettier": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", - "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", + "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 4d91e97..69e1e44 100644 --- a/package.json +++ b/package.json @@ -26,6 +26,6 @@ }, "devDependencies": { "eslint-config-next": "^14.2.3", - "prettier": "^3.2.5" + "prettier": "^3.3.2" } } From 3f8fbb77bb6805c6a8c566789e1ce0f14e4b0f08 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Jun 2024 19:47:27 +0000 Subject: [PATCH 006/366] build(deps): bump next from 14.2.3 to 14.2.4 Bumps [next](https://github.com/vercel/next.js) from 14.2.3 to 14.2.4. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.3...v14.2.4) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 88 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index 64c3491..f206aa1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.3", + "next": "^14.2.4", "next-auth": "^4.24.7", "nodemailer": "^6.9.13", "react": "^18.3.1", @@ -488,9 +488,9 @@ "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" }, "node_modules/@next/env": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", - "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz", + "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.3", @@ -502,9 +502,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz", - "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz", + "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==", "cpu": [ "arm64" ], @@ -517,9 +517,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", - "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz", + "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==", "cpu": [ "x64" ], @@ -532,9 +532,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", - "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz", + "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==", "cpu": [ "arm64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", - "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz", + "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==", "cpu": [ "arm64" ], @@ -562,9 +562,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", - "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz", + "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==", "cpu": [ "x64" ], @@ -577,9 +577,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", - "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz", + "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==", "cpu": [ "x64" ], @@ -592,9 +592,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", - "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz", + "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==", "cpu": [ "arm64" ], @@ -607,9 +607,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", - "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz", + "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==", "cpu": [ "ia32" ], @@ -622,9 +622,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", - "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz", + "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==", "cpu": [ "x64" ], @@ -3442,11 +3442,11 @@ "peer": true }, "node_modules/next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", - "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz", + "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==", "dependencies": { - "@next/env": "14.2.3", + "@next/env": "14.2.4", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -3461,15 +3461,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.3", - "@next/swc-darwin-x64": "14.2.3", - "@next/swc-linux-arm64-gnu": "14.2.3", - "@next/swc-linux-arm64-musl": "14.2.3", - "@next/swc-linux-x64-gnu": "14.2.3", - "@next/swc-linux-x64-musl": "14.2.3", - "@next/swc-win32-arm64-msvc": "14.2.3", - "@next/swc-win32-ia32-msvc": "14.2.3", - "@next/swc-win32-x64-msvc": "14.2.3" + "@next/swc-darwin-arm64": "14.2.4", + "@next/swc-darwin-x64": "14.2.4", + "@next/swc-linux-arm64-gnu": "14.2.4", + "@next/swc-linux-arm64-musl": "14.2.4", + "@next/swc-linux-x64-gnu": "14.2.4", + "@next/swc-linux-x64-musl": "14.2.4", + "@next/swc-win32-arm64-msvc": "14.2.4", + "@next/swc-win32-ia32-msvc": "14.2.4", + "@next/swc-win32-x64-msvc": "14.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/package.json b/package.json index 4d91e97..2e845e0 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@tabler/icons-react": "^3.5.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.3", + "next": "^14.2.4", "next-auth": "^4.24.7", "nodemailer": "^6.9.13", "react": "^18.3.1", From 02efa8ad949f1c8ca8f0493360b32c384cd822ed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 14 Jun 2024 19:13:53 +0000 Subject: [PATCH 007/366] build(deps): bump @tabler/icons-react from 3.5.0 to 3.6.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.5.0 to 3.6.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.6.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 64c3491..f2bf1e5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.5.0", + "@tabler/icons-react": "^3.6.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.3", @@ -710,20 +710,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.5.0.tgz", - "integrity": "sha512-I53dC3ZSHQ2MZFGvDYJelfXm91L2bTTixS4w5jTAulLhHbCZso5Bih4Rk/NYZxlngLQMKHvEYwZQ+6w/WluKiA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.6.0.tgz", + "integrity": "sha512-Zv0Ofc64RCMpZ2F8CvsWAphrSjerx5hEErt/RMmE+W8r4E5l5Lizi+My9KbbZQ4NyAtrtrOX80OY1oROZrRzEA==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.5.0.tgz", - "integrity": "sha512-bn05XKZV3ZfOv5Jr1FCTmVPOQGBVJoA4NefrnR919rqg6WGXAa08NovONHJGSuMxXUMV3b9Cni85diIW/E9yuw==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.6.0.tgz", + "integrity": "sha512-mkYGxlphNzvKq32teL+Z8wZW7I9zDftmNPX38UnZVCGjss2qbg0puqLhi1unfm5Y0CSefg+iAQrsjSL+DHx9YA==", "dependencies": { - "@tabler/icons": "3.5.0" + "@tabler/icons": "3.6.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index 4d91e97..ccd02c7 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@tabler/icons-react": "^3.5.0", + "@tabler/icons-react": "^3.6.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.3", From 81ed817045fe1646b05977fc9d2f9651da5987e6 Mon Sep 17 00:00:00 2001 From: Marc Ole Bulling Date: Sat, 15 Jun 2024 16:41:19 +0200 Subject: [PATCH 008/366] Make ARGs complient with Docker specs --- Dockerfile | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 07615dd..62386b6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ -FROM node:20-bookworm-slim as base - ARG UID=1001 ARG GID=1001 +FROM node:20-bookworm-slim as base + # build stage FROM base AS deps @@ -27,6 +27,9 @@ RUN npm run build # run stage FROM base AS runner +ARG UID +ARG GID + ENV NODE_ENV production RUN echo 'deb http://deb.debian.org/debian bookworm-backports main' >> /etc/apt/sources.list @@ -53,4 +56,4 @@ USER borgwarehouse EXPOSE 3000 22 -ENTRYPOINT ["./docker-bw-init.sh"] \ No newline at end of file +ENTRYPOINT ["./docker-bw-init.sh"] From 8a7e30d008550616398fc7b356976478d8540cd4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 16 Jun 2024 20:11:29 +0000 Subject: [PATCH 009/366] build(deps-dev): bump eslint-config-next from 14.2.3 to 14.2.4 Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 14.2.3 to 14.2.4. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.4/packages/eslint-config-next) --- updated-dependencies: - dependency-name: eslint-config-next dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 51 +++++++++++++++++------------------------------ package.json | 2 +- 2 files changed, 19 insertions(+), 34 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3b97f8d..549ce58 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "eslint-config-next": "^14.2.3", + "eslint-config-next": "^14.2.4", "prettier": "^3.3.2" } }, @@ -493,9 +493,9 @@ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", - "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz", + "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -1804,12 +1804,12 @@ } }, "node_modules/eslint-config-next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz", - "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz", + "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "14.2.3", + "@next/eslint-plugin-next": "14.2.4", "@rushstack/eslint-patch": "^1.3.3", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", @@ -2391,9 +2391,9 @@ } }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", "dev": true, "dependencies": { "cross-spawn": "^7.0.0", @@ -2531,21 +2531,6 @@ "node": ">=10.13.0" } }, - "node_modules/glob/node_modules/minimatch": { - "version": "9.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz", - "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/globals": { "version": "13.24.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", @@ -3403,9 +3388,9 @@ } }, "node_modules/minipass": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz", - "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, "engines": { "node": ">=16 || 14 >=14.17" @@ -3807,16 +3792,16 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz", - "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" diff --git a/package.json b/package.json index e3826f2..81b2eae 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "eslint-config-next": "^14.2.3", + "eslint-config-next": "^14.2.4", "prettier": "^3.3.2" } } From b37bfa37dfd6ee9c0aaf0e1ca88549696b3fe7f3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 19:12:16 +0000 Subject: [PATCH 010/366] build(deps): bump docker/build-push-action from 5 to 6 Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5 to 6. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v5...v6) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/docker-image-develop.yml | 2 +- .github/workflows/docker-image-latest.yml | 2 +- .github/workflows/docker-image-release.yml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-image-develop.yml b/.github/workflows/docker-image-develop.yml index 80daaea..4ce762a 100644 --- a/.github/workflows/docker-image-develop.yml +++ b/.github/workflows/docker-image-develop.yml @@ -21,7 +21,7 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . push: true diff --git a/.github/workflows/docker-image-latest.yml b/.github/workflows/docker-image-latest.yml index f273b46..f3a4554 100644 --- a/.github/workflows/docker-image-latest.yml +++ b/.github/workflows/docker-image-latest.yml @@ -21,7 +21,7 @@ jobs: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . push: true diff --git a/.github/workflows/docker-image-release.yml b/.github/workflows/docker-image-release.yml index 26dd466..eabb0d2 100644 --- a/.github/workflows/docker-image-release.yml +++ b/.github/workflows/docker-image-release.yml @@ -24,7 +24,7 @@ jobs: id: get_release_tag run: echo "::set-output name=TAG::${{ github.event.release.tag_name }}" - name: Build and push - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . push: true From d51103c4f5ac3ab969f768dfe610fac686f27e82 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jun 2024 19:21:44 +0000 Subject: [PATCH 011/366] build(deps): bump react-hook-form from 7.51.5 to 7.52.0 Bumps [react-hook-form](https://github.com/react-hook-form/react-hook-form) from 7.51.5 to 7.52.0. - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.51.5...v7.52.0) --- updated-dependencies: - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 10 +++++----- package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 549ce58..ee1472f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.51.5", + "react-hook-form": "^7.52.0", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", @@ -4000,9 +4000,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.51.5", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.51.5.tgz", - "integrity": "sha512-J2ILT5gWx1XUIJRETiA7M19iXHlG74+6O3KApzvqB/w8S5NQR7AbU8HVZrMALdmDgWpRPYiZJl0zx8Z4L2mP6Q==", + "version": "7.52.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.0.tgz", + "integrity": "sha512-mJX506Xc6mirzLsmXUJyqlAI3Kj9Ph2RhplYhUVffeOQSnubK2uVqBFOBJmvKikvbFV91pxVXmDiR+QMF19x6A==", "engines": { "node": ">=12.22.0" }, @@ -4011,7 +4011,7 @@ "url": "https://opencollective.com/react-hook-form" }, "peerDependencies": { - "react": "^16.8.0 || ^17 || ^18" + "react": "^16.8.0 || ^17 || ^18 || ^19" } }, "node_modules/react-is": { diff --git a/package.json b/package.json index 81b2eae..cbeed92 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.51.5", + "react-hook-form": "^7.52.0", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", From b620cd27b8d746abe72b7b9555b8da0282605570 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 19 Jun 2024 19:42:23 +0000 Subject: [PATCH 012/366] build(deps): bump nodemailer from 6.9.13 to 6.9.14 Bumps [nodemailer](https://github.com/nodemailer/nodemailer) from 6.9.13 to 6.9.14. - [Release notes](https://github.com/nodemailer/nodemailer/releases) - [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodemailer/nodemailer/compare/v6.9.13...v6.9.14) --- updated-dependencies: - dependency-name: nodemailer dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 549ce58..175ac3f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,7 @@ "chart.js": "^4.4.3", "next": "^14.2.4", "next-auth": "^4.24.7", - "nodemailer": "^6.9.13", + "nodemailer": "^6.9.14", "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", @@ -3503,9 +3503,9 @@ } }, "node_modules/nodemailer": { - "version": "6.9.13", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.13.tgz", - "integrity": "sha512-7o38Yogx6krdoBf3jCAqnIN4oSQFx+fMa0I7dK1D+me9kBxx12D+/33wSb+fhOCtIxvYJ+4x4IMEhmhCKfAiOA==", + "version": "6.9.14", + "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.14.tgz", + "integrity": "sha512-Dobp/ebDKBvz91sbtRKhcznLThrKxKt97GI2FAlAyy+fk19j73Uz3sBXolVtmcXjaorivqsbbbjDY+Jkt4/bQA==", "engines": { "node": ">=6.0.0" } diff --git a/package.json b/package.json index 81b2eae..7602f42 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "chart.js": "^4.4.3", "next": "^14.2.4", "next-auth": "^4.24.7", - "nodemailer": "^6.9.13", + "nodemailer": "^6.9.14", "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", From f7de065ee2bd49dad4f6d090dc5ec365385f7680 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 25 Jun 2024 19:50:59 +0000 Subject: [PATCH 013/366] build(deps): bump @tabler/icons-react from 3.6.0 to 3.7.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.6.0 to 3.7.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.7.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 549ce58..bc5d77c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.6.0", + "@tabler/icons-react": "^3.7.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.4", @@ -710,20 +710,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.6.0.tgz", - "integrity": "sha512-Zv0Ofc64RCMpZ2F8CvsWAphrSjerx5hEErt/RMmE+W8r4E5l5Lizi+My9KbbZQ4NyAtrtrOX80OY1oROZrRzEA==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.7.0.tgz", + "integrity": "sha512-lJGIZLSWrPO6VygRUbaVvQjWgL2EaiBMD8e6leCYUQ8ZPO4LIzKMq358C8KlhXJcyNiRz1Io3YWoc/DNTcWqSg==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.6.0.tgz", - "integrity": "sha512-mkYGxlphNzvKq32teL+Z8wZW7I9zDftmNPX38UnZVCGjss2qbg0puqLhi1unfm5Y0CSefg+iAQrsjSL+DHx9YA==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.7.0.tgz", + "integrity": "sha512-8AU4oO9pgLhHLOSGAJIsRhsTy7w8D7uKBlR0DIFxaILFA1fe2rC4wrNGYUtIFei82y41OuXz9vMk0Oe+IWT3SA==", "dependencies": { - "@tabler/icons": "3.6.0" + "@tabler/icons": "3.7.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index 81b2eae..4325ea2 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@tabler/icons-react": "^3.6.0", + "@tabler/icons-react": "^3.7.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.4", From 13aa4055ffe328ee1b8c2ebc4044f781be308676 Mon Sep 17 00:00:00 2001 From: Ravinou Date: Thu, 27 Jun 2024 19:56:13 +0200 Subject: [PATCH 014/366] fix: adapt email template to improve GMAIL compatibility #242 --- helpers/templates/attachments/alert-icon.png | Bin 0 -> 2835 bytes helpers/templates/attachments/valid-icon.png | Bin 0 -> 1120 bytes helpers/templates/emailAlertStatus.js | 259 ++++++++----------- helpers/templates/emailTest.js | 155 ++++++----- 4 files changed, 202 insertions(+), 212 deletions(-) create mode 100644 helpers/templates/attachments/alert-icon.png create mode 100644 helpers/templates/attachments/valid-icon.png diff --git a/helpers/templates/attachments/alert-icon.png b/helpers/templates/attachments/alert-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..082898a3698b28951750a9967f47167f1284848e GIT binary patch literal 2835 zcmV+u3+(iXP)EX>4Tx04R}tkv&MmKpe$iQ?()$K|6>#WT;MdQ4ztVR-p(LO0CeUgUO{|(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iM^PrkWj5K-DZG z6_1IT?5Y@eMHhzAk68#3GxfP-G6B!=bq^n3?;bkxtDMhls^O8_R9XiiS!&MI2UCjq-(z z%L?Z$&T6^Jn)l={4Cb_zWvDp!3DHKSqJTF3_mi_V=-EH%mKj!Ztv~iGtK^f0JZCK!Hn&v$^ZZW24YJ`L;wl^k^tPo0a3pI000SaNLh0L z01ejw01ejxLMWSf00007bV*G`2j~VH5<4g;J|?XI00|FCL_t(|+U=Zwa8%V5$3N%o zCIJ#GB+7{Phb>sERA(xJQfP+}3Hbqx(56$SwzbYkmHdW)j3OH-pi&?S8$hG2*3lWJ z!4?VGMM`Ze*0%hz?M!Ver6NvSKoW$3K$h&D{t=!2;9au2*$vt3{rvgP+xzyN?>+a& zyXRi8SS%Kc#bU8oES41F!D1a=UZ_{3@;gW>{n@gadW{q20aXftQNZvIO(zr%0b8>? zJhQe%PFMjFNY&jsEF5Az@O2=ghuhC1Jlp9|)6^mzR)AhoS)jK>JiLT5I>w*=0p%S7j9d_6pxAVKJS6OD1g`T3B-bC1VG+0ic;*t3Fu!bu ze$Ms*QQ-5b)4rGA0OMU-b>(aRplmS+_aMSXL(x0@0V%W*&{LbTk8c{Bk1CBO=L7hI zvPqTA26I7qu@+kaF2SOiI#iX%4CdqBESC0Eh9`q6;Iv^>)KFfiSylkk462JIz(|Ah zmeg;R4|*!2VVfL7dBR{GB@X3Q0QdHLltQJ!{N~Xdei&_8c{!{B4jP)VrB%~(q!r*| z)&Z`~LjMg&Lyg_s7?e42MOBf$0_3}D z>M+5-UG}7X1o$SaR~_mN=5s16j=ONB8o1#4-eKxNCG7=h8$v1Yd3XQu#D;*p8*kbE zpuC0flp*#floc^2tp%u_rn#a#YB0YysEakdeMT271x)J$t84N#J8cCBdsvB(XXu=2 z*6ftCy?w@}Ryiq9Yk0=Bp$ubZJ+M3B(rG%z@$h@V>tg=3KfsqjG!f4#DN)bWXE^}e z;x_$I4>vWo$UA8j0ggkX!TAw|szf;-pt)JX+T9_$F-Rh;POB!UtXNABCL7F8HwI*1 zqMz9qlvjbD7)DE9EiKZiX(2#$i4GPu*0|GQLwlVF)I$w$-qjI8oo}*w2fP4X9V`T{ zGt@-i#(*46*0UR1lf+H>v5x{F(|>PXU}JNLZO=O#H`^8)oo{tpP(;deSjAb zUN@NMl@;mD14;m&PaRe24fBpr1ZrZ8q;Exa&0K&+94di`TdN>K-GCC{lMtRN1h88)1dou*el(J%-IUodBG*gEv#TzY?B}_i!r6OD0O|Y ze3^6s&V}(|SY}jM+_XzhT`mC{w#hNXeGOXRGdNVGv;gy_>1dQPLk&BSH;x~1naLYM z9bjq#mz2%aYf@GK$4dk5%Z!Rc)v{$0x!eNOHcLo_g@#I!BVDXaNdZcWbgC#thVXvT z-zvN5Cp5OoHeiRr{O!sjy*;G_m^)T89Pk^=9pd2;`WYT!KJLqx5+QlZmq`&IYXlW^ z=WAa4Ho~fg7CF-21gLM7KMTgR#ycvCxF;n9cpzU#AS^MMkDPZBGRbL=@>)z>5S9V& z8%Auald&Hy;R0lMSqTg?yu|#3Y#UOS36vTpRWY!sRZc3#^vA1l62E+zPyxyd^$Wmv z4CY@n2IQrL3>|ZLNT81H{Q)Nh>hf|DsGP4S2+(zg#lWWwHO7}p8>c^F<4$=` zgtZ3qO<5!OZod#-;ibbtObU+4jLr- zWybzUU9+51c-UYb9t!t9gQHiYpt3@pD8g<-Ia~b!nMKN@QdYz-lQp`FI|6(@bwp?| zI6owgG5aCK5EZ2g_vK4Zq?a@MxCLn6%l*Ju!;E+B`t5R%0fIj$ZwfqXFyC1*U1#;F z09AMEFfeZOIVQ^E3@}1nJd9!aQX{Orcd`zOs}GImN8wI<2v-@V>x=wBIh{;r^d>JT zUY^`3$193;g(}~7F@JjKVCF;Y>)SC$Kvl8ch)`-U@6R323(2mHz0C`Xm)s$&2mWdp z&OA~%LqC~x0m8~U+z(As2TJ>7nX%V-L2*W2vxE>97|cT=VOAtnfbv3}0Tj5lJj(M8 z0r_1YHOWr0X7xRG$gR=}n6mipsVvY*NfDs7L^Bb?o-N@F8O8}qGI%k{Ye^v-rUK}6 z^F%~w@cGn9xBw^4Pz8L}Q2SRlZj*oZl>@xlEL5e5?vG_1sx*1C4Vewe_)heS{0$75 z+`_Hxd!ug-qnZgXn4wpO!W;tJmgEkhjPVDhlQd%PUHY-COx^}YxS0Rd>0xvEZ0F;UD z&tMs8%(7(?F&&K~!lc9r06A_Kugd1Pq&be4J+b&KUI8-QTPDkePNN^Zi4@?NTa>kT zaGQ+)_w((5w!{e_?qQ~CoR+5vDk8=`1aBlv0D;#Grr8z6T9dBMFDqmKj{d4_6c{-7u@JA^c`>c0+tkOU4JkE2`-yTc&P1kF?BJ9OKo#j!W^b#F&y6`^ADu0lM zcn+EBRbp06zGjCq_=YM|6mAx{p1wW+r0@9vEX>4Tx04R}tkv&MmKpe$iQ?()$K|6>#WT;MdQ4ztVR-p(LO0CeUgUO{|(4-+r zad8w}3l4rPRvlcNb#-tR1i=pwX9p)m7b)?7NufoI2gm(*ckglc4iM^PrkWj5K-DZG z6_1IT?5Y@eMHhzAk68#3GxfP-G6B!=bq^n3?;bkxtDMhls^O8_R9XiiS!&MI2UCjq-(z z%L?Z$&T6^Jn)l={4Cb_zWvDp!3DHKSqJTF3_mi_V=-EH%mKj!Ztv~iGtK^f0JZCK!Hn&v$^ZZW24YJ`L;wl^k^tPo0a3pI000SaNLh0L z01ejw01ejxLMWSf00007bV*G`2j~VH69W(yVMzY~00LY|L_t(|+U=V`ZqrZ{Mc=Es z3dADZ&eCpy2?EC;RcdE20oHge>?wupCd(8 zC%5W31IPZd2mk;80000000000000000000$N+=3S^1=M6s(lm@QPWrB>+GtFyUwVn`TxnfHPbg;?e#W5G5DU}BkPx{oJ_8>%dYmc zukuah%RRD=$J4#fUG6FJw|?@fSM<@X{$%<_{D5WD=O19*_1YydCv zlMLWVesTf4$xkYPNBPMF@G3uv0G{Q$58z$?$^gY+{>0Qy%irwn`E389nXIsT!-Jb= zB6=p(!w=P?$ut{py0`Q&rRLtcEIp7}oMS#JKYErQ&Wk30DD<9)zV|MFWq=C1YBp*v zt+hRu@*fCb??mJ_oV2ieYWiA4ev}`3;ZgpB7vcQi=DCV~tzMKw^yGY&jW+&=1MkIj z0dMVFP>K;^k-zrW(3B#?B!8p(fD|IcCV%4_G0zcVlwa#k*kgoP<=1``;VDAQ@*6!1 z@(>|*`HdgO#T>zd{Kf%djo?LokN~ko@FYK2fLJ1UlOHs|wj+3yA3VUeB6yYGN`S5- zsM$}i@>>hgN`xiP?iW9|_B=n@0IQ^#>9EdwSZln2=t{mw%P;9orrFq3kED7MruHG= zo?H2?2UtT|y*;s)mA&$9L}&6l3Gi2%=};DDxQp}L`g^neZ~yLzSmEJ<3jhEB00000 m00000000000001xKEDCVXYpy7K4ISg0000', to: mailTo, subject: 'Down status alert !', - text: 'Some repositories need attention ! Please, check your BorgWarehouse interface.', + text: 'Some repositories require your attention ! Please, check your BorgWarehouse interface.', html: ` -
-
- -
-
- BorgWarehouse -
-
- - - - - -
- -
-

Some repositories need attention,
` + + + + + + + + + +

+
+
+
BorgWarehouse
+
+ alert icon +
+
+

Some repositories require your attention, ` + username + - ` !

-
- -
-

- List of repositories with down status : -

-
    ` + + `!

    +
+
+

List of repositories with down status:

+
    ` + aliasTemplate(aliasList) + `
- -
- -
-
- 🚩 -
-
- Please remember that the status is based on - the last modification. Backups are - encrypted from end to end between your client and the - server - controlled by BorgWarehouse. Don't forget to - check the integrity of your backups regularly. -
-
-
-
-

- About - BorgWarehouse -

-
-
-`, +
+
+
🚩
+
+ Please remember that the status is based on the last modification. Backups are encrypted from end to end between your client and the server controlled by BorgWarehouse. Don't forget to check the integrity of your backups regularly. +
+
+
+ +
+ + + `, + attachments: [ + { + path: 'helpers/templates/attachments/alert-icon.png', + cid: 'alert-icon', + }, + ], }; return template; } diff --git a/helpers/templates/emailTest.js b/helpers/templates/emailTest.js index d0dcbc8..caafc6f 100644 --- a/helpers/templates/emailTest.js +++ b/helpers/templates/emailTest.js @@ -6,77 +6,98 @@ export default function emailTest(mailTo, username) { text: 'If you received this email then the mail configuration seems to be correct.', html: ` -
-
- -
-
- BorgWarehouse -
-
- - - - - -
- -
+ + + + +
+
+
+
BorgWarehouse
+
+ valid icon +
+
+

Good job, ` + + username + + `!

+
+
+

If you received this mail then the configuration seems to be correct.

+
+
+ -
-
- `, + + + `, + attachments: [ + { + path: 'helpers/templates/attachments/valid-icon.png', + cid: 'valid-icon', + }, + ], }; return template; } From 51bca3098d89159bf7f37cadb75a64f98d652061 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 2 Jul 2024 19:25:46 +0000 Subject: [PATCH 015/366] build(deps): bump react-hook-form from 7.52.0 to 7.52.1 Bumps [react-hook-form](https://github.com/react-hook-form/react-hook-form) from 7.52.0 to 7.52.1. - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.52.0...v7.52.1) --- updated-dependencies: - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2e46c20..342213e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.0", + "react-hook-form": "^7.52.1", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", @@ -4000,9 +4000,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.52.0", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.0.tgz", - "integrity": "sha512-mJX506Xc6mirzLsmXUJyqlAI3Kj9Ph2RhplYhUVffeOQSnubK2uVqBFOBJmvKikvbFV91pxVXmDiR+QMF19x6A==", + "version": "7.52.1", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.1.tgz", + "integrity": "sha512-uNKIhaoICJ5KQALYZ4TOaOLElyM+xipord+Ha3crEFhTntdLvWZqVY49Wqd/0GiVCA/f9NjemLeiNPjG7Hpurg==", "engines": { "node": ">=12.22.0" }, diff --git a/package.json b/package.json index d45b568..ac5dd4e 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.0", + "react-hook-form": "^7.52.1", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", From 65d0848376a5919e64b654015ddb241f53b70a76 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 5 Jul 2024 19:16:47 +0000 Subject: [PATCH 016/366] build(deps): bump @tabler/icons-react from 3.7.0 to 3.9.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.7.0 to 3.9.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.9.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2e46c20..b4636f0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.7.0", + "@tabler/icons-react": "^3.9.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.4", @@ -710,20 +710,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.7.0.tgz", - "integrity": "sha512-lJGIZLSWrPO6VygRUbaVvQjWgL2EaiBMD8e6leCYUQ8ZPO4LIzKMq358C8KlhXJcyNiRz1Io3YWoc/DNTcWqSg==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.9.0.tgz", + "integrity": "sha512-wZAwEu4iI0WmUA/bjstzNYri13D8X14f/SCRrzr2MyU+WP/6Vd+xq4YLM52dOS8V6ZVt+ujuE9IFkuJdsdSVAQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.7.0.tgz", - "integrity": "sha512-8AU4oO9pgLhHLOSGAJIsRhsTy7w8D7uKBlR0DIFxaILFA1fe2rC4wrNGYUtIFei82y41OuXz9vMk0Oe+IWT3SA==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.9.0.tgz", + "integrity": "sha512-7Fbcrb5LYBGd9rwfkgrJsvLYGqPqO4WV3u6lfqE2wRzEVcevDQcdvo8toKp5Jcc66MPMEmMg+/tnUGwFIKQmUQ==", "dependencies": { - "@tabler/icons": "3.7.0" + "@tabler/icons": "3.9.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index d45b568..31a90df 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@tabler/icons-react": "^3.7.0", + "@tabler/icons-react": "^3.9.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.4", From 125c0317cf1248b92330bc200ef8a51afd704c78 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2024 19:56:37 +0000 Subject: [PATCH 017/366] build(deps): bump next from 14.2.4 to 14.2.5 Bumps [next](https://github.com/vercel/next.js) from 14.2.4 to 14.2.5. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.4...v14.2.5) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 88 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd3b536..7209b45 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "@tabler/icons-react": "^3.9.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.4", + "next": "^14.2.5", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", @@ -488,9 +488,9 @@ "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" }, "node_modules/@next/env": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz", - "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==" + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.5.tgz", + "integrity": "sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.4", @@ -502,9 +502,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz", - "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.5.tgz", + "integrity": "sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==", "cpu": [ "arm64" ], @@ -517,9 +517,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz", - "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.5.tgz", + "integrity": "sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==", "cpu": [ "x64" ], @@ -532,9 +532,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz", - "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.5.tgz", + "integrity": "sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==", "cpu": [ "arm64" ], @@ -547,9 +547,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz", - "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.5.tgz", + "integrity": "sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==", "cpu": [ "arm64" ], @@ -562,9 +562,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz", - "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.5.tgz", + "integrity": "sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==", "cpu": [ "x64" ], @@ -577,9 +577,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz", - "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.5.tgz", + "integrity": "sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==", "cpu": [ "x64" ], @@ -592,9 +592,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz", - "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.5.tgz", + "integrity": "sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==", "cpu": [ "arm64" ], @@ -607,9 +607,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz", - "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.5.tgz", + "integrity": "sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==", "cpu": [ "ia32" ], @@ -622,9 +622,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz", - "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.5.tgz", + "integrity": "sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==", "cpu": [ "x64" ], @@ -3427,11 +3427,11 @@ "peer": true }, "node_modules/next": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz", - "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.5.tgz", + "integrity": "sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==", "dependencies": { - "@next/env": "14.2.4", + "@next/env": "14.2.5", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -3446,15 +3446,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.4", - "@next/swc-darwin-x64": "14.2.4", - "@next/swc-linux-arm64-gnu": "14.2.4", - "@next/swc-linux-arm64-musl": "14.2.4", - "@next/swc-linux-x64-gnu": "14.2.4", - "@next/swc-linux-x64-musl": "14.2.4", - "@next/swc-win32-arm64-msvc": "14.2.4", - "@next/swc-win32-ia32-msvc": "14.2.4", - "@next/swc-win32-x64-msvc": "14.2.4" + "@next/swc-darwin-arm64": "14.2.5", + "@next/swc-darwin-x64": "14.2.5", + "@next/swc-linux-arm64-gnu": "14.2.5", + "@next/swc-linux-arm64-musl": "14.2.5", + "@next/swc-linux-x64-gnu": "14.2.5", + "@next/swc-linux-x64-musl": "14.2.5", + "@next/swc-win32-arm64-msvc": "14.2.5", + "@next/swc-win32-ia32-msvc": "14.2.5", + "@next/swc-win32-x64-msvc": "14.2.5" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/package.json b/package.json index 510b9db..e4a6662 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@tabler/icons-react": "^3.9.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.4", + "next": "^14.2.5", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", From 814096239562e312e16a459564831abfe6883ba4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 10 Jul 2024 19:56:50 +0000 Subject: [PATCH 018/366] build(deps-dev): bump eslint-config-next from 14.2.4 to 14.2.5 Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 14.2.4 to 14.2.5. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.5/packages/eslint-config-next) --- updated-dependencies: - dependency-name: eslint-config-next dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 27 ++++++++++++--------------- package.json | 2 +- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd3b536..4e250b1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "eslint-config-next": "^14.2.4", + "eslint-config-next": "^14.2.5", "prettier": "^3.3.2" } }, @@ -493,9 +493,9 @@ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz", - "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.5.tgz", + "integrity": "sha512-LY3btOpPh+OTIpviNojDpUdIbHW9j0JBYBjsIp8IxtDFfYFyORvw3yNq6N231FVqQA7n7lwaf7xHbVJlA1ED7g==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -1804,12 +1804,12 @@ } }, "node_modules/eslint-config-next": { - "version": "14.2.4", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz", - "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==", + "version": "14.2.5", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.5.tgz", + "integrity": "sha512-zogs9zlOiZ7ka+wgUnmcM0KBEDjo4Jis7kxN1jvC0N4wynQ2MIx/KBkg4mVF63J5EK4W0QMCn7xO3vNisjaAoA==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "14.2.4", + "@next/eslint-plugin-next": "14.2.5", "@rushstack/eslint-patch": "^1.3.3", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", @@ -3808,13 +3808,10 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz", - "integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true }, "node_modules/path-type": { "version": "4.0.0", diff --git a/package.json b/package.json index 510b9db..3060094 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "eslint-config-next": "^14.2.4", + "eslint-config-next": "^14.2.5", "prettier": "^3.3.2" } } From 2d452e101cc833ecb37c9959d4a9dc0757d09489 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 14 Jul 2024 18:31:17 +0000 Subject: [PATCH 019/366] build(deps): bump @tabler/icons-react from 3.9.0 to 3.10.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.9.0 to 3.10.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.10.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4a7032f..8950903 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.9.0", + "@tabler/icons-react": "^3.10.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.5", @@ -710,20 +710,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.9.0.tgz", - "integrity": "sha512-wZAwEu4iI0WmUA/bjstzNYri13D8X14f/SCRrzr2MyU+WP/6Vd+xq4YLM52dOS8V6ZVt+ujuE9IFkuJdsdSVAQ==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.10.0.tgz", + "integrity": "sha512-jCMO+hDTw8Gn1CNb15zIENLQ9b0UplGXtjMnEUhDoKH+Q4fta8tBLUxZpPpFtpV+q+gzGqfM76xNAoD1GBpmnA==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.9.0.tgz", - "integrity": "sha512-7Fbcrb5LYBGd9rwfkgrJsvLYGqPqO4WV3u6lfqE2wRzEVcevDQcdvo8toKp5Jcc66MPMEmMg+/tnUGwFIKQmUQ==", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.10.0.tgz", + "integrity": "sha512-FTES0wJLIV+M9Ggng0j/6Kn/j43ZuBukR5n6DNV8Npk4woPCDcRjA+2KzKQyvSdwtPMAM6o1e8fQBPDS337Spg==", "dependencies": { - "@tabler/icons": "3.9.0" + "@tabler/icons": "3.10.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index 9bfd61f..464daa0 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "lint": "next lint" }, "dependencies": { - "@tabler/icons-react": "^3.9.0", + "@tabler/icons-react": "^3.10.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.5", From 3f57e310d2161536e558f17862c0df9590d5d1a9 Mon Sep 17 00:00:00 2001 From: Ravinou Date: Sun, 14 Jul 2024 21:24:25 +0200 Subject: [PATCH 020/366] =?UTF-8?q?config:=20=F0=9F=94=A7=20add=20husky=20?= =?UTF-8?q?and=20commitlint?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Thank you to @Benjmain for his contribution 🙏 --- .commitlintrc.mjs | 28 + .husky/append-icon.sh | 89 +++ .husky/commit-msg | 8 + .husky/prepare-commit-msg | 8 + package-lock.json | 1073 ++++++++++++++++++++++++++++++++++++- package.json | 7 +- 6 files changed, 1198 insertions(+), 15 deletions(-) create mode 100644 .commitlintrc.mjs create mode 100755 .husky/append-icon.sh create mode 100755 .husky/commit-msg create mode 100755 .husky/prepare-commit-msg diff --git a/.commitlintrc.mjs b/.commitlintrc.mjs new file mode 100644 index 0000000..ff2f6b1 --- /dev/null +++ b/.commitlintrc.mjs @@ -0,0 +1,28 @@ +export default { + extends: ['@commitlint/config-conventional'], + rules: { + 'type-enum': [ + 2, + 'always', + [ + 'build', + 'chore', + 'config', + 'doc', + 'feat', + 'fix', + 'hotfix', + 'i18n', + 'refactor', + 'revert', + 'test', + 'ui', + 'wip', + ], + ], + }, + ignores: [ + (message) => message.includes('WIP'), + (message) => message.includes('wip'), + ], +}; diff --git a/.husky/append-icon.sh b/.husky/append-icon.sh new file mode 100755 index 0000000..b15ddec --- /dev/null +++ b/.husky/append-icon.sh @@ -0,0 +1,89 @@ +#!/bin/bash + +# define log prefix +prefix="pre-commit:" + +# store message file, first and only param of hook +commitMessageFile="$1" + +# breaking change icon ! +boomIcon=':boom:' + +# check for breaking change in file content +# find any line starting with 'BREAKING CHANGE' +function checkBreakingChangeInBody() { + breakingChange='BREAKING CHANGE' + while read -r line; do + if [[ "$line" == "$breakingChange"* ]]; then + echo "$prefix found $breakingChange in message body" + return 0 + fi + done < "$1" + return 1 +} + +function findTypeIcon() { + # get message from 1st param + message="$1" + + # declare an icons for each authorized enum-type from `.commitlintrc.js` + declare -A icons + icons[build]='🤖' + icons[chore]='🧹' + icons[config]='🔧' + icons[deploy]='🚀' + icons[doc]='📚' + icons[feat]='✨' + icons[fix]='🐛' + icons[hotfix]='🚑' + icons[i18n]='💬' + icons[publish]='📦' + icons[refactor]='⚡' + icons[revert]='⏪' + icons[test]='✅' + icons[ui]='🎨' + icons[wip]='🚧' + icons[WIP]='🚧' + + for type in "${!icons[@]}"; do + # check if message subject contains breaking change pattern + if [[ "$message" =~ ^(.*)(!:){1}(.*)$ ]]; then + echo "$boomIcon" + return 0 + # else find corresponding type icon + elif [[ "$message" == "$type"* ]]; then + echo "${icons[$type]}" + return 0 + fi + done + return 1 +} + +# extract original message from the first line of file +message=$(head -n 1 <"$commitMessageFile") +echo "$prefix commit subject: '$message'" + +if checkBreakingChangeInBody "$commitMessageFile"; then + echo 'setting breaking change icon' + icon=$boomIcon +else + icon=$(findTypeIcon "$message") + if [ $? -eq 1 ]; then + echo "$prefix ❌ unable to find icon corresponding to commit type. Make sure your commit-lint config (.commitlintrc.js) and append-msg script (append-msg.sh) types match" + exit 1 + fi +fi + +# check if icon has been appended before +if [[ "$message" == *"$icon"* ]]; then + echo "⏭️ skipping icon append as it's been added before" + exit 0 +fi + +# otherwise append icon +updatedMessage="${message/:/: $icon}" + +# replace first line of file with updated message +sed -i "1s/.*/$updatedMessage/" "$commitMessageFile" + +echo "$prefix ✅ appended icon $icon to commit message subject" diff --git a/.husky/commit-msg b/.husky/commit-msg new file mode 100755 index 0000000..eb9834a --- /dev/null +++ b/.husky/commit-msg @@ -0,0 +1,8 @@ +#!/bin/bash +. "$(dirname "$0")/_/husky.sh" + +# run commit lint +npx commitlint --edit "$1" + +# run script to prepend message with icon +./.husky/append-icon.sh "$1" \ No newline at end of file diff --git a/.husky/prepare-commit-msg b/.husky/prepare-commit-msg new file mode 100755 index 0000000..5942463 --- /dev/null +++ b/.husky/prepare-commit-msg @@ -0,0 +1,8 @@ +#!/bin/bash +. "$(dirname "$0")/_/husky.sh" + +# Check if it's an amend commit +if [ "$2" = "commit" ]; then + echo "Amendment detected, appending icon..." + ./.husky/append-icon.sh "$1" +fi \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 8950903..9579fe7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,10 @@ "swr": "^2.2.5" }, "devDependencies": { + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", + "husky": "^9.0.11", "prettier": "^3.3.2" } }, @@ -169,6 +172,440 @@ "node": ">=6.9.0" } }, + "node_modules/@commitlint/cli": { + "version": "19.3.0", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.3.0.tgz", + "integrity": "sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g==", + "dev": true, + "dependencies": { + "@commitlint/format": "^19.3.0", + "@commitlint/lint": "^19.2.2", + "@commitlint/load": "^19.2.0", + "@commitlint/read": "^19.2.1", + "@commitlint/types": "^19.0.3", + "execa": "^8.0.1", + "yargs": "^17.0.0" + }, + "bin": { + "commitlint": "cli.js" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/config-conventional": { + "version": "19.2.2", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.2.2.tgz", + "integrity": "sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "conventional-changelog-conventionalcommits": "^7.0.2" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/config-validator": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-19.0.3.tgz", + "integrity": "sha512-2D3r4PKjoo59zBc2auodrSCaUnCSALCx54yveOFwwP/i2kfEAQrygwOleFWswLqK0UL/F9r07MFi5ev2ohyM4Q==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "ajv": "^8.11.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/config-validator/node_modules/ajv": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", + "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@commitlint/config-validator/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/@commitlint/ensure": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-19.0.3.tgz", + "integrity": "sha512-SZEpa/VvBLoT+EFZVb91YWbmaZ/9rPH3ESrINOl0HD2kMYsjvl0tF7nMHh0EpTcv4+gTtZBAe1y/SS6/OhfZzQ==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "lodash.camelcase": "^4.3.0", + "lodash.kebabcase": "^4.1.1", + "lodash.snakecase": "^4.1.1", + "lodash.startcase": "^4.4.0", + "lodash.upperfirst": "^4.3.1" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/execute-rule": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-19.0.0.tgz", + "integrity": "sha512-mtsdpY1qyWgAO/iOK0L6gSGeR7GFcdW7tIjcNFxcWkfLDF5qVbPHKuGATFqRMsxcO8OUKNj0+3WOHB7EHm4Jdw==", + "dev": true, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/format": { + "version": "19.3.0", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-19.3.0.tgz", + "integrity": "sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/format/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@commitlint/is-ignored": { + "version": "19.2.2", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-19.2.2.tgz", + "integrity": "sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "semver": "^7.6.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/lint": { + "version": "19.2.2", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-19.2.2.tgz", + "integrity": "sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA==", + "dev": true, + "dependencies": { + "@commitlint/is-ignored": "^19.2.2", + "@commitlint/parse": "^19.0.3", + "@commitlint/rules": "^19.0.3", + "@commitlint/types": "^19.0.3" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/load": { + "version": "19.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.2.0.tgz", + "integrity": "sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==", + "dev": true, + "dependencies": { + "@commitlint/config-validator": "^19.0.3", + "@commitlint/execute-rule": "^19.0.0", + "@commitlint/resolve-extends": "^19.1.0", + "@commitlint/types": "^19.0.3", + "chalk": "^5.3.0", + "cosmiconfig": "^9.0.0", + "cosmiconfig-typescript-loader": "^5.0.0", + "lodash.isplainobject": "^4.0.6", + "lodash.merge": "^4.6.2", + "lodash.uniq": "^4.5.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/load/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@commitlint/load/node_modules/cosmiconfig": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@commitlint/load/node_modules/cosmiconfig-typescript-loader": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-5.0.0.tgz", + "integrity": "sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==", + "dev": true, + "dependencies": { + "jiti": "^1.19.1" + }, + "engines": { + "node": ">=v16" + }, + "peerDependencies": { + "@types/node": "*", + "cosmiconfig": ">=8.2", + "typescript": ">=4" + } + }, + "node_modules/@commitlint/message": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-19.0.0.tgz", + "integrity": "sha512-c9czf6lU+9oF9gVVa2lmKaOARJvt4soRsVmbR7Njwp9FpbBgste5i7l/2l5o8MmbwGh4yE1snfnsy2qyA2r/Fw==", + "dev": true, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/parse": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-19.0.3.tgz", + "integrity": "sha512-Il+tNyOb8VDxN3P6XoBBwWJtKKGzHlitEuXA5BP6ir/3loWlsSqDr5aecl6hZcC/spjq4pHqNh0qPlfeWu38QA==", + "dev": true, + "dependencies": { + "@commitlint/types": "^19.0.3", + "conventional-changelog-angular": "^7.0.0", + "conventional-commits-parser": "^5.0.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/read": { + "version": "19.2.1", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.2.1.tgz", + "integrity": "sha512-qETc4+PL0EUv7Q36lJbPG+NJiBOGg7SSC7B5BsPWOmei+Dyif80ErfWQ0qXoW9oCh7GTpTNRoaVhiI8RbhuaNw==", + "dev": true, + "dependencies": { + "@commitlint/top-level": "^19.0.0", + "@commitlint/types": "^19.0.3", + "execa": "^8.0.1", + "git-raw-commits": "^4.0.0", + "minimist": "^1.2.8" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/resolve-extends": { + "version": "19.1.0", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-19.1.0.tgz", + "integrity": "sha512-z2riI+8G3CET5CPgXJPlzftH+RiWYLMYv4C9tSLdLXdr6pBNimSKukYP9MS27ejmscqCTVA4almdLh0ODD2KYg==", + "dev": true, + "dependencies": { + "@commitlint/config-validator": "^19.0.3", + "@commitlint/types": "^19.0.3", + "global-directory": "^4.0.1", + "import-meta-resolve": "^4.0.0", + "lodash.mergewith": "^4.6.2", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/resolve-extends/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@commitlint/rules": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-19.0.3.tgz", + "integrity": "sha512-TspKb9VB6svklxNCKKwxhELn7qhtY1rFF8ls58DcFd0F97XoG07xugPjjbVnLqmMkRjZDbDIwBKt9bddOfLaPw==", + "dev": true, + "dependencies": { + "@commitlint/ensure": "^19.0.3", + "@commitlint/message": "^19.0.0", + "@commitlint/to-lines": "^19.0.0", + "@commitlint/types": "^19.0.3", + "execa": "^8.0.1" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/to-lines": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-19.0.0.tgz", + "integrity": "sha512-vkxWo+VQU5wFhiP9Ub9Sre0FYe019JxFikrALVoD5UGa8/t3yOJEpEhxC5xKiENKKhUkTpEItMTRAjHw2SCpZw==", + "dev": true, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/top-level": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-19.0.0.tgz", + "integrity": "sha512-KKjShd6u1aMGNkCkaX4aG1jOGdn7f8ZI8TR1VEuNqUOjWTOdcDSsmglinglJ18JTjuBX5I1PtjrhQCRcixRVFQ==", + "dev": true, + "dependencies": { + "find-up": "^7.0.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/top-level/node_modules/find-up": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz", + "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==", + "dev": true, + "dependencies": { + "locate-path": "^7.2.0", + "path-exists": "^5.0.0", + "unicorn-magic": "^0.1.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@commitlint/top-level/node_modules/locate-path": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz", + "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==", + "dev": true, + "dependencies": { + "p-locate": "^6.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@commitlint/top-level/node_modules/p-limit": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz", + "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@commitlint/top-level/node_modules/p-locate": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz", + "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==", + "dev": true, + "dependencies": { + "p-limit": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@commitlint/top-level/node_modules/path-exists": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz", + "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + } + }, + "node_modules/@commitlint/top-level/node_modules/yocto-queue": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.1.1.tgz", + "integrity": "sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==", + "dev": true, + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@commitlint/types": { + "version": "19.0.3", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-19.0.3.tgz", + "integrity": "sha512-tpyc+7i6bPG9mvaBbtKUeghfyZSDgWquIDfMgqYtTbmZ9Y9VzEm2je9EYcQ0aoz5o7NvGS+rcDec93yO08MHYA==", + "dev": true, + "dependencies": { + "@types/conventional-commits-parser": "^5.0.0", + "chalk": "^5.3.0" + }, + "engines": { + "node": ">=v18" + } + }, + "node_modules/@commitlint/types/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true, + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/@emotion/babel-plugin": { "version": "11.11.0", "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.11.0.tgz", @@ -733,12 +1170,30 @@ "react": ">= 16" } }, + "node_modules/@types/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/json5": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true }, + "node_modules/@types/node": { + "version": "20.14.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", + "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", + "dev": true, + "dependencies": { + "undici-types": "~5.26.4" + } + }, "node_modules/@types/parse-json": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", @@ -953,8 +1408,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true, - "peer": true + "dev": true }, "node_modules/aria-query": { "version": "5.3.0", @@ -981,6 +1435,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array-ify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", + "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", + "dev": true + }, "node_modules/array-includes": { "version": "3.1.8", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", @@ -1207,12 +1667,12 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -1308,6 +1768,57 @@ "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz", "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==" }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/clsx": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", @@ -1334,12 +1845,64 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/compare-func": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", + "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", + "dev": true, + "dependencies": { + "array-ify": "^1.0.0", + "dot-prop": "^5.1.0" + } + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, + "node_modules/conventional-changelog-angular": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz", + "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/conventional-changelog-conventionalcommits": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-7.0.2.tgz", + "integrity": "sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==", + "dev": true, + "dependencies": { + "compare-func": "^2.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/conventional-commits-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", + "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", + "dev": true, + "dependencies": { + "is-text-path": "^2.0.0", + "JSONStream": "^1.3.5", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "conventional-commits-parser": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, "node_modules/convert-source-map": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", @@ -1393,6 +1956,18 @@ "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", "dev": true }, + "node_modules/dargs": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/dargs/-/dargs-8.1.0.tgz", + "integrity": "sha512-wAV9QHOsNbwnWdNW2FYvE1P56wtgSbM+3SZcdGiWQILwVjACCXDCI3Ai8QlCjMDB8YK5zySiXZYBiwGmNY3lnw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/data-view-buffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", @@ -1545,6 +2120,18 @@ "csstype": "^3.0.2" } }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dev": true, + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", @@ -1570,6 +2157,15 @@ "node": ">=10.13.0" } }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -1736,6 +2332,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/escalade": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -2254,12 +2859,34 @@ "node": ">=0.10.0" } }, + "node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": ">=16.17" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "peer": true + "dev": true }, "node_modules/fast-glob": { "version": "3.3.2", @@ -2303,6 +2930,12 @@ "dev": true, "peer": true }, + "node_modules/fast-uri": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.1.tgz", + "integrity": "sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==", + "dev": true + }, "node_modules/fastq": { "version": "1.17.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", @@ -2326,9 +2959,9 @@ } }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, "dependencies": { "to-regex-range": "^5.0.1" @@ -2448,6 +3081,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -2467,6 +3109,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "dev": true, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-symbol-description": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", @@ -2496,6 +3150,23 @@ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, + "node_modules/git-raw-commits": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-4.0.0.tgz", + "integrity": "sha512-ICsMM1Wk8xSGMowkOmPrzo2Fgmfo4bMHLNX6ytHjajRJUqvHOw/TFapQ+QG75c3X/tTDDhOSRPGC52dDbNM8FQ==", + "dev": true, + "dependencies": { + "dargs": "^8.0.0", + "meow": "^12.0.1", + "split2": "^4.0.0" + }, + "bin": { + "git-raw-commits": "cli.mjs" + }, + "engines": { + "node": ">=16" + } + }, "node_modules/glob": { "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", @@ -2531,6 +3202,21 @@ "node": ">=10.13.0" } }, + "node_modules/global-directory": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/global-directory/-/global-directory-4.0.1.tgz", + "integrity": "sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==", + "dev": true, + "dependencies": { + "ini": "4.1.1" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/globals": { "version": "13.24.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", @@ -2696,6 +3382,30 @@ "react-is": "^16.7.0" } }, + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "dev": true, + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/husky": { + "version": "9.0.11", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.11.tgz", + "integrity": "sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==", + "dev": true, + "bin": { + "husky": "bin.mjs" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/typicode" + } + }, "node_modules/ignore": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", @@ -2720,6 +3430,16 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-meta-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz", + "integrity": "sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==", + "dev": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -2748,6 +3468,15 @@ "dev": true, "peer": true }, + "node_modules/ini": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.1.tgz", + "integrity": "sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/internal-slot": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", @@ -2984,6 +3713,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-path-inside": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", @@ -3037,6 +3775,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "dev": true, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-string": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", @@ -3067,6 +3817,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-text-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", + "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", + "dev": true, + "dependencies": { + "text-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/is-typed-array": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", @@ -3165,6 +3927,15 @@ "@pkgjs/parseargs": "^0.11.0" } }, + "node_modules/jiti": { + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", + "dev": true, + "bin": { + "jiti": "bin/jiti.js" + } + }, "node_modules/jose": { "version": "4.15.5", "resolved": "https://registry.npmjs.org/jose/-/jose-4.15.5.tgz", @@ -3183,7 +3954,6 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dev": true, - "peer": true, "dependencies": { "argparse": "^2.0.1" }, @@ -3229,6 +3999,31 @@ "json5": "lib/cli.js" } }, + "node_modules/jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", + "dev": true, + "engines": [ + "node >= 0.2.0" + ] + }, + "node_modules/JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "dependencies": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + }, + "bin": { + "JSONStream": "bin.js" + }, + "engines": { + "node": "*" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -3307,12 +4102,59 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "dev": true + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", + "dev": true + }, + "node_modules/lodash.kebabcase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", + "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", + "dev": true + }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true, - "peer": true + "dev": true + }, + "node_modules/lodash.mergewith": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", + "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", + "dev": true + }, + "node_modules/lodash.snakecase": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", + "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==", + "dev": true + }, + "node_modules/lodash.startcase": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", + "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", + "dev": true + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", + "dev": true + }, + "node_modules/lodash.upperfirst": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", + "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==", + "dev": true }, "node_modules/loose-envify": { "version": "1.4.0", @@ -3341,6 +4183,24 @@ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz", "integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==" }, + "node_modules/meow": { + "version": "12.1.1", + "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", + "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", + "dev": true, + "engines": { + "node": ">=16.10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -3363,6 +4223,18 @@ "node": ">=8.6" } }, + "node_modules/mimic-fn": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/minimatch": { "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", @@ -3510,6 +4382,33 @@ "node": ">=6.0.0" } }, + "node_modules/npm-run-path": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", + "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", + "dev": true, + "dependencies": { + "path-key": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/oauth": { "version": "0.9.15", "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", @@ -3665,6 +4564,21 @@ "wrappy": "1" } }, + "node_modules/onetime": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", + "dev": true, + "dependencies": { + "mimic-fn": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/openid-client": { "version": "5.6.5", "resolved": "https://registry.npmjs.org/openid-client/-/openid-client-5.6.5.tgz", @@ -4107,6 +5021,24 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -4408,6 +5340,15 @@ "react-dom": "^16.x || ^17.x || ^18.x" } }, + "node_modules/split2": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "dev": true, + "engines": { + "node": ">= 10.x" + } + }, "node_modules/streamsearch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", @@ -4590,6 +5531,18 @@ "node": ">=4" } }, + "node_modules/strip-final-newline": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -4675,6 +5628,18 @@ "node": ">=6" } }, + "node_modules/text-extensions": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", + "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -4682,6 +5647,12 @@ "dev": true, "peer": true }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -4859,6 +5830,24 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "dev": true + }, + "node_modules/unicorn-magic": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", + "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "dev": true, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -5103,6 +6092,15 @@ "dev": true, "peer": true }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", @@ -5116,6 +6114,53 @@ "node": ">= 6" } }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 464daa0..7faba35 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,9 @@ "dev": "next dev", "build": "next build", "start": "next start", - "lint": "next lint" + "lint": "next lint", + "setup": "npm install && npm run setup:hooks", + "setup:hooks": "npx husky install" }, "dependencies": { "@tabler/icons-react": "^3.10.0", @@ -25,7 +27,10 @@ "swr": "^2.2.5" }, "devDependencies": { + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", + "husky": "^9.0.11", "prettier": "^3.3.2" } } From 32483c23b6f0e5b3d32b10c0ad721efff6e15c15 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 15 Jul 2024 19:09:03 +0000 Subject: [PATCH 021/366] build(deps-dev): bump prettier from 3.3.2 to 3.3.3 Bumps [prettier](https://github.com/prettier/prettier) from 3.3.2 to 3.3.3. - [Release notes](https://github.com/prettier/prettier/releases) - [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md) - [Commits](https://github.com/prettier/prettier/compare/3.3.2...3.3.3) --- updated-dependencies: - dependency-name: prettier dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9579fe7..967e3f7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,7 +28,7 @@ "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", "husky": "^9.0.11", - "prettier": "^3.3.2" + "prettier": "^3.3.3" } }, "node_modules/@babel/code-frame": { @@ -4819,9 +4819,9 @@ } }, "node_modules/prettier": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz", - "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", + "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" diff --git a/package.json b/package.json index 7faba35..a57f3eb 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,6 @@ "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", "husky": "^9.0.11", - "prettier": "^3.3.2" + "prettier": "^3.3.3" } } From d2fab3eeea2e9737179fb9bc8d5ffc30abe5eee9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Jul 2024 19:14:32 +0000 Subject: [PATCH 022/366] build(deps): bump @tabler/icons-react from 3.10.0 to 3.11.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.10.0 to 3.11.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.11.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 967e3f7..9268444 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.10.0", + "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.5", @@ -1147,20 +1147,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.10.0.tgz", - "integrity": "sha512-jCMO+hDTw8Gn1CNb15zIENLQ9b0UplGXtjMnEUhDoKH+Q4fta8tBLUxZpPpFtpV+q+gzGqfM76xNAoD1GBpmnA==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.11.0.tgz", + "integrity": "sha512-/vZinJNvCYhdAB+RUsyCpanSPuOEKHHIZi4Uu0Bw7ilewHnQhCWUPrT704uHCRli2ROl7spADPmWzAqOganA5A==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.10.0.tgz", - "integrity": "sha512-FTES0wJLIV+M9Ggng0j/6Kn/j43ZuBukR5n6DNV8Npk4woPCDcRjA+2KzKQyvSdwtPMAM6o1e8fQBPDS337Spg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.11.0.tgz", + "integrity": "sha512-xHNBi9mns1slvqos+7LkP3ube4CjWrANMbxMaorzwzO9J/+y1sAEG/sN8CV8FmtpYW/9/gDR+OWCjjLLg0RmAw==", "dependencies": { - "@tabler/icons": "3.10.0" + "@tabler/icons": "3.11.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index a57f3eb..c14f9c4 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "setup:hooks": "npx husky install" }, "dependencies": { - "@tabler/icons-react": "^3.10.0", + "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", "next": "^14.2.5", From d413d8c7322ba2baf2425dd7f1123605ecf7cb49 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jul 2024 20:05:14 +0000 Subject: [PATCH 023/366] build(deps-dev): bump husky from 9.0.11 to 9.1.1 Bumps [husky](https://github.com/typicode/husky) from 9.0.11 to 9.1.1. - [Release notes](https://github.com/typicode/husky/releases) - [Commits](https://github.com/typicode/husky/compare/v9.0.11...v9.1.1) --- updated-dependencies: - dependency-name: husky dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 10 +++++----- package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 9268444..4ce8d5e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", - "husky": "^9.0.11", + "husky": "^9.1.1", "prettier": "^3.3.3" } }, @@ -3392,12 +3392,12 @@ } }, "node_modules/husky": { - "version": "9.0.11", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.0.11.tgz", - "integrity": "sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==", + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.1.tgz", + "integrity": "sha512-fCqlqLXcBnXa/TJXmT93/A36tJsjdJkibQ1MuIiFyCCYUlpYpIaj2mv1w+3KR6Rzu1IC3slFTje5f6DUp2A2rg==", "dev": true, "bin": { - "husky": "bin.mjs" + "husky": "bin.js" }, "engines": { "node": ">=18" diff --git a/package.json b/package.json index c14f9c4..ecf7dd1 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", - "husky": "^9.0.11", + "husky": "^9.1.1", "prettier": "^3.3.3" } } From 61042e6cdbf85b71d17bf349080d7900e4dc4d0a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Jul 2024 19:41:25 +0000 Subject: [PATCH 024/366] build(deps-dev): bump husky from 9.1.1 to 9.1.4 Bumps [husky](https://github.com/typicode/husky) from 9.1.1 to 9.1.4. - [Release notes](https://github.com/typicode/husky/releases) - [Commits](https://github.com/typicode/husky/compare/v9.1.1...v9.1.4) --- updated-dependencies: - dependency-name: husky dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ce8d5e..ca80f95 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", - "husky": "^9.1.1", + "husky": "^9.1.4", "prettier": "^3.3.3" } }, @@ -3392,9 +3392,9 @@ } }, "node_modules/husky": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.1.tgz", - "integrity": "sha512-fCqlqLXcBnXa/TJXmT93/A36tJsjdJkibQ1MuIiFyCCYUlpYpIaj2mv1w+3KR6Rzu1IC3slFTje5f6DUp2A2rg==", + "version": "9.1.4", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.4.tgz", + "integrity": "sha512-bho94YyReb4JV7LYWRWxZ/xr6TtOTt8cMfmQ39MQYJ7f/YE268s3GdghGwi+y4zAeqewE5zYLvuhV0M0ijsDEA==", "dev": true, "bin": { "husky": "bin.js" diff --git a/package.json b/package.json index ecf7dd1..e74c966 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@commitlint/cli": "^19.3.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", - "husky": "^9.1.1", + "husky": "^9.1.4", "prettier": "^3.3.3" } } From 37167a7d6ebdeb087c39ae9bd77524d81816046e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 5 Aug 2024 19:29:09 +0000 Subject: [PATCH 025/366] build(deps): bump react-hook-form from 7.52.1 to 7.52.2 Bumps [react-hook-form](https://github.com/react-hook-form/react-hook-form) from 7.52.1 to 7.52.2. - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.52.1...v7.52.2) --- updated-dependencies: - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 10 +++++----- package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ce8d5e..ba4501f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.1", + "react-hook-form": "^7.52.2", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", @@ -4911,11 +4911,11 @@ } }, "node_modules/react-hook-form": { - "version": "7.52.1", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.1.tgz", - "integrity": "sha512-uNKIhaoICJ5KQALYZ4TOaOLElyM+xipord+Ha3crEFhTntdLvWZqVY49Wqd/0GiVCA/f9NjemLeiNPjG7Hpurg==", + "version": "7.52.2", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.2.tgz", + "integrity": "sha512-pqfPEbERnxxiNMPd0bzmt1tuaPcVccywFDpyk2uV5xCIBphHV5T8SVnX9/o3kplPE1zzKt77+YIoq+EMwJp56A==", "engines": { - "node": ">=12.22.0" + "node": ">=18.0.0" }, "funding": { "type": "opencollective", diff --git a/package.json b/package.json index ecf7dd1..6e646e4 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.1", + "react-hook-form": "^7.52.2", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", From 9a9f7305ed68164c8dbe4dbe8e9e09c61ccf6c5d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 Aug 2024 19:17:04 +0000 Subject: [PATCH 026/366] build(deps-dev): bump @commitlint/cli from 19.3.0 to 19.4.0 Bumps [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli) from 19.3.0 to 19.4.0. - [Release notes](https://github.com/conventional-changelog/commitlint/releases) - [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md) - [Commits](https://github.com/conventional-changelog/commitlint/commits/v19.4.0/@commitlint/cli) --- updated-dependencies: - dependency-name: "@commitlint/cli" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 24 ++++++++++++------------ package.json | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4ce8d5e..3bf6316 100644 --- a/package-lock.json +++ b/package-lock.json @@ -24,7 +24,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "@commitlint/cli": "^19.3.0", + "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", "husky": "^9.1.1", @@ -173,15 +173,15 @@ } }, "node_modules/@commitlint/cli": { - "version": "19.3.0", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.3.0.tgz", - "integrity": "sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g==", + "version": "19.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-19.4.0.tgz", + "integrity": "sha512-sJX4J9UioVwZHq7JWM9tjT5bgWYaIN3rC4FP7YwfEwBYiIO+wMyRttRvQLNkow0vCdM0D67r9NEWU0Ui03I4Eg==", "dev": true, "dependencies": { "@commitlint/format": "^19.3.0", "@commitlint/lint": "^19.2.2", - "@commitlint/load": "^19.2.0", - "@commitlint/read": "^19.2.1", + "@commitlint/load": "^19.4.0", + "@commitlint/read": "^19.4.0", "@commitlint/types": "^19.0.3", "execa": "^8.0.1", "yargs": "^17.0.0" @@ -321,9 +321,9 @@ } }, "node_modules/@commitlint/load": { - "version": "19.2.0", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.2.0.tgz", - "integrity": "sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==", + "version": "19.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-19.4.0.tgz", + "integrity": "sha512-I4lCWaEZYQJ1y+Y+gdvbGAx9pYPavqZAZ3/7/8BpWh+QjscAn8AjsUpLV2PycBsEx7gupq5gM4BViV9xwTIJuw==", "dev": true, "dependencies": { "@commitlint/config-validator": "^19.0.3", @@ -420,9 +420,9 @@ } }, "node_modules/@commitlint/read": { - "version": "19.2.1", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.2.1.tgz", - "integrity": "sha512-qETc4+PL0EUv7Q36lJbPG+NJiBOGg7SSC7B5BsPWOmei+Dyif80ErfWQ0qXoW9oCh7GTpTNRoaVhiI8RbhuaNw==", + "version": "19.4.0", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-19.4.0.tgz", + "integrity": "sha512-r95jLOEZzKDakXtnQub+zR3xjdnrl2XzerPwm7ch1/cc5JGq04tyaNpa6ty0CRCWdVrk4CZHhqHozb8yZwy2+g==", "dev": true, "dependencies": { "@commitlint/top-level": "^19.0.0", diff --git a/package.json b/package.json index ecf7dd1..21e33ad 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "swr": "^2.2.5" }, "devDependencies": { - "@commitlint/cli": "^19.3.0", + "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.5", "husky": "^9.1.1", From b8259dd4aec1fe4d86ee041a0dc0e0c7db3ab8bf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 19:53:20 +0000 Subject: [PATCH 027/366] build(deps-dev): bump eslint-config-next from 14.2.5 to 14.2.6 Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 14.2.5 to 14.2.6. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.6/packages/eslint-config-next) --- updated-dependencies: - dependency-name: eslint-config-next dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 22 +++++++++++----------- package.json | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index f50de0d..3b4e6dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "devDependencies": { "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", - "eslint-config-next": "^14.2.5", + "eslint-config-next": "^14.2.6", "husky": "^9.1.4", "prettier": "^3.3.3" } @@ -930,9 +930,9 @@ "integrity": "sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.5.tgz", - "integrity": "sha512-LY3btOpPh+OTIpviNojDpUdIbHW9j0JBYBjsIp8IxtDFfYFyORvw3yNq6N231FVqQA7n7lwaf7xHbVJlA1ED7g==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.6.tgz", + "integrity": "sha512-d3+p4AjIYmhqzYHhhmkRYYN6ZU35TwZAKX08xKRfnHkz72KhWL2kxMFsDptpZs5e8bBGdepn7vn1+9DaF8iX+A==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2409,12 +2409,12 @@ } }, "node_modules/eslint-config-next": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.5.tgz", - "integrity": "sha512-zogs9zlOiZ7ka+wgUnmcM0KBEDjo4Jis7kxN1jvC0N4wynQ2MIx/KBkg4mVF63J5EK4W0QMCn7xO3vNisjaAoA==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.6.tgz", + "integrity": "sha512-z0URA5LO6y8lS/YLN0EDW/C4LEkDODjJzA37dvLVdzCPzuewjzTe1os5g3XclZAZrQ8X8hPaSMQ2JuVWwMmrTA==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "14.2.5", + "@next/eslint-plugin-next": "14.2.6", "@rushstack/eslint-patch": "^1.3.3", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", @@ -3024,9 +3024,9 @@ } }, "node_modules/foreground-child": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", - "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", "dev": true, "dependencies": { "cross-spawn": "^7.0.0", diff --git a/package.json b/package.json index 49c4ae5..29e79dd 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "devDependencies": { "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", - "eslint-config-next": "^14.2.5", + "eslint-config-next": "^14.2.6", "husky": "^9.1.4", "prettier": "^3.3.3" } From 91aae7fdb9744033bf9530aac900eee3a92fd4e4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Aug 2024 19:53:32 +0000 Subject: [PATCH 028/366] build(deps): bump next from 14.2.5 to 14.2.6 Bumps [next](https://github.com/vercel/next.js) from 14.2.5 to 14.2.6. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.5...v14.2.6) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 88 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index f50de0d..1152df8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.5", + "next": "^14.2.6", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", @@ -925,9 +925,9 @@ "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" }, "node_modules/@next/env": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.5.tgz", - "integrity": "sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==" + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.6.tgz", + "integrity": "sha512-bs5DFKV+08EjWrl8EB+KKqev1ZTNONH1vFCaHh911aaB362NnP32UDTbE9VQhyiAgbFqJsfDkSxFERNDDb3j0g==" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.5", @@ -939,9 +939,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.5.tgz", - "integrity": "sha512-/9zVxJ+K9lrzSGli1///ujyRfon/ZneeZ+v4ptpiPoOU+GKZnm8Wj8ELWU1Pm7GHltYRBklmXMTUqM/DqQ99FQ==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.6.tgz", + "integrity": "sha512-BtJZb+hYXGaVJJivpnDoi3JFVn80SHKCiiRUW3kk1SY6UCUy5dWFFSbh+tGi5lHAughzeduMyxbLt3pspvXNSg==", "cpu": [ "arm64" ], @@ -954,9 +954,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.5.tgz", - "integrity": "sha512-vXHOPCwfDe9qLDuq7U1OYM2wUY+KQ4Ex6ozwsKxp26BlJ6XXbHleOUldenM67JRyBfVjv371oneEvYd3H2gNSA==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.6.tgz", + "integrity": "sha512-ZHRbGpH6KHarzm6qEeXKSElSXh8dS2DtDPjQt3IMwY8QVk7GbdDYjvV4NgSnDA9huGpGgnyy3tH8i5yHCqVkiQ==", "cpu": [ "x64" ], @@ -969,9 +969,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.5.tgz", - "integrity": "sha512-vlhB8wI+lj8q1ExFW8lbWutA4M2ZazQNvMWuEDqZcuJJc78iUnLdPPunBPX8rC4IgT6lIx/adB+Cwrl99MzNaA==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.6.tgz", + "integrity": "sha512-O4HqUEe3ZvKshXHcDUXn1OybN4cSZg7ZdwHJMGCXSUEVUqGTJVsOh17smqilIjooP/sIJksgl+1kcf2IWMZWHg==", "cpu": [ "arm64" ], @@ -984,9 +984,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.5.tgz", - "integrity": "sha512-NpDB9NUR2t0hXzJJwQSGu1IAOYybsfeB+LxpGsXrRIb7QOrYmidJz3shzY8cM6+rO4Aojuef0N/PEaX18pi9OA==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.6.tgz", + "integrity": "sha512-xUcdhr2hfalG8RDDGSFxQ75yOG894UlmFS4K2M0jLrUhauRBGOtUOxoDVwiIIuZQwZ3Y5hDsazNjdYGB0cQ9yQ==", "cpu": [ "arm64" ], @@ -999,9 +999,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.5.tgz", - "integrity": "sha512-8XFikMSxWleYNryWIjiCX+gU201YS+erTUidKdyOVYi5qUQo/gRxv/3N1oZFCgqpesN6FPeqGM72Zve+nReVXQ==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.6.tgz", + "integrity": "sha512-InosKxw8UMcA/wEib5n2QttwHSKHZHNSbGcMepBM0CTcNwpxWzX32KETmwbhKod3zrS8n1vJ+DuJKbL9ZAB0Ag==", "cpu": [ "x64" ], @@ -1014,9 +1014,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.5.tgz", - "integrity": "sha512-6QLwi7RaYiQDcRDSU/os40r5o06b5ue7Jsk5JgdRBGGp8l37RZEh9JsLSM8QF0YDsgcosSeHjglgqi25+m04IQ==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.6.tgz", + "integrity": "sha512-d4QXfJmt5pGJ7cG8qwxKSBnO5AXuKAFYxV7qyDRHnUNvY/dgDh+oX292gATpB2AAHgjdHd5ks1wXxIEj6muLUQ==", "cpu": [ "x64" ], @@ -1029,9 +1029,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.5.tgz", - "integrity": "sha512-1GpG2VhbspO+aYoMOQPQiqc/tG3LzmsdBH0LhnDS3JrtDx2QmzXe0B6mSZZiN3Bq7IOMXxv1nlsjzoS1+9mzZw==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.6.tgz", + "integrity": "sha512-AlgIhk4/G+PzOG1qdF1b05uKTMsuRatFlFzAi5G8RZ9h67CVSSuZSbqGHbJDlcV1tZPxq/d4G0q6qcHDKWf4aQ==", "cpu": [ "arm64" ], @@ -1044,9 +1044,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.5.tgz", - "integrity": "sha512-Igh9ZlxwvCDsu6438FXlQTHlRno4gFpJzqPjSIBZooD22tKeI4fE/YMRoHVJHmrQ2P5YL1DoZ0qaOKkbeFWeMg==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.6.tgz", + "integrity": "sha512-hNukAxq7hu4o5/UjPp5jqoBEtrpCbOmnUqZSKNJG8GrUVzfq0ucdhQFVrHcLRMvQcwqqDh1a5AJN9ORnNDpgBQ==", "cpu": [ "ia32" ], @@ -1059,9 +1059,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.5.tgz", - "integrity": "sha512-tEQ7oinq1/CjSG9uSTerca3v4AZ+dFa+4Yu6ihaG8Ud8ddqLQgFGcnwYls13H5X5CPDPZJdYxyeMui6muOLd4g==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.6.tgz", + "integrity": "sha512-NANtw+ead1rSDK1jxmzq3TYkl03UNK2KHqUYf1nIhNci6NkeqBD4s1njSzYGIlSHxCK+wSaL8RXZm4v+NF/pMw==", "cpu": [ "x64" ], @@ -4299,11 +4299,11 @@ "peer": true }, "node_modules/next": { - "version": "14.2.5", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.5.tgz", - "integrity": "sha512-0f8aRfBVL+mpzfBjYfQuLWh2WyAwtJXCRfkPF4UJ5qd2YwrHczsrSzXU4tRMV0OAxR8ZJZWPFn6uhSC56UTsLA==", + "version": "14.2.6", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.6.tgz", + "integrity": "sha512-57Su7RqXs5CBKKKOagt8gPhMM3CpjgbeQhrtei2KLAA1vTNm7jfKS+uDARkSW8ZETUflDCBIsUKGSyQdRs4U4g==", "dependencies": { - "@next/env": "14.2.5", + "@next/env": "14.2.6", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -4318,15 +4318,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.5", - "@next/swc-darwin-x64": "14.2.5", - "@next/swc-linux-arm64-gnu": "14.2.5", - "@next/swc-linux-arm64-musl": "14.2.5", - "@next/swc-linux-x64-gnu": "14.2.5", - "@next/swc-linux-x64-musl": "14.2.5", - "@next/swc-win32-arm64-msvc": "14.2.5", - "@next/swc-win32-ia32-msvc": "14.2.5", - "@next/swc-win32-x64-msvc": "14.2.5" + "@next/swc-darwin-arm64": "14.2.6", + "@next/swc-darwin-x64": "14.2.6", + "@next/swc-linux-arm64-gnu": "14.2.6", + "@next/swc-linux-arm64-musl": "14.2.6", + "@next/swc-linux-x64-gnu": "14.2.6", + "@next/swc-linux-x64-musl": "14.2.6", + "@next/swc-win32-arm64-msvc": "14.2.6", + "@next/swc-win32-ia32-msvc": "14.2.6", + "@next/swc-win32-x64-msvc": "14.2.6" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/package.json b/package.json index 49c4ae5..1f96dbb 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.3", - "next": "^14.2.5", + "next": "^14.2.6", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", From cbd6e92b3e5906507b287db3a717f29969090674 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 23 Aug 2024 20:42:01 +0000 Subject: [PATCH 029/366] build(deps): bump chart.js from 4.4.3 to 4.4.4 Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.3 to 4.4.4. - [Release notes](https://github.com/chartjs/Chart.js/releases) - [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.3...v4.4.4) --- updated-dependencies: - dependency-name: chart.js dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 96c1f7c..4b6eb0d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "dependencies": { "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", - "chart.js": "^4.4.3", + "chart.js": "^4.4.4", "next": "^14.2.6", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", @@ -1753,9 +1753,9 @@ } }, "node_modules/chart.js": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.3.tgz", - "integrity": "sha512-qK1gkGSRYcJzqrrzdR6a+I0vQ4/R+SoODXyAjscQ/4mzuNzySaMCd+hyVxitSY1+L2fjPD1Gbn+ibNqRmwQeLw==", + "version": "4.4.4", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.4.tgz", + "integrity": "sha512-emICKGBABnxhMjUjlYRR12PmOXhJ2eJjEHL2/dZlWjxRAZT1D8xplLFq5M0tMQK8ja+wBS/tuVEJB5C6r7VxJA==", "dependencies": { "@kurkle/color": "^0.3.0" }, diff --git a/package.json b/package.json index d787f50..1802311 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "dependencies": { "@tabler/icons-react": "^3.11.0", "bcryptjs": "^2.4.3", - "chart.js": "^4.4.3", + "chart.js": "^4.4.4", "next": "^14.2.6", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", From 3a5f6fb6a2cc9daa309508f29c82f0f96f17449a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Aug 2024 19:20:28 +0000 Subject: [PATCH 030/366] build(deps): bump react-hook-form from 7.52.2 to 7.53.0 Bumps [react-hook-form](https://github.com/react-hook-form/react-hook-form) from 7.52.2 to 7.53.0. - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.52.2...v7.53.0) --- updated-dependencies: - dependency-name: react-hook-form dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4b6eb0d..9688249 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,7 +17,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.2", + "react-hook-form": "^7.53.0", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", @@ -4911,9 +4911,9 @@ } }, "node_modules/react-hook-form": { - "version": "7.52.2", - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.52.2.tgz", - "integrity": "sha512-pqfPEbERnxxiNMPd0bzmt1tuaPcVccywFDpyk2uV5xCIBphHV5T8SVnX9/o3kplPE1zzKt77+YIoq+EMwJp56A==", + "version": "7.53.0", + "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.53.0.tgz", + "integrity": "sha512-M1n3HhqCww6S2hxLxciEXy2oISPnAzxY7gvwVPrtlczTM/1dDadXgUxDpHMrMTblDOcm/AXtXxHwZ3jpg1mqKQ==", "engines": { "node": ">=18.0.0" }, diff --git a/package.json b/package.json index 1802311..0487462 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "react": "^18.3.1", "react-chartjs-2": "^5.2.0", "react-dom": "^18.3.1", - "react-hook-form": "^7.52.2", + "react-hook-form": "^7.53.0", "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", From 00e76b37a623ebf9c15d696c7389f9838531ab4e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Aug 2024 19:20:35 +0000 Subject: [PATCH 031/366] build(deps): bump @tabler/icons-react from 3.11.0 to 3.13.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.11.0 to 3.13.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.13.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4b6eb0d..d6794d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.11.0", + "@tabler/icons-react": "^3.13.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", "next": "^14.2.6", @@ -1147,20 +1147,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.11.0.tgz", - "integrity": "sha512-/vZinJNvCYhdAB+RUsyCpanSPuOEKHHIZi4Uu0Bw7ilewHnQhCWUPrT704uHCRli2ROl7spADPmWzAqOganA5A==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.13.0.tgz", + "integrity": "sha512-5STudfFoCeYZuDwH5k9A1j6YIRrkrwufMUWxf+wrwCkzWMN6PAyAWVJkx1RNW09szGZ4OKa2hEc2NRGPjh/MNQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.11.0.tgz", - "integrity": "sha512-xHNBi9mns1slvqos+7LkP3ube4CjWrANMbxMaorzwzO9J/+y1sAEG/sN8CV8FmtpYW/9/gDR+OWCjjLLg0RmAw==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.13.0.tgz", + "integrity": "sha512-Px9NRe7+CVismWNah1QUXEz1879z2XVOBJWgmGzQzjwB5HD/SOUzR5HS6MlVUsFi2H8YTbf9iXAChQ/8gJndEw==", "dependencies": { - "@tabler/icons": "3.11.0" + "@tabler/icons": "3.13.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index 1802311..2a1ebea 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "setup:hooks": "npx husky install" }, "dependencies": { - "@tabler/icons-react": "^3.11.0", + "@tabler/icons-react": "^3.13.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", "next": "^14.2.6", From 3d0bc52fc3568589a915e13db58b47c1ea5da69c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 19:12:39 +0000 Subject: [PATCH 032/366] build(deps): bump @tabler/icons-react from 3.13.0 to 3.14.0 Bumps [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react) from 3.13.0 to 3.14.0. - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.14.0/packages/icons-react) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3079c07..b3c0b56 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "borgwarehouse", "version": "2.3.0", "dependencies": { - "@tabler/icons-react": "^3.13.0", + "@tabler/icons-react": "^3.14.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", "next": "^14.2.6", @@ -1147,20 +1147,20 @@ } }, "node_modules/@tabler/icons": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.13.0.tgz", - "integrity": "sha512-5STudfFoCeYZuDwH5k9A1j6YIRrkrwufMUWxf+wrwCkzWMN6PAyAWVJkx1RNW09szGZ4OKa2hEc2NRGPjh/MNQ==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/@tabler/icons/-/icons-3.14.0.tgz", + "integrity": "sha512-OakKjK1kuDWKoNwdnHHVMt11kTZAC10iZpN/8o/CSYdeBH7S3v5n8IyqAYynFxLI8yBGTyBvljtvWdmWh57zSg==", "funding": { "type": "github", "url": "https://github.com/sponsors/codecalm" } }, "node_modules/@tabler/icons-react": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.13.0.tgz", - "integrity": "sha512-Px9NRe7+CVismWNah1QUXEz1879z2XVOBJWgmGzQzjwB5HD/SOUzR5HS6MlVUsFi2H8YTbf9iXAChQ/8gJndEw==", + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.14.0.tgz", + "integrity": "sha512-3XdbuyhBNq8aZW0qagR9YL8diACZYSAtaw6VuwcO2l6HzVFPN6N5TDex9WTz/3lf+uktAvOv1kNuuFBjSjN9yw==", "dependencies": { - "@tabler/icons": "3.13.0" + "@tabler/icons": "3.14.0" }, "funding": { "type": "github", diff --git a/package.json b/package.json index c1fb6c1..b0a8645 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "setup:hooks": "npx husky install" }, "dependencies": { - "@tabler/icons-react": "^3.13.0", + "@tabler/icons-react": "^3.14.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", "next": "^14.2.6", From b6104d2c3e92d003d280cddbe64323af572a0274 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 19:12:45 +0000 Subject: [PATCH 033/366] build(deps-dev): bump husky from 9.1.4 to 9.1.5 Bumps [husky](https://github.com/typicode/husky) from 9.1.4 to 9.1.5. - [Release notes](https://github.com/typicode/husky/releases) - [Commits](https://github.com/typicode/husky/compare/v9.1.4...v9.1.5) --- updated-dependencies: - dependency-name: husky dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3079c07..cec9911 100644 --- a/package-lock.json +++ b/package-lock.json @@ -27,7 +27,7 @@ "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.6", - "husky": "^9.1.4", + "husky": "^9.1.5", "prettier": "^3.3.3" } }, @@ -3392,9 +3392,9 @@ } }, "node_modules/husky": { - "version": "9.1.4", - "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.4.tgz", - "integrity": "sha512-bho94YyReb4JV7LYWRWxZ/xr6TtOTt8cMfmQ39MQYJ7f/YE268s3GdghGwi+y4zAeqewE5zYLvuhV0M0ijsDEA==", + "version": "9.1.5", + "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.5.tgz", + "integrity": "sha512-rowAVRUBfI0b4+niA4SJMhfQwc107VLkBUgEYYAOQAbqDCnra1nYh83hF/MDmhYs9t9n1E3DuKOrs2LYNC+0Ag==", "dev": true, "bin": { "husky": "bin.js" diff --git a/package.json b/package.json index c1fb6c1..acb3b5d 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.2.2", "eslint-config-next": "^14.2.6", - "husky": "^9.1.4", + "husky": "^9.1.5", "prettier": "^3.3.3" } } From 0b564d10f8b76082da3cdd8989e215ea55e5fad1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Aug 2024 19:13:03 +0000 Subject: [PATCH 034/366] build(deps): bump next from 14.2.6 to 14.2.7 Bumps [next](https://github.com/vercel/next.js) from 14.2.6 to 14.2.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v14.2.6...v14.2.7) --- updated-dependencies: - dependency-name: next dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 88 +++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3079c07..9e6b2df 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "@tabler/icons-react": "^3.13.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", - "next": "^14.2.6", + "next": "^14.2.7", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", @@ -925,9 +925,9 @@ "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" }, "node_modules/@next/env": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.6.tgz", - "integrity": "sha512-bs5DFKV+08EjWrl8EB+KKqev1ZTNONH1vFCaHh911aaB362NnP32UDTbE9VQhyiAgbFqJsfDkSxFERNDDb3j0g==" + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.7.tgz", + "integrity": "sha512-OTx9y6I3xE/eih+qtthppwLytmpJVPM5PPoJxChFsbjIEFXIayG0h/xLzefHGJviAa3Q5+Fd+9uYojKkHDKxoQ==" }, "node_modules/@next/eslint-plugin-next": { "version": "14.2.6", @@ -939,9 +939,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.6.tgz", - "integrity": "sha512-BtJZb+hYXGaVJJivpnDoi3JFVn80SHKCiiRUW3kk1SY6UCUy5dWFFSbh+tGi5lHAughzeduMyxbLt3pspvXNSg==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.7.tgz", + "integrity": "sha512-UhZGcOyI9LE/tZL3h9rs/2wMZaaJKwnpAyegUVDGZqwsla6hMfeSj9ssBWQS9yA4UXun3pPhrFLVnw5KXZs3vw==", "cpu": [ "arm64" ], @@ -954,9 +954,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.6.tgz", - "integrity": "sha512-ZHRbGpH6KHarzm6qEeXKSElSXh8dS2DtDPjQt3IMwY8QVk7GbdDYjvV4NgSnDA9huGpGgnyy3tH8i5yHCqVkiQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.7.tgz", + "integrity": "sha512-ys2cUgZYRc+CbyDeLAaAdZgS7N1Kpyy+wo0b/gAj+SeOeaj0Lw/q+G1hp+DuDiDAVyxLBCJXEY/AkhDmtihUTA==", "cpu": [ "x64" ], @@ -969,9 +969,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.6.tgz", - "integrity": "sha512-O4HqUEe3ZvKshXHcDUXn1OybN4cSZg7ZdwHJMGCXSUEVUqGTJVsOh17smqilIjooP/sIJksgl+1kcf2IWMZWHg==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.7.tgz", + "integrity": "sha512-2xoWtE13sUJ3qrC1lwE/HjbDPm+kBQYFkkiVECJWctRASAHQ+NwjMzgrfqqMYHfMxFb5Wws3w9PqzZJqKFdWcQ==", "cpu": [ "arm64" ], @@ -984,9 +984,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.6.tgz", - "integrity": "sha512-xUcdhr2hfalG8RDDGSFxQ75yOG894UlmFS4K2M0jLrUhauRBGOtUOxoDVwiIIuZQwZ3Y5hDsazNjdYGB0cQ9yQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.7.tgz", + "integrity": "sha512-+zJ1gJdl35BSAGpkCbfyiY6iRTaPrt3KTl4SF/B1NyELkqqnrNX6cp4IjjjxKpd64/7enI0kf6b9O1Uf3cL0pw==", "cpu": [ "arm64" ], @@ -999,9 +999,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.6.tgz", - "integrity": "sha512-InosKxw8UMcA/wEib5n2QttwHSKHZHNSbGcMepBM0CTcNwpxWzX32KETmwbhKod3zrS8n1vJ+DuJKbL9ZAB0Ag==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.7.tgz", + "integrity": "sha512-m6EBqrskeMUzykBrv0fDX/28lWIBGhMzOYaStp0ihkjzIYJiKUOzVYD1gULHc8XDf5EMSqoH/0/TRAgXqpQwmw==", "cpu": [ "x64" ], @@ -1014,9 +1014,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.6.tgz", - "integrity": "sha512-d4QXfJmt5pGJ7cG8qwxKSBnO5AXuKAFYxV7qyDRHnUNvY/dgDh+oX292gATpB2AAHgjdHd5ks1wXxIEj6muLUQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.7.tgz", + "integrity": "sha512-gUu0viOMvMlzFRz1r1eQ7Ql4OE+hPOmA7smfZAhn8vC4+0swMZaZxa9CSIozTYavi+bJNDZ3tgiSdMjmMzRJlQ==", "cpu": [ "x64" ], @@ -1029,9 +1029,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.6.tgz", - "integrity": "sha512-AlgIhk4/G+PzOG1qdF1b05uKTMsuRatFlFzAi5G8RZ9h67CVSSuZSbqGHbJDlcV1tZPxq/d4G0q6qcHDKWf4aQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.7.tgz", + "integrity": "sha512-PGbONHIVIuzWlYmLvuFKcj+8jXnLbx4WrlESYlVnEzDsa3+Q2hI1YHoXaSmbq0k4ZwZ7J6sWNV4UZfx1OeOlbQ==", "cpu": [ "arm64" ], @@ -1044,9 +1044,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.6.tgz", - "integrity": "sha512-hNukAxq7hu4o5/UjPp5jqoBEtrpCbOmnUqZSKNJG8GrUVzfq0ucdhQFVrHcLRMvQcwqqDh1a5AJN9ORnNDpgBQ==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.7.tgz", + "integrity": "sha512-BiSY5umlx9ed5RQDoHcdbuKTUkuFORDqzYKPHlLeS+STUWQKWziVOn3Ic41LuTBvqE0TRJPKpio9GSIblNR+0w==", "cpu": [ "ia32" ], @@ -1059,9 +1059,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.6.tgz", - "integrity": "sha512-NANtw+ead1rSDK1jxmzq3TYkl03UNK2KHqUYf1nIhNci6NkeqBD4s1njSzYGIlSHxCK+wSaL8RXZm4v+NF/pMw==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.7.tgz", + "integrity": "sha512-pxsI23gKWRt/SPHFkDEsP+w+Nd7gK37Hpv0ngc5HpWy2e7cKx9zR/+Q2ptAUqICNTecAaGWvmhway7pj/JLEWA==", "cpu": [ "x64" ], @@ -4299,11 +4299,11 @@ "peer": true }, "node_modules/next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.6.tgz", - "integrity": "sha512-57Su7RqXs5CBKKKOagt8gPhMM3CpjgbeQhrtei2KLAA1vTNm7jfKS+uDARkSW8ZETUflDCBIsUKGSyQdRs4U4g==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.7.tgz", + "integrity": "sha512-4Qy2aK0LwH4eQiSvQWyKuC7JXE13bIopEQesWE0c/P3uuNRnZCQanI0vsrMLmUQJLAto+A+/8+sve2hd+BQuOQ==", "dependencies": { - "@next/env": "14.2.6", + "@next/env": "14.2.7", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -4318,15 +4318,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.6", - "@next/swc-darwin-x64": "14.2.6", - "@next/swc-linux-arm64-gnu": "14.2.6", - "@next/swc-linux-arm64-musl": "14.2.6", - "@next/swc-linux-x64-gnu": "14.2.6", - "@next/swc-linux-x64-musl": "14.2.6", - "@next/swc-win32-arm64-msvc": "14.2.6", - "@next/swc-win32-ia32-msvc": "14.2.6", - "@next/swc-win32-x64-msvc": "14.2.6" + "@next/swc-darwin-arm64": "14.2.7", + "@next/swc-darwin-x64": "14.2.7", + "@next/swc-linux-arm64-gnu": "14.2.7", + "@next/swc-linux-arm64-musl": "14.2.7", + "@next/swc-linux-x64-gnu": "14.2.7", + "@next/swc-linux-x64-musl": "14.2.7", + "@next/swc-win32-arm64-msvc": "14.2.7", + "@next/swc-win32-ia32-msvc": "14.2.7", + "@next/swc-win32-x64-msvc": "14.2.7" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", diff --git a/package.json b/package.json index c1fb6c1..73207a7 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "@tabler/icons-react": "^3.13.0", "bcryptjs": "^2.4.3", "chart.js": "^4.4.4", - "next": "^14.2.6", + "next": "^14.2.7", "next-auth": "^4.24.7", "nodemailer": "^6.9.14", "react": "^18.3.1", From 00b047aa70d3336421e7123380f10c96e6057932 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 31 Aug 2024 16:35:51 +0000 Subject: [PATCH 035/366] build(deps-dev): bump @commitlint/config-conventional Bumps [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional) from 19.2.2 to 19.4.1. - [Release notes](https://github.com/conventional-changelog/commitlint/releases) - [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md) - [Commits](https://github.com/conventional-changelog/commitlint/commits/v19.4.1/@commitlint/config-conventional) --- updated-dependencies: - dependency-name: "@commitlint/config-conventional" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index e7e8ed2..21fda27 100644 --- a/package-lock.json +++ b/package-lock.json @@ -25,7 +25,7 @@ }, "devDependencies": { "@commitlint/cli": "^19.4.0", - "@commitlint/config-conventional": "^19.2.2", + "@commitlint/config-conventional": "^19.4.1", "eslint-config-next": "^14.2.6", "husky": "^9.1.5", "prettier": "^3.3.3" @@ -194,9 +194,9 @@ } }, "node_modules/@commitlint/config-conventional": { - "version": "19.2.2", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.2.2.tgz", - "integrity": "sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw==", + "version": "19.4.1", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.4.1.tgz", + "integrity": "sha512-D5S5T7ilI5roybWGc8X35OBlRXLAwuTseH1ro0XgqkOWrhZU8yOwBOslrNmSDlTXhXLq8cnfhQyC42qaUCzlXA==", "dev": true, "dependencies": { "@commitlint/types": "^19.0.3", diff --git a/package.json b/package.json index d53f17f..cd7fcf6 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ }, "devDependencies": { "@commitlint/cli": "^19.4.0", - "@commitlint/config-conventional": "^19.2.2", + "@commitlint/config-conventional": "^19.4.1", "eslint-config-next": "^14.2.6", "husky": "^9.1.5", "prettier": "^3.3.3" From 9980dea4e207b10fbfe1f7cca62bad1910e4ce5b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 31 Aug 2024 17:03:33 +0000 Subject: [PATCH 036/366] build(deps-dev): bump eslint-config-next from 14.2.6 to 14.2.7 Bumps [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) from 14.2.6 to 14.2.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/commits/v14.2.7/packages/eslint-config-next) --- updated-dependencies: - dependency-name: eslint-config-next dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- package-lock.json | 16 ++++++++-------- package.json | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 21fda27..77d8510 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,7 @@ "devDependencies": { "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.4.1", - "eslint-config-next": "^14.2.6", + "eslint-config-next": "^14.2.7", "husky": "^9.1.5", "prettier": "^3.3.3" } @@ -930,9 +930,9 @@ "integrity": "sha512-OTx9y6I3xE/eih+qtthppwLytmpJVPM5PPoJxChFsbjIEFXIayG0h/xLzefHGJviAa3Q5+Fd+9uYojKkHDKxoQ==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.6.tgz", - "integrity": "sha512-d3+p4AjIYmhqzYHhhmkRYYN6ZU35TwZAKX08xKRfnHkz72KhWL2kxMFsDptpZs5e8bBGdepn7vn1+9DaF8iX+A==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.7.tgz", + "integrity": "sha512-+7xh142AdhZGjY9/L0iFo7mqRBMJHe+q+uOL+hto1Lfo9DeWCGcR6no4StlFbVSVcA6fQLKEX6y6qhMsSKbgNQ==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -2409,12 +2409,12 @@ } }, "node_modules/eslint-config-next": { - "version": "14.2.6", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.6.tgz", - "integrity": "sha512-z0URA5LO6y8lS/YLN0EDW/C4LEkDODjJzA37dvLVdzCPzuewjzTe1os5g3XclZAZrQ8X8hPaSMQ2JuVWwMmrTA==", + "version": "14.2.7", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.7.tgz", + "integrity": "sha512-ppmy+QdQ7qkuCHGDlPjWaoSbJvjGpWSBD4zEW8f1eWlxYXYpZK7QzBOer1EcHKT3uKhlY1JjUus9g7Kvv712rw==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "14.2.6", + "@next/eslint-plugin-next": "14.2.7", "@rushstack/eslint-patch": "^1.3.3", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", diff --git a/package.json b/package.json index cd7fcf6..7df17fa 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "devDependencies": { "@commitlint/cli": "^19.4.0", "@commitlint/config-conventional": "^19.4.1", - "eslint-config-next": "^14.2.6", + "eslint-config-next": "^14.2.7", "husky": "^9.1.5", "prettier": "^3.3.3" } From 3ea38e6648538ebecf452149c3f4a0d4d0849e05 Mon Sep 17 00:00:00 2001 From: Marc Ole Bulling Date: Sat, 22 Jun 2024 20:27:52 +0200 Subject: [PATCH 037/366] Add option to disable deletion --- .env.sample | 4 +++- Containers/RepoManage/RepoManage.js | 5 ++++- pages/api/repo/id/[slug]/delete.js | 8 ++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/.env.sample b/.env.sample index b6220df..e0b2270 100644 --- a/.env.sample +++ b/.env.sample @@ -32,10 +32,12 @@ LOGS_PATH=./logs FQDN_LAN= SSH_SERVER_PORT_LAN= +DISABLE_DELETE_REPO= + # SMTP server settings MAIL_SMTP_FROM= MAIL_SMTP_HOST= MAIL_SMTP_PORT= MAIL_SMTP_LOGIN= MAIL_SMTP_PWD= -MAIL_REJECT_SELFSIGNED_TLS= \ No newline at end of file +MAIL_REJECT_SELFSIGNED_TLS= diff --git a/Containers/RepoManage/RepoManage.js b/Containers/RepoManage/RepoManage.js index 251b24d..f4e95da 100644 --- a/Containers/RepoManage/RepoManage.js +++ b/Containers/RepoManage/RepoManage.js @@ -97,7 +97,10 @@ export default function RepoManage(props) { ); router.replace('/'); } else { - toast.error('An error has occurred', toastOptions); + if (response.status == 403) + toast.error('Server does not allow deletion of repository', toastOptions); + else + toast.error('An error has occurred', toastOptions); router.replace('/'); console.log('Fail to delete'); } diff --git a/pages/api/repo/id/[slug]/delete.js b/pages/api/repo/id/[slug]/delete.js index 02a1c32..669107d 100644 --- a/pages/api/repo/id/[slug]/delete.js +++ b/pages/api/repo/id/[slug]/delete.js @@ -26,6 +26,14 @@ export default async function handler(req, res) { //A return to make sure we don't go any further if data are incorrect. return; } + //If deletion is disabled on the server, return error + if (process.env.DISABLE_DELETE_REPO === "true") { + res.status(403).json({ + status: 403, + message: 'Deletion is disabled on this server', + }); + return; + } try { //console.log('API call (DELETE)'); //Find the absolute path of the json directory From bfe1bd34336326a66255683a7efbd88c27ed6db4 Mon Sep 17 00:00:00 2001 From: Ravinou Date: Sat, 20 Jul 2024 20:35:58 +0200 Subject: [PATCH 038/366] =?UTF-8?q?doc:=20=F0=9F=93=9A=20add=20IPv6=20sett?= =?UTF-8?q?ing=20in=20the=20sample=20.env?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.sample | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.env.sample b/.env.sample index e0b2270..2952c89 100644 --- a/.env.sample +++ b/.env.sample @@ -41,3 +41,6 @@ MAIL_SMTP_PORT= MAIL_SMTP_LOGIN= MAIL_SMTP_PWD= MAIL_REJECT_SELFSIGNED_TLS= + +# Force app to start on IPv6 +#HOSTNAME=:: \ No newline at end of file From 85951c4cd034113863f845d53dc7afaf353dafff Mon Sep 17 00:00:00 2001 From: Ravinou Date: Sat, 20 Jul 2024 21:28:21 +0200 Subject: [PATCH 039/366] =?UTF-8?q?ui:=20=F0=9F=8E=A8=20improve=20warning?= =?UTF-8?q?=20message=20when=20delete=20mode=20is=20disable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Containers/RepoManage/RepoManage.js | 8 +++++--- pages/api/repo/id/[slug]/delete.js | 18 +++++++++--------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/Containers/RepoManage/RepoManage.js b/Containers/RepoManage/RepoManage.js index f4e95da..4ceaee4 100644 --- a/Containers/RepoManage/RepoManage.js +++ b/Containers/RepoManage/RepoManage.js @@ -98,9 +98,11 @@ export default function RepoManage(props) { router.replace('/'); } else { if (response.status == 403) - toast.error('Server does not allow deletion of repository', toastOptions); - else - toast.error('An error has occurred', toastOptions); + toast.warning( + '🔒 The server is currently protected against repository deletion.', + toastOptions + ); + else toast.error('An error has occurred', toastOptions); router.replace('/'); console.log('Fail to delete'); } diff --git a/pages/api/repo/id/[slug]/delete.js b/pages/api/repo/id/[slug]/delete.js index 669107d..7eef893 100644 --- a/pages/api/repo/id/[slug]/delete.js +++ b/pages/api/repo/id/[slug]/delete.js @@ -14,7 +14,14 @@ export default async function handler(req, res) { res.status(401).json({ message: 'You must be logged in.' }); return; } - + //If deletion is disabled on the server, return error + if (process.env.DISABLE_DELETE_REPO === 'true') { + res.status(403).json({ + status: 403, + message: 'Deletion is disabled on this server', + }); + return; + } //The data we expect to receive const { toDelete } = req.body; ////We check that we receive toDelete and it must be a bool. @@ -26,14 +33,7 @@ export default async function handler(req, res) { //A return to make sure we don't go any further if data are incorrect. return; } - //If deletion is disabled on the server, return error - if (process.env.DISABLE_DELETE_REPO === "true") { - res.status(403).json({ - status: 403, - message: 'Deletion is disabled on this server', - }); - return; - } + try { //console.log('API call (DELETE)'); //Find the absolute path of the json directory From 202e7dcef9de06e2130e4a5c9468dfd71ee1a90d Mon Sep 17 00:00:00 2001 From: Ravinou Date: Sat, 20 Jul 2024 22:08:30 +0200 Subject: [PATCH 040/366] =?UTF-8?q?feat:=20=E2=9C=A8=20add=20the=20ability?= =?UTF-8?q?=20to=20use=20FQDN=20without=20SSH=20port=20in=20wizards=20#237?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Repo/QuickCommands/QuickCommands.js | 15 ++++++++--- .../WizardSteps/WizardStep2/WizardStep2.js | 14 ++++++----- .../WizardSteps/WizardStep3/WizardStep3.js | 25 +++++++++++-------- .../WizardSteps/WizardStep4/WizardStep4.js | 2 +- helpers/functions/lanCommandOption.js | 10 ++++++-- 5 files changed, 43 insertions(+), 23 deletions(-) diff --git a/Components/Repo/QuickCommands/QuickCommands.js b/Components/Repo/QuickCommands/QuickCommands.js index c76a3a7..4208f18 100644 --- a/Components/Repo/QuickCommands/QuickCommands.js +++ b/Components/Repo/QuickCommands/QuickCommands.js @@ -16,10 +16,16 @@ export default function QuickCommands(props) { wizardEnv.SSH_SERVER_PORT_LAN ) { FQDN = wizardEnv.FQDN_LAN; - SSH_SERVER_PORT = wizardEnv.SSH_SERVER_PORT_LAN; + SSH_SERVER_PORT = + wizardEnv.SSH_SERVER_PORT_LAN === 'false' + ? '' + : ':' + wizardEnv.SSH_SERVER_PORT_LAN; } else { FQDN = wizardEnv.FQDN; - SSH_SERVER_PORT = wizardEnv.SSH_SERVER_PORT; + SSH_SERVER_PORT = + wizardEnv.SSH_SERVER_PORT === 'false' + ? '' + : ':' + wizardEnv.SSH_SERVER_PORT; } //State @@ -30,7 +36,7 @@ export default function QuickCommands(props) { // Asynchronously call copy to clipboard navigator.clipboard .writeText( - `ssh://${wizardEnv.UNIX_USER}@${FQDN}:${SSH_SERVER_PORT}/./${props.repositoryName}` + `ssh://${wizardEnv.UNIX_USER}@${FQDN}${SSH_SERVER_PORT}/./${props.repositoryName}` ) .then(() => { // If successful, update the isCopied state value @@ -50,7 +56,8 @@ export default function QuickCommands(props) {
Copied !
) : (
- ssh://{wizardEnv.UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + ssh://{wizardEnv.UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.repositoryName}
)} diff --git a/Components/WizardSteps/WizardStep2/WizardStep2.js b/Components/WizardSteps/WizardStep2/WizardStep2.js index 5963eaf..d6f4eb4 100644 --- a/Components/WizardSteps/WizardStep2/WizardStep2.js +++ b/Components/WizardSteps/WizardStep2/WizardStep2.js @@ -33,11 +33,12 @@ function WizardStep2(props) { >
borg init -e repokey-blake2 ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName}
@@ -57,8 +58,8 @@ function WizardStep2(props) {

Borgmatic

- If you are using Borgmatic and have already edited the configuration file - (find a sample on the step 4) : + If you are using Borgmatic and have already edited the + configuration file (find a sample on the step 4) :
ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName}
For more information about the Vorta graphical client, please diff --git a/Components/WizardSteps/WizardStep3/WizardStep3.js b/Components/WizardSteps/WizardStep3/WizardStep3.js index cb30a5c..d5b3ef8 100644 --- a/Components/WizardSteps/WizardStep3/WizardStep3.js +++ b/Components/WizardSteps/WizardStep3/WizardStep3.js @@ -32,12 +32,13 @@ function WizardStep3(props) { >
borg create ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName} ::archive1 /your/pathToBackup
@@ -78,11 +79,12 @@ function WizardStep3(props) { >
borg check -v --progress ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName}
  • List the remote archives with :
  • @@ -95,11 +97,12 @@ function WizardStep3(props) { >
    borg list ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName}
  • Download a remote archive with the following command :
  • @@ -112,12 +115,13 @@ function WizardStep3(props) { >
    borg export-tar --tar-filter="gzip -9" ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName} ::archive1 archive1.tar.gz
  • @@ -133,12 +137,13 @@ function WizardStep3(props) { >
    borg mount ssh:// - {UNIX_USER}@{FQDN}:{SSH_SERVER_PORT}/./ + {UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ {props.selectedOption.repositoryName} ::archive1 /tmp/yourMountPoint

    diff --git a/Components/WizardSteps/WizardStep4/WizardStep4.js b/Components/WizardSteps/WizardStep4/WizardStep4.js index 99dcc8d..a119975 100644 --- a/Components/WizardSteps/WizardStep4/WizardStep4.js +++ b/Components/WizardSteps/WizardStep4/WizardStep4.js @@ -23,7 +23,7 @@ function WizardStep4(props) { repositories: # Paths of local or remote repositories to backup to. - - ssh://${UNIX_USER}@${FQDN}:${SSH_SERVER_PORT}/./${props.selectedOption.repositoryName} + - ssh://${UNIX_USER}@${FQDN}${SSH_SERVER_PORT}/./${props.selectedOption.repositoryName} storage: archive_name_format: '{FQDN}-documents-{now}' diff --git a/helpers/functions/lanCommandOption.js b/helpers/functions/lanCommandOption.js index 40918e0..14d5d69 100644 --- a/helpers/functions/lanCommandOption.js +++ b/helpers/functions/lanCommandOption.js @@ -3,10 +3,16 @@ export default function lanCommandOption(wizardEnv, lanCommand) { let SSH_SERVER_PORT; if (lanCommand && wizardEnv.FQDN_LAN && wizardEnv.SSH_SERVER_PORT_LAN) { FQDN = wizardEnv.FQDN_LAN; - SSH_SERVER_PORT = wizardEnv.SSH_SERVER_PORT_LAN; + SSH_SERVER_PORT = + wizardEnv.SSH_SERVER_PORT_LAN === 'false' + ? '' + : ':' + wizardEnv.SSH_SERVER_PORT_LAN; } else { FQDN = wizardEnv.FQDN; - SSH_SERVER_PORT = wizardEnv.SSH_SERVER_PORT; + SSH_SERVER_PORT = + wizardEnv.SSH_SERVER_PORT === 'false' + ? '' + : ':' + wizardEnv.SSH_SERVER_PORT; } return { FQDN, SSH_SERVER_PORT }; From e4d9484759e606bd1e7f8a31b617393fcf0ffbcb Mon Sep 17 00:00:00 2001 From: Ravinou Date: Sun, 21 Jul 2024 23:14:35 +0200 Subject: [PATCH 041/366] =?UTF-8?q?feat:=20=E2=9C=A8=20generate=20and=20ma?= =?UTF-8?q?nage=20access=20tokens=20in=20account=20settings?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Components/UI/CopyButton/CopyButton.js | 25 +- .../UI/CopyButton/CopyButton.module.css | 9 + Components/UI/Info/Info.js | 10 +- .../UserSettings/Integrations/Integrations.js | 362 ++++++++++++++++++ .../PasswordSettings/PasswordSettings.js | 1 - Containers/UserSettings/UserSettings.js | 17 + .../UserSettings/UserSettings.module.css | 187 +++++++++ package-lock.json | 21 +- package.json | 3 +- pages/api/account/token-manager.js | 256 +++++++++++++ 10 files changed, 879 insertions(+), 12 deletions(-) create mode 100644 Containers/UserSettings/Integrations/Integrations.js create mode 100644 pages/api/account/token-manager.js diff --git a/Components/UI/CopyButton/CopyButton.js b/Components/UI/CopyButton/CopyButton.js index 0079d35..b9eb0b2 100644 --- a/Components/UI/CopyButton/CopyButton.js +++ b/Components/UI/CopyButton/CopyButton.js @@ -1,7 +1,7 @@ //Lib import classes from './CopyButton.module.css'; import { useState } from 'react'; -import { IconCopy } from '@tabler/icons-react'; +import { IconChecks, IconCopy } from '@tabler/icons-react'; export default function CopyButton(props) { //State @@ -29,11 +29,26 @@ export default function CopyButton(props) { className={classes.copyButton} onClick={() => handleCopy(props.dataToCopy)} > - + {props.children} + {isCopied && props.displayIconConfirmation ? ( + + ) : ( + + )} - {isCopied ? ( - Copied ! - ) : null} + {isCopied + ? !props.displayIconConfirmation && ( + Copied ! + ) + : null} ); } diff --git a/Components/UI/CopyButton/CopyButton.module.css b/Components/UI/CopyButton/CopyButton.module.css index ab59788..c9ad029 100644 --- a/Components/UI/CopyButton/CopyButton.module.css +++ b/Components/UI/CopyButton/CopyButton.module.css @@ -4,6 +4,15 @@ border: none; background-color: transparent; cursor: pointer; + display: flex; + align-items: center; +} + +.copyButton span { + font-size: 0.95rem; + color: #6d4aff; + margin-right: 5px; + user-select: text; } .copyValid { diff --git a/Components/UI/Info/Info.js b/Components/UI/Info/Info.js index e06c0bd..a818253 100644 --- a/Components/UI/Info/Info.js +++ b/Components/UI/Info/Info.js @@ -2,5 +2,13 @@ import classes from './Info.module.css'; export default function Info(props) { - return
    {props.message}
    ; + return ( +
    + {props.message} + {props.children} +
    + ); } diff --git a/Containers/UserSettings/Integrations/Integrations.js b/Containers/UserSettings/Integrations/Integrations.js new file mode 100644 index 0000000..7945b8d --- /dev/null +++ b/Containers/UserSettings/Integrations/Integrations.js @@ -0,0 +1,362 @@ +//Lib +import { toast } from 'react-toastify'; +import 'react-toastify/dist/ReactToastify.css'; +import classes from '../UserSettings.module.css'; +import { useEffect, useState } from 'react'; +import { useForm } from 'react-hook-form'; +import { SpinnerDotted } from 'spinners-react'; +import { v4 as uuidv4 } from 'uuid'; +import timestampConverter from '../../../helpers/functions/timestampConverter'; +import { IconTrash } from '@tabler/icons-react'; + +//Components +import Error from '../../../Components/UI/Error/Error'; +import CopyButton from '../../../Components/UI/CopyButton/CopyButton'; +import Info from '../../../Components/UI/Info/Info'; + +export default function Integrations() { + //Var + const toastOptions = { + position: 'top-right', + autoClose: 5000, + hideProgressBar: false, + closeOnClick: true, + pauseOnHover: true, + draggable: true, + progress: undefined, + }; + + const { + register, + handleSubmit, + reset, + formState: { errors, isSubmitting, isValid }, + } = useForm({ mode: 'onChange', defaultValues: { authorization: 'read' } }); + + ////State + const [isLoading, setIsLoading] = useState(false); + const [tokenList, setTokenList] = useState([]); + const [error, setError] = useState(); + const [lastGeneratedToken, setLastGeneratedToken] = useState(); + const [deletingToken, setDeletingToken] = useState(null); + + const fetchTokenList = async () => { + try { + const response = await fetch('/api/account/token-manager', { + method: 'GET', + headers: { + 'Content-type': 'application/json', + }, + }); + const tokensArray = await response.json(); + setTokenList(tokensArray); + } catch (error) { + console.log('Fetching token list failed.'); + } + }; + + ////LifeCycle + useEffect(() => { + fetchTokenList(); + }, []); + + //Form submit Handler for ADD a repo + const formSubmitHandler = async (data) => { + //Remove old error + setError(); + //Loading button on submit to avoid multiple send. + setIsLoading(true); + console.log(data); + //Generate a UUIDv4 + const token = uuidv4(); + setLastGeneratedToken({ name: data.tokenName, value: token }); + + // Post API to send the new token integration + try { + const response = await fetch('/api/account/token-manager', { + method: 'POST', + headers: { + 'Content-type': 'application/json', + }, + body: JSON.stringify({ + name: data.tokenName, + token: token, + creation: Math.floor(Date.now() / 1000), + expirition: null, + permissions: { + read: true, + write: data.authorization === 'write' ? true : false, + }, + }), + }); + const result = await response.json(); + + if (!response.ok) { + setIsLoading(false); + reset(); + toast.error(result.message, toastOptions); + setTimeout(() => setError(), 4000); + } else { + reset(); + fetchTokenList(); + setIsLoading(false); + toast.success('🔑 Token generated !', toastOptions); + } + } catch (error) { + reset(); + setIsLoading(false); + console.log(error); + toast.error( + "Can't generate your token. Contact your administrator.", + toastOptions + ); + setTimeout(() => setError(), 4000); + } + }; + + //Delete token + const deleteTokenHandler = async (tokenName) => { + try { + const response = await fetch('/api/account/token-manager', { + method: 'DELETE', + headers: { + 'Content-type': 'application/json', + }, + body: JSON.stringify({ + name: tokenName, + }), + }); + const result = await response.json(); + + if (!response.ok) { + toast.error(result.message, toastOptions); + setTimeout(() => setError(), 4000); + } else { + fetchTokenList(); + toast.success('🗑️ Token deleted !', toastOptions); + } + } catch (error) { + setIsLoading(false); + toast.error( + "Can't delete your token. Contact your administrator.", + toastOptions + ); + setTimeout(() => setError(), 4000); + } finally { + setDeletingToken(null); + } + }; + + return ( + <> +
    +
    +

    Generate token

    +
    +
    +
    + + +
    + + +
    + + +
    + {errors.tokenName && + errors.tokenName.type === 'maxLength' && ( + + 25 characters max. + + )} + {errors.tokenName && + errors.tokenName.type === 'pattern' && ( + + Only alphanumeric characters, dashes, and + underscores are allowed (no spaces). + + )} + {error && } +
    +
    + {tokenList && tokenList.length > 0 && ( +
    +
    +

    API Tokens

    +
    +
    + {tokenList + .slice() + .sort((a, b) => b.creation - a.creation) + .map((token, index) => ( +
    +
    +
    + {token.name} +
    +
    +

    + Created at: + {timestampConverter( + token.creation + )} +

    +

    + Permission: +

    + {token.permissions.write + ? 'Write' + : 'Read'} +
    +

    + {lastGeneratedToken && + lastGeneratedToken.name === + token.name && ( + <> +

    + + Token: + + + + { + lastGeneratedToken.value + } + + +

    + + This token will not + be shown again. + Please save it. + + + )} + {deletingToken && + deletingToken.name === + token.name && ( +
    + + +
    + )} +
    +
    +
    + + setDeletingToken(token) + } + /> +
    +
    + ))} +
    +
    + )} + + ); +} diff --git a/Containers/UserSettings/PasswordSettings/PasswordSettings.js b/Containers/UserSettings/PasswordSettings/PasswordSettings.js index 0e684ea..2efb260 100644 --- a/Containers/UserSettings/PasswordSettings/PasswordSettings.js +++ b/Containers/UserSettings/PasswordSettings/PasswordSettings.js @@ -36,7 +36,6 @@ export default function PasswordSettings(props) { //Form submit Handler for ADD a repo const formSubmitHandler = async (data) => { console.log(data); - //Remove old error setError(); //Loading button on submit to avoid multiple send. diff --git a/Containers/UserSettings/UserSettings.js b/Containers/UserSettings/UserSettings.js index d83d761..817bc8d 100644 --- a/Containers/UserSettings/UserSettings.js +++ b/Containers/UserSettings/UserSettings.js @@ -9,10 +9,12 @@ import PasswordSettings from './PasswordSettings/PasswordSettings'; import UsernameSettings from './UsernameSettings/UsernameSettings'; import EmailAlertSettings from './EmailAlertSettings/EmailAlertSettings'; import AppriseAlertSettings from './AppriseAlertSettings/AppriseAlertSettings'; +import Integrations from './Integrations/Integrations'; export default function UserSettings(props) { //States const [tab, setTab] = useState('General'); + const [displayDeleteDialog, setDisplayDeleteDialog] = useState(false); return (
    @@ -48,6 +50,16 @@ export default function UserSettings(props) { > Notifications +
    {tab == 'General' && ( <> @@ -62,6 +74,11 @@ export default function UserSettings(props) { )} + {tab == 'Integrations' && ( + <> + + + )} ); } diff --git a/Containers/UserSettings/UserSettings.module.css b/Containers/UserSettings/UserSettings.module.css index 6f9b393..a624377 100644 --- a/Containers/UserSettings/UserSettings.module.css +++ b/Containers/UserSettings/UserSettings.module.css @@ -47,6 +47,189 @@ width: 100%; } +/* Tokens generation */ + +.tokenGen { + display: flex; + align-items: center; + gap: 10px; + width: 100%; + box-sizing: border-box; +} + +.tokenGen input { + flex: 1; + margin-right: 10px; +} + +.newTokenWrapper { + display: flex; + align-items: center; + background-color: #f5f5f5; + border-radius: 5px; + color: #494b7a; + outline: 1px solid #6d4aff; + box-shadow: 0 0 10px 3px rgba(110, 74, 255, 0.605); + animation: entrance ease-in 0.3s 1 normal none; + padding: 10px; + font-family: ( + --pure-material-font, + 'Roboto', + 'Segoe UI', + BlinkMacSystemFont, + system-ui + ); +} + +.tokenCardList { + min-width: 50%; +} + +.tokenCardWrapper { + display: flex; + flex-direction: row; + align-items: center; + gap: 10px; + justify-content: space-between; + margin-bottom: 20px; +} + +.tokenCard { + width: 100%; + border: 1px solid #ccc; + border-radius: 5px; + padding: 20px; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); +} + +.tokenCardHeader { + font-size: 1.2em; + margin-bottom: 10px; + border-bottom: 1px solid #eee; + padding-bottom: 5px; + color: #494b7a; +} + +.tokenCardBody { + font-size: 0.9em; +} + +.tokenCardBody p { + display: flex; + align-items: center; + gap: 5px; + margin: 10px 0; + color: #494b7a; +} + +.tokenCardHighlight { + animation: highlightEffect 1s ease-out forwards; +} + +@keyframes highlightEffect { + 0% { + outline: 1px solid #6d4aff; + box-shadow: 0 0 0 rgba(110, 74, 255, 0.5); /* Pas d'ombre au début */ + } + 50% { + outline: 1px solid #6d4aff; + box-shadow: 0 0 15px rgba(110, 74, 255, 0.6); /* Ombre qui s'agrandit */ + } + 100% { + outline: 1px solid transparent; /* Bordure devient transparente */ + box-shadow: 0; + } +} + +.cancelButton { + border: 0; + padding: 10px 15px; + background-color: #c1c1c1; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; +} + +.cancelButton:hover { + border: 0; + padding: 10px 15px; + background-color: #9a9a9a; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; +} + +.cancelButton:active { + border: 0; + padding: 10px 15px; + background-color: #9a9a9a; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; + transform: scale(0.9); +} + +.confirmButton { + border: 0; + padding: 10px 15px; + background-color: #ff0000; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; +} + +.confirmButton:hover { + border: 0; + padding: 10px 15px; + background-color: #ff4b4b; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; +} + +.confirmButton:active { + border: 0; + padding: 10px 15px; + background-color: #ff4b4b; + color: white; + margin: 5px; + border-radius: 4px; + cursor: pointer; + text-decoration: none; + font-weight: bold; + font-size: 1em; + transform: scale(0.9); +} + +.permissionBadge { + border-radius: 5px; + border: 1px solid #6d4aff; + color: #6d4aff; + font-size: 0.9em; + padding: 2px 5px; + margin-right: 8px; +} + /* Forms */ .bwForm { @@ -83,6 +266,10 @@ color: #494b7a; } +.bwForm.tokenGen label { + margin-bottom: 0px; +} + .bwForm input, .bwForm textarea, .bwForm select { diff --git a/package-lock.json b/package-lock.json index 77d8510..96abd2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,7 +21,8 @@ "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", - "swr": "^2.2.5" + "swr": "^2.2.5", + "uuid": "^10.0.0" }, "devDependencies": { "@commitlint/cli": "^19.4.0", @@ -4374,6 +4375,14 @@ } } }, + "node_modules/next-auth/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/nodemailer": { "version": "6.9.14", "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-6.9.14.tgz", @@ -5880,9 +5889,13 @@ } }, "node_modules/uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], "bin": { "uuid": "dist/bin/uuid" } diff --git a/package.json b/package.json index 7df17fa..363f7f1 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,8 @@ "react-select": "^5.8.0", "react-toastify": "^10.0.5", "spinners-react": "^1.0.7", - "swr": "^2.2.5" + "swr": "^2.2.5", + "uuid": "^10.0.0" }, "devDependencies": { "@commitlint/cli": "^19.4.0", diff --git a/pages/api/account/token-manager.js b/pages/api/account/token-manager.js new file mode 100644 index 0000000..9b4f009 --- /dev/null +++ b/pages/api/account/token-manager.js @@ -0,0 +1,256 @@ +//Lib +import { promises as fs } from 'fs'; +import path from 'path'; +import { authOptions } from '../auth/[...nextauth]'; +import { getServerSession } from 'next-auth/next'; + +export default async function handler(req, res) { + if (req.method == 'POST') { + //Verify that the user is logged in. + const session = await getServerSession(req, res, authOptions); + if (!session) { + res.status(401).json({ message: 'You must be logged in.' }); + return; + } + + //The data we expect to receive + let { name, token, creation, expiration, permissions } = req.body; + + //Read the users file + //Find the absolute path of the json directory + const jsonDirectory = path.join(process.cwd(), '/config'); + let usersList = await fs.readFile( + jsonDirectory + '/users.json', + 'utf8' + ); + //Parse the usersList + usersList = JSON.parse(usersList); + + //1 : We check that we receive data for each variable. + if (!name || !token || !creation || !permissions) { + res.status(400).json({ message: 'A field is missing.' }); + return; + } + + //Control the data + const nameRegex = new RegExp('^[a-zA-Z0-9_-]{1,25}$'); + if (!nameRegex.test(name)) { + res.status(400).json({ message: 'Your name is not valid' }); + return; + } + + //2 : Verify that the user of the session exists + const userIndex = usersList + .map((user) => user.username) + .indexOf(session.user.name); + if (userIndex === -1) { + res.status(400).json({ message: 'User is incorrect.' }); + return; + } + const user = usersList[userIndex]; + + //3 : Check that the tokenName or tokenValue already exists + const tokenExists = + user.tokens && + user.tokens.some((existingToken) => existingToken.name === name); + if (tokenExists) { + res.status(400).json({ + message: 'A token with this name already exists.', + }); + return; + } + + //4 : Add the new token + try { + let newUsersList = usersList.map((user) => + user.username == session.user.name + ? { + ...user, + tokens: [ + ...(user.tokens || []), + { + name, + token, + creation, + expiration, + permissions, + }, + ], + } + : user + ); + //Stringify the new users list + newUsersList = JSON.stringify(newUsersList); + //Write the new JSON + await fs.writeFile( + jsonDirectory + '/users.json', + newUsersList, + (err) => { + if (err) console.log(err); + } + ); + res.status(200).json({ message: 'Successful API send' }); + } catch (error) { + //Log for backend + console.log(error); + //Log for frontend + if (error.code == 'ENOENT') { + res.status(500).json({ + status: 500, + message: 'No such file or directory', + }); + } else { + res.status(500).json({ + status: 500, + message: 'API error, contact the administrator', + }); + } + return; + } + } else if (req.method == 'GET') { + //Verify that the user is logged in. + const session = await getServerSession(req, res, authOptions); + if (!session) { + res.status(401).json({ message: 'You must be logged in.' }); + return; + } + try { + //Read the users file + //Find the absolute path of the json directory + const jsonDirectory = path.join(process.cwd(), '/config'); + let usersList = await fs.readFile( + jsonDirectory + '/users.json', + 'utf8' + ); + //Parse the usersList + usersList = JSON.parse(usersList); + + //Verify that the user of the session exists + const userIndex = usersList + .map((user) => user.username) + .indexOf(session.user.name); + if (userIndex === -1) { + res.status(400).json({ + message: + 'User is incorrect. Please, logout to update your session.', + }); + return; + } else { + //Send the token list without tokens + res.status(200).json([ + ...usersList[userIndex].tokens.map((token) => ({ + name: token.name, + creation: token.creation, + expiration: token.expiration, + permissions: token.permissions, + })), + ]); + return; + } + } catch (error) { + //Log for backend + console.log(error); + //Log for frontend + if (error.code == 'ENOENT') { + res.status(500).json({ + status: 500, + message: 'No such file or directory', + }); + } else { + res.status(500).json({ + status: 500, + message: 'API error, contact the administrator', + }); + } + return; + } + } else if (req.method == 'DELETE') { + //Verify that the user is logged in. + const session = await getServerSession(req, res, authOptions); + if (!session) { + res.status(401).json({ message: 'You must be logged in.' }); + return; + } + + //The data we expect to receive + let { name } = req.body; + + //Read the users file + //Find the absolute path of the json directory + const jsonDirectory = path.join(process.cwd(), '/config'); + let usersList = await fs.readFile( + jsonDirectory + '/users.json', + 'utf8' + ); + //Parse the usersList + usersList = JSON.parse(usersList); + + //1 : We check that we receive data for each variable. + if (!name) { + res.status(400).json({ message: 'A field is missing.' }); + return; + } + + //2 : Verify that the user of the session exists + const userIndex = usersList + .map((user) => user.username) + .indexOf(session.user.name); + if (userIndex === -1) { + res.status(400).json({ message: 'User is incorrect.' }); + return; + } + const user = usersList[userIndex]; + + //Control the data + const tokenExists = user.tokens.some( + (existingToken) => existingToken.name === name + ); + if (!tokenExists) { + res.status(400).json({ message: 'Token not found.' }); + return; + } + + //3 : Delete the token object if it exists + try { + let newUsersList = usersList.map((user) => + user.username == session.user.name + ? { + ...user, + tokens: user.tokens.filter( + (token) => token.name != name + ), + } + : user + ); + //Stringify the new users list + newUsersList = JSON.stringify(newUsersList); + //Write the new JSON + await fs.writeFile( + jsonDirectory + '/users.json', + newUsersList, + (err) => { + if (err) console.log(err); + } + ); + res.status(200).json({ message: 'Successful API send' }); + } catch (error) { + //Log for backend + console.log(error); + //Log for frontend + if (error.code == 'ENOENT') { + res.status(500).json({ + status: 500, + message: 'No such file or directory', + }); + } else { + res.status(500).json({ + status: 500, + message: 'API error, contact the administrator', + }); + } + return; + } + } else { + res.status(405).json({ message: 'Bad request on API' }); + } +} From 83fe9a5355715a8325fdee589e78cb9da7fc1d5e Mon Sep 17 00:00:00 2001 From: Ravinou Date: Mon, 22 Jul 2024 11:26:30 +0200 Subject: [PATCH 042/366] =?UTF-8?q?config:=20=F0=9F=94=A7=20update=20prett?= =?UTF-8?q?ier=20format?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .prettierrc.json | 37 +- .../Repo/QuickCommands/QuickCommands.js | 119 +-- .../QuickCommands/QuickCommands.module.css | 152 +-- Components/Repo/Repo.js | 353 +++---- Components/Repo/Repo.module.css | 319 +++--- Components/UI/CopyButton/CopyButton.js | 77 +- .../UI/CopyButton/CopyButton.module.css | 48 +- Components/UI/Error/Error.js | 2 +- Components/UI/Error/Error.module.css | 24 +- Components/UI/Info/Info.js | 15 +- Components/UI/Info/Info.module.css | 24 +- Components/UI/Layout/Footer/Footer.js | 32 +- Components/UI/Layout/Footer/Footer.module.css | 30 +- Components/UI/Layout/Header/Header.js | 20 +- Components/UI/Layout/Header/Header.module.css | 46 +- Components/UI/Layout/Header/Nav/Nav.js | 80 +- .../UI/Layout/Header/Nav/Nav.module.css | 48 +- Components/UI/Layout/Layout.js | 36 +- Components/UI/Layout/Layout.module.css | 30 +- Components/UI/Layout/NavSide/NavSide.js | 76 +- .../UI/Layout/NavSide/NavSide.module.css | 92 +- .../UI/ShimmerRepoList/ShimmerRepoList.js | 28 +- .../ShimmerRepoList.module.css | 66 +- Components/UI/StorageBar/StorageBar.js | 46 +- .../UI/StorageBar/StorageBar.module.css | 44 +- Components/UI/Switch/Switch.js | 40 +- Components/UI/Switch/Switch.module.css | 176 +-- .../WizardSteps/WizardStep1/WizardStep1.js | 107 +- .../WizardStep1/WizardStep1.module.css | 166 +-- .../WizardSteps/WizardStep2/WizardStep2.js | 262 +++-- .../WizardSteps/WizardStep3/WizardStep3.js | 333 +++--- .../WizardSteps/WizardStep4/WizardStep4.js | 139 ++- .../WizardStepBar/WizardStepBar.js | 153 ++- .../WizardStepBar/WizardStepBar.module.css | 110 +- .../StorageUsedChartBar.js | 152 ++- Containers/RepoList/RepoList.js | 280 +++-- Containers/RepoList/RepoList.module.css | 162 +-- Containers/RepoManage/RepoManage.js | 998 ++++++++---------- Containers/RepoManage/RepoManage.module.css | 350 +++--- Containers/SetupWizard/SetupWizard.js | 253 +++-- Containers/SetupWizard/SetupWizard.module.css | 26 +- .../AppriseAlertSettings.js | 384 ++++--- .../AppriseMode/AppriseMode.js | 298 +++--- .../AppriseURLs/AppriseURLs.js | 283 +++-- .../EmailAlertSettings/EmailAlertSettings.js | 359 +++---- .../EmailSettings/EmailSettings.js | 229 ++-- .../UserSettings/Integrations/Integrations.js | 577 +++++----- .../PasswordSettings/PasswordSettings.js | 220 ++-- Containers/UserSettings/UserSettings.js | 124 +-- .../UserSettings/UserSettings.module.css | 568 +++++----- .../UsernameSettings/UsernameSettings.js | 246 ++--- helpers/functions/auth.js | 4 +- helpers/functions/lanCommandOption.js | 27 +- helpers/functions/nodemailerSMTP.js | 26 +- helpers/functions/repoHistory.js | 63 +- helpers/functions/timestampConverter.js | 18 +- helpers/templates/emailAlertStatus.js | 52 +- helpers/templates/emailTest.js | 34 +- package.json | 4 +- pages/404.js | 52 +- pages/_app.js | 29 +- pages/account/index.js | 56 +- pages/api/account/getAppriseAlert.js | 102 +- pages/api/account/getAppriseMode.js | 105 +- pages/api/account/getAppriseServices.js | 102 +- pages/api/account/getEmailAlert.js | 102 +- pages/api/account/getWizardEnv.js | 78 +- pages/api/account/sendTestApprise.js | 288 +++-- pages/api/account/sendTestEmail.js | 77 +- pages/api/account/token-manager.js | 465 ++++---- pages/api/account/updateAppriseAlert.js | 142 ++- pages/api/account/updateAppriseMode.js | 152 ++- pages/api/account/updateAppriseServices.js | 150 ++- pages/api/account/updateEmail.js | 162 ++- pages/api/account/updateEmailAlert.js | 142 ++- pages/api/account/updatePassword.js | 159 ++- pages/api/account/updateUsername.js | 162 ++- pages/api/auth/[...nextauth].js | 161 ++- pages/api/cronjob/checkStatus.js | 427 ++++---- pages/api/cronjob/getStorageUsed.js | 148 ++- pages/api/repo/add.js | 223 ++-- pages/api/repo/id/[slug]/delete.js | 205 ++-- pages/api/repo/id/[slug]/edit.js | 197 ++-- pages/api/repo/id/[slug]/index.js | 101 +- pages/api/repo/index.js | 86 +- pages/api/version/index.js | 22 +- pages/index.js | 52 +- pages/login.js | 317 +++--- pages/manage-repo/add.js | 30 +- pages/manage-repo/edit/[slug].js | 30 +- pages/monitoring/index.js | 100 +- pages/setup-wizard/[slug].js | 50 +- styles/default.css | 259 +++-- 93 files changed, 6586 insertions(+), 7414 deletions(-) diff --git a/.prettierrc.json b/.prettierrc.json index d4fb785..a7c797f 100644 --- a/.prettierrc.json +++ b/.prettierrc.json @@ -1,21 +1,20 @@ { - "trailingComma": "es5", - "tabWidth": 4, - "semi": true, - "singleQuote": true, - "arrowParens": "always", - "bracketSpacing": true, - "endOfLine": "lf", - "htmlWhitespaceSensitivity": "css", - "insertPragma": false, - "singleAttributePerLine": false, - "bracketSameLine": false, - "jsxBracketSameLine": false, - "jsxSingleQuote": true, - "printWidth": 80, - "proseWrap": "preserve", - "quoteProps": "as-needed", - "requirePragma": false, - "useTabs": false, - "embeddedLanguageFormatting": "auto" + "trailingComma": "es5", + "tabWidth": 2, + "semi": true, + "singleQuote": true, + "arrowParens": "always", + "bracketSpacing": true, + "endOfLine": "lf", + "htmlWhitespaceSensitivity": "css", + "insertPragma": false, + "singleAttributePerLine": false, + "bracketSameLine": false, + "jsxSingleQuote": true, + "printWidth": 100, + "proseWrap": "preserve", + "quoteProps": "as-needed", + "requirePragma": false, + "useTabs": false, + "embeddedLanguageFormatting": "auto" } diff --git a/Components/Repo/QuickCommands/QuickCommands.js b/Components/Repo/QuickCommands/QuickCommands.js index 4208f18..d73d4a2 100644 --- a/Components/Repo/QuickCommands/QuickCommands.js +++ b/Components/Repo/QuickCommands/QuickCommands.js @@ -5,73 +5,62 @@ import classes from './QuickCommands.module.css'; import { IconSettingsAutomation, IconCopy } from '@tabler/icons-react'; export default function QuickCommands(props) { - ////Vars - const wizardEnv = props.wizardEnv; - //Needed to generate command for borg over LAN instead of WAN if env vars are set and option enabled. - let FQDN; - let SSH_SERVER_PORT; - if ( - props.lanCommand && - wizardEnv.FQDN_LAN && - wizardEnv.SSH_SERVER_PORT_LAN - ) { - FQDN = wizardEnv.FQDN_LAN; - SSH_SERVER_PORT = - wizardEnv.SSH_SERVER_PORT_LAN === 'false' - ? '' - : ':' + wizardEnv.SSH_SERVER_PORT_LAN; - } else { - FQDN = wizardEnv.FQDN; - SSH_SERVER_PORT = - wizardEnv.SSH_SERVER_PORT === 'false' - ? '' - : ':' + wizardEnv.SSH_SERVER_PORT; - } + ////Vars + const wizardEnv = props.wizardEnv; + //Needed to generate command for borg over LAN instead of WAN if env vars are set and option enabled. + let FQDN; + let SSH_SERVER_PORT; + if (props.lanCommand && wizardEnv.FQDN_LAN && wizardEnv.SSH_SERVER_PORT_LAN) { + FQDN = wizardEnv.FQDN_LAN; + SSH_SERVER_PORT = + wizardEnv.SSH_SERVER_PORT_LAN === 'false' ? '' : ':' + wizardEnv.SSH_SERVER_PORT_LAN; + } else { + FQDN = wizardEnv.FQDN; + SSH_SERVER_PORT = wizardEnv.SSH_SERVER_PORT === 'false' ? '' : ':' + wizardEnv.SSH_SERVER_PORT; + } - //State - const [isCopied, setIsCopied] = useState(false); + //State + const [isCopied, setIsCopied] = useState(false); - //Functions - const handleCopy = async () => { - // Asynchronously call copy to clipboard - navigator.clipboard - .writeText( - `ssh://${wizardEnv.UNIX_USER}@${FQDN}${SSH_SERVER_PORT}/./${props.repositoryName}` - ) - .then(() => { - // If successful, update the isCopied state value - setIsCopied(true); - setTimeout(() => { - setIsCopied(false); - }, 1500); - }) - .catch((err) => { - console.log(err); - }); - }; + //Functions + const handleCopy = async () => { + // Asynchronously call copy to clipboard + navigator.clipboard + .writeText(`ssh://${wizardEnv.UNIX_USER}@${FQDN}${SSH_SERVER_PORT}/./${props.repositoryName}`) + .then(() => { + // If successful, update the isCopied state value + setIsCopied(true); + setTimeout(() => { + setIsCopied(false); + }, 1500); + }) + .catch((err) => { + console.log(err); + }); + }; - return ( -
    - {isCopied ? ( -
    Copied !
    - ) : ( -
    - ssh://{wizardEnv.UNIX_USER}@{FQDN} - {SSH_SERVER_PORT}/./ - {props.repositoryName} -
    - )} - - {props.lanCommand &&
    LAN
    } - -
    - -
    - -
    -
    + return ( +
    + {isCopied ? ( +
    Copied !
    + ) : ( +
    + ssh://{wizardEnv.UNIX_USER}@{FQDN} + {SSH_SERVER_PORT}/./ + {props.repositoryName}
    - ); + )} + + {props.lanCommand &&
    LAN
    } + +
    + +
    + +
    +
    +
    + ); } diff --git a/Components/Repo/QuickCommands/QuickCommands.module.css b/Components/Repo/QuickCommands/QuickCommands.module.css index 13ce01f..faba43d 100644 --- a/Components/Repo/QuickCommands/QuickCommands.module.css +++ b/Components/Repo/QuickCommands/QuickCommands.module.css @@ -1,116 +1,116 @@ .container { - display: flex; - align-items: center; - align-self: flex-start; - margin: auto 47px auto auto; + display: flex; + align-items: center; + align-self: flex-start; + margin: auto 47px auto auto; } .icons { - position: relative; - bottom: 13px; + position: relative; + bottom: 13px; } .quickSetting { - position: absolute; - visibility: visible; - opacity: 1; + position: absolute; + visibility: visible; + opacity: 1; } .lanBadge { - border-radius: 5px; - border: 1px solid #6d4aff; - color: #6d4aff; - font-size: 0.9em; - padding: 2px 5px; - margin-right: 8px; + border-radius: 5px; + border: 1px solid #6d4aff; + color: #6d4aff; + font-size: 0.9em; + padding: 2px 5px; + margin-right: 8px; } .tooltip { - visibility: hidden; - opacity: 0; - width: 100%; - height: 100%; - border: 1px solid #6d4aff21; - background-color: #f5f5f5; - border-radius: 5px; - box-shadow: 0 0px 1px rgba(0, 0, 0, 0.1) inset; - color: #65748b; - font-size: 0.95rem; - padding: 5px 5px; - transition: 0.5s opacity; + visibility: hidden; + opacity: 0; + width: 100%; + height: 100%; + border: 1px solid #6d4aff21; + background-color: #f5f5f5; + border-radius: 5px; + box-shadow: 0 0px 1px rgba(0, 0, 0, 0.1) inset; + color: #65748b; + font-size: 0.95rem; + padding: 5px 5px; + transition: 0.5s opacity; } .copyButton { - position: absolute; - visibility: hidden; - opacity: 0; - border: none; - background-color: none; + position: absolute; + visibility: hidden; + opacity: 0; + border: none; + background-color: none; } .copyValid { - margin: auto 8px auto auto; - font-size: 0.95rem; - color: #6d4aff; - animation: scale-in-center 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; + margin: auto 8px auto auto; + font-size: 0.95rem; + color: #6d4aff; + animation: scale-in-center 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; } @keyframes scale-in-center { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 1; - } - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1; - } + 0% { + -webkit-transform: scale(0); + transform: scale(0); + opacity: 1; + } + 100% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } } /* On Hover */ .container:hover .tooltip { - visibility: visible; - opacity: 1; - width: 100%; - height: 100%; - border: 1px solid #6d4aff21; - background-color: #f5f5f5; - border-radius: 5px; - box-shadow: 0 0px 1px rgba(0, 0, 0, 0.1) inset; - color: #65748b; - font-size: 0.95rem; - padding: 5px 5px; - transition: 0.5s opacity; + visibility: visible; + opacity: 1; + width: 100%; + height: 100%; + border: 1px solid #6d4aff21; + background-color: #f5f5f5; + border-radius: 5px; + box-shadow: 0 0px 1px rgba(0, 0, 0, 0.1) inset; + color: #65748b; + font-size: 0.95rem; + padding: 5px 5px; + transition: 0.5s opacity; } .container:hover .copyButton { - position: absolute; - visibility: visible; - opacity: 1; - border: none; - background-color: transparent; - cursor: pointer; + position: absolute; + visibility: visible; + opacity: 1; + border: none; + background-color: transparent; + cursor: pointer; } .container:hover .quickSetting { - position: absolute; - visibility: hidden; - opacity: 0; + position: absolute; + visibility: hidden; + opacity: 0; } .container:hover .lanBadge { - visibility: hidden; - opacity: 0; - width: 0; - height: 0; - margin: 0; - padding: 0; + visibility: hidden; + opacity: 0; + width: 0; + height: 0; + margin: 0; + padding: 0; } @media all and (max-width: 1000px) { - .container { - display: none; - } + .container { + display: none; + } } diff --git a/Components/Repo/Repo.js b/Components/Repo/Repo.js index 2dce1ae..1e2312a 100644 --- a/Components/Repo/Repo.js +++ b/Components/Repo/Repo.js @@ -2,216 +2,179 @@ import { useState } from 'react'; import classes from './Repo.module.css'; import { - IconSettings, - IconInfoCircle, - IconChevronDown, - IconChevronUp, - IconBellOff, - IconLockPlus, + IconSettings, + IconInfoCircle, + IconChevronDown, + IconChevronUp, + IconBellOff, + IconLockPlus, } from '@tabler/icons-react'; import timestampConverter from '../../helpers/functions/timestampConverter'; import StorageBar from '../UI/StorageBar/StorageBar'; import QuickCommands from './QuickCommands/QuickCommands'; export default function Repo(props) { - //Load displayDetails from LocalStorage - const displayDetailsFromLS = () => { - try { - if ( - localStorage.getItem('displayDetailsRepo' + props.id) === null - ) { - localStorage.setItem( - 'displayDetailsRepo' + props.id, - JSON.stringify(true) - ); - return true; - } else { - return JSON.parse( - localStorage.getItem('displayDetailsRepo' + props.id) - ); - } - } catch (error) { - console.log( - 'LocalStorage error, key', - 'displayDetailsRepo' + props.id, - 'will be removed. Try again.', - 'Error message on this key : ', - error - ); - localStorage.removeItem('displayDetailsRepo' + props.id); - } - }; + //Load displayDetails from LocalStorage + const displayDetailsFromLS = () => { + try { + if (localStorage.getItem('displayDetailsRepo' + props.id) === null) { + localStorage.setItem('displayDetailsRepo' + props.id, JSON.stringify(true)); + return true; + } else { + return JSON.parse(localStorage.getItem('displayDetailsRepo' + props.id)); + } + } catch (error) { + console.log( + 'LocalStorage error, key', + 'displayDetailsRepo' + props.id, + 'will be removed. Try again.', + 'Error message on this key : ', + error + ); + localStorage.removeItem('displayDetailsRepo' + props.id); + } + }; - //States - const [displayDetails, setDisplayDetails] = useState(displayDetailsFromLS); + //States + const [displayDetails, setDisplayDetails] = useState(displayDetailsFromLS); - //BUTTON : Display or not repo details for ONE repo - const displayDetailsForOneHandler = (boolean) => { - //Update localStorage - localStorage.setItem( - 'displayDetailsRepo' + props.id, - JSON.stringify(boolean) - ); - setDisplayDetails(boolean); - }; + //BUTTON : Display or not repo details for ONE repo + const displayDetailsForOneHandler = (boolean) => { + //Update localStorage + localStorage.setItem('displayDetailsRepo' + props.id, JSON.stringify(boolean)); + setDisplayDetails(boolean); + }; - //Status indicator - const statusIndicator = () => { - return props.status - ? classes.statusIndicatorGreen - : classes.statusIndicatorRed; - }; + //Status indicator + const statusIndicator = () => { + return props.status ? classes.statusIndicatorGreen : classes.statusIndicatorRed; + }; - //Alert indicator - const alertIndicator = () => { - if (props.alert === 0) { - return ( -
    - -
    - ); - } - }; + //Alert indicator + const alertIndicator = () => { + if (props.alert === 0) { + return ( +
    + +
    + ); + } + }; - const appendOnlyModeIndicator = () => { - if (props.appendOnlyMode) { - return ( -
    - -
    - ); - } - }; + const appendOnlyModeIndicator = () => { + if (props.appendOnlyMode) { + return ( +
    + +
    + ); + } + }; - return ( + return ( + <> + {displayDetails ? ( <> - {displayDetails ? ( - <> -
    -
    -
    -
    {props.alias}
    - {appendOnlyModeIndicator()} - {alertIndicator()} - {props.comment && ( -
    - -
    - {props.comment} -
    -
    - )} - -
    +
    +
    +
    +
    {props.alias}
    + {appendOnlyModeIndicator()} + {alertIndicator()} + {props.comment && ( +
    + +
    {props.comment}
    +
    + )} + +
    - - - - - - - - - - - - - - - - - - - - - -
    Repository - Storage Size - - Storage Used - - Last change - IDEdit
    {props.repositoryName}{props.storageSize} GB - - -
    - {props.lastSave === 0 - ? '-' - : timestampConverter( - props.lastSave - )} -
    -
    #{props.id} -
    - - props.repoManageEditHandler() - } - /> -
    -
    + + + + + + + + + + + + + + + + + + + + + +
    RepositoryStorage SizeStorage UsedLast changeIDEdit
    {props.repositoryName}{props.storageSize} GB + + +
    + {props.lastSave === 0 ? '-' : timestampConverter(props.lastSave)}
    - - ) : ( - <> -
    -
    -
    -
    {props.alias}
    - {appendOnlyModeIndicator()} - {alertIndicator()} - {props.comment && ( -
    - -
    - {props.comment} -
    -
    - )} -
    -
    - {props.lastSave === 0 - ? null - : timestampConverter(props.lastSave)} - - #{props.id} - -
    +
    #{props.id} +
    + props.repoManageEditHandler()} + />
    - - )} - {displayDetails ? ( -
    - { - displayDetailsForOneHandler(false); - }} - /> -
    - ) : ( -
    - { - displayDetailsForOneHandler(true); - }} - /> -
    - )} +
    +
    - ); + ) : ( + <> +
    +
    +
    +
    {props.alias}
    + {appendOnlyModeIndicator()} + {alertIndicator()} + {props.comment && ( +
    + +
    {props.comment}
    +
    + )} +
    +
    + {props.lastSave === 0 ? null : timestampConverter(props.lastSave)} + #{props.id} +
    +
    + + )} + {displayDetails ? ( +
    + { + displayDetailsForOneHandler(false); + }} + /> +
    + ) : ( +
    + { + displayDetailsForOneHandler(true); + }} + /> +
    + )} + + ); } diff --git a/Components/Repo/Repo.module.css b/Components/Repo/Repo.module.css index edbf05e..d2f52fe 100644 --- a/Components/Repo/Repo.module.css +++ b/Components/Repo/Repo.module.css @@ -1,250 +1,249 @@ /*Repo CLOSE*/ .RepoClose { - display: flex; - justify-content: space-between; - align-items: center; - box-shadow: - 0 1px 3px rgba(0, 0, 0, 0.12), - 0 1px 2px rgba(0, 0, 0, 0.24); - width: auto; - max-height: 65px; - margin: 20px 0px 0px 0px; - border-radius: 5px; - overflow: visible; - /* Need to display comment on hover (which is position : absolute) */ - position: relative; + display: flex; + justify-content: space-between; + align-items: center; + box-shadow: + 0 1px 3px rgba(0, 0, 0, 0.12), + 0 1px 2px rgba(0, 0, 0, 0.24); + width: auto; + max-height: 65px; + margin: 20px 0px 0px 0px; + border-radius: 5px; + overflow: visible; + /* Need to display comment on hover (which is position : absolute) */ + position: relative; } .closeFlex { - display: flex; - align-items: center; - padding: 15px; + display: flex; + align-items: center; + padding: 15px; } .RepoClose .lastSave { - padding: 15px; + padding: 15px; } /* REPO OPEN */ .RepoOpen { - display: flex; - flex-direction: column; - justify-content: space-between; - align-items: center; - box-shadow: - 0 1px 3px rgba(0, 0, 0, 0.12), - 0 1px 2px rgba(0, 0, 0, 0.24); - width: auto; - max-height: 200px; - margin: 20px 0px 0px 0px; - padding: 15px; - border-radius: 5px; - transition: max-height 0.1s linear; - overflow: visible; - /* Need to display comment on hover (which is position : absolute) */ - position: relative; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; + box-shadow: + 0 1px 3px rgba(0, 0, 0, 0.12), + 0 1px 2px rgba(0, 0, 0, 0.24); + width: auto; + max-height: 200px; + margin: 20px 0px 0px 0px; + padding: 15px; + border-radius: 5px; + transition: max-height 0.1s linear; + overflow: visible; + /* Need to display comment on hover (which is position : absolute) */ + position: relative; } .openFlex { - display: flex; - align-items: center; - align-self: flex-start; - width: 100%; + display: flex; + align-items: center; + align-self: flex-start; + width: 100%; } .tabInfo { - width: 100%; - overflow-wrap: break-word; - border-collapse: collapse; - background: #fff; - border-radius: 10px; - overflow: hidden; - margin: 25px auto; - table-layout: fixed; + width: 100%; + overflow-wrap: break-word; + border-collapse: collapse; + background: #fff; + border-radius: 10px; + overflow: hidden; + margin: 25px auto; + table-layout: fixed; } .tabInfo thead tr { - height: 50px; - background: #111827; - color: #fff; + height: 50px; + background: #111827; + color: #fff; } .tabInfo thead th { - font-size: 1em; - color: #fff; - line-height: 1.2; - font-weight: normal; + font-size: 1em; + color: #fff; + line-height: 1.2; + font-weight: normal; } .tabInfo tbody tr { - background-color: #f3f4f6; - height: 50px; + background-color: #f3f4f6; + height: 50px; } .tabInfo tbody tr th { - color: #65748b; - font-size: 0.95rem; - font-weight: 400; + color: #65748b; + font-size: 0.95rem; + font-weight: 400; } /*STATUS*/ .statusIndicatorGreen { - background: rgb(9, 255, 0); - border-radius: 50%; - margin: 10px; - height: 15px; - width: 15px; - box-shadow: 0 0 0 0 rgb(9, 255, 0); - transform: scale(1); - animation: pulseGreen 5s infinite; - animation-delay: 1s; + background: rgb(9, 255, 0); + border-radius: 50%; + margin: 10px; + height: 15px; + width: 15px; + box-shadow: 0 0 0 0 rgb(9, 255, 0); + transform: scale(1); + animation: pulseGreen 5s infinite; + animation-delay: 1s; } @keyframes pulseGreen { - 0% { - transform: scale(0.95); - box-shadow: 0 0 0 0 rgba(17, 255, 0, 0.7); - } + 0% { + transform: scale(0.95); + box-shadow: 0 0 0 0 rgba(17, 255, 0, 0.7); + } - 10% { - transform: scale(1); - box-shadow: 0 0 0 10px rgba(17, 255, 0, 0); - } + 10% { + transform: scale(1); + box-shadow: 0 0 0 10px rgba(17, 255, 0, 0); + } - 90% { - transform: scale(0.95); - box-shadow: 0 0 0 0 rgba(17, 255, 0, 0); - } + 90% { + transform: scale(0.95); + box-shadow: 0 0 0 0 rgba(17, 255, 0, 0); + } } .statusIndicatorRed { - background: rgb(255, 0, 0); - border-radius: 50%; - margin: 10px; - height: 15px; - width: 15px; + background: rgb(255, 0, 0); + border-radius: 50%; + margin: 10px; + height: 15px; + width: 15px; - box-shadow: 0 0 0 0 rgb(255, 0, 0); - transform: scale(1); - animation: pulseRed 5s infinite; - animation-delay: 0.5s; + box-shadow: 0 0 0 0 rgb(255, 0, 0); + transform: scale(1); + animation: pulseRed 5s infinite; + animation-delay: 0.5s; } @keyframes pulseRed { - 0% { - transform: scale(0.95); - box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.7); - } + 0% { + transform: scale(0.95); + box-shadow: 0 0 0 0 rgba(255, 0, 0, 0.7); + } - 10% { - transform: scale(1); - box-shadow: 0 0 0 10px rgba(255, 0, 0, 0); - } + 10% { + transform: scale(1); + box-shadow: 0 0 0 10px rgba(255, 0, 0, 0); + } - 90% { - transform: scale(0.95); - box-shadow: 0 0 0 0 rgba(255, 0, 0, 0); - } + 90% { + transform: scale(0.95); + box-shadow: 0 0 0 0 rgba(255, 0, 0, 0); + } } /* Alert icon */ .alertIcon { - display: flex; - flex-direction: row; - align-items: center; - margin-left: 10px; + display: flex; + flex-direction: row; + align-items: center; + margin-left: 10px; } .appendOnlyModeIcon { - display: flex; - flex-direction: row; - align-items: center; - margin-left: 10px; + display: flex; + flex-direction: row; + align-items: center; + margin-left: 10px; } /* GENERAL */ .alias { - font-weight: bold; - color: #111827; - font-size: 1.05em; + font-weight: bold; + color: #111827; + font-size: 1.05em; } .lastSave { - color: #65748b; + color: #65748b; } .editButton { - cursor: pointer; + cursor: pointer; } /* Comment */ .comment { - display: flex; - flex-direction: row; - align-items: center; - margin-left: 10px; + display: flex; + flex-direction: row; + align-items: center; + margin-left: 10px; } .toolTip { - visibility: hidden; - width: auto; - height: auto; - max-width: 400px; - max-height: 250px; - background-color: #fff; - color: #637381; - text-align: center; - border-radius: 6px; - padding: 5px 5px; - position: absolute; - z-index: 1; - margin: 0px 0 0 20px; - opacity: 1; - transition: 0.5s opacity; - box-shadow: - 0 3px 6px rgba(0, 0, 0, 0.16), - 0 3px 6px rgba(0, 0, 0, 0.23); - overflow: auto; + visibility: hidden; + width: auto; + height: auto; + max-width: 400px; + max-height: 250px; + background-color: #fff; + color: #637381; + text-align: center; + border-radius: 6px; + padding: 5px 5px; + position: absolute; + z-index: 1; + margin: 0px 0 0 20px; + opacity: 1; + transition: 0.5s opacity; + box-shadow: + 0 3px 6px rgba(0, 0, 0, 0.16), + 0 3px 6px rgba(0, 0, 0, 0.23); + overflow: auto; } .comment:hover .toolTip, .comment:active .toolTip { - visibility: visible; - opacity: 1; + visibility: visible; + opacity: 1; } .chevron { - margin: auto; + margin: auto; } .chevron :focus, .chevron :hover { - cursor: pointer; - filter: invert(27%) sepia(82%) saturate(2209%) hue-rotate(240deg) - brightness(99%) contrast(105%); + cursor: pointer; + filter: invert(27%) sepia(82%) saturate(2209%) hue-rotate(240deg) brightness(99%) contrast(105%); } /* MOBILE */ @media all and (max-width: 1000px) { - .tabInfo { - display: none; - } - .toolTip { - display: none; - } - .comment { - display: none; - } - .lastSave { - display: none; - } - .closeFlex { - margin: auto; - } - .openFlex { - margin: auto; - width: auto; - } + .tabInfo { + display: none; + } + .toolTip { + display: none; + } + .comment { + display: none; + } + .lastSave { + display: none; + } + .closeFlex { + margin: auto; + } + .openFlex { + margin: auto; + width: auto; + } } diff --git a/Components/UI/CopyButton/CopyButton.js b/Components/UI/CopyButton/CopyButton.js index b9eb0b2..6de1f00 100644 --- a/Components/UI/CopyButton/CopyButton.js +++ b/Components/UI/CopyButton/CopyButton.js @@ -4,51 +4,38 @@ import { useState } from 'react'; import { IconChecks, IconCopy } from '@tabler/icons-react'; export default function CopyButton(props) { - //State - const [isCopied, setIsCopied] = useState(false); + //State + const [isCopied, setIsCopied] = useState(false); - //Function - const handleCopy = async (data) => { - navigator.clipboard - .writeText(data) - .then(() => { - // If successful, update the isCopied state value - setIsCopied(true); - setTimeout(() => { - setIsCopied(false); - }, 1500); - }) - .catch((err) => { - console.log(err); - }); - }; + //Function + const handleCopy = async (data) => { + navigator.clipboard + .writeText(data) + .then(() => { + // If successful, update the isCopied state value + setIsCopied(true); + setTimeout(() => { + setIsCopied(false); + }, 1500); + }) + .catch((err) => { + console.log(err); + }); + }; - return ( - <> - - {isCopied - ? !props.displayIconConfirmation && ( - Copied ! - ) - : null} - - ); + return ( + <> + + {isCopied + ? !props.displayIconConfirmation && Copied ! + : null} + + ); } diff --git a/Components/UI/CopyButton/CopyButton.module.css b/Components/UI/CopyButton/CopyButton.module.css index c9ad029..9e8a4ea 100644 --- a/Components/UI/CopyButton/CopyButton.module.css +++ b/Components/UI/CopyButton/CopyButton.module.css @@ -1,35 +1,35 @@ .copyButton { - visibility: visible; - opacity: 1; - border: none; - background-color: transparent; - cursor: pointer; - display: flex; - align-items: center; + visibility: visible; + opacity: 1; + border: none; + background-color: transparent; + cursor: pointer; + display: flex; + align-items: center; } .copyButton span { - font-size: 0.95rem; - color: #6d4aff; - margin-right: 5px; - user-select: text; + font-size: 0.95rem; + color: #6d4aff; + margin-right: 5px; + user-select: text; } .copyValid { - font-size: 0.95rem; - color: #6d4aff; - animation: scale-in-center 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; + font-size: 0.95rem; + color: #6d4aff; + animation: scale-in-center 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94) both; } @keyframes scale-in-center { - 0% { - -webkit-transform: scale(0); - transform: scale(0); - opacity: 1; - } - 100% { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1; - } + 0% { + -webkit-transform: scale(0); + transform: scale(0); + opacity: 1; + } + 100% { + -webkit-transform: scale(1); + transform: scale(1); + opacity: 1; + } } diff --git a/Components/UI/Error/Error.js b/Components/UI/Error/Error.js index 2a3fe1f..f677994 100644 --- a/Components/UI/Error/Error.js +++ b/Components/UI/Error/Error.js @@ -2,5 +2,5 @@ import classes from './Error.module.css'; export default function Error(props) { - return
    {props.message}
    ; + return
    {props.message}
    ; } diff --git a/Components/UI/Error/Error.module.css b/Components/UI/Error/Error.module.css index 19b75f6..9947cb2 100644 --- a/Components/UI/Error/Error.module.css +++ b/Components/UI/Error/Error.module.css @@ -1,18 +1,18 @@ .errorMessage { - margin: 15px 0px; - background-color: red; - color: white; - padding: 15px; - border-radius: 5px; - animation: myAnim 1s ease 0s 1 normal forwards; + margin: 15px 0px; + background-color: red; + color: white; + padding: 15px; + border-radius: 5px; + animation: myAnim 1s ease 0s 1 normal forwards; } @keyframes myAnim { - 0% { - opacity: 0; - } + 0% { + opacity: 0; + } - 100% { - opacity: 1; - } + 100% { + opacity: 1; + } } diff --git a/Components/UI/Info/Info.js b/Components/UI/Info/Info.js index a818253..5597ef9 100644 --- a/Components/UI/Info/Info.js +++ b/Components/UI/Info/Info.js @@ -2,13 +2,10 @@ import classes from './Info.module.css'; export default function Info(props) { - return ( -
    - {props.message} - {props.children} -
    - ); + return ( +
    + {props.message} + {props.children} +
    + ); } diff --git a/Components/UI/Info/Info.module.css b/Components/UI/Info/Info.module.css index 0bb624d..d6df06d 100644 --- a/Components/UI/Info/Info.module.css +++ b/Components/UI/Info/Info.module.css @@ -1,18 +1,18 @@ .infoMessage { - margin: 15px 0px; - background-color: rgb(17, 147, 0); - color: white; - padding: 15px; - border-radius: 5px; - animation: myAnim 1s ease 0s 1 normal forwards; + margin: 15px 0px; + background-color: rgb(17, 147, 0); + color: white; + padding: 15px; + border-radius: 5px; + animation: myAnim 1s ease 0s 1 normal forwards; } @keyframes myAnim { - 0% { - opacity: 0; - } + 0% { + opacity: 0; + } - 100% { - opacity: 1; - } + 100% { + opacity: 1; + } } diff --git a/Components/UI/Layout/Footer/Footer.js b/Components/UI/Layout/Footer/Footer.js index 10e2566..0e16c54 100644 --- a/Components/UI/Layout/Footer/Footer.js +++ b/Components/UI/Layout/Footer/Footer.js @@ -3,22 +3,22 @@ import classes from './Footer.module.css'; import packageInfo from '../../../../package.json'; function Footer() { - return ( -
    -

    - About{' '} - - BorgWarehouse - {' '} - - v{packageInfo.version} -

    -
    - ); + return ( +
    +

    + About{' '} + + BorgWarehouse + {' '} + - v{packageInfo.version} +

    +
    + ); } export default Footer; diff --git a/Components/UI/Layout/Footer/Footer.module.css b/Components/UI/Layout/Footer/Footer.module.css index c966167..60819d2 100644 --- a/Components/UI/Layout/Footer/Footer.module.css +++ b/Components/UI/Layout/Footer/Footer.module.css @@ -1,26 +1,26 @@ .footer { - color: #494b7a; - text-align: center; - position: absolute; - bottom: 0; - width: 100%; - height: 50px; + color: #494b7a; + text-align: center; + position: absolute; + bottom: 0; + width: 100%; + height: 50px; } .footer p { - padding-left: 70px; + padding-left: 70px; } a.site { - color: #6d4aff; - text-decoration: none; + color: #6d4aff; + text-decoration: none; } @media all and (max-width: 1000px) { - .footer { - width: 100%; - } - .footer p { - padding-left: 0; - } + .footer { + width: 100%; + } + .footer p { + padding-left: 0; + } } diff --git a/Components/UI/Layout/Header/Header.js b/Components/UI/Layout/Header/Header.js index 9bb2f64..d96a71d 100644 --- a/Components/UI/Layout/Header/Header.js +++ b/Components/UI/Layout/Header/Header.js @@ -5,17 +5,17 @@ import classes from './Header.module.css'; import Nav from './Nav/Nav'; function Header() { - return ( -
    -
    -
    BorgWarehouse
    + return ( +
    +
    +
    BorgWarehouse
    -
    -
    - ); +
    +
    + ); } export default Header; diff --git a/Components/UI/Layout/Header/Header.module.css b/Components/UI/Layout/Header/Header.module.css index c213172..d90271d 100644 --- a/Components/UI/Layout/Header/Header.module.css +++ b/Components/UI/Layout/Header/Header.module.css @@ -1,31 +1,31 @@ .Header { - width: 100%; - background: #111827; - box-shadow: - 0 3px 6px rgba(0, 0, 0, 0.16), - 0 3px 6px rgba(0, 0, 0, 0.23); - height: 50px; - color: white; - display: flex; - align-items: center; - position: static; - top: 0; - z-index: 1000; + width: 100%; + background: #111827; + box-shadow: + 0 3px 6px rgba(0, 0, 0, 0.16), + 0 3px 6px rgba(0, 0, 0, 0.23); + height: 50px; + color: white; + display: flex; + align-items: center; + position: static; + top: 0; + z-index: 1000; } .flex { - display: flex; - align-items: center; - justify-content: space-between; - width: 100%; - max-width: 1500px; - margin: auto; + display: flex; + align-items: center; + justify-content: space-between; + width: 100%; + max-width: 1500px; + margin: auto; } .logo { - font-size: 1.5em; - font-weight: bold; - color: #6d4aff; - text-shadow: #6d4aff 0px 0px 18px; - margin-left: 20px; + font-size: 1.5em; + font-weight: bold; + color: #6d4aff; + text-shadow: #6d4aff 0px 0px 18px; + margin-left: 20px; } diff --git a/Components/UI/Layout/Header/Nav/Nav.js b/Components/UI/Layout/Header/Nav/Nav.js index 24d035b..af38d71 100644 --- a/Components/UI/Layout/Header/Nav/Nav.js +++ b/Components/UI/Layout/Header/Nav/Nav.js @@ -6,52 +6,42 @@ import { useRouter } from 'next/router'; import { useSession, signOut } from 'next-auth/react'; export default function Nav() { - ////Var - //Get the current route to light the right Item - const router = useRouter(); - const currentRoute = router.pathname; - const { status, data } = useSession(); + ////Var + //Get the current route to light the right Item + const router = useRouter(); + const currentRoute = router.pathname; + const { status, data } = useSession(); - //Function - const onLogoutClickedHandler = async () => { - //This bug is open : https://github.com/nextauthjs/next-auth/issues/1542 - //I put redirect to false and redirect with router. - //The result on logout click is an ugly piece of page for a few milliseconds before returning to the login page. - //It's ugly if you are perfectionist but functional and invisible for most of users while waiting for a next-auth fix. - await signOut({ redirect: false }); - router.replace('/login'); - }; + //Function + const onLogoutClickedHandler = async () => { + //This bug is open : https://github.com/nextauthjs/next-auth/issues/1542 + //I put redirect to false and redirect with router. + //The result on logout click is an ugly piece of page for a few milliseconds before returning to the login page. + //It's ugly if you are perfectionist but functional and invisible for most of users while waiting for a next-auth fix. + await signOut({ redirect: false }); + router.replace('/login'); + }; - return ( -
      -
    • - -
      -
      - -
      -
      - {status === 'authenticated' && data.user.name} -
      -
      - -
    • + return ( +
        +
      • + +
        +
        + +
        +
        {status === 'authenticated' && data.user.name}
        +
        + +
      • -
      • -
        - - - -
        -
      • -
      - ); +
    • +
      + + + +
      +
    • +
    + ); } diff --git a/Components/UI/Layout/Header/Nav/Nav.module.css b/Components/UI/Layout/Header/Nav/Nav.module.css index 5b8c396..8032f69 100644 --- a/Components/UI/Layout/Header/Nav/Nav.module.css +++ b/Components/UI/Layout/Header/Nav/Nav.module.css @@ -1,54 +1,54 @@ .Nav { - list-style-type: none; - margin: 0px 15px 0px 0px; - padding: 0; - display: flex; + list-style-type: none; + margin: 0px 15px 0px 0px; + padding: 0; + display: flex; } .user { - display: flex; - align-items: center; + display: flex; + align-items: center; } .username::first-letter { - text-transform: capitalize; + text-transform: capitalize; } .account { - background: none; - border: none; - cursor: pointer; - color: #494b7a; + background: none; + border: none; + cursor: pointer; + color: #494b7a; } .account a { - color: #494b7a; - text-decoration: none; + color: #494b7a; + text-decoration: none; } .account :focus, .account .active, .account :hover { - color: #6d4aff; - text-shadow: #6d4aff 0px 0px 18px; + color: #6d4aff; + text-shadow: #6d4aff 0px 0px 18px; } .logout { - background: none; - border: none; - cursor: pointer; - color: #494b7a; + background: none; + border: none; + cursor: pointer; + color: #494b7a; } .logout :focus, .logout .active, .logout :hover { - color: #6d4aff; - text-shadow: #6d4aff 0px 0px 18px; + color: #6d4aff; + text-shadow: #6d4aff 0px 0px 18px; } @media all and (max-width: 1000px) { - .account { - display: none; - } + .account { + display: none; + } } diff --git a/Components/UI/Layout/Layout.js b/Components/UI/Layout/Layout.js index 96fcedd..f09e325 100644 --- a/Components/UI/Layout/Layout.js +++ b/Components/UI/Layout/Layout.js @@ -6,25 +6,25 @@ import classes from './Layout.module.css'; import { useSession } from 'next-auth/react'; function Layout(props) { - //Var - const { status } = useSession(); + //Var + const { status } = useSession(); - if (status === 'authenticated') { - return ( - <> -
    - -
    {props.children}
    -