Compare commits
	
		
			140 Commits
		
	
	
		
			7b0fde0c02
			...
			renovate/r
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| fa25e32a5d | |||
| f115517913 | |||
| bee03941a1 | |||
| b5d9f6071e | |||
| 6e9f396313 | |||
| 361530be18 | |||
| 5c842f749b | |||
| affb13ab73 | |||
| acdfc11170 | |||
| 406ad94ce3 | |||
| 82f76950a9 | |||
| 8d4bbe100e | |||
| c6c675eccd | |||
| c1b998f04b | |||
| bb2f1a7d51 | |||
| 1148645f51 | |||
| 6de98d017c | |||
| 816ae1ebd1 | |||
| f5d75c32f9 | |||
| e25de677c1 | |||
| 9456773e0f | |||
| 43bc978f5d | |||
| c929f1a771 | |||
| 521cd99c90 | |||
| 7d3877b0de | |||
| 9555d535b1 | |||
| 15054df5c7 | |||
| 5723098ded | |||
| f0d249fa5e | |||
| af79f812ca | |||
| c71032ec9c | |||
| 3fdf575010 | |||
| 77f78529f6 | |||
| 2f5626d5e1 | |||
| ffb02dd579 | |||
| 4a1d3f5628 | |||
| 58449a65af | |||
| 11850cd581 | |||
| 82cc7dc745 | |||
| 5cf11dc061 | |||
| 4639666097 | |||
| e3fb01174a | |||
| bfea5d2e81 | |||
| 85a0ba0356 | |||
| a9f9ab28bd | |||
| d48ef08e6d | |||
| 4a9a67ed21 | |||
| 467232a9c4 | |||
| c4a53b0383 | |||
| 688c25f0eb | |||
| 229f3b010b | |||
| 6da6161903 | |||
| 997a17f807 | |||
| a78d217cf3 | |||
| 63a3cb953c | |||
| 4d29a28103 | |||
| f45b9b0f8b | |||
| be5d3f6015 | |||
| 5b83a417dd | |||
| 6d4a9f44ff | |||
| c0c3192529 | |||
| 4f3d970b70 | |||
| 2f86c72786 | |||
| 7d3f6dbf33 | |||
| 1bd5abc322 | |||
| bb16d06b47 | |||
| 34ea65ab1d | |||
| cab6ab3701 | |||
| 1003bdd931 | |||
| 36dd681c84 | |||
| feffd18395 | |||
| 0a12bf917e | |||
| 0a263cf076 | |||
| 33f7b762dd | |||
| 593f10dfd1 | |||
| 62545d1689 | |||
| a8951888b8 | |||
| abaf7b163c | |||
| 6f683a65fb | |||
| b297f2de2d | |||
| 5ed6aa0567 | |||
| 3857503e2d | |||
| 41e0022c1f | |||
| 2748206ca6 | |||
| 3813949bc5 | |||
| d93f198f98 | |||
| 1264e2a636 | |||
| 99c7253619 | |||
| 167d90a4b9 | |||
| f983a22eb8 | |||
| ffae610848 | |||
| 6989b1ab92 | |||
| 77e72635bf | |||
| e9dca75d1e | |||
| 5893fde734 | |||
| 4a51ef08a9 | |||
| 7f106d042a | |||
| 80396a17d0 | |||
| 04640caa5c | |||
| 975ac224d4 | |||
| 7e4f5cee9d | |||
| bf0e5e9e4f | |||
| 2b8955475d | |||
| bcfbf61c6a | |||
| 0506e72d31 | |||
| f82f920046 | |||
| 5b31e50ff6 | |||
| 93987e30cf | |||
| 60e4ca93c7 | |||
| 71cb01c7fc | |||
| 7599881cfe | |||
| 12f298ef56 | |||
| 866ee01bb1 | |||
| 7a585efd8a | |||
| 935ab75d5b | |||
| 1d661fb4d8 | |||
| 849d9aba82 | |||
| a435d4623f | |||
| 4e4fa37b3b | |||
| 0540f515ec | |||
| 6e53486832 | |||
| 44d09b54e8 | |||
| 1ae44942b0 | |||
| 6a60c43782 | |||
| 4c97e7a6f4 | |||
| cd5f453172 | |||
| 83cfcbb237 | |||
| 1a0bf0caee | |||
| a0c82ccca2 | |||
| 33f549b081 | |||
| 24de257218 | |||
| 33d422627f | |||
| 93da051599 | |||
| 20b50d7040 | |||
| f4949e1b89 | |||
| 3f517378a1 | |||
| 7093979fd1 | |||
| 3b39a0ca15 | |||
| f706a9e9b8 | |||
| 440d5b14f1 | 
							
								
								
									
										1068
									
								
								geneit_app/package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1068
									
								
								geneit_app/package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -12,44 +12,44 @@ | |||||||
