68 Commits

Author SHA1 Message Date
c94f0f35cd Update dependency react-router-dom to ^7.9.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-22 00:36:21 +00:00
36dd681c84 Merge pull request 'Update Rust crate serde_json to 1.0.145' (#582) from renovate/serde_json-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-22 00:35:42 +00:00
feffd18395 Update Rust crate serde_json to 1.0.145
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-21 00:38:04 +00:00
0a12bf917e Merge pull request 'Update dependency @mui/x-tree-view to ^8.11.3' (#581) from renovate/mui-x-tree-view-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-21 00:37:46 +00:00
0a263cf076 Update dependency @mui/x-tree-view to ^8.11.3
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-20 00:34:48 +00:00
33f7b762dd Merge pull request 'Update dependency @mui/x-data-grid to ^8.11.3' (#580) from renovate/mui-x-data-grid-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-20 00:34:40 +00:00
593f10dfd1 Update dependency @mui/x-data-grid to ^8.11.3
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-19 00:33:55 +00:00
62545d1689 Merge pull request 'Update dependency @fontsource/roboto to ^5.2.8' (#579) from renovate/fontsource-roboto-5.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-19 00:33:48 +00:00
a8951888b8 Update dependency @fontsource/roboto to ^5.2.8
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-18 00:34:45 +00:00
abaf7b163c Merge pull request 'Update Rust crate serde to 1.0.225' (#578) from renovate/serde-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-18 00:34:40 +00:00
6f683a65fb Update Rust crate serde to 1.0.225
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-17 00:34:18 +00:00
b297f2de2d Merge pull request 'Update dependency react-easy-crop to ^5.5.1' (#577) from renovate/react-easy-crop-5.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-17 00:34:10 +00:00
5ed6aa0567 Update dependency react-easy-crop to ^5.5.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-16 00:34:11 +00:00
3857503e2d Merge pull request 'Update dependency @fontsource/roboto to ^5.2.7' (#576) from renovate/fontsource-roboto-5.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-16 00:34:05 +00:00
41e0022c1f Update dependency @fontsource/roboto to ^5.2.7
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-15 00:34:46 +00:00
2748206ca6 Merge pull request 'Update dependency @mui/x-data-grid to ^8.11.2' (#575) from renovate/mui-x-data-grid-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-15 00:34:40 +00:00
3813949bc5 Update dependency @mui/x-data-grid to ^8.11.2
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-14 00:35:06 +00:00
d93f198f98 Merge pull request 'Update dependency @types/react to ^19.1.13' (#574) from renovate/react into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-14 00:34:52 +00:00
1264e2a636 Update dependency @types/react to ^19.1.13
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-13 00:35:33 +00:00
99c7253619 Merge pull request 'Update dependency @eslint/js to ^9.35.0' (#573) from renovate/eslint-js-9.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-13 00:35:27 +00:00
167d90a4b9 Update dependency @eslint/js to ^9.35.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-12 00:34:32 +00:00
f983a22eb8 Merge pull request 'Update dependency @mui/x-tree-view to ^8.11.2' (#572) from renovate/mui-x-tree-view-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-12 00:34:20 +00:00
ffae610848 Update dependency @mui/x-tree-view to ^8.11.2
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-11 00:33:36 +00:00
6989b1ab92 Merge pull request 'Update Rust crate thiserror to 2.0.16' (#571) from renovate/thiserror-2.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-11 00:33:29 +00:00
77e72635bf Update Rust crate thiserror to 2.0.16
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-10 00:34:00 +00:00
e9dca75d1e Merge pull request 'Update Rust crate chrono to 0.4.42' (#570) from renovate/chrono-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-10 00:33:30 +00:00
5893fde734 Update Rust crate chrono to 0.4.42
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-09 00:34:14 +00:00
4a51ef08a9 Merge pull request 'Update Rust crate serde_json to 1.0.143' (#569) from renovate/serde_json-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-09 00:34:06 +00:00
7f106d042a Update Rust crate serde_json to 1.0.143
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-08 00:35:14 +00:00
80396a17d0 Merge pull request 'Update Rust crate log to 0.4.28' (#568) from renovate/log-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-08 00:34:04 +00:00
04640caa5c Update Rust crate log to 0.4.28
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-07 00:35:05 +00:00
975ac224d4 Merge pull request 'Update Rust crate image to 0.25.8' (#567) from renovate/image-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-07 00:33:55 +00:00
7e4f5cee9d Update Rust crate image to 0.25.8
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-06 00:34:44 +00:00
bf0e5e9e4f Merge pull request 'Update dependency @mui/x-tree-view to ^8.11.1' (#566) from renovate/mui-x-tree-view-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-06 00:34:35 +00:00
2b8955475d Update dependency @mui/x-tree-view to ^8.11.1
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-05 00:20:37 +00:00
bcfbf61c6a Merge pull request 'Update Rust crate clap to 4.5.47' (#565) from renovate/clap-4.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-05 00:20:29 +00:00
0506e72d31 Update Rust crate clap to 4.5.47
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-04 00:27:12 +00:00
f82f920046 Merge pull request 'Update dependency @mui/lab to ^7.0.0-beta.17' (#564) from renovate/mui-lab-7.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-04 00:27:05 +00:00
5b31e50ff6 Update dependency @mui/lab to ^7.0.0-beta.17
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-03 00:26:39 +00:00
93987e30cf Merge pull request 'Update Rust crate redis to 0.32.5' (#563) from renovate/redis-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-03 00:26:33 +00:00
60e4ca93c7 Update Rust crate redis to 0.32.5
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-02 00:27:05 +00:00
71cb01c7fc Merge pull request 'Update dependency jspdf to ^3.0.2' (#562) from renovate/jspdf-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-02 00:25:52 +00:00
7599881cfe Update dependency jspdf to ^3.0.2
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-09-01 00:26:02 +00:00
12f298ef56 Merge pull request 'Update dependency dayjs to ^1.11.18' (#561) from renovate/dayjs-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-09-01 00:25:48 +00:00
866ee01bb1 Update dependency dayjs to ^1.11.18
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-08-31 00:25:59 +00:00
7a585efd8a Merge pull request 'Update dependency @mui/x-tree-view to ^8.11.0' (#534) from renovate/mui-x-tree-view-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-31 00:25:54 +00:00
935ab75d5b Update dependency @mui/x-tree-view to ^8.11.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-08-30 00:26:28 +00:00
1d661fb4d8 Merge pull request 'Update react' (#560) from renovate/react into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-30 00:26:17 +00:00
849d9aba82 Update react
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-08-29 00:27:19 +00:00
a435d4623f Fix theme issue
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-28 08:34:56 +02:00
4e4fa37b3b Fix build issue
All checks were successful
continuous-integration/drone/push Build is passing
2025-08-28 08:31:25 +02:00
0540f515ec Fix cargo clippy issues
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-28 08:15:50 +02:00
6e53486832 Merge pull request 'Update Rust crate mailchecker to 6.0.18' (#559) from renovate/mailchecker-6.x into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-26 00:25:43 +00:00
44d09b54e8 Update Rust crate mailchecker to 6.0.18
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-25 00:26:14 +00:00
1ae44942b0 Merge pull request 'Update dependency @types/react to ^19.1.11' (#558) from renovate/react into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-24 00:26:10 +00:00
6a60c43782 Update dependency @types/react to ^19.1.11
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-23 00:27:00 +00:00
4c97e7a6f4 Merge pull request 'Update Rust crate lettre to 0.11.18' (#557) from renovate/lettre-0.x into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-22 00:26:12 +00:00
cd5f453172 Update Rust crate lettre to 0.11.18
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-21 00:26:33 +00:00
83cfcbb237 Merge pull request 'Update Rust crate bcrypt to 0.17.1' (#556) from renovate/bcrypt-0.x into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-20 00:26:28 +00:00
1a0bf0caee Update Rust crate bcrypt to 0.17.1
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-19 00:26:30 +00:00
a0c82ccca2 Merge pull request 'Update Rust crate clap to 4.5.45' (#555) from renovate/clap-4.x into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-18 00:25:41 +00:00
33f549b081 Update Rust crate clap to 4.5.45
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-17 00:26:44 +00:00
24de257218 Merge pull request 'Update Rust crate anyhow to 1.0.99' (#554) from renovate/anyhow-1.x into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-16 00:25:37 +00:00
33d422627f Update Rust crate anyhow to 1.0.99
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-15 00:26:41 +00:00
93da051599 Merge pull request 'Update dependency @types/react to ^19.1.10' (#553) from renovate/react into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-14 00:26:07 +00:00
20b50d7040 Update dependency @types/react to ^19.1.10
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-13 00:26:04 +00:00
f4949e1b89 Merge pull request 'Update fullcalendar to ^6.1.19' (#552) from renovate/fullcalendar into master
Some checks failed
continuous-integration/drone/push Build is failing
2025-08-12 00:26:00 +00:00
3f517378a1 Update fullcalendar to ^6.1.19
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is failing
2025-08-11 00:26:41 +00:00
11 changed files with 378 additions and 377 deletions

View File

@@ -10,38 +10,38 @@
"dependencies": { "dependencies": {
"@emotion/react": "^11.14.0", "@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1", "@emotion/styled": "^11.14.1",
"@fontsource/roboto": "^5.2.6", "@fontsource/roboto": "^5.2.8",
"@fullcalendar/core": "^6.1.18", "@fullcalendar/core": "^6.1.19",
"@fullcalendar/daygrid": "^6.1.18", "@fullcalendar/daygrid": "^6.1.19",
"@fullcalendar/interaction": "^6.1.18", "@fullcalendar/interaction": "^6.1.19",
"@fullcalendar/list": "^6.1.18", "@fullcalendar/list": "^6.1.19",
"@fullcalendar/react": "^6.1.18", "@fullcalendar/react": "^6.1.19",
"@mdi/js": "^7.4.47", "@mdi/js": "^7.4.47",
"@mdi/react": "^1.6.1", "@mdi/react": "^1.6.1",
"@mui/icons-material": "^7.2.0", "@mui/icons-material": "^7.2.0",
"@mui/lab": "^7.0.0-beta.16", "@mui/lab": "^7.0.0-beta.17",
"@mui/material": "^7.2.0", "@mui/material": "^7.2.0",
"@mui/x-data-grid": "^8.9.2", "@mui/x-data-grid": "^8.11.3",
"@mui/x-date-pickers": "^8.9.2", "@mui/x-date-pickers": "^8.9.2",
"@mui/x-tree-view": "^8.10.0", "@mui/x-tree-view": "^8.11.3",
"date-and-time": "^3.6.0", "date-and-time": "^3.6.0",
"dayjs": "^1.11.13", "dayjs": "^1.11.18",
"email-validator": "^2.0.4", "email-validator": "^2.0.4",
"filesize": "^11.0.2", "filesize": "^11.0.2",
"jspdf": "^3.0.1", "jspdf": "^3.0.2",
"mui-color-input": "^7.0.0", "mui-color-input": "^7.0.0",
"react": "^19.1.1", "react": "^19.1.1",
"react-dom": "^19.1.1", "react-dom": "^19.1.1",
"react-easy-crop": "^5.5.0", "react-easy-crop": "^5.5.1",
"react-qr-code": "^2.0.18", "react-qr-code": "^2.0.18",
"react-router-dom": "^7.4.0", "react-router-dom": "^7.9.1",
"react-zoom-pan-pinch": "^3.7.0", "react-zoom-pan-pinch": "^3.7.0",
"svg2pdf.js": "^2.5.0" "svg2pdf.js": "^2.5.0"
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.32.0", "@eslint/js": "^9.35.0",
"@types/react": "^19.1.9", "@types/react": "^19.1.13",
"@types/react-dom": "^19.1.7", "@types/react-dom": "^19.1.9",
"@vitejs/plugin-react": "^4.7.0", "@vitejs/plugin-react": "^4.7.0",
"eslint": "^9.31.0", "eslint": "^9.31.0",
"eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-hooks": "^5.2.0",
@@ -294,9 +294,9 @@
} }
}, },
"node_modules/@babel/runtime": { "node_modules/@babel/runtime": {
"version": "7.28.2", "version": "7.28.3",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.2.tgz", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.3.tgz",
"integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==", "integrity": "sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA==",
"license": "MIT", "license": "MIT",
"engines": { "engines": {
"node": ">=6.9.0" "node": ">=6.9.0"
@@ -347,6 +347,28 @@
"node": ">=6.9.0" "node": ">=6.9.0"
} }
}, },
"node_modules/@base-ui-components/utils": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@base-ui-components/utils/-/utils-0.1.1.tgz",
"integrity": "sha512-HWXZA8upEKgrdL1rQqxWu1H+2tB2cXzY2jCxvgnpUv3eoWN2jldhXxMZnXIjZF7jahGxSWXfSIM/qskiTWFFxA==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.28.3",
"@floating-ui/utils": "^0.2.10",
"reselect": "^5.1.1",
"use-sync-external-store": "^1.5.0"
},
"peerDependencies": {
"@types/react": "^17 || ^18 || ^19",
"react": "^17 || ^18 || ^19",
"react-dom": "^17 || ^18 || ^19"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
}
}
},
"node_modules/@ctrl/tinycolor": { "node_modules/@ctrl/tinycolor": {
"version": "4.1.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz", "resolved": "https://registry.npmjs.org/@ctrl/tinycolor/-/tinycolor-4.1.0.tgz",
@@ -1051,9 +1073,9 @@
} }
}, },
"node_modules/@eslint/js": { "node_modules/@eslint/js": {
"version": "9.32.0", "version": "9.35.0",
"resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.32.0.tgz", "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.35.0.tgz",
"integrity": "sha512-BBpRFZK3eX6uMLKz8WxFOBIFFcGFJ/g8XuwjTHCqHROSIsopI+ddn/d5Cfh36+7+e5edVS8dbSHnBNhrLEX0zg==", "integrity": "sha512-30iXE9whjlILfWobBkNerJo+TXYsgVM5ERQwMcMKCHckHflCmf7wXDAHlARoWnh0s1U72WqlbeyE7iAcCzuCPw==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"engines": { "engines": {
@@ -1087,58 +1109,64 @@
"node": "^18.18.0 || ^20.9.0 || >=21.1.0" "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
} }
}, },
"node_modules/@floating-ui/utils": {
"version": "0.2.10",
"resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz",
"integrity": "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==",
"license": "MIT"
},
"node_modules/@fontsource/roboto": { "node_modules/@fontsource/roboto": {
"version": "5.2.6", "version": "5.2.8",
"resolved": "https://registry.npmjs.org/@fontsource/roboto/-/roboto-5.2.6.tgz", "resolved": "https://registry.npmjs.org/@fontsource/roboto/-/roboto-5.2.8.tgz",
"integrity": "sha512-hzarG7yAhMoP418smNgfY4fO7UmuUEm5JUtbxCoCcFHT0hOJB+d/qAEyoNjz7YkPU5OjM2LM8rJnW8hfm0JLaA==", "integrity": "sha512-oh9g4Cg3loVMz9MWeKWfDI+ooxxG1aRVetkiKIb2ESS2rrryGecQ/y4pAj4z5A5ebyw450dYRi/c4k/I3UBhHA==",
"license": "OFL-1.1", "license": "OFL-1.1",
"funding": { "funding": {
"url": "https://github.com/sponsors/ayuhito" "url": "https://github.com/sponsors/ayuhito"
} }
}, },
"node_modules/@fullcalendar/core": { "node_modules/@fullcalendar/core": {
"version": "6.1.18", "version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.18.tgz", "resolved": "https://registry.npmjs.org/@fullcalendar/core/-/core-6.1.19.tgz",
"integrity": "sha512-cD7XtZIZZ87Cg2+itnpsONCsZ89VIfLLDZ22pQX4IQVWlpYUB3bcCf878DhWkqyEen6dhi5ePtBoqYgm5K+0fQ==", "integrity": "sha512-z0aVlO5e4Wah6p6mouM0UEqtRf1MZZPt4mwzEyU6kusaNL+dlWQgAasF2cK23hwT4cmxkEmr4inULXgpyeExdQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"preact": "~10.12.1" "preact": "~10.12.1"
} }
}, },
"node_modules/@fullcalendar/daygrid": { "node_modules/@fullcalendar/daygrid": {
"version": "6.1.18", "version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.18.tgz", "resolved": "https://registry.npmjs.org/@fullcalendar/daygrid/-/daygrid-6.1.19.tgz",
"integrity": "sha512-s452Zle1SdMEzZDw+pDczm8m3JLIZzS9ANMThXTnqeqJewW1gqNFYas18aHypJSgF9Fh9rDJjTSUw04BpXB/Mg==", "integrity": "sha512-IAAfnMICnVWPjpT4zi87i3FEw0xxSza0avqY/HedKEz+l5MTBYvCDPOWDATpzXoLut3aACsjktIyw9thvIcRYQ==",
"license": "MIT", "license": "MIT",
"peerDependencies": { "peerDependencies": {
"@fullcalendar/core": "~6.1.18" "@fullcalendar/core": "~6.1.19"
} }
}, },
"node_modules/@fullcalendar/interaction": { "node_modules/@fullcalendar/interaction": {
"version": "6.1.18", "version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.18.tgz", "resolved": "https://registry.npmjs.org/@fullcalendar/interaction/-/interaction-6.1.19.tgz",
"integrity": "sha512-f/mD5RTjzw+Q6MGTMZrLCgIrQLIUUO9NV/58aM2J6ZBQZeRlNizDqmqldqyG+j49zj2vFhUfZibPrVKWm5yA4Q==", "integrity": "sha512-GOciy79xe8JMVp+1evAU3ytdwN/7tv35t5i1vFkifiuWcQMLC/JnLg/RA2s4sYmQwoYhTw/p4GLcP0gO5B3X5w==",
"license": "MIT", "license": "MIT",
"peerDependencies": { "peerDependencies": {
"@fullcalendar/core": "~6.1.18" "@fullcalendar/core": "~6.1.19"
} }
}, },
"node_modules/@fullcalendar/list": { "node_modules/@fullcalendar/list": {
"version": "6.1.18", "version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.18.tgz", "resolved": "https://registry.npmjs.org/@fullcalendar/list/-/list-6.1.19.tgz",
"integrity": "sha512-XPZI50mq3HXyDQ5sT3jmqQUuwG8zQb5H14dQIUAmOHAIFRA3WpkxlzrXO0U1SrosvGySMPyyNNxvMKI1Q/jL7A==", "integrity": "sha512-knZHpAVF0LbzZpSJSUmLUUzF0XlU/MRGK+Py2s0/mP93bCtno1k2L3XPs/kzh528hSjehwLm89RgKTSfW1P6cA==",
"license": "MIT", "license": "MIT",
"peerDependencies": { "peerDependencies": {
"@fullcalendar/core": "~6.1.18" "@fullcalendar/core": "~6.1.19"
} }
}, },
"node_modules/@fullcalendar/react": { "node_modules/@fullcalendar/react": {
"version": "6.1.18", "version": "6.1.19",
"resolved": "https://registry.npmjs.org/@fullcalendar/react/-/react-6.1.18.tgz", "resolved": "https://registry.npmjs.org/@fullcalendar/react/-/react-6.1.19.tgz",
"integrity": "sha512-Jwvb+T+/1yGZKe+UYXn0id022HJm0Fq2X/PGFvVh/QRYAI/6xPMRvJrwercBkToxf6LjqYXrDO+/NhRN6IDlmg==", "integrity": "sha512-FP78vnyylaL/btZeHig8LQgfHgfwxLaIG6sKbNkzkPkKEACv11UyyBoTSkaavPsHtXvAkcTED1l7TOunAyPEnA==",
"license": "MIT", "license": "MIT",
"peerDependencies": { "peerDependencies": {
"@fullcalendar/core": "~6.1.18", "@fullcalendar/core": "~6.1.19",
"react": "^16.7.0 || ^17 || ^18 || ^19", "react": "^16.7.0 || ^17 || ^18 || ^19",
"react-dom": "^16.7.0 || ^17 || ^18 || ^19" "react-dom": "^16.7.0 || ^17 || ^18 || ^19"
} }
@@ -1260,9 +1288,9 @@
} }
}, },
"node_modules/@mui/core-downloads-tracker": { "node_modules/@mui/core-downloads-tracker": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.2.tgz",
"integrity": "sha512-+mIK1Z0BhOaQ0vCgOkT1mSrIpEHLo338h4/duuL4TBLXPvUMit732mnwJY3W40Avy30HdeSfwUAAGRkKmwRaEQ==", "integrity": "sha512-AOyfHjyDKVPGJJFtxOlept3EYEdLoar/RvssBTWVAvDJGIE676dLi2oT/Kx+FoVXFoA/JdV7DEMq/BVWV3KHRw==",
"license": "MIT", "license": "MIT",
"funding": { "funding": {
"type": "opencollective", "type": "opencollective",
@@ -1296,15 +1324,15 @@
} }
}, },
"node_modules/@mui/lab": { "node_modules/@mui/lab": {
"version": "7.0.0-beta.16", "version": "7.0.0-beta.17",
"resolved": "https://registry.npmjs.org/@mui/lab/-/lab-7.0.0-beta.16.tgz", "resolved": "https://registry.npmjs.org/@mui/lab/-/lab-7.0.0-beta.17.tgz",
"integrity": "sha512-YiyDU84F6ujjaa5xuItuXa40KN1aPC+8PBkP2OAOJGO2MMvdEicuvkEfVSnikH6uLHtKOwGzOeqEqrfaYxcOxw==", "integrity": "sha512-H8tSINm6Xgbi7o49MplAwks4tAEE6SpFNd9l7n4NURl0GSpOv0CZvgXKSJt4+6TmquDhE7pomHpHWJiVh/2aCg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@mui/system": "^7.3.1", "@mui/system": "^7.3.2",
"@mui/types": "^7.4.5", "@mui/types": "^7.4.6",
"@mui/utils": "^7.3.1", "@mui/utils": "^7.3.2",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"prop-types": "^15.8.1" "prop-types": "^15.8.1"
}, },
@@ -1318,8 +1346,8 @@
"peerDependencies": { "peerDependencies": {
"@emotion/react": "^11.5.0", "@emotion/react": "^11.5.0",
"@emotion/styled": "^11.3.0", "@emotion/styled": "^11.3.0",
"@mui/material": "^7.3.1", "@mui/material": "^7.3.2",
"@mui/material-pigment-css": "^7.3.1", "@mui/material-pigment-css": "^7.3.2",
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -1340,16 +1368,16 @@
} }
}, },
"node_modules/@mui/material": { "node_modules/@mui/material": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/material/-/material-7.3.2.tgz",
"integrity": "sha512-Xf6Shbo03YmcBedZMwSpEFOwpYDtU7tC+rhAHTrA9FHk0FpsDqiQ9jUa1j/9s3HLs7KWb5mDcGnlwdh9Q9KAag==", "integrity": "sha512-qXvbnawQhqUVfH1LMgMaiytP+ZpGoYhnGl7yYq2x57GYzcFL/iPzSZ3L30tlbwEjSVKNYcbiKO8tANR1tadjUg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@mui/core-downloads-tracker": "^7.3.1", "@mui/core-downloads-tracker": "^7.3.2",
"@mui/system": "^7.3.1", "@mui/system": "^7.3.2",
"@mui/types": "^7.4.5", "@mui/types": "^7.4.6",
"@mui/utils": "^7.3.1", "@mui/utils": "^7.3.2",
"@popperjs/core": "^2.11.8", "@popperjs/core": "^2.11.8",
"@types/react-transition-group": "^4.4.12", "@types/react-transition-group": "^4.4.12",
"clsx": "^2.1.1", "clsx": "^2.1.1",
@@ -1368,7 +1396,7 @@
"peerDependencies": { "peerDependencies": {
"@emotion/react": "^11.5.0", "@emotion/react": "^11.5.0",
"@emotion/styled": "^11.3.0", "@emotion/styled": "^11.3.0",
"@mui/material-pigment-css": "^7.3.1", "@mui/material-pigment-css": "^7.3.2",
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0", "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
"react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -1389,13 +1417,13 @@
} }
}, },
"node_modules/@mui/private-theming": { "node_modules/@mui/private-theming": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-7.3.2.tgz",
"integrity": "sha512-WU3YLkKXii/x8ZEKnrLKsPwplCVE11yZxUvlaaZSIzCcI3x2OdFC8eMlNy74hVeUsYQvzzX1Es/k4ARPlFvpPQ==", "integrity": "sha512-ha7mFoOyZGJr75xeiO9lugS3joRROjc8tG1u4P50dH0KR7bwhHznVMcYg7MouochUy0OxooJm/OOSpJ7gKcMvg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@mui/utils": "^7.3.1", "@mui/utils": "^7.3.2",
"prop-types": "^15.8.1" "prop-types": "^15.8.1"
}, },
"engines": { "engines": {
@@ -1416,12 +1444,12 @@
} }
}, },
"node_modules/@mui/styled-engine": { "node_modules/@mui/styled-engine": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-7.3.2.tgz",
"integrity": "sha512-Nqo6OHjvJpXJ1+9TekTE//+8RybgPQUKwns2Lh0sq+8rJOUSUKS3KALv4InSOdHhIM9Mdi8/L7LTF1/Ky6D6TQ==", "integrity": "sha512-PkJzW+mTaek4e0nPYZ6qLnW5RGa0KN+eRTf5FA2nc7cFZTeM+qebmGibaTLrgQBy3UpcpemaqfzToBNkzuxqew==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@emotion/cache": "^11.14.0", "@emotion/cache": "^11.14.0",
"@emotion/serialize": "^1.3.3", "@emotion/serialize": "^1.3.3",
"@emotion/sheet": "^1.4.0", "@emotion/sheet": "^1.4.0",
@@ -1450,16 +1478,16 @@
} }
}, },
"node_modules/@mui/system": { "node_modules/@mui/system": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/system/-/system-7.3.2.tgz",
"integrity": "sha512-mIidecvcNVpNJMdPDmCeoSL5zshKBbYPcphjuh6ZMjhybhqhZ4mX6k9zmIWh6XOXcqRQMg5KrcjnO0QstrNj3w==", "integrity": "sha512-9d8JEvZW+H6cVkaZ+FK56R53vkJe3HsTpcjMUtH8v1xK6Y1TjzHdZ7Jck02mGXJsE6MQGWVs3ogRHTQmS9Q/rA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@mui/private-theming": "^7.3.1", "@mui/private-theming": "^7.3.2",
"@mui/styled-engine": "^7.3.1", "@mui/styled-engine": "^7.3.2",
"@mui/types": "^7.4.5", "@mui/types": "^7.4.6",
"@mui/utils": "^7.3.1", "@mui/utils": "^7.3.2",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"csstype": "^3.1.3", "csstype": "^3.1.3",
"prop-types": "^15.8.1" "prop-types": "^15.8.1"
@@ -1490,12 +1518,12 @@
} }
}, },
"node_modules/@mui/types": { "node_modules/@mui/types": {
"version": "7.4.5", "version": "7.4.6",
"resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.5.tgz", "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.4.6.tgz",
"integrity": "sha512-ZPwlAOE3e8C0piCKbaabwrqZbW4QvWz0uapVPWya7fYj6PeDkl5sSJmomT7wjOcZGPB48G/a6Ubidqreptxz4g==", "integrity": "sha512-NVBbIw+4CDMMppNamVxyTccNv0WxtDb7motWDlMeSC8Oy95saj1TIZMGynPpFLePt3yOD8TskzumeqORCgRGWw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2" "@babel/runtime": "^7.28.3"
}, },
"peerDependencies": { "peerDependencies": {
"@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0" "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0"
@@ -1507,13 +1535,13 @@
} }
}, },
"node_modules/@mui/utils": { "node_modules/@mui/utils": {
"version": "7.3.1", "version": "7.3.2",
"resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.1.tgz", "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-7.3.2.tgz",
"integrity": "sha512-/31y4wZqVWa0jzMnzo6JPjxwP6xXy4P3+iLbosFg/mJQowL1KIou0LC+lquWW60FKVbKz5ZUWBg2H3jausa0pw==", "integrity": "sha512-4DMWQGenOdLnM3y/SdFQFwKsCLM+mqxzvoWp9+x2XdEzXapkznauHLiXtSohHs/mc0+5/9UACt1GdugCX2te5g==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.3",
"@mui/types": "^7.4.5", "@mui/types": "^7.4.6",
"@types/prop-types": "^15.7.15", "@types/prop-types": "^15.7.15",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"prop-types": "^15.8.1", "prop-types": "^15.8.1",
@@ -1537,15 +1565,15 @@
} }
}, },
"node_modules/@mui/x-data-grid": { "node_modules/@mui/x-data-grid": {
"version": "8.9.2", "version": "8.11.3",
"resolved": "https://registry.npmjs.org/@mui/x-data-grid/-/x-data-grid-8.9.2.tgz", "resolved": "https://registry.npmjs.org/@mui/x-data-grid/-/x-data-grid-8.11.3.tgz",
"integrity": "sha512-LXyRiF0U60enI/FMFPd0Ct9rP5PIIvUUWnTDqJ5IDSj7cDuD6/cG4E3RcV76iN9j+tALWMZKjeTkBGxQjZ078A==", "integrity": "sha512-zd71bRYrm4uFh44/p/kQEtYHdslDy6uzC4NdF0qWYtf2Q0CkmC0ZZHkS4jnqf0iAawFVX2LgJtS7A6L6/ik9aQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.2",
"@mui/utils": "^7.2.0", "@mui/utils": "^7.3.2",
"@mui/x-internals": "8.9.2", "@mui/x-internals": "8.11.3",
"@mui/x-virtualizer": "0.1.0", "@mui/x-virtualizer": "0.1.7",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"prop-types": "^15.8.1", "prop-types": "^15.8.1",
"use-sync-external-store": "^1.5.0" "use-sync-external-store": "^1.5.0"
@@ -1574,29 +1602,6 @@
} }
} }
}, },
"node_modules/@mui/x-data-grid/node_modules/@mui/x-internals": {
"version": "8.9.2",
"resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.9.2.tgz",
"integrity": "sha512-qQl0sacWirbvQUdJOrUecsBQkI+vxI3/E1K/Wst6n/rb8ajelsGLMFLQ1PBig73xBT2vADmdcf3XerfH7TKPqQ==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.28.2",
"@mui/utils": "^7.2.0",
"reselect": "^5.1.1",
"use-sync-external-store": "^1.5.0"
},
"engines": {
"node": ">=14.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
"@mui/system": "^5.15.14 || ^6.0.0 || ^7.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
"node_modules/@mui/x-date-pickers": { "node_modules/@mui/x-date-pickers": {
"version": "8.9.2", "version": "8.9.2",
"resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-8.9.2.tgz", "resolved": "https://registry.npmjs.org/@mui/x-date-pickers/-/x-date-pickers-8.9.2.tgz",
@@ -1687,13 +1692,13 @@
} }
}, },
"node_modules/@mui/x-internals": { "node_modules/@mui/x-internals": {
"version": "8.10.0", "version": "8.11.3",
"resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.10.0.tgz", "resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.11.3.tgz",
"integrity": "sha512-stYhWBeCKfV2/ltAWShZ3ZJ51otbqpMpC+krWWoIsxM8TuvGzwXw5YMU9L2fTb8hRstsiOCQfEzIn12Ii7+N0Q==", "integrity": "sha512-Fmp4Op+nNSqsWn2Jwv9yA8WXi3Wem9jmgdUplvMK6JZAt7iA0ZdzGltCcHrdxOcK1Nu/2F7H8KOZuBzpy1lspw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.2",
"@mui/utils": "^7.2.0", "@mui/utils": "^7.3.2",
"reselect": "^5.1.1", "reselect": "^5.1.1",
"use-sync-external-store": "^1.5.0" "use-sync-external-store": "^1.5.0"
}, },
@@ -1709,20 +1714,19 @@
} }
}, },
"node_modules/@mui/x-tree-view": { "node_modules/@mui/x-tree-view": {
"version": "8.10.0", "version": "8.11.3",
"resolved": "https://registry.npmjs.org/@mui/x-tree-view/-/x-tree-view-8.10.0.tgz", "resolved": "https://registry.npmjs.org/@mui/x-tree-view/-/x-tree-view-8.11.3.tgz",
"integrity": "sha512-o1U6T/jeP5ywJ0gX/brfICTJdln8Y4KzLmczsHagHvooMtH0F5jZ+3RDJkIv+8/pqxHPLZxsiDWBCxwqHT3MBQ==", "integrity": "sha512-zF5xHWAGgKeEAxJFrA7tFWawcaWQp3i+mMqaelY8YyEqxbziyLMIRJSzXQVCLwiNx1gslsUaJkXddyJdRi0xhg==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.28.2", "@babel/runtime": "^7.28.2",
"@mui/utils": "^7.2.0", "@base-ui-components/utils": "0.1.1",
"@mui/x-internals": "8.10.0", "@mui/utils": "^7.3.2",
"@mui/x-internals": "8.11.3",
"@types/react-transition-group": "^4.4.12", "@types/react-transition-group": "^4.4.12",
"clsx": "^2.1.1", "clsx": "^2.1.1",
"prop-types": "^15.8.1", "prop-types": "^15.8.1",
"react-transition-group": "^4.4.5", "react-transition-group": "^4.4.5"
"reselect": "^5.1.1",
"use-sync-external-store": "^1.5.0"
}, },
"engines": { "engines": {
"node": ">=14.0.0" "node": ">=14.0.0"
@@ -1749,13 +1753,14 @@
} }
}, },
"node_modules/@mui/x-virtualizer": { "node_modules/@mui/x-virtualizer": {
"version": "0.1.0", "version": "0.1.7",
"resolved": "https://registry.npmjs.org/@mui/x-virtualizer/-/x-virtualizer-0.1.0.tgz", "resolved": "https://registry.npmjs.org/@mui/x-virtualizer/-/x-virtualizer-0.1.7.tgz",
"integrity": "sha512-fugd4tRJTTZpP2NFAxrngQQQhy1SDQq5wzMb6PJC1Y3b6THDw3P4vFuKxHmmfbPuCXLrxDifG0a8Q4LncBt1zA==", "integrity": "sha512-PtAxlDTpmVkOWfaBEwlGGbRCA137C369OjmdxdPYrx5twhvukdhT/2b/KfSVbz6MzTctOGmkw5ye+IkjaFco/g==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.27.4", "@babel/runtime": "^7.28.2",
"@mui/x-internals": "8.9.2" "@mui/utils": "^7.3.2",
"@mui/x-internals": "8.11.3"
}, },
"engines": { "engines": {
"node": ">=14.0.0" "node": ">=14.0.0"
@@ -1769,29 +1774,6 @@
"react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
} }
}, },
"node_modules/@mui/x-virtualizer/node_modules/@mui/x-internals": {
"version": "8.9.2",
"resolved": "https://registry.npmjs.org/@mui/x-internals/-/x-internals-8.9.2.tgz",
"integrity": "sha512-qQl0sacWirbvQUdJOrUecsBQkI+vxI3/E1K/Wst6n/rb8ajelsGLMFLQ1PBig73xBT2vADmdcf3XerfH7TKPqQ==",
"license": "MIT",
"dependencies": {
"@babel/runtime": "^7.28.2",
"@mui/utils": "^7.2.0",
"reselect": "^5.1.1",
"use-sync-external-store": "^1.5.0"
},
"engines": {
"node": ">=14.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/mui-org"
},
"peerDependencies": {
"@mui/system": "^5.15.14 || ^6.0.0 || ^7.0.0",
"react": "^17.0.0 || ^18.0.0 || ^19.0.0"
}
},
"node_modules/@nodelib/fs.scandir": { "node_modules/@nodelib/fs.scandir": {
"version": "2.1.5", "version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -2172,12 +2154,6 @@
"@babel/types": "^7.20.7" "@babel/types": "^7.20.7"
} }
}, },
"node_modules/@types/cookie": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.6.0.tgz",
"integrity": "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==",
"license": "MIT"
},
"node_modules/@types/estree": { "node_modules/@types/estree": {
"version": "1.0.8", "version": "1.0.8",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
@@ -2192,6 +2168,12 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/@types/pako": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@types/pako/-/pako-2.0.4.tgz",
"integrity": "sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==",
"license": "MIT"
},
"node_modules/@types/parse-json": { "node_modules/@types/parse-json": {
"version": "4.0.2", "version": "4.0.2",
"resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz",
@@ -2212,18 +2194,18 @@
"optional": true "optional": true
}, },
"node_modules/@types/react": { "node_modules/@types/react": {
"version": "19.1.9", "version": "19.1.13",
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.9.tgz", "resolved": "https://registry.npmjs.org/@types/react/-/react-19.1.13.tgz",
"integrity": "sha512-WmdoynAX8Stew/36uTSVMcLJJ1KRh6L3IZRx1PZ7qJtBqT3dYTgyDTx8H1qoRghErydW7xw9mSJ3wS//tCRpFA==", "integrity": "sha512-hHkbU/eoO3EG5/MZkuFSKmYqPbSVk5byPFa3e7y/8TybHiLMACgI8seVYlicwk7H5K/rI2px9xrQp/C+AUDTiQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"csstype": "^3.0.2" "csstype": "^3.0.2"
} }
}, },
"node_modules/@types/react-dom": { "node_modules/@types/react-dom": {
"version": "19.1.7", "version": "19.1.9",
"resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.7.tgz", "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-19.1.9.tgz",
"integrity": "sha512-i5ZzwYpqjmrKenzkoLM2Ibzt6mAsM7pxB6BCIouEVVmgiqaMj1TjaK7hnA36hbW5aZv20kx7Lw6hWzPWg0Rurw==", "integrity": "sha512-qXRuZaOsAdXKFyOhRBg6Lqqc0yay13vN7KrIg4L7N4aaHN68ma9OK3NE1BoDFgFOTfM7zg+3/8+2n8rLUH3OKQ==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"peerDependencies": { "peerDependencies": {
@@ -2601,18 +2583,6 @@
"dev": true, "dev": true,
"license": "Python-2.0" "license": "Python-2.0"
}, },
"node_modules/atob": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
"integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
"license": "(MIT OR Apache-2.0)",
"bin": {
"atob": "bin/atob.js"
},
"engines": {
"node": ">= 4.5.0"
}
},
"node_modules/babel-plugin-macros": { "node_modules/babel-plugin-macros": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
@@ -2702,18 +2672,6 @@
"node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
} }
}, },
"node_modules/btoa": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz",
"integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==",
"license": "(MIT OR Apache-2.0)",
"bin": {
"btoa": "bin/btoa.js"
},
"engines": {
"node": ">= 0.4.0"
}
},
"node_modules/callsites": { "node_modules/callsites": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
@@ -2927,9 +2885,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/dayjs": { "node_modules/dayjs": {
"version": "1.11.13", "version": "1.11.18",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz",
"integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", "integrity": "sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==",
"license": "MIT" "license": "MIT"
}, },
"node_modules/debug": { "node_modules/debug": {
@@ -3318,6 +3276,17 @@
"dev": true, "dev": true,
"license": "MIT" "license": "MIT"
}, },
"node_modules/fast-png": {
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/fast-png/-/fast-png-6.4.0.tgz",
"integrity": "sha512-kAqZq1TlgBjZcLr5mcN6NP5Rv4V2f22z00c3g8vRrwkcqjerx7BEhPbOnWCPqaHUl2XWQBJQvOT/FQhdMT7X/Q==",
"license": "MIT",
"dependencies": {
"@types/pako": "^2.0.3",
"iobuffer": "^5.3.2",
"pako": "^2.1.0"
}
},
"node_modules/fastq": { "node_modules/fastq": {
"version": "1.19.1", "version": "1.19.1",
"resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz",
@@ -3573,6 +3542,12 @@
"node": ">=0.8.19" "node": ">=0.8.19"
} }
}, },
"node_modules/iobuffer": {
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/iobuffer/-/iobuffer-5.4.0.tgz",
"integrity": "sha512-DRebOWuqDvxunfkNJAlc3IzWIPD5xVxwUNbHr7xKB8E6aLJxIPfNX3CoMJghcFjpv6RWQsrcJbghtEwSPoJqMA==",
"license": "MIT"
},
"node_modules/is-arrayish": { "node_modules/is-arrayish": {
"version": "0.2.1", "version": "0.2.1",
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
@@ -3706,14 +3681,13 @@
} }
}, },
"node_modules/jspdf": { "node_modules/jspdf": {
"version": "3.0.1", "version": "3.0.2",
"resolved": "https://registry.npmjs.org/jspdf/-/jspdf-3.0.1.tgz", "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-3.0.2.tgz",
"integrity": "sha512-qaGIxqxetdoNnFQQXxTKUD9/Z7AloLaw94fFsOiJMxbfYdBbrBuhWmbzI8TVjrw7s3jBY1PFHofBKMV/wZPapg==", "integrity": "sha512-G0fQDJ5fAm6UW78HG6lNXyq09l0PrA1rpNY5i+ly17Zb1fMMFSmS+3lw4cnrAPGyouv2Y0ylujbY2Ieq3DSlKA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@babel/runtime": "^7.26.7", "@babel/runtime": "^7.26.9",
"atob": "^2.1.2", "fast-png": "^6.2.0",
"btoa": "^1.2.1",
"fflate": "^0.8.1" "fflate": "^0.8.1"
}, },
"optionalDependencies": { "optionalDependencies": {
@@ -3961,6 +3935,12 @@
"url": "https://github.com/sponsors/sindresorhus" "url": "https://github.com/sponsors/sindresorhus"
} }
}, },
"node_modules/pako": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz",
"integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==",
"license": "(MIT AND Zlib)"
},
"node_modules/parent-module": { "node_modules/parent-module": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -4187,9 +4167,9 @@
} }
}, },
"node_modules/react-easy-crop": { "node_modules/react-easy-crop": {
"version": "5.5.0", "version": "5.5.1",
"resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-5.5.0.tgz", "resolved": "https://registry.npmjs.org/react-easy-crop/-/react-easy-crop-5.5.1.tgz",
"integrity": "sha512-OZzU+yXMhe69vLkDex+5QxcfT94FdcgVCyW2dBUw35ZoC3Is42TUxUy04w8nH1mfMKaizVdC3rh/wUfNW1mK4w==", "integrity": "sha512-8m6lCmfr6cSE9/447iHu+OniJuy7sdFbTqbsYyAXKygXJplvGCLpodujodWQeBGse11nDIgCbMUKbgucIxQWSQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"normalize-wheel": "^1.0.1", "normalize-wheel": "^1.0.1",
@@ -4230,15 +4210,13 @@
} }
}, },
"node_modules/react-router": { "node_modules/react-router": {
"version": "7.4.0", "version": "7.9.1",
"resolved": "https://registry.npmjs.org/react-router/-/react-router-7.4.0.tgz", "resolved": "https://registry.npmjs.org/react-router/-/react-router-7.9.1.tgz",
"integrity": "sha512-Y2g5ObjkvX3VFeVt+0CIPuYd9PpgqCslG7ASSIdN73LwA1nNWzcMLaoMRJfP3prZFI92svxFwbn7XkLJ+UPQ6A==", "integrity": "sha512-pfAByjcTpX55mqSDGwGnY9vDCpxqBLASg0BMNAuMmpSGESo/TaOUG6BllhAtAkCGx8Rnohik/XtaqiYUJtgW2g==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"@types/cookie": "^0.6.0",
"cookie": "^1.0.1", "cookie": "^1.0.1",
"set-cookie-parser": "^2.6.0", "set-cookie-parser": "^2.6.0"
"turbo-stream": "2.4.0"
}, },
"engines": { "engines": {
"node": ">=20.0.0" "node": ">=20.0.0"
@@ -4254,12 +4232,12 @@
} }
}, },
"node_modules/react-router-dom": { "node_modules/react-router-dom": {
"version": "7.4.0", "version": "7.9.1",
"resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.4.0.tgz", "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.1.tgz",
"integrity": "sha512-VlksBPf3n2bijPvnA7nkTsXxMAKOj+bWp4R9c3i+bnwlSOFAGOkJkKhzy/OsRkWaBMICqcAl1JDzh9ZSOze9CA==", "integrity": "sha512-U9WBQssBE9B1vmRjo9qTM7YRzfZ3lUxESIZnsf4VjR/lXYz9MHjvOxHzr/aUm4efpktbVOrF09rL/y4VHa8RMw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"react-router": "7.4.0" "react-router": "7.9.1"
}, },
"engines": { "engines": {
"node": ">=20.0.0" "node": ">=20.0.0"
@@ -4664,12 +4642,6 @@
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
"license": "0BSD" "license": "0BSD"
}, },
"node_modules/turbo-stream": {
"version": "2.4.0",
"resolved": "https://registry.npmjs.org/turbo-stream/-/turbo-stream-2.4.0.tgz",
"integrity": "sha512-FHncC10WpBd2eOmGwpmQsWLDoK4cqsA/UT/GqNoaKOQnT8uzhtCbg3EoUDMvqpOSAI0S26mr0rkjzbOO6S3v1g==",
"license": "ISC"
},
"node_modules/type-check": { "node_modules/type-check": {
"version": "0.4.0", "version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",

View File

@@ -12,38 +12,38 @@
"dependencies": { "dependencies": {
"@emotion/react": "^11.14.0", "@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1", "@emotion/styled": "^11.14.1",
"@fontsource/roboto": "^5.2.6", "@fontsource/roboto": "^5.2.8",
"@fullcalendar/core": "^6.1.18", "@fullcalendar/core": "^6.1.19",
"@fullcalendar/daygrid": "^6.1.18", "@fullcalendar/daygrid": "^6.1.19",
"@fullcalendar/interaction": "^6.1.18", "@fullcalendar/interaction": "^6.1.19",
"@fullcalendar/list": "^6.1.18", "@fullcalendar/list": "^6.1.19",
"@fullcalendar/react": "^6.1.18", "@fullcalendar/react": "^6.1.19",
"@mdi/js": "^7.4.47", "@mdi/js": "^7.4.47",
"@mdi/react": "^1.6.1", "@mdi/react": "^1.6.1",
"@mui/icons-material": "^7.2.0", "@mui/icons-material": "^7.2.0",
"@mui/lab": "^7.0.0-beta.16", "@mui/lab": "^7.0.0-beta.17",
"@mui/material": "^7.2.0", "@mui/material": "^7.2.0",
"@mui/x-data-grid": "^8.9.2", "@mui/x-data-grid": "^8.11.3",
"@mui/x-date-pickers": "^8.9.2", "@mui/x-date-pickers": "^8.9.2",
"@mui/x-tree-view": "^8.10.0", "@mui/x-tree-view": "^8.11.3",
"date-and-time": "^3.6.0", "date-and-time": "^3.6.0",
"dayjs": "^1.11.13", "dayjs": "^1.11.18",
"email-validator": "^2.0.4", "email-validator": "^2.0.4",
"filesize": "^11.0.2", "filesize": "^11.0.2",
"jspdf": "^3.0.1", "jspdf": "^3.0.2",
"mui-color-input": "^7.0.0", "mui-color-input": "^7.0.0",
"react": "^19.1.1", "react": "^19.1.1",
"react-dom": "^19.1.1", "react-dom": "^19.1.1",
"react-easy-crop": "^5.5.0", "react-easy-crop": "^5.5.1",
"react-qr-code": "^2.0.18", "react-qr-code": "^2.0.18",
"react-router-dom": "^7.4.0", "react-router-dom": "^7.9.1",
"react-zoom-pan-pinch": "^3.7.0", "react-zoom-pan-pinch": "^3.7.0",
"svg2pdf.js": "^2.5.0" "svg2pdf.js": "^2.5.0"
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.32.0", "@eslint/js": "^9.35.0",
"@types/react": "^19.1.9", "@types/react": "^19.1.13",
"@types/react-dom": "^19.1.7", "@types/react-dom": "^19.1.9",
"@vitejs/plugin-react": "^4.7.0", "@vitejs/plugin-react": "^4.7.0",
"eslint": "^9.31.0", "eslint": "^9.31.0",
"eslint-plugin-react-hooks": "^5.2.0", "eslint-plugin-react-hooks": "^5.2.0",

View File

@@ -137,8 +137,10 @@ function UsersTable(p: {
<GridActionsCellItem <GridActionsCellItem
icon={<SaveIcon />} icon={<SaveIcon />}
label="Save" label="Save"
sx={{ material={{
color: "primary.main", sx: {
color: 'primary.main',
},
}} }}
onClick={handleSaveClick(id)} onClick={handleSaveClick(id)}
/>, />,

View File

@@ -8,7 +8,7 @@ version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a" checksum = "5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"bytes", "bytes",
"futures-core", "futures-core",
"futures-sink", "futures-sink",
@@ -45,7 +45,7 @@ dependencies = [
"actix-service", "actix-service",
"actix-utils", "actix-utils",
"base64", "base64",
"bitflags 2.9.0", "bitflags",
"brotli", "brotli",
"bytes", "bytes",
"bytestring", "bytestring",
@@ -323,12 +323,6 @@ version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
[[package]]
name = "android-tzdata"
version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
[[package]] [[package]]
name = "android_system_properties" name = "android_system_properties"
version = "0.1.5" version = "0.1.5"
@@ -390,9 +384,9 @@ dependencies = [
[[package]] [[package]]
name = "anyhow" name = "anyhow"
version = "1.0.98" version = "1.0.99"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100"
[[package]] [[package]]
name = "arbitrary" name = "arbitrary"
@@ -535,9 +529,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
[[package]] [[package]]
name = "bcrypt" name = "bcrypt"
version = "0.17.0" version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92758ad6077e4c76a6cadbce5005f666df70d4f13b19976b1a8062eef880040f" checksum = "abaf6da45c74385272ddf00e1ac074c7d8a6c1a1dda376902bd6a427522a8b2c"
dependencies = [ dependencies = [
"base64", "base64",
"blowfish", "blowfish",
@@ -552,12 +546,6 @@ version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61" checksum = "dc827186963e592360843fb5ba4b973e145841266c1357f7180c43526f2e5b61"
[[package]]
name = "bitflags"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "2.9.0" version = "2.9.0"
@@ -693,17 +681,16 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]] [[package]]
name = "chrono" name = "chrono"
version = "0.4.41" version = "0.4.42"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2"
dependencies = [ dependencies = [
"android-tzdata",
"iana-time-zone", "iana-time-zone",
"js-sys", "js-sys",
"num-traits", "num-traits",
"serde", "serde",
"wasm-bindgen", "wasm-bindgen",
"windows-link", "windows-link 0.2.0",
] ]
[[package]] [[package]]
@@ -728,9 +715,9 @@ dependencies = [
[[package]] [[package]]
name = "clap" name = "clap"
version = "4.5.43" version = "4.5.47"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "50fd97c9dc2399518aa331917ac6f274280ec5eb34e555dd291899745c48ec6f" checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931"
dependencies = [ dependencies = [
"clap_builder", "clap_builder",
"clap_derive", "clap_derive",
@@ -738,9 +725,9 @@ dependencies = [
[[package]] [[package]]
name = "clap_builder" name = "clap_builder"
version = "4.5.43" version = "4.5.47"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c35b5830294e1fa0462034af85cc95225a4cb07092c088c55bda3147cfcd8f65" checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6"
dependencies = [ dependencies = [
"anstream", "anstream",
"anstyle", "anstyle",
@@ -750,9 +737,9 @@ dependencies = [
[[package]] [[package]]
name = "clap_derive" name = "clap_derive"
version = "4.5.41" version = "4.5.47"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491" checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c"
dependencies = [ dependencies = [
"heck", "heck",
"proc-macro2", "proc-macro2",
@@ -1029,7 +1016,7 @@ version = "2.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "229850a212cd9b84d4f0290ad9d294afc0ae70fccaa8949dbe8b43ffafa1e20c" checksum = "229850a212cd9b84d4f0290ad9d294afc0ae70fccaa8949dbe8b43ffafa1e20c"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"byteorder", "byteorder",
"diesel_derives", "diesel_derives",
"itoa", "itoa",
@@ -1247,6 +1234,26 @@ version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
[[package]]
name = "fax"
version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f05de7d48f37cd6730705cbca900770cab77a89f413d23e100ad7fad7795a0ab"
dependencies = [
"fax_derive",
]
[[package]]
name = "fax_derive"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a0aca10fb742cb43f9e7bb8467c91aa9bcb8e3ffbc6a6f7389bb93ffc920577d"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]] [[package]]
name = "fdeflate" name = "fdeflate"
version = "0.3.7" version = "0.3.7"
@@ -1428,7 +1435,7 @@ dependencies = [
"serde_with", "serde_with",
"sha2", "sha2",
"tempfile", "tempfile",
"thiserror 2.0.12", "thiserror 2.0.16",
"uuid", "uuid",
"zip", "zip",
] ]
@@ -1955,9 +1962,9 @@ dependencies = [
[[package]] [[package]]
name = "image" name = "image"
version = "0.25.6" version = "0.25.8"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db35664ce6b9810857a38a906215e75a9c879f0696556a39f59c62829710251a" checksum = "529feb3e6769d234375c4cf1ee2ce713682b8e76538cb13f9fc23e1400a591e7"
dependencies = [ dependencies = [
"bytemuck", "bytemuck",
"byteorder-lite", "byteorder-lite",
@@ -1965,6 +1972,7 @@ dependencies = [
"exr", "exr",
"gif", "gif",
"image-webp", "image-webp",
"moxcms",
"num-traits", "num-traits",
"png", "png",
"qoi", "qoi",
@@ -2046,7 +2054,7 @@ version = "0.7.8"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"cfg-if", "cfg-if",
"libc", "libc",
] ]
@@ -2122,12 +2130,6 @@ dependencies = [
"libc", "libc",
] ]
[[package]]
name = "jpeg-decoder"
version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f5d4a7da358eff58addd2877a45865158f0d78c911d43a5784ceb7bbf52833b0"
[[package]] [[package]]
name = "js-sys" name = "js-sys"
version = "0.3.77" version = "0.3.77"
@@ -2181,9 +2183,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
[[package]] [[package]]
name = "lettre" name = "lettre"
version = "0.11.17" version = "0.11.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cb2a0354e9ece2fcdcf9fa53417f6de587230c0c248068eb058fa26c4a753179" checksum = "5cb54db6ff7a89efac87dba5baeac57bb9ccd726b49a9b6f21fb92b3966aaf56"
dependencies = [ dependencies = [
"base64", "base64",
"chumsky", "chumsky",
@@ -2199,7 +2201,7 @@ dependencies = [
"nom 8.0.0", "nom 8.0.0",
"percent-encoding", "percent-encoding",
"quoted_printable", "quoted_printable",
"socket2 0.5.8", "socket2 0.6.0",
"tokio", "tokio",
"url", "url",
] ]
@@ -2252,7 +2254,7 @@ version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"libc", "libc",
] ]
@@ -2326,9 +2328,9 @@ checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e"
[[package]] [[package]]
name = "log" name = "log"
version = "0.4.27" version = "0.4.28"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"
[[package]] [[package]]
name = "loop9" name = "loop9"
@@ -2341,9 +2343,9 @@ dependencies = [
[[package]] [[package]]
name = "mailchecker" name = "mailchecker"
version = "6.0.17" version = "6.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db3c69370540384985601e4adbbbc3046a658853e4909a4bd744bb390f6f9759" checksum = "cf91b5ebc7779f9dd9c59082f569f93b0b6f01cc80dc185bb79146f6ec32e25a"
dependencies = [ dependencies = [
"fast_chemail", "fast_chemail",
"once_cell", "once_cell",
@@ -2456,6 +2458,16 @@ dependencies = [
"windows-sys 0.52.0", "windows-sys 0.52.0",
] ]
[[package]]
name = "moxcms"
version = "0.7.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddd32fa8935aeadb8a8a6b6b351e40225570a37c43de67690383d87ef170cd08"
dependencies = [
"num-traits",
"pxfm",
]
[[package]] [[package]]
name = "native-tls" name = "native-tls"
version = "0.2.14" version = "0.2.14"
@@ -2581,7 +2593,7 @@ version = "0.10.71"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"cfg-if", "cfg-if",
"foreign-types", "foreign-types",
"libc", "libc",
@@ -2742,11 +2754,11 @@ checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
[[package]] [[package]]
name = "png" name = "png"
version = "0.17.16" version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526" checksum = "97baced388464909d42d89643fe4361939af9b7ce7a31ee32a168f832a70f2a0"
dependencies = [ dependencies = [
"bitflags 1.3.2", "bitflags",
"crc32fast", "crc32fast",
"fdeflate", "fdeflate",
"flate2", "flate2",
@@ -2850,6 +2862,15 @@ dependencies = [
"cc", "cc",
] ]
[[package]]
name = "pxfm"
version = "0.1.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "376f733579ac4d3b9fbf0afca99bf8f6b698d541118affca554d0b86f73c2470"
dependencies = [
"num-traits",
]
[[package]] [[package]]
name = "qoi" name = "qoi"
version = "0.4.1" version = "0.4.1"
@@ -2992,9 +3013,9 @@ dependencies = [
[[package]] [[package]]
name = "ravif" name = "ravif"
version = "0.11.11" version = "0.11.20"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2413fd96bd0ea5cdeeb37eaf446a22e6ed7b981d792828721e74ded1980a45c6" checksum = "5825c26fddd16ab9f515930d49028a630efec172e903483c94796cfe31893e6b"
dependencies = [ dependencies = [
"avif-serialize", "avif-serialize",
"imgref", "imgref",
@@ -3027,9 +3048,9 @@ dependencies = [
[[package]] [[package]]
name = "redis" name = "redis"
version = "0.32.4" version = "0.32.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e1f66bf4cac9733a23bcdf1e0e01effbaaad208567beba68be8f67e5f4af3ee1" checksum = "7cd3650deebc68526b304898b192fa4102a4ef0b9ada24da096559cb60e0eef8"
dependencies = [ dependencies = [
"combine", "combine",
"itoa", "itoa",
@@ -3047,7 +3068,7 @@ version = "0.5.10"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1" checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
] ]
[[package]] [[package]]
@@ -3261,7 +3282,7 @@ version = "1.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e56a18552996ac8d29ecc3b190b4fdbb2d91ca4ec396de7bbffaf43f3d637e96" checksum = "e56a18552996ac8d29ecc3b190b4fdbb2d91ca4ec396de7bbffaf43f3d637e96"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"errno", "errno",
"libc", "libc",
"linux-raw-sys", "linux-raw-sys",
@@ -3381,7 +3402,7 @@ version = "2.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"core-foundation", "core-foundation",
"core-foundation-sys", "core-foundation-sys",
"libc", "libc",
@@ -3406,18 +3427,28 @@ checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.219" version = "1.0.225"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" checksum = "fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d"
dependencies = [
"serde_core",
"serde_derive",
]
[[package]]
name = "serde_core"
version = "1.0.225"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.219" version = "1.0.225"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@@ -3426,14 +3457,15 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.141" version = "1.0.145"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "30b9eff21ebe718216c6ec64e1d9ac57087aad11efc64e32002bce4a0d4c03d3" checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
dependencies = [ dependencies = [
"itoa", "itoa",
"memchr", "memchr",
"ryu", "ryu",
"serde", "serde",
"serde_core",
] ]
[[package]] [[package]]
@@ -3682,7 +3714,7 @@ version = "0.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
"core-foundation", "core-foundation",
"system-configuration-sys", "system-configuration-sys",
] ]
@@ -3751,11 +3783,11 @@ dependencies = [
[[package]] [[package]]
name = "thiserror" name = "thiserror"
version = "2.0.12" version = "2.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0"
dependencies = [ dependencies = [
"thiserror-impl 2.0.12", "thiserror-impl 2.0.16",
] ]
[[package]] [[package]]
@@ -3771,9 +3803,9 @@ dependencies = [
[[package]] [[package]]
name = "thiserror-impl" name = "thiserror-impl"
version = "2.0.12" version = "2.0.16"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@@ -3782,13 +3814,16 @@ dependencies = [
[[package]] [[package]]
name = "tiff" name = "tiff"
version = "0.9.1" version = "0.10.3"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e" checksum = "af9605de7fee8d9551863fd692cce7637f548dbd9db9180fcc07ccc6d26c336f"
dependencies = [ dependencies = [
"fax",
"flate2", "flate2",
"jpeg-decoder", "half",
"quick-error",
"weezl", "weezl",
"zune-jpeg",
] ]
[[package]] [[package]]
@@ -4227,9 +4262,9 @@ dependencies = [
[[package]] [[package]]
name = "weezl" name = "weezl"
version = "0.1.8" version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" checksum = "a751b3277700db47d3e574514de2eced5e54dc8a5436a3bf7a0b248b2cee16f3"
[[package]] [[package]]
name = "winapi" name = "winapi"
@@ -4278,6 +4313,12 @@ version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38"
[[package]]
name = "windows-link"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65"
[[package]] [[package]]
name = "windows-registry" name = "windows-registry"
version = "0.4.0" version = "0.4.0"
@@ -4295,7 +4336,7 @@ version = "0.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252"
dependencies = [ dependencies = [
"windows-link", "windows-link 0.1.1",
] ]
[[package]] [[package]]
@@ -4304,7 +4345,7 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319"
dependencies = [ dependencies = [
"windows-link", "windows-link 0.1.1",
] ]
[[package]] [[package]]
@@ -4468,7 +4509,7 @@ version = "0.39.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
dependencies = [ dependencies = [
"bitflags 2.9.0", "bitflags",
] ]
[[package]] [[package]]
@@ -4702,9 +4743,9 @@ dependencies = [
[[package]] [[package]]
name = "zune-jpeg" name = "zune-jpeg"
version = "0.4.14" version = "0.4.21"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "99a5bab8d7dedf81405c4bb1f2b83ea057643d9cb28778cea9eecddeedd2e028" checksum = "29ce2c8a9384ad323cf564b67da86e21d3cfdff87908bc1223ed5c99bc792713"
dependencies = [ dependencies = [
"zune-core", "zune-core",
] ]

View File

@@ -6,12 +6,12 @@ edition = "2024"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies] [dependencies]
log = "0.4.27" log = "0.4.28"
env_logger = "0.11.8" env_logger = "0.11.8"
clap = { version = "4.5.43", features = ["derive", "env"] } clap = { version = "4.5.47", features = ["derive", "env"] }
lazy_static = "1.5.0" lazy_static = "1.5.0"
lazy-regex = "3.4.1" lazy-regex = "3.4.1"
anyhow = "1.0.98" anyhow = "1.0.99"
actix-web = "4.11.0" actix-web = "4.11.0"
actix-cors = "0.7.1" actix-cors = "0.7.1"
actix-multipart = "0.7.2" actix-multipart = "0.7.2"
@@ -19,20 +19,20 @@ actix-remote-ip = "0.1.0"
futures-util = "0.3.31" futures-util = "0.3.31"
diesel = { version = "2.2.12", features = ["postgres"] } diesel = { version = "2.2.12", features = ["postgres"] }
diesel_migrations = "2.2.0" diesel_migrations = "2.2.0"
serde = { version = "1.0.219", features = ["derive"] } serde = { version = "1.0.225", features = ["derive"] }
serde_json = "1.0.141" serde_json = "1.0.145"
mailchecker = "6.0.17" mailchecker = "6.0.18"
redis = "0.32.4" redis = "0.32.5"
lettre = "0.11.17" lettre = "0.11.18"
rand = "0.9.2" rand = "0.9.2"
bcrypt = "0.17.0" bcrypt = "0.17.1"
light-openid = "1.0.4" light-openid = "1.0.4"
thiserror = "2.0.12" thiserror = "2.0.16"
serde_with = "3.14.0" serde_with = "3.14.0"
rust_iso3166 = "0.1.14" rust_iso3166 = "0.1.14"
rust-s3 = "0.35.1" rust-s3 = "0.35.1"
sha2 = "0.10.9" sha2 = "0.10.9"
image = "0.25.6" image = "0.25.8"
uuid = { version = "1.17.0", features = ["v4"] } uuid = { version = "1.17.0", features = ["v4"] }
httpdate = "1.0.3" httpdate = "1.0.3"
zip = "4.3.0" zip = "4.3.0"
@@ -40,4 +40,4 @@ mime_guess = "2.0.5"
tempfile = "3.20.0" tempfile = "3.20.0"
base64 = "0.22.1" base64 = "0.22.1"
ical = { version = "0.11.0", features = ["generator", "ical", "vcard"] } ical = { version = "0.11.0", features = ["generator", "ical", "vcard"] }
chrono = "0.4.41" chrono = "0.4.42"

View File

@@ -34,18 +34,16 @@ impl AccommodationRequest {
} }
accommodation.name = self.name; accommodation.name = self.name;
if let Some(d) = &self.description { if let Some(d) = &self.description
if !c.accommodation_description_len.validate(d) { && !c.accommodation_description_len.validate(d) {
return Err(AccommodationListControllerErr::InvalidDescriptionLength.into()); return Err(AccommodationListControllerErr::InvalidDescriptionLength.into());
} }
}
accommodation.description.clone_from(&self.description); accommodation.description.clone_from(&self.description);
if let Some(c) = &self.color { if let Some(c) = &self.color
if !lazy_regex::regex!("[a-fA-F0-9]{6}").is_match(c) { && !lazy_regex::regex!("[a-fA-F0-9]{6}").is_match(c) {
return Err(AccommodationListControllerErr::MalformedColor.into()); return Err(AccommodationListControllerErr::MalformedColor.into());
} }
}
accommodation.color.clone_from(&self.color); accommodation.color.clone_from(&self.color);
accommodation.need_validation = self.need_validation; accommodation.need_validation = self.need_validation;

View File

@@ -48,23 +48,20 @@ impl CoupleRequest {
} }
} }
if let Some(husband) = self.husband { if let Some(husband) = self.husband
if !members_service::exists(couple.family_id(), husband).await? { && !members_service::exists(couple.family_id(), husband).await? {
return Err(CoupleControllerErr::HusbandNotExisting.into()); return Err(CoupleControllerErr::HusbandNotExisting.into());
} }
}
if let Some(d) = &self.wedding { if let Some(d) = &self.wedding
if !d.check() { && !d.check() {
return Err(CoupleControllerErr::MalformedDateOfWedding.into()); return Err(CoupleControllerErr::MalformedDateOfWedding.into());
} }
}
if let Some(d) = &self.divorce { if let Some(d) = &self.divorce
if !d.check() { && !d.check() {
return Err(CoupleControllerErr::MalformedDateOfDivorce.into()); return Err(CoupleControllerErr::MalformedDateOfDivorce.into());
} }
}
couple.set_wife(self.wife); couple.set_wife(self.wife);
couple.set_husband(self.husband); couple.set_husband(self.husband);

View File

@@ -95,11 +95,10 @@ fn check_opt_str_val(
c: SizeConstraint, c: SizeConstraint,
err: MemberControllerErr, err: MemberControllerErr,
) -> anyhow::Result<()> { ) -> anyhow::Result<()> {
if let Some(v) = val { if let Some(v) = val
if !c.validate(v) { && !c.validate(v) {
return Err(err.into()); return Err(err.into());
} }
}
Ok(()) Ok(())
} }
@@ -151,11 +150,10 @@ impl MemberRequest {
MemberControllerErr::MalformedEmailAddress, MemberControllerErr::MalformedEmailAddress,
)?; )?;
if let Some(mail) = &self.email { if let Some(mail) = &self.email
if !mailchecker::is_valid(mail) { && !mailchecker::is_valid(mail) {
return Err(MemberControllerErr::InvalidEmailAddress.into()); return Err(MemberControllerErr::InvalidEmailAddress.into());
} }
}
check_opt_str_val( check_opt_str_val(
&self.phone, &self.phone,
@@ -187,23 +185,20 @@ impl MemberRequest {
MemberControllerErr::MalformedCountry, MemberControllerErr::MalformedCountry,
)?; )?;
if let Some(c) = &self.country { if let Some(c) = &self.country
if !countries_utils::is_code_valid(c) { && !countries_utils::is_code_valid(c) {
return Err(MemberControllerErr::InvalidCountryCode.into()); return Err(MemberControllerErr::InvalidCountryCode.into());
} }
}
if let Some(d) = &self.birth { if let Some(d) = &self.birth
if !d.check() { && !d.check() {
return Err(MemberControllerErr::MalformedDateOfBirth.into()); return Err(MemberControllerErr::MalformedDateOfBirth.into());
} }
}
if let Some(d) = &self.death { if let Some(d) = &self.death
if !d.check() { && !d.check() {
return Err(MemberControllerErr::MalformedDateOfDeath.into()); return Err(MemberControllerErr::MalformedDateOfDeath.into());
} }
}
check_opt_str_val( check_opt_str_val(
&self.note, &self.note,
@@ -221,11 +216,10 @@ impl MemberRequest {
} }
} }
if let Some(father) = self.father { if let Some(father) = self.father
if !members_service::exists(member.family_id(), father).await? { && !members_service::exists(member.family_id(), father).await? {
return Err(MemberControllerErr::FatherNotExisting.into()); return Err(MemberControllerErr::FatherNotExisting.into());
} }
}
member.first_name = self.first_name; member.first_name = self.first_name;
member.last_name = self.last_name; member.last_name = self.last_name;

View File

@@ -36,16 +36,15 @@ async fn get_photo(id: &PhotoIdPath, full_size: bool, req: HttpRequest) -> HttpR
}; };
// Check if an upload is un-necessary // Check if an upload is un-necessary
if let Some(c) = req.headers().get(header::IF_NONE_MATCH) { if let Some(c) = req.headers().get(header::IF_NONE_MATCH)
if c.to_str().unwrap_or("") == hash { && c.to_str().unwrap_or("") == hash {
return Ok(HttpResponse::NotModified().finish()); return Ok(HttpResponse::NotModified().finish());
} }
}
if let Some(c) = req.headers().get(header::IF_MODIFIED_SINCE) { if let Some(c) = req.headers().get(header::IF_MODIFIED_SINCE) {
let date_str = c.to_str().unwrap_or(""); let date_str = c.to_str().unwrap_or("");
if let Ok(date) = httpdate::parse_http_date(date_str) { if let Ok(date) = httpdate::parse_http_date(date_str)
if date && date
.add(Duration::from_secs(1)) .add(Duration::from_secs(1))
.duration_since(UNIX_EPOCH) .duration_since(UNIX_EPOCH)
.unwrap() .unwrap()
@@ -54,7 +53,6 @@ async fn get_photo(id: &PhotoIdPath, full_size: bool, req: HttpRequest) -> HttpR
{ {
return Ok(HttpResponse::NotModified().finish()); return Ok(HttpResponse::NotModified().finish());
} }
}
} }
let bytes = s3_connection::get_file(&match full_size { let bytes = s3_connection::get_file(&match full_size {

View File

@@ -149,11 +149,10 @@ pub mod loop_detection {
impl LoopStack<'_> { impl LoopStack<'_> {
pub fn contains(&self, id: MemberID) -> bool { pub fn contains(&self, id: MemberID) -> bool {
if let Some(ls) = &self.prev { if let Some(ls) = &self.prev
if ls.contains(id) { && ls.contains(id) {
return true; return true;
} }
}
self.curr == id self.curr == id
} }

View File

@@ -64,7 +64,7 @@ fn redis_key(state: &str) -> String {
format!("oidc-state-{state}") format!("oidc-state-{state}")
} }
async fn load_provider_info(prov_id: &str) -> anyhow::Result<OpenIDClient> { async fn load_provider_info(prov_id: &str) -> anyhow::Result<OpenIDClient<'_>> {
let prov = AppConfig::get() let prov = AppConfig::get()
.openid_providers() .openid_providers()
.into_iter() .into_iter()