|   "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.14", |     "@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.15.0", | ||||||
|     "@mui/x-date-pickers": "^8.9.2", |     "@mui/x-date-pickers": "^8.15.0", | ||||||
|     "@mui/x-tree-view": "^8.8.0", |     "@mui/x-tree-view": "^8.15.0", | ||||||
|     "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.13", | ||||||
|     "jspdf": "^3.0.1", |     "jspdf": "^3.0.3", | ||||||
|     "mui-color-input": "^7.0.0", |     "mui-color-input": "^7.0.0", | ||||||
|     "react": "^19.1.1", |     "react": "^19.2.0", | ||||||
|     "react-dom": "^19.1.1", |     "react-dom": "^19.2.0", | ||||||
|     "react-easy-crop": "^5.5.0", |     "react-easy-crop": "^5.5.3", | ||||||
|     "react-qr-code": "^2.0.18", |     "react-qr-code": "^2.0.18", | ||||||
|     "react-router-dom": "^7.4.0", |     "react-router-dom": "^7.4.0", | ||||||
|     "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.38.0", | ||||||
|     "@types/react": "^19.1.9", |     "@types/react": "^19.2.2", | ||||||
|     "@types/react-dom": "^19.1.7", |     "@types/react-dom": "^19.2.2", | ||||||
|     "@vitejs/plugin-react": "^4.7.0", |     "@vitejs/plugin-react": "^4.7.0", | ||||||
|     "eslint": "^9.31.0", |     "eslint": "^9.38.0", | ||||||
|     "eslint-plugin-react-hooks": "^5.2.0", |     "eslint-plugin-react-hooks": "^5.2.0", | ||||||
|     "eslint-plugin-react-refresh": "^0.4.20", |     "eslint-plugin-react-refresh": "^0.4.24", | ||||||
|     "globals": "^16.3.0", |     "globals": "^16.4.0", | ||||||
|     "typescript": "^5.8.3", |     "typescript": "^5.9.3", | ||||||
|     "typescript-eslint": "^8.38.0", |     "typescript-eslint": "^8.38.0", | ||||||
|     "vite": "^7.0.6" |     "vite": "^7.0.6" | ||||||
|   } |   } | ||||||
|   | |||||||
| @@ -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)} | ||||||
|             />, |             />, | ||||||
|   | |||||||
							
								
								
									
										201
									
								
								geneit_backend/Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										201
									
								
								geneit_backend/Cargo.lock
									
									
									
										generated
									
									
									
								
							| @@ -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.100" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" | checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" | ||||||
|  |  | ||||||
| [[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.42" | version = "4.5.50" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "ed87a9d530bb41a67537289bafcac159cb3ee28460e0a4571123d2a778a6a882" | checksum = "0c2cfd7bf8a6017ddaa4e32ffe7403d547790db06bd171c1c53926faab501623" | ||||||
| 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.42" | version = "4.5.50" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "64f4f3f3c77c94aff3c7e9aac9a2ca1974a5adf392a8bb751e827d6d127ab966" | checksum = "0a4c05b9e80c5ccd3a7ef080ad7b6ba7d6fc00a985b8b157197075677c82c7a0" | ||||||
| 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.49" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491" | checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671" | ||||||
| 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.17", | ||||||
|  "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.19" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "cb2a0354e9ece2fcdcf9fa53417f6de587230c0c248068eb058fa26c4a753179" | checksum = "9e13e10e8818f8b2a60f52cb127041d388b89f3a96a62be9ceaffa22262fef7f" | ||||||
| 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.19" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "db3c69370540384985601e4adbbbc3046a658853e4909a4bd744bb390f6f9759" | checksum = "abad4bc63045f04cfc55aa4c55d4ec0a890c377ce56463bfc2adc2bc059c4b84" | ||||||
| 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.7" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "e1f66bf4cac9733a23bcdf1e0e01effbaaad208567beba68be8f67e5f4af3ee1" | checksum = "014cc767fefab6a3e798ca45112bccad9c6e0e218fbd49720042716c73cfef44" | ||||||
| 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.228" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" | checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" | ||||||
|  | dependencies = [ | ||||||
|  |  "serde_core", | ||||||
|  |  "serde_derive", | ||||||
|  | ] | ||||||
|  |  | ||||||
|  | [[package]] | ||||||
|  | name = "serde_core" | ||||||
|  | version = "1.0.228" | ||||||
|  | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
|  | checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" | ||||||
| dependencies = [ | dependencies = [ | ||||||
|  "serde_derive", |  "serde_derive", | ||||||
| ] | ] | ||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "serde_derive" | name = "serde_derive" | ||||||
| version = "1.0.219" | version = "1.0.228" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" | checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" | ||||||
| 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.17" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" | checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" | ||||||
| dependencies = [ | dependencies = [ | ||||||
|  "thiserror-impl 2.0.12", |  "thiserror-impl 2.0.17", | ||||||
| ] | ] | ||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| @@ -3771,9 +3803,9 @@ dependencies = [ | |||||||
|  |  | ||||||
| [[package]] | [[package]] | ||||||
| name = "thiserror-impl" | name = "thiserror-impl" | ||||||
| version = "2.0.12" | version = "2.0.17" | ||||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | source = "registry+https://github.com/rust-lang/crates.io-index" | ||||||
| checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" | checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" | ||||||
| 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", | ||||||
| ] | ] | ||||||
|   | |||||||
| @@ -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.42", features = ["derive", "env"] } | clap = { version = "4.5.50", 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.100" | ||||||
| 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.228", features = ["derive"] } | ||||||
| serde_json = "1.0.141" | serde_json = "1.0.145" | ||||||
| mailchecker = "6.0.17" | mailchecker = "6.0.19" | ||||||
| redis = "0.32.4" | redis = "0.32.7" | ||||||
| lettre = "0.11.17" | lettre = "0.11.19" | ||||||
| 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.17" | ||||||
| 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" | ||||||
|   | |||||||
| @@ -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; | ||||||
|   | |||||||
| @@ -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); | ||||||
|   | |||||||
| @@ -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; | ||||||
|   | |||||||
| @@ -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 { | ||||||
|   | |||||||
| @@ -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 | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -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() | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user