From d5fd7b49e7fe93bc7d79cf3977dfcf1acbe538b1 Mon Sep 17 00:00:00 2001 From: Federico Serron Umpierrez <77068927+federico-serron@users.noreply.github.com> Date: Wed, 16 Apr 2025 22:40:43 +0000 Subject: [PATCH 01/11] All models for database have been created and their relationships. Also pipfile updated to use to last sqlalchemy version --- Pipfile | 2 +- Pipfile.lock | 738 +++++++++++++++------------ migrations/README | 1 + migrations/alembic.ini | 50 ++ migrations/env.py | 113 ++++ migrations/script.py.mako | 24 + migrations/versions/3d144ee6747b_.py | 35 ++ migrations/versions/ac4353e4b230_.py | 87 ++++ src/api/admin.py | 7 +- src/api/models.py | 106 +++- 10 files changed, 813 insertions(+), 350 deletions(-) create mode 100644 migrations/README create mode 100644 migrations/alembic.ini create mode 100644 migrations/env.py create mode 100644 migrations/script.py.mako create mode 100644 migrations/versions/3d144ee6747b_.py create mode 100644 migrations/versions/ac4353e4b230_.py diff --git a/Pipfile b/Pipfile index b461e2e4ee..ac8e1dc847 100644 --- a/Pipfile +++ b/Pipfile @@ -7,7 +7,7 @@ verify_ssl = true [packages] flask = "*" -sqlalchemy = "==1.4.46" +sqlalchemy = "*" flask-sqlalchemy = "*" flask-migrate = "*" flask-swagger = "*" diff --git a/Pipfile.lock b/Pipfile.lock index a391864e9d..c2ad79e41a 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "74f92d76f687bb774828613a3a513123fe2ffdb429b95b351d29721dddfd3fb8" + "sha256": "94092c0e9ee27e5443fb8559e5a1d73d7897118efa1d91e395796a4c48bfd186" }, "pipfile-spec": 6, "requires": { @@ -18,73 +18,91 @@ "default": { "alembic": { "hashes": [ - "sha256:6880dec4f28dd7bd999d2ed13fbe7c9d4337700a44d11a524c0ce0c59aaf0dbd", - "sha256:e8a6ff9f3b1887e1fed68bfb8fb9a000d8f61c21bdcc85b67bb9f87fcbc4fce3" + "sha256:1c72391bbdeffccfe317eefba686cb9a3c078005478885413b95c3b26c57a8a7", + "sha256:2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53" ], - "markers": "python_version >= '3.7'", - "version": "==1.9.2" + "markers": "python_version >= '3.9'", + "version": "==1.15.2" + }, + "blinker": { + "hashes": [ + "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf", + "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + ], + "markers": "python_version >= '3.9'", + "version": "==1.9.0" }, "certifi": { "hashes": [ - "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3", - "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18" + "sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651", + "sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe" ], "markers": "python_version >= '3.6'", - "version": "==2022.12.7" + "version": "==2025.1.31" }, "click": { "hashes": [ - "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e", - "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48" + "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", + "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" ], "markers": "python_version >= '3.7'", - "version": "==8.1.3" + "version": "==8.1.8" }, "cloudinary": { "hashes": [ - "sha256:f52a1f5eb2c6820f13aa01c109caa5937ad3fd6caf5967817d0ef6c113403afc" + "sha256:8b2e5ac3f17068e79e58934b8836e6fea5d96536c1b85c3b4c3b9ebac44151ce", + "sha256:eb2dcf08f5fa69a1476dd357071d05089b9c8219617dacdb1cb1294719c7f633" ], "index": "pypi", - "version": "==1.31.0" + "version": "==1.44.0" }, "flask": { "hashes": [ - "sha256:642c450d19c4ad482f96729bd2a8f6d32554aa1e231f4f6b4e7e5264b16cca2b", - "sha256:b9c46cc36662a7949f34b52d8ec7bb59c0d74ba08ba6cb9ce9adc1d8676d9526" + "sha256:5f873c5184c897c8d9d1b05df1e3d01b14910ce69607a117bd3277098a5836ac", + "sha256:d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136" ], "index": "pypi", - "version": "==2.2.2" + "version": "==3.1.0" }, "flask-admin": { "hashes": [ - "sha256:424ffc79b7b0dfff051555686ea12e86e48dffacac14beaa319fb4502ac40988" + "sha256:24cae2af832b6a611a01d7dc35f42d266c1d6c75a426b869d8cb241b78233369", + "sha256:fd8190f1ec3355913a22739c46ed3623f1d82b8112cde324c60a6fc9b21c9406" ], "index": "pypi", - "version": "==1.6.0" + "version": "==1.6.1" }, "flask-cors": { "hashes": [ - "sha256:74efc975af1194fc7891ff5cd85b0f7478be4f7f59fe158102e91abb72bb4438", - "sha256:b60839393f3b84a0f3746f6cdca56c1ad7426aa738b70d6c61375857823181de" + "sha256:6ccb38d16d6b72bbc156c1c3f192bc435bfcc3c2bc864b2df1eb9b2d97b2403c", + "sha256:fa5cb364ead54bbf401a26dbf03030c6b18fb2fcaf70408096a572b409586b0c" + ], + "index": "pypi", + "version": "==5.0.1" + }, + "flask-jwt-extended": { + "hashes": [ + "sha256:63a28fc9731bcc6c4b8815b6f954b5904caa534fc2ae9b93b1d3ef12930dca95", + "sha256:9215d05a9413d3855764bcd67035e75819d23af2fafb6b55197eb5a3313fdfb2" ], "index": "pypi", - "version": "==3.0.10" + "version": "==4.6.0" }, "flask-migrate": { "hashes": [ - "sha256:8662a9dd391ce36deeaf3265987319c20fdb4c8a45306a32ba4f8224459abed4", - "sha256:a0062c8d3f32de02847086b46cfc389412f78c71c89a619ebd7097e89d72ea4b" + "sha256:1a336b06eb2c3ace005f5f2ded8641d534c18798d64061f6ff11f79e1434126d", + "sha256:24d8051af161782e0743af1b04a152d007bad9772b2bca67b7ec1e8ceeb3910d" ], "index": "pypi", - "version": "==4.0.3" + "version": "==4.1.0" }, "flask-sqlalchemy": { "hashes": [ - "sha256:2764335f3c9d7ebdc9ed6044afaf98aae9fa50d7a074cef55dde307ec95903ec", - "sha256:add5750b2f9cd10512995261ee2aa23fab85bd5626061aa3c564b33bb4aa780a" + "sha256:4ba4be7f419dc72f4efd8802d69974803c37259dd42f3913b0dcf75c9447e0a0", + "sha256:e4b68bb881802dda1a7d878b2fc84c06d1ee57fb40b874d3dc97dabfa36b8312" ], "index": "pypi", - "version": "==3.0.3" + "version": "==3.1.1" }, "flask-swagger": { "hashes": [ @@ -96,383 +114,423 @@ }, "greenlet": { "hashes": [ - "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", - "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", - "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", - "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", - "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", - "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", - "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", - "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", - "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", - "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", - "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", - "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", - "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", - "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", - "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", - "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", - "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", - "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", - "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", - "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", - "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", - "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", - "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", - "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", - "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", - "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", - "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", - "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", - "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", - "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", - "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", - "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", - "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", - "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", - "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", - "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", - "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", - "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", - "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", - "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", - "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", - "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", - "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", - "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", - "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", - "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", - "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", - "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", - "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", - "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", - "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", - "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", - "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", - "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", - "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", - "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", - "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", - "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", - "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", - "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" + "sha256:0010e928e1901d36625f21d008618273f9dda26b516dbdecf873937d39c9dff0", + "sha256:04e781447a4722e30b4861af728cb878d73a3df79509dc19ea498090cea5d204", + "sha256:0e14541f9024a280adb9645143d6a0a51fda6f7c5695fd96cb4d542bb563442f", + "sha256:144283ad88ed77f3ebd74710dd419b55dd15d18704b0ae05935766a93f5671c5", + "sha256:17fd241c0d50bacb7ce8ff77a30f94a2d0ca69434ba2e0187cf95a5414aeb7e1", + "sha256:18adc14ab154ca6e53eecc9dc50ff17aeb7ba70b7e14779b26e16d71efa90038", + "sha256:199453d64b02d0c9d139e36d29681efd0e407ed8e2c0bf89d88878d6a787c28f", + "sha256:1cf89e2d92bae0d7e2d6093ce0bed26feeaf59a5d588e3984e35fcd46fc41090", + "sha256:1d2d43bd711a43db8d9b9187500e6432ddb4fafe112d082ffabca8660a9e01a7", + "sha256:1dcb1108449b55ff6bc0edac9616468f71db261a4571f27c47ccf3530a7f8b97", + "sha256:211a9721f540e454a02e62db7956263e9a28a6cf776d4b9a7213844e36426333", + "sha256:23f56a0103deb5570c8d6a0bb4ddf8a7a28931973ad7ed7a883460a67e599b32", + "sha256:2688b3bd3198cc4bad7a79648a95fee088c24a0f6abd05d3639e6c3040ded015", + "sha256:2919b126eeb63ca5fa971501cd20cd6cdb5522369a8e39548bbc73a3e10b8b41", + "sha256:29449a2b82ed7ce11f8668c31ef20d31e9d88cd8329eb933098fab5a8608a93a", + "sha256:2b986f1a6467710e7ffeeeac1777da0318c95bbfcc467acbd0bd35abc775f558", + "sha256:33ea7e7269d6f7275ce31f593d6dcfedd97539c01f63fbdc8d84e493e20b1b2c", + "sha256:397b6bbda06f8fe895893d96218cd6f6d855a6701dc45012ebe12262423cec8b", + "sha256:39801e633a978c3f829f21022501e7b0c3872683d7495c1850558d1a6fb95ed0", + "sha256:4174fa6fa214e8924cedf332b6f2395ba2b9879f250dacd3c361b2fca86f58af", + "sha256:430cba962c85e339767235a93450a6aaffed6f9c567e73874ea2075f5aae51e1", + "sha256:47aeadd1e8fbdef8fdceb8fb4edc0cbb398a57568d56fd68f2bc00d0d809e6b6", + "sha256:58ef3d637c54e2f079064ca936556c4af3989144e4154d80cfd4e2a59fc3769c", + "sha256:598da3bd464c2cc411b723e3d4afc27b13c219ac077ba897bac88443ae45f5ec", + "sha256:5be69cd50994b8465c3ad1467f9e63001f76e53a89440ad4440d1b6d52591280", + "sha256:5e57ff52315bfc0c5493917f328b8ba3ae0c0515d94524453c4d24e7638cbb53", + "sha256:6005f7a86de836a1dc4b8d824a2339cdd5a1ca7cb1af55ea92575401f9952f4c", + "sha256:6017a4d430fad5229e397ad464db504ae70cb7b903757c4688cee6c25d6ce8d8", + "sha256:60e77242e38e99ecaede853755bbd8165e0b20a2f1f3abcaa6f0dceb826a7411", + "sha256:6fad8a9ca98b37951a053d7d2d2553569b151cd8c4ede744806b94d50d7f8f73", + "sha256:7154b13ef87a8b62fc05419f12d75532d7783586ad016c57b5de8a1c6feeb517", + "sha256:78b721dfadc60e3639141c0e1f19d23953c5b4b98bfcaf04ce40f79e4f01751c", + "sha256:7b162de2fb61b4c7f4b5d749408bf3280cae65db9b5a6aaf7f922ac829faa67c", + "sha256:7b17a26abc6a1890bf77d5d6b71c0999705386b00060d15c10b8182679ff2790", + "sha256:7d08b88ee8d506ca1f5b2a58744e934d33c6a1686dd83b81e7999dfc704a912f", + "sha256:7f163d04f777e7bd229a50b937ecc1ae2a5b25296e6001445e5433e4f51f5191", + "sha256:7fee6f518868e8206c617f4084a83ad4d7a3750b541bf04e692dfa02e52e805d", + "sha256:82a68a25a08f51fc8b66b113d1d9863ee123cdb0e8f1439aed9fc795cd6f85cf", + "sha256:844acfd479ee380f3810415e682c9ee941725fb90b45e139bb7fd6f85c6c9a30", + "sha256:8a8940a8d301828acd8b9f3f85db23069a692ff2933358861b19936e29946b95", + "sha256:8b3538711e7c0efd5f7a8fc1096c4db9598d6ed99dc87286b31e4ce9f8a8da67", + "sha256:8fd2583024ff6cd5d4f842d446d001de4c4fe1264fdb5f28ddea28f6488866df", + "sha256:a0bc5776ac2831c022e029839bf1b9d3052332dcf5f431bb88c8503e27398e31", + "sha256:b2392cc41eeed4055978c6b52549ccd9effd263bb780ffd639c0e1e7e2055ab0", + "sha256:b7a7b7f2bad3ca72eb2fa14643f1c4ca11d115614047299d89bc24a3b11ddd09", + "sha256:b86a3ccc865ae601f446af042707b749eebc297928ea7bd0c5f60c56525850be", + "sha256:b99de16560097b9984409ded0032f101f9555e1ab029440fc6a8b5e76dbba7ac", + "sha256:cd37273dc7ca1d5da149b58c8b3ce0711181672ba1b09969663905a765affe21", + "sha256:ce531d7c424ef327a391de7a9777a6c93a38e1f89e18efa903a1c4ba11f85905", + "sha256:d3f32d7c70b1c26844fd0e4e56a1da852b493e4e1c30df7b07274a1e5a9b599e", + "sha256:d97bc1be4bad83b70d8b8627ada6724091af41139616696e59b7088f358583b9", + "sha256:e61d426969b68b2170a9f853cc36d5318030494576e9ec0bfe2dc2e2afa15a68", + "sha256:e8622b33d8694ec373ad55050c3d4e49818132b44852158442e1931bb02af336", + "sha256:e8ac9a2c20fbff3d0b853e9ef705cdedb70d9276af977d1ec1cde86a87a4c821", + "sha256:ee59db626760f1ca8da697a086454210d36a19f7abecc9922a2374c04b47735b" ], - "markers": "python_version >= '3' and platform_machine == 'aarch64' or (platform_machine == 'ppc64le' or (platform_machine == 'x86_64' or (platform_machine == 'amd64' or (platform_machine == 'AMD64' or (platform_machine == 'win32' or platform_machine == 'WIN32')))))", - "version": "==2.0.2" + "markers": "python_version < '3.14' and platform_machine == 'aarch64' or (platform_machine == 'ppc64le' or (platform_machine == 'x86_64' or (platform_machine == 'amd64' or (platform_machine == 'AMD64' or (platform_machine == 'win32' or platform_machine == 'WIN32')))))", + "version": "==3.2.0" }, "gunicorn": { "hashes": [ - "sha256:9dcc4547dbb1cb284accfb15ab5667a0e5d1881cc443e0677b4882a4067a807e", - "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8" + "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d", + "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec" ], "index": "pypi", - "version": "==20.1.0" + "version": "==23.0.0" }, "itsdangerous": { "hashes": [ - "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44", - "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a" + "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef", + "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173" ], - "markers": "python_version >= '3.7'", - "version": "==2.1.2" + "markers": "python_version >= '3.8'", + "version": "==2.2.0" }, "jinja2": { "hashes": [ - "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852", - "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61" + "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", + "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" ], "markers": "python_version >= '3.7'", - "version": "==3.1.2" + "version": "==3.1.6" }, "mako": { "hashes": [ - "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818", - "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34" + "sha256:99579a6f39583fa7e5630a28c3c1f440e4e97a414b80372649c0ce338da2ea28", + "sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" ], - "markers": "python_version >= '3.7'", - "version": "==1.2.4" + "markers": "python_version >= '3.8'", + "version": "==1.3.10" }, "markupsafe": { "hashes": [ - "sha256:0576fe974b40a400449768941d5d0858cc624e3249dfd1e0c33674e5c7ca7aed", - "sha256:085fd3201e7b12809f9e6e9bc1e5c96a368c8523fad5afb02afe3c051ae4afcc", - "sha256:090376d812fb6ac5f171e5938e82e7f2d7adc2b629101cec0db8b267815c85e2", - "sha256:0b462104ba25f1ac006fdab8b6a01ebbfbce9ed37fd37fd4acd70c67c973e460", - "sha256:137678c63c977754abe9086a3ec011e8fd985ab90631145dfb9294ad09c102a7", - "sha256:1bea30e9bf331f3fef67e0a3877b2288593c98a21ccb2cf29b74c581a4eb3af0", - "sha256:22152d00bf4a9c7c83960521fc558f55a1adbc0631fbb00a9471e097b19d72e1", - "sha256:22731d79ed2eb25059ae3df1dfc9cb1546691cc41f4e3130fe6bfbc3ecbbecfa", - "sha256:2298c859cfc5463f1b64bd55cb3e602528db6fa0f3cfd568d3605c50678f8f03", - "sha256:28057e985dace2f478e042eaa15606c7efccb700797660629da387eb289b9323", - "sha256:2e7821bffe00aa6bd07a23913b7f4e01328c3d5cc0b40b36c0bd81d362faeb65", - "sha256:2ec4f2d48ae59bbb9d1f9d7efb9236ab81429a764dedca114f5fdabbc3788013", - "sha256:340bea174e9761308703ae988e982005aedf427de816d1afe98147668cc03036", - "sha256:40627dcf047dadb22cd25ea7ecfe9cbf3bbbad0482ee5920b582f3809c97654f", - "sha256:40dfd3fefbef579ee058f139733ac336312663c6706d1163b82b3003fb1925c4", - "sha256:4cf06cdc1dda95223e9d2d3c58d3b178aa5dacb35ee7e3bbac10e4e1faacb419", - "sha256:50c42830a633fa0cf9e7d27664637532791bfc31c731a87b202d2d8ac40c3ea2", - "sha256:55f44b440d491028addb3b88f72207d71eeebfb7b5dbf0643f7c023ae1fba619", - "sha256:608e7073dfa9e38a85d38474c082d4281f4ce276ac0010224eaba11e929dd53a", - "sha256:63ba06c9941e46fa389d389644e2d8225e0e3e5ebcc4ff1ea8506dce646f8c8a", - "sha256:65608c35bfb8a76763f37036547f7adfd09270fbdbf96608be2bead319728fcd", - "sha256:665a36ae6f8f20a4676b53224e33d456a6f5a72657d9c83c2aa00765072f31f7", - "sha256:6d6607f98fcf17e534162f0709aaad3ab7a96032723d8ac8750ffe17ae5a0666", - "sha256:7313ce6a199651c4ed9d7e4cfb4aa56fe923b1adf9af3b420ee14e6d9a73df65", - "sha256:7668b52e102d0ed87cb082380a7e2e1e78737ddecdde129acadb0eccc5423859", - "sha256:7df70907e00c970c60b9ef2938d894a9381f38e6b9db73c5be35e59d92e06625", - "sha256:7e007132af78ea9df29495dbf7b5824cb71648d7133cf7848a2a5dd00d36f9ff", - "sha256:835fb5e38fd89328e9c81067fd642b3593c33e1e17e2fdbf77f5676abb14a156", - "sha256:8bca7e26c1dd751236cfb0c6c72d4ad61d986e9a41bbf76cb445f69488b2a2bd", - "sha256:8db032bf0ce9022a8e41a22598eefc802314e81b879ae093f36ce9ddf39ab1ba", - "sha256:99625a92da8229df6d44335e6fcc558a5037dd0a760e11d84be2260e6f37002f", - "sha256:9cad97ab29dfc3f0249b483412c85c8ef4766d96cdf9dcf5a1e3caa3f3661cf1", - "sha256:a4abaec6ca3ad8660690236d11bfe28dfd707778e2442b45addd2f086d6ef094", - "sha256:a6e40afa7f45939ca356f348c8e23048e02cb109ced1eb8420961b2f40fb373a", - "sha256:a6f2fcca746e8d5910e18782f976489939d54a91f9411c32051b4aab2bd7c513", - "sha256:a806db027852538d2ad7555b203300173dd1b77ba116de92da9afbc3a3be3eed", - "sha256:abcabc8c2b26036d62d4c746381a6f7cf60aafcc653198ad678306986b09450d", - "sha256:b8526c6d437855442cdd3d87eede9c425c4445ea011ca38d937db299382e6fa3", - "sha256:bb06feb762bade6bf3c8b844462274db0c76acc95c52abe8dbed28ae3d44a147", - "sha256:c0a33bc9f02c2b17c3ea382f91b4db0e6cde90b63b296422a939886a7a80de1c", - "sha256:c4a549890a45f57f1ebf99c067a4ad0cb423a05544accaf2b065246827ed9603", - "sha256:ca244fa73f50a800cf8c3ebf7fd93149ec37f5cb9596aa8873ae2c1d23498601", - "sha256:cf877ab4ed6e302ec1d04952ca358b381a882fbd9d1b07cccbfd61783561f98a", - "sha256:d9d971ec1e79906046aa3ca266de79eac42f1dbf3612a05dc9368125952bd1a1", - "sha256:da25303d91526aac3672ee6d49a2f3db2d9502a4a60b55519feb1a4c7714e07d", - "sha256:e55e40ff0cc8cc5c07996915ad367fa47da6b3fc091fdadca7f5403239c5fec3", - "sha256:f03a532d7dee1bed20bc4884194a16160a2de9ffc6354b3878ec9682bb623c54", - "sha256:f1cd098434e83e656abf198f103a8207a8187c0fc110306691a2e94a78d0abb2", - "sha256:f2bfb563d0211ce16b63c7cb9395d2c682a23187f54c3d79bfec33e6705473c6", - "sha256:f8ffb705ffcf5ddd0e80b65ddf7bed7ee4f5a441ea7d3419e861a12eaf41af58" + "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4", + "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30", + "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0", + "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", + "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", + "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13", + "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028", + "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca", + "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557", + "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832", + "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0", + "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b", + "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579", + "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", + "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", + "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff", + "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", + "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22", + "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", + "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb", + "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e", + "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", + "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a", + "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d", + "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a", + "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b", + "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8", + "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225", + "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c", + "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144", + "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f", + "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87", + "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d", + "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93", + "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf", + "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158", + "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84", + "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", + "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48", + "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171", + "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", + "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", + "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", + "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d", + "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", + "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", + "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", + "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", + "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29", + "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", + "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798", + "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c", + "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8", + "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", + "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", + "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a", + "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178", + "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", + "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", + "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", + "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50" ], - "markers": "python_version >= '3.7'", - "version": "==2.1.2" + "markers": "python_version >= '3.9'", + "version": "==3.0.2" + }, + "packaging": { + "hashes": [ + "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759", + "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f" + ], + "markers": "python_version >= '3.8'", + "version": "==24.2" }, "psycopg2-binary": { "hashes": [ - "sha256:00475004e5ed3e3bf5e056d66e5dcdf41a0dc62efcd57997acd9135c40a08a50", - "sha256:01ad49d68dd8c5362e4bfb4158f2896dc6e0c02e87b8a3770fc003459f1a4425", - "sha256:024030b13bdcbd53d8a93891a2cf07719715724fc9fee40243f3bd78b4264b8f", - "sha256:02551647542f2bf89073d129c73c05a25c372fc0a49aa50e0de65c3c143d8bd0", - "sha256:043a9fd45a03858ff72364b4b75090679bd875ee44df9c0613dc862ca6b98460", - "sha256:05b3d479425e047c848b9782cd7aac9c6727ce23181eb9647baf64ffdfc3da41", - "sha256:0775d6252ccb22b15da3b5d7adbbf8cfe284916b14b6dc0ff503a23edb01ee85", - "sha256:1764546ffeaed4f9428707be61d68972eb5ede81239b46a45843e0071104d0dd", - "sha256:1e491e6489a6cb1d079df8eaa15957c277fdedb102b6a68cfbf40c4994412fd0", - "sha256:212757ffcecb3e1a5338d4e6761bf9c04f750e7d027117e74aa3cd8a75bb6fbd", - "sha256:215d6bf7e66732a514f47614f828d8c0aaac9a648c46a831955cb103473c7147", - "sha256:25382c7d174c679ce6927c16b6fbb68b10e56ee44b1acb40671e02d29f2fce7c", - "sha256:2abccab84d057723d2ca8f99ff7b619285d40da6814d50366f61f0fc385c3903", - "sha256:2d964eb24c8b021623df1c93c626671420c6efadbdb8655cb2bd5e0c6fa422ba", - "sha256:2ec46ed947801652c9643e0b1dc334cfb2781232e375ba97312c2fc256597632", - "sha256:2ef892cabdccefe577088a79580301f09f2a713eb239f4f9f62b2b29cafb0577", - "sha256:33e632d0885b95a8b97165899006c40e9ecdc634a529dca7b991eb7de4ece41c", - "sha256:3520d7af1ebc838cc6084a3281145d5cd5bdd43fdef139e6db5af01b92596cb7", - "sha256:3d790f84201c3698d1bfb404c917f36e40531577a6dda02e45ba29b64d539867", - "sha256:3fc33295cfccad697a97a76dec3f1e94ad848b7b163c3228c1636977966b51e2", - "sha256:422e3d43b47ac20141bc84b3d342eead8d8099a62881a501e97d15f6addabfe9", - "sha256:426c2ae999135d64e6a18849a7d1ad0e1bd007277e4a8f4752eaa40a96b550ff", - "sha256:46512486be6fbceef51d7660dec017394ba3e170299d1dc30928cbedebbf103a", - "sha256:46850a640df62ae940e34a163f72e26aca1f88e2da79148e1862faaac985c302", - "sha256:484405b883630f3e74ed32041a87456c5e0e63a8e3429aa93e8714c366d62bd1", - "sha256:4e7904d1920c0c89105c0517dc7e3f5c20fb4e56ba9cdef13048db76947f1d79", - "sha256:56b2957a145f816726b109ee3d4e6822c23f919a7d91af5a94593723ed667835", - "sha256:5c6527c8efa5226a9e787507652dd5ba97b62d29b53c371a85cd13f957fe4d42", - "sha256:5cbc554ba47ecca8cd3396ddaca85e1ecfe3e48dd57dc5e415e59551affe568e", - "sha256:5d28ecdf191db558d0c07d0f16524ee9d67896edf2b7990eea800abeb23ebd61", - "sha256:5fc447058d083b8c6ac076fc26b446d44f0145308465d745fba93a28c14c9e32", - "sha256:63e318dbe52709ed10d516a356f22a635e07a2e34c68145484ed96a19b0c4c68", - "sha256:68d81a2fe184030aa0c5c11e518292e15d342a667184d91e30644c9d533e53e1", - "sha256:6e63814ec71db9bdb42905c925639f319c80e7909fb76c3b84edc79dadef8d60", - "sha256:6f8a9bcab7b6db2e3dbf65b214dfc795b4c6b3bb3af922901b6a67f7cb47d5f8", - "sha256:70831e03bd53702c941da1a1ad36c17d825a24fbb26857b40913d58df82ec18b", - "sha256:74eddec4537ab1f701a1647214734bc52cee2794df748f6ae5908e00771f180a", - "sha256:7b3751857da3e224f5629400736a7b11e940b5da5f95fa631d86219a1beaafec", - "sha256:7cf1d44e710ca3a9ce952bda2855830fe9f9017ed6259e01fcd71ea6287565f5", - "sha256:7d07f552d1e412f4b4e64ce386d4c777a41da3b33f7098b6219012ba534fb2c2", - "sha256:7d88db096fa19d94f433420eaaf9f3c45382da2dd014b93e4bf3215639047c16", - "sha256:7ee3095d02d6f38bd7d9a5358fcc9ea78fcdb7176921528dd709cc63f40184f5", - "sha256:902844f9c4fb19b17dfa84d9e2ca053d4a4ba265723d62ea5c9c26b38e0aa1e6", - "sha256:937880290775033a743f4836aa253087b85e62784b63fd099ee725d567a48aa1", - "sha256:95076399ec3b27a8f7fa1cc9a83417b1c920d55cf7a97f718a94efbb96c7f503", - "sha256:9c38d3869238e9d3409239bc05bc27d6b7c99c2a460ea337d2814b35fb4fea1b", - "sha256:9e32cedc389bcb76d9f24ea8a012b3cb8385ee362ea437e1d012ffaed106c17d", - "sha256:9ffdc51001136b699f9563b1c74cc1f8c07f66ef7219beb6417a4c8aaa896c28", - "sha256:a0adef094c49f242122bb145c3c8af442070dc0e4312db17e49058c1702606d4", - "sha256:a36a0e791805aa136e9cbd0ffa040d09adec8610453ee8a753f23481a0057af5", - "sha256:a7e518a0911c50f60313cb9e74a169a65b5d293770db4770ebf004245f24b5c5", - "sha256:af0516e1711995cb08dc19bbd05bec7dbdebf4185f68870595156718d237df3e", - "sha256:b8104f709590fff72af801e916817560dbe1698028cd0afe5a52d75ceb1fce5f", - "sha256:b911dfb727e247340d36ae20c4b9259e4a64013ab9888ccb3cbba69b77fd9636", - "sha256:b9a794cef1d9c1772b94a72eec6da144c18e18041d294a9ab47669bc77a80c1d", - "sha256:b9c33d4aef08dfecbd1736ceab8b7b3c4358bf10a0121483e5cd60d3d308cc64", - "sha256:b9d38a4656e4e715d637abdf7296e98d6267df0cc0a8e9a016f8ba07e4aa3eeb", - "sha256:bcda1c84a1c533c528356da5490d464a139b6e84eb77cc0b432e38c5c6dd7882", - "sha256:bef7e3f9dc6f0c13afdd671008534be5744e0e682fb851584c8c3a025ec09720", - "sha256:c15ba5982c177bc4b23a7940c7e4394197e2d6a424a2d282e7c236b66da6d896", - "sha256:c5254cbd4f4855e11cebf678c1a848a3042d455a22a4ce61349c36aafd4c2267", - "sha256:c5682a45df7d9642eff590abc73157c887a68f016df0a8ad722dcc0f888f56d7", - "sha256:c5e65c6ac0ae4bf5bef1667029f81010b6017795dcb817ba5c7b8a8d61fab76f", - "sha256:d4c7b3a31502184e856df1f7bbb2c3735a05a8ce0ade34c5277e1577738a5c91", - "sha256:d892bfa1d023c3781a3cab8dd5af76b626c483484d782e8bd047c180db590e4c", - "sha256:dbc332beaf8492b5731229a881807cd7b91b50dbbbaf7fe2faf46942eda64a24", - "sha256:dc85b3777068ed30aff8242be2813038a929f2084f69e43ef869daddae50f6ee", - "sha256:e59137cdb970249ae60be2a49774c6dfb015bd0403f05af1fe61862e9626642d", - "sha256:e67b3c26e9b6d37b370c83aa790bbc121775c57bfb096c2e77eacca25fd0233b", - "sha256:e72c91bda9880f097c8aa3601a2c0de6c708763ba8128006151f496ca9065935", - "sha256:f95b8aca2703d6a30249f83f4fe6a9abf2e627aa892a5caaab2267d56be7ab69" + "sha256:04392983d0bb89a8717772a193cfaac58871321e3ec69514e1c4e0d4957b5aff", + "sha256:056470c3dc57904bbf63d6f534988bafc4e970ffd50f6271fc4ee7daad9498a5", + "sha256:0ea8e3d0ae83564f2fc554955d327fa081d065c8ca5cc6d2abb643e2c9c1200f", + "sha256:155e69561d54d02b3c3209545fb08938e27889ff5a10c19de8d23eb5a41be8a5", + "sha256:18c5ee682b9c6dd3696dad6e54cc7ff3a1a9020df6a5c0f861ef8bfd338c3ca0", + "sha256:19721ac03892001ee8fdd11507e6a2e01f4e37014def96379411ca99d78aeb2c", + "sha256:1a6784f0ce3fec4edc64e985865c17778514325074adf5ad8f80636cd029ef7c", + "sha256:2286791ececda3a723d1910441c793be44625d86d1a4e79942751197f4d30341", + "sha256:230eeae2d71594103cd5b93fd29d1ace6420d0b86f4778739cb1a5a32f607d1f", + "sha256:245159e7ab20a71d989da00f280ca57da7641fa2cdcf71749c193cea540a74f7", + "sha256:26540d4a9a4e2b096f1ff9cce51253d0504dca5a85872c7f7be23be5a53eb18d", + "sha256:270934a475a0e4b6925b5f804e3809dd5f90f8613621d062848dd82f9cd62007", + "sha256:27422aa5f11fbcd9b18da48373eb67081243662f9b46e6fd07c3eb46e4535142", + "sha256:2ad26b467a405c798aaa1458ba09d7e2b6e5f96b1ce0ac15d82fd9f95dc38a92", + "sha256:2b3d2491d4d78b6b14f76881905c7a8a8abcf974aad4a8a0b065273a0ed7a2cb", + "sha256:2ce3e21dc3437b1d960521eca599d57408a695a0d3c26797ea0f72e834c7ffe5", + "sha256:30e34c4e97964805f715206c7b789d54a78b70f3ff19fbe590104b71c45600e5", + "sha256:3216ccf953b3f267691c90c6fe742e45d890d8272326b4a8b20850a03d05b7b8", + "sha256:32581b3020c72d7a421009ee1c6bf4a131ef5f0a968fab2e2de0c9d2bb4577f1", + "sha256:35958ec9e46432d9076286dda67942ed6d968b9c3a6a2fd62b48939d1d78bf68", + "sha256:3abb691ff9e57d4a93355f60d4f4c1dd2d68326c968e7db17ea96df3c023ef73", + "sha256:3c18f74eb4386bf35e92ab2354a12c17e5eb4d9798e4c0ad3a00783eae7cd9f1", + "sha256:3c4745a90b78e51d9ba06e2088a2fe0c693ae19cc8cb051ccda44e8df8a6eb53", + "sha256:3c4ded1a24b20021ebe677b7b08ad10bf09aac197d6943bfe6fec70ac4e4690d", + "sha256:3e9c76f0ac6f92ecfc79516a8034a544926430f7b080ec5a0537bca389ee0906", + "sha256:48b338f08d93e7be4ab2b5f1dbe69dc5e9ef07170fe1f86514422076d9c010d0", + "sha256:4b3df0e6990aa98acda57d983942eff13d824135fe2250e6522edaa782a06de2", + "sha256:512d29bb12608891e349af6a0cccedce51677725a921c07dba6342beaf576f9a", + "sha256:5a507320c58903967ef7384355a4da7ff3f28132d679aeb23572753cbf2ec10b", + "sha256:5c370b1e4975df846b0277b4deba86419ca77dbc25047f535b0bb03d1a544d44", + "sha256:6b269105e59ac96aba877c1707c600ae55711d9dcd3fc4b5012e4af68e30c648", + "sha256:6d4fa1079cab9018f4d0bd2db307beaa612b0d13ba73b5c6304b9fe2fb441ff7", + "sha256:6dc08420625b5a20b53551c50deae6e231e6371194fa0651dbe0fb206452ae1f", + "sha256:73aa0e31fa4bb82578f3a6c74a73c273367727de397a7a0f07bd83cbea696baa", + "sha256:7559bce4b505762d737172556a4e6ea8a9998ecac1e39b5233465093e8cee697", + "sha256:79625966e176dc97ddabc142351e0409e28acf4660b88d1cf6adb876d20c490d", + "sha256:7a813c8bdbaaaab1f078014b9b0b13f5de757e2b5d9be6403639b298a04d218b", + "sha256:7b2c956c028ea5de47ff3a8d6b3cc3330ab45cf0b7c3da35a2d6ff8420896526", + "sha256:7f4152f8f76d2023aac16285576a9ecd2b11a9895373a1f10fd9db54b3ff06b4", + "sha256:7f5d859928e635fa3ce3477704acee0f667b3a3d3e4bb109f2b18d4005f38287", + "sha256:851485a42dbb0bdc1edcdabdb8557c09c9655dfa2ca0460ff210522e073e319e", + "sha256:8608c078134f0b3cbd9f89b34bd60a943b23fd33cc5f065e8d5f840061bd0673", + "sha256:880845dfe1f85d9d5f7c412efea7a08946a46894537e4e5d091732eb1d34d9a0", + "sha256:8aabf1c1a04584c168984ac678a668094d831f152859d06e055288fa515e4d30", + "sha256:8aecc5e80c63f7459a1a2ab2c64df952051df196294d9f739933a9f6687e86b3", + "sha256:8cd9b4f2cfab88ed4a9106192de509464b75a906462fb846b936eabe45c2063e", + "sha256:8de718c0e1c4b982a54b41779667242bc630b2197948405b7bd8ce16bcecac92", + "sha256:9440fa522a79356aaa482aa4ba500b65f28e5d0e63b801abf6aa152a29bd842a", + "sha256:b5f86c56eeb91dc3135b3fd8a95dc7ae14c538a2f3ad77a19645cf55bab1799c", + "sha256:b73d6d7f0ccdad7bc43e6d34273f70d587ef62f824d7261c4ae9b8b1b6af90e8", + "sha256:bb89f0a835bcfc1d42ccd5f41f04870c1b936d8507c6df12b7737febc40f0909", + "sha256:c3cc28a6fd5a4a26224007712e79b81dbaee2ffb90ff406256158ec4d7b52b47", + "sha256:ce5ab4bf46a211a8e924d307c1b1fcda82368586a19d0a24f8ae166f5c784864", + "sha256:d00924255d7fc916ef66e4bf22f354a940c67179ad3fd7067d7a0a9c84d2fbfc", + "sha256:d7cd730dfa7c36dbe8724426bf5612798734bff2d3c3857f36f2733f5bfc7c00", + "sha256:e217ce4d37667df0bc1c397fdcd8de5e81018ef305aed9415c3b093faaeb10fb", + "sha256:e3923c1d9870c49a2d44f795df0c889a22380d36ef92440ff618ec315757e539", + "sha256:e5720a5d25e3b99cd0dc5c8a440570469ff82659bb09431c1439b92caf184d3b", + "sha256:e8b58f0a96e7a1e341fc894f62c1177a7c83febebb5ff9123b579418fdc8a481", + "sha256:e984839e75e0b60cfe75e351db53d6db750b00de45644c5d1f7ee5d1f34a1ce5", + "sha256:eb09aa7f9cecb45027683bb55aebaaf45a0df8bf6de68801a6afdc7947bb09d4", + "sha256:ec8a77f521a17506a24a5f626cb2aee7850f9b69a0afe704586f63a464f3cd64", + "sha256:ecced182e935529727401b24d76634a357c71c9275b356efafd8a2a91ec07392", + "sha256:ee0e8c683a7ff25d23b55b11161c2663d4b099770f6085ff0a20d4505778d6b4", + "sha256:f0c2d907a1e102526dd2986df638343388b94c33860ff3bbe1384130828714b1", + "sha256:f758ed67cab30b9a8d2833609513ce4d3bd027641673d4ebc9c067e4d208eec1", + "sha256:f8157bed2f51db683f31306aa497311b560f2265998122abe1dce6428bd86567", + "sha256:ffe8ed017e4ed70f68b7b371d84b7d4a790368db9203dfc2d222febd3a9c8863" ], "index": "pypi", - "version": "==2.9.5" + "version": "==2.9.10" }, - "python-dotenv": { + "pyjwt": { "hashes": [ - "sha256:1c93de8f636cde3ce377292818d0e440b6e45a82f215c3744979151fa8151c49", - "sha256:41e12e0318bebc859fcc4d97d4db8d20ad21721a6aa5047dd59f090391cb549a" + "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953", + "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" ], - "index": "pypi", - "version": "==0.21.1" + "markers": "python_version >= '3.9'", + "version": "==2.10.1" }, - "pyyaml": { + "python-dotenv": { "hashes": [ - "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf", - "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293", - "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b", - "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57", - "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b", - "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4", - "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07", - "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba", - "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9", - "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287", - "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513", - "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0", - "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782", - "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0", - "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92", - "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f", - "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2", - "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc", - "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1", - "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c", - "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86", - "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4", - "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c", - "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34", - "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b", - "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d", - "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c", - "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb", - "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7", - "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737", - "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3", - "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d", - "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358", - "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53", - "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78", - "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803", - "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a", - "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f", - "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174", - "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5" + "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", + "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" ], - "markers": "python_version >= '3.6'", - "version": "==6.0" + "index": "pypi", + "version": "==1.1.0" }, - "setuptools": { + "pyyaml": { "hashes": [ - "sha256:a7687c12b444eaac951ea87a9627c4f904ac757e7abdc5aac32833234af90378", - "sha256:e261cdf010c11a41cb5cb5f1bf3338a7433832029f559a6a7614bd42a967c300" + "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff", + "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", + "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086", + "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e", + "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", + "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5", + "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", + "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee", + "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", + "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68", + "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a", + "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf", + "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99", + "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8", + "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85", + "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19", + "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", + "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a", + "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", + "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317", + "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c", + "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631", + "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d", + "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", + "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", + "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e", + "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b", + "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", + "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", + "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706", + "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", + "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237", + "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", + "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083", + "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180", + "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", + "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e", + "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f", + "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725", + "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", + "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", + "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774", + "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", + "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", + "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5", + "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d", + "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290", + "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44", + "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed", + "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", + "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", + "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12", + "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4" ], - "markers": "python_version >= '3.7'", - "version": "==67.1.0" + "markers": "python_version >= '3.8'", + "version": "==6.0.2" }, "six": { "hashes": [ - "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", - "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254" + "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", + "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.16.0" + "version": "==1.17.0" }, "sqlalchemy": { "hashes": [ - "sha256:07e48cbcdda6b8bc7a59d6728bd3f5f574ffe03f2c9fb384239f3789c2d95c2e", - "sha256:18cafdb27834fa03569d29f571df7115812a0e59fd6a3a03ccb0d33678ec8420", - "sha256:1b1e5e96e2789d89f023d080bee432e2fef64d95857969e70d3cadec80bd26f0", - "sha256:315676344e3558f1f80d02535f410e80ea4e8fddba31ec78fe390eff5fb8f466", - "sha256:31de1e2c45e67a5ec1ecca6ec26aefc299dd5151e355eb5199cd9516b57340be", - "sha256:3d94682732d1a0def5672471ba42a29ff5e21bb0aae0afa00bb10796fc1e28dd", - "sha256:3ec187acf85984263299a3f15c34a6c0671f83565d86d10f43ace49881a82718", - "sha256:4847f4b1d822754e35707db913396a29d874ee77b9c3c3ef3f04d5a9a6209618", - "sha256:4d112b0f3c1bc5ff70554a97344625ef621c1bfe02a73c5d97cac91f8cd7a41e", - "sha256:51e1ba2884c6a2b8e19109dc08c71c49530006c1084156ecadfaadf5f9b8b053", - "sha256:535377e9b10aff5a045e3d9ada8a62d02058b422c0504ebdcf07930599890eb0", - "sha256:5dbf17ac9a61e7a3f1c7ca47237aac93cabd7f08ad92ac5b96d6f8dea4287fc1", - "sha256:5f752676fc126edc1c4af0ec2e4d2adca48ddfae5de46bb40adbd3f903eb2120", - "sha256:64cb0ad8a190bc22d2112001cfecdec45baffdf41871de777239da6a28ed74b6", - "sha256:6913b8247d8a292ef8315162a51931e2b40ce91681f1b6f18f697045200c4a30", - "sha256:69fac0a7054d86b997af12dc23f581cf0b25fb1c7d1fed43257dee3af32d3d6d", - "sha256:7001f16a9a8e06488c3c7154827c48455d1c1507d7228d43e781afbc8ceccf6d", - "sha256:7b81b1030c42b003fc10ddd17825571603117f848814a344d305262d370e7c34", - "sha256:7f8267682eb41a0584cf66d8a697fef64b53281d01c93a503e1344197f2e01fe", - "sha256:887865924c3d6e9a473dc82b70977395301533b3030d0f020c38fd9eba5419f2", - "sha256:9167d4227b56591a4cc5524f1b79ccd7ea994f36e4c648ab42ca995d28ebbb96", - "sha256:939f9a018d2ad04036746e15d119c0428b1e557470361aa798e6e7d7f5875be0", - "sha256:955162ad1a931fe416eded6bb144ba891ccbf9b2e49dc7ded39274dd9c5affc5", - "sha256:984ee13543a346324319a1fb72b698e521506f6f22dc37d7752a329e9cd00a32", - "sha256:9883f5fae4fd8e3f875adc2add69f8b945625811689a6c65866a35ee9c0aea23", - "sha256:a1ad90c97029cc3ab4ffd57443a20fac21d2ec3c89532b084b073b3feb5abff3", - "sha256:a3714e5b33226131ac0da60d18995a102a17dddd42368b7bdd206737297823ad", - "sha256:ae067ab639fa499f67ded52f5bc8e084f045d10b5ac7bb928ae4ca2b6c0429a5", - "sha256:b33ffbdbbf5446cf36cd4cc530c9d9905d3c2fe56ed09e25c22c850cdb9fac92", - "sha256:b6e4cb5c63f705c9d546a054c60d326cbde7421421e2d2565ce3e2eee4e1a01f", - "sha256:b7f4b6aa6e87991ec7ce0e769689a977776db6704947e562102431474799a857", - "sha256:c04144a24103135ea0315d459431ac196fe96f55d3213bfd6d39d0247775c854", - "sha256:c522e496f9b9b70296a7675272ec21937ccfc15da664b74b9f58d98a641ce1b6", - "sha256:c5a99282848b6cae0056b85da17392a26b2d39178394fc25700bcf967e06e97a", - "sha256:c7a46639ba058d320c9f53a81db38119a74b8a7a1884df44d09fbe807d028aaf", - "sha256:d4b1cc7835b39835c75cf7c20c926b42e97d074147c902a9ebb7cf2c840dc4e2", - "sha256:d4d164df3d83d204c69f840da30b292ac7dc54285096c6171245b8d7807185aa", - "sha256:d61e9ecc849d8d44d7f80894ecff4abe347136e9d926560b818f6243409f3c86", - "sha256:d68e1762997bfebf9e5cf2a9fd0bcf9ca2fdd8136ce7b24bbd3bbfa4328f3e4a", - "sha256:e3c1808008124850115a3f7e793a975cfa5c8a26ceeeb9ff9cbb4485cac556df", - "sha256:f8cb80fe8d14307e4124f6fad64dfd87ab749c9d275f82b8b4ec84c84ecebdbe" + "sha256:00a494ea6f42a44c326477b5bee4e0fc75f6a80c01570a32b57e89cf0fbef85a", + "sha256:0bb933a650323e476a2e4fbef8997a10d0003d4da996aad3fd7873e962fdde4d", + "sha256:110179728e442dae85dd39591beb74072ae4ad55a44eda2acc6ec98ead80d5f2", + "sha256:15d08d5ef1b779af6a0909b97be6c1fd4298057504eb6461be88bd1696cb438e", + "sha256:16d325ea898f74b26ffcd1cf8c593b0beed8714f0317df2bed0d8d1de05a8f26", + "sha256:1abb387710283fc5983d8a1209d9696a4eae9db8d7ac94b402981fe2fe2e39ad", + "sha256:1ffdf9c91428e59744f8e6f98190516f8e1d05eec90e936eb08b257332c5e870", + "sha256:2be94d75ee06548d2fc591a3513422b873490efb124048f50556369a834853b0", + "sha256:2cbafc8d39ff1abdfdda96435f38fab141892dc759a2165947d1a8fffa7ef596", + "sha256:2ee5f9999a5b0e9689bed96e60ee53c3384f1a05c2dd8068cc2e8361b0df5b7a", + "sha256:32587e2e1e359276957e6fe5dad089758bc042a971a8a09ae8ecf7a8fe23d07a", + "sha256:35904d63412db21088739510216e9349e335f142ce4a04b69e2528020ee19ed4", + "sha256:37a5c21ab099a83d669ebb251fddf8f5cee4d75ea40a5a1653d9c43d60e20867", + "sha256:37f7a0f506cf78c80450ed1e816978643d3969f99c4ac6b01104a6fe95c5490a", + "sha256:46628ebcec4f23a1584fb52f2abe12ddb00f3bb3b7b337618b80fc1b51177aff", + "sha256:4a4c5a2905a9ccdc67a8963e24abd2f7afcd4348829412483695c59e0af9a705", + "sha256:4aeb939bcac234b88e2d25d5381655e8353fe06b4e50b1c55ecffe56951d18c2", + "sha256:50f5885bbed261fc97e2e66c5156244f9704083a674b8d17f24c72217d29baf5", + "sha256:519624685a51525ddaa7d8ba8265a1540442a2ec71476f0e75241eb8263d6f51", + "sha256:5434223b795be5c5ef8244e5ac98056e290d3a99bdcc539b916e282b160dda00", + "sha256:55028d7a3ebdf7ace492fab9895cbc5270153f75442a0472d8516e03159ab364", + "sha256:5654d1ac34e922b6c5711631f2da497d3a7bffd6f9f87ac23b35feea56098011", + "sha256:574aea2c54d8f1dd1699449f332c7d9b71c339e04ae50163a3eb5ce4c4325ee4", + "sha256:5cfa124eda500ba4b0d3afc3e91ea27ed4754e727c7f025f293a22f512bcd4c9", + "sha256:5ea9181284754d37db15156eb7be09c86e16e50fbe77610e9e7bee09291771a1", + "sha256:641ee2e0834812d657862f3a7de95e0048bdcb6c55496f39c6fa3d435f6ac6ad", + "sha256:650490653b110905c10adac69408380688cefc1f536a137d0d69aca1069dc1d1", + "sha256:6959738971b4745eea16f818a2cd086fb35081383b078272c35ece2b07012716", + "sha256:6cfedff6878b0e0d1d0a50666a817ecd85051d12d56b43d9d425455e608b5ba0", + "sha256:7e0505719939e52a7b0c65d20e84a6044eb3712bb6f239c6b1db77ba8e173a37", + "sha256:8b6b28d303b9d57c17a5164eb1fd2d5119bb6ff4413d5894e74873280483eeb5", + "sha256:8bb131ffd2165fae48162c7bbd0d97c84ab961deea9b8bab16366543deeab625", + "sha256:915866fd50dd868fdcc18d61d8258db1bf9ed7fbd6dfec960ba43365952f3b01", + "sha256:9408fd453d5f8990405cc9def9af46bfbe3183e6110401b407c2d073c3388f47", + "sha256:957f8d85d5e834397ef78a6109550aeb0d27a53b5032f7a57f2451e1adc37e98", + "sha256:9c7a80ed86d6aaacb8160a1caef6680d4ddd03c944d985aecee940d168c411d1", + "sha256:9d3b31d0a1c44b74d3ae27a3de422dfccd2b8f0b75e51ecb2faa2bf65ab1ba0d", + "sha256:a669cbe5be3c63f75bcbee0b266779706f1a54bcb1000f302685b87d1b8c1500", + "sha256:a8aae085ea549a1eddbc9298b113cffb75e514eadbb542133dd2b99b5fb3b6af", + "sha256:ae9597cab738e7cc823f04a704fb754a9249f0b6695a6aeb63b74055cd417a96", + "sha256:afe63b208153f3a7a2d1a5b9df452b0673082588933e54e7c8aac457cf35e758", + "sha256:b5a5bbe29c10c5bfd63893747a1bf6f8049df607638c786252cb9243b86b6706", + "sha256:baf7cee56bd552385c1ee39af360772fbfc2f43be005c78d1140204ad6148438", + "sha256:bb19e30fdae77d357ce92192a3504579abe48a66877f476880238a962e5b96db", + "sha256:bece9527f5a98466d67fb5d34dc560c4da964240d8b09024bb21c1246545e04e", + "sha256:c0cae71e20e3c02c52f6b9e9722bca70e4a90a466d59477822739dc31ac18b4b", + "sha256:c268b5100cfeaa222c40f55e169d484efa1384b44bf9ca415eae6d556f02cb08", + "sha256:c7b927155112ac858357ccf9d255dd8c044fd9ad2dc6ce4c4149527c901fa4c3", + "sha256:c884de19528e0fcd9dc34ee94c810581dd6e74aef75437ff17e696c2bfefae3e", + "sha256:cd2f75598ae70bcfca9117d9e51a3b06fe29edd972fdd7fd57cc97b4dbf3b08a", + "sha256:cf0e99cdb600eabcd1d65cdba0d3c91418fee21c4aa1d28db47d095b1064a7d8", + "sha256:d827099289c64589418ebbcaead0145cd19f4e3e8a93919a0100247af245fa00", + "sha256:e8040680eaacdce4d635f12c55c714f3d4c7f57da2bc47a01229d115bd319191", + "sha256:f0fda83e113bb0fb27dc003685f32a5dcb99c9c4f41f4fa0838ac35265c23b5c", + "sha256:f1ea21bef99c703f44444ad29c2c1b6bd55d202750b6de8e06a955380f4725d7", + "sha256:f6bacab7514de6146a1976bc56e1545bee247242fab030b89e5f70336fc0003e", + "sha256:fe147fcd85aaed53ce90645c91ed5fca0cc88a797314c70dfd9d35925bd5d106" ], "index": "pypi", - "version": "==1.4.46" + "version": "==2.0.40" }, "typing-extensions": { "hashes": [ - "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa", - "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e" + "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", + "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef" ], "index": "pypi", - "version": "==4.4.0" + "version": "==4.13.2" }, "urllib3": { "hashes": [ - "sha256:076907bf8fd355cde77728471316625a4d2f7e713c125f51953bb5b3eecf4f72", - "sha256:75edcdc2f7d85b137124a6c3c9fc3933cdeaa12ecb9a6a959f22797a0feca7e1" + "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", + "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" ], - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", - "version": "==1.26.14" + "markers": "python_version >= '3.9'", + "version": "==2.4.0" }, "werkzeug": { "hashes": [ - "sha256:7ea2d48322cc7c0f8b3a215ed73eabd7b5d75d0b50e31ab006286ccff9e00b8f", - "sha256:f979ab81f58d7318e064e99c4506445d60135ac5cd2e177a2de0089bfd4c9bd5" + "sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e", + "sha256:60723ce945c19328679790e3282cc758aa4a6040e4bb330f53d30fa546d44746" ], - "markers": "python_version >= '3.7'", - "version": "==2.2.2" + "markers": "python_version >= '3.9'", + "version": "==3.1.3" }, "wtforms": { "hashes": [ - "sha256:6b351bbb12dd58af57ffef05bc78425d08d1914e0fd68ee14143b7ade023c5bc", - "sha256:837f2f0e0ca79481b92884962b914eba4e72b7a2daaf1f939c890ed0124b834b" + "sha256:bf831c042829c8cdbad74c27575098d541d039b1faa74c771545ecac916f2c07", + "sha256:f8d76180d7239c94c6322f7990ae1216dae3659b7aa1cee94b6318bdffb474b9" ], - "markers": "python_version >= '3.7'", - "version": "==3.0.1" + "index": "pypi", + "version": "==3.1.2" } }, "develop": {} diff --git a/migrations/README b/migrations/README new file mode 100644 index 0000000000..0e04844159 --- /dev/null +++ b/migrations/README @@ -0,0 +1 @@ +Single-database configuration for Flask. diff --git a/migrations/alembic.ini b/migrations/alembic.ini new file mode 100644 index 0000000000..ec9d45c26a --- /dev/null +++ b/migrations/alembic.ini @@ -0,0 +1,50 @@ +# A generic, single database configuration. + +[alembic] +# template used to generate migration files +# file_template = %%(rev)s_%%(slug)s + +# set to 'true' to run the environment during +# the 'revision' command, regardless of autogenerate +# revision_environment = false + + +# Logging configuration +[loggers] +keys = root,sqlalchemy,alembic,flask_migrate + +[handlers] +keys = console + +[formatters] +keys = generic + +[logger_root] +level = WARN +handlers = console +qualname = + +[logger_sqlalchemy] +level = WARN +handlers = +qualname = sqlalchemy.engine + +[logger_alembic] +level = INFO +handlers = +qualname = alembic + +[logger_flask_migrate] +level = INFO +handlers = +qualname = flask_migrate + +[handler_console] +class = StreamHandler +args = (sys.stderr,) +level = NOTSET +formatter = generic + +[formatter_generic] +format = %(levelname)-5.5s [%(name)s] %(message)s +datefmt = %H:%M:%S diff --git a/migrations/env.py b/migrations/env.py new file mode 100644 index 0000000000..4c9709271b --- /dev/null +++ b/migrations/env.py @@ -0,0 +1,113 @@ +import logging +from logging.config import fileConfig + +from flask import current_app + +from alembic import context + +# this is the Alembic Config object, which provides +# access to the values within the .ini file in use. +config = context.config + +# Interpret the config file for Python logging. +# This line sets up loggers basically. +fileConfig(config.config_file_name) +logger = logging.getLogger('alembic.env') + + +def get_engine(): + try: + # this works with Flask-SQLAlchemy<3 and Alchemical + return current_app.extensions['migrate'].db.get_engine() + except (TypeError, AttributeError): + # this works with Flask-SQLAlchemy>=3 + return current_app.extensions['migrate'].db.engine + + +def get_engine_url(): + try: + return get_engine().url.render_as_string(hide_password=False).replace( + '%', '%%') + except AttributeError: + return str(get_engine().url).replace('%', '%%') + + +# add your model's MetaData object here +# for 'autogenerate' support +# from myapp import mymodel +# target_metadata = mymodel.Base.metadata +config.set_main_option('sqlalchemy.url', get_engine_url()) +target_db = current_app.extensions['migrate'].db + +# other values from the config, defined by the needs of env.py, +# can be acquired: +# my_important_option = config.get_main_option("my_important_option") +# ... etc. + + +def get_metadata(): + if hasattr(target_db, 'metadatas'): + return target_db.metadatas[None] + return target_db.metadata + + +def run_migrations_offline(): + """Run migrations in 'offline' mode. + + This configures the context with just a URL + and not an Engine, though an Engine is acceptable + here as well. By skipping the Engine creation + we don't even need a DBAPI to be available. + + Calls to context.execute() here emit the given string to the + script output. + + """ + url = config.get_main_option("sqlalchemy.url") + context.configure( + url=url, target_metadata=get_metadata(), literal_binds=True + ) + + with context.begin_transaction(): + context.run_migrations() + + +def run_migrations_online(): + """Run migrations in 'online' mode. + + In this scenario we need to create an Engine + and associate a connection with the context. + + """ + + # this callback is used to prevent an auto-migration from being generated + # when there are no changes to the schema + # reference: http://alembic.zzzcomputing.com/en/latest/cookbook.html + def process_revision_directives(context, revision, directives): + if getattr(config.cmd_opts, 'autogenerate', False): + script = directives[0] + if script.upgrade_ops.is_empty(): + directives[:] = [] + logger.info('No changes in schema detected.') + + conf_args = current_app.extensions['migrate'].configure_args + if conf_args.get("process_revision_directives") is None: + conf_args["process_revision_directives"] = process_revision_directives + + connectable = get_engine() + + with connectable.connect() as connection: + context.configure( + connection=connection, + target_metadata=get_metadata(), + **conf_args + ) + + with context.begin_transaction(): + context.run_migrations() + + +if context.is_offline_mode(): + run_migrations_offline() +else: + run_migrations_online() diff --git a/migrations/script.py.mako b/migrations/script.py.mako new file mode 100644 index 0000000000..2c0156303a --- /dev/null +++ b/migrations/script.py.mako @@ -0,0 +1,24 @@ +"""${message} + +Revision ID: ${up_revision} +Revises: ${down_revision | comma,n} +Create Date: ${create_date} + +""" +from alembic import op +import sqlalchemy as sa +${imports if imports else ""} + +# revision identifiers, used by Alembic. +revision = ${repr(up_revision)} +down_revision = ${repr(down_revision)} +branch_labels = ${repr(branch_labels)} +depends_on = ${repr(depends_on)} + + +def upgrade(): + ${upgrades if upgrades else "pass"} + + +def downgrade(): + ${downgrades if downgrades else "pass"} diff --git a/migrations/versions/3d144ee6747b_.py b/migrations/versions/3d144ee6747b_.py new file mode 100644 index 0000000000..3f7a4a6677 --- /dev/null +++ b/migrations/versions/3d144ee6747b_.py @@ -0,0 +1,35 @@ +"""empty message + +Revision ID: 3d144ee6747b +Revises: +Create Date: 2025-04-16 22:16:12.970825 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '3d144ee6747b' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('user', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('email', sa.String(length=120), nullable=False), + sa.Column('password', sa.String(length=80), nullable=False), + sa.Column('is_active', sa.Boolean(), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('email') + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('user') + # ### end Alembic commands ### diff --git a/migrations/versions/ac4353e4b230_.py b/migrations/versions/ac4353e4b230_.py new file mode 100644 index 0000000000..2bcd2df5d8 --- /dev/null +++ b/migrations/versions/ac4353e4b230_.py @@ -0,0 +1,87 @@ +"""empty message + +Revision ID: ac4353e4b230 +Revises: 3d144ee6747b +Create Date: 2025-04-16 22:24:18.414388 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'ac4353e4b230' +down_revision = '3d144ee6747b' +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('category', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=120), nullable=False), + sa.Column('description', sa.String(length=120), nullable=False), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('currency', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=120), nullable=False), + sa.Column('symbol', sa.String(length=120), nullable=False), + sa.Column('exchange_rate', sa.Float(), nullable=True), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('wallet', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=120), nullable=False), + sa.Column('total_value', sa.Integer(), nullable=False), + sa.Column('currency_id', sa.Integer(), nullable=False), + sa.Column('user_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['currency_id'], ['currency.id'], ), + sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('record', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('description', sa.String(length=120), nullable=False), + sa.Column('timestamp', sa.DateTime(), nullable=False), + sa.Column('amount', sa.Integer(), nullable=False), + sa.Column('type', sa.String(length=120), nullable=False), + sa.Column('category_id', sa.Integer(), nullable=False), + sa.Column('wallet_id', sa.Integer(), nullable=False), + sa.Column('user_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['category_id'], ['category.id'], ), + sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), + sa.ForeignKeyConstraint(['wallet_id'], ['wallet.id'], ), + sa.PrimaryKeyConstraint('id') + ) + with op.batch_alter_table('user', schema=None) as batch_op: + batch_op.add_column(sa.Column('name', sa.String(length=120), nullable=False)) + batch_op.add_column(sa.Column('phone', sa.String(length=40), nullable=False)) + batch_op.add_column(sa.Column('address', sa.String(length=120), nullable=False)) + batch_op.add_column(sa.Column('last_login', sa.DateTime(), nullable=False)) + batch_op.alter_column('password', + existing_type=sa.VARCHAR(length=80), + type_=sa.String(length=120), + existing_nullable=False) + + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('user', schema=None) as batch_op: + batch_op.alter_column('password', + existing_type=sa.String(length=120), + type_=sa.VARCHAR(length=80), + existing_nullable=False) + batch_op.drop_column('last_login') + batch_op.drop_column('address') + batch_op.drop_column('phone') + batch_op.drop_column('name') + + op.drop_table('record') + op.drop_table('wallet') + op.drop_table('currency') + op.drop_table('category') + # ### end Alembic commands ### diff --git a/src/api/admin.py b/src/api/admin.py index 3eecb64140..fc7a369481 100644 --- a/src/api/admin.py +++ b/src/api/admin.py @@ -1,7 +1,7 @@ import os from flask_admin import Admin -from .models import db, User +from .models import db, User, Record, Category, Currency, Wallet from flask_admin.contrib.sqla import ModelView def setup_admin(app): @@ -12,6 +12,11 @@ def setup_admin(app): # Add your models here, for example this is how we add a the User model to the admin admin.add_view(ModelView(User, db.session)) + admin.add_view(ModelView(Record, db.session)) + admin.add_view(ModelView(Category, db.session)) + admin.add_view(ModelView(Currency, db.session)) + admin.add_view(ModelView(Wallet, db.session)) + # You can duplicate that line to add mew models # admin.add_view(ModelView(YourModelName, db.session)) \ No newline at end of file diff --git a/src/api/models.py b/src/api/models.py index dccd8421ee..167f066edc 100644 --- a/src/api/models.py +++ b/src/api/models.py @@ -1,19 +1,109 @@ from flask_sqlalchemy import SQLAlchemy +from sqlalchemy import String, Boolean, ForeignKey, DateTime, Integer, Float +from sqlalchemy.orm import Mapped, mapped_column, relationship +from datetime import datetime, timezone db = SQLAlchemy() + class User(db.Model): - id = db.Column(db.Integer, primary_key=True) - email = db.Column(db.String(120), unique=True, nullable=False) - password = db.Column(db.String(80), unique=False, nullable=False) - is_active = db.Column(db.Boolean(), unique=False, nullable=False) + id: Mapped[int] = mapped_column(primary_key=True) + email: Mapped[str] = mapped_column(String(120), unique=True, nullable=False) + password: Mapped[str] = mapped_column(String(120), nullable=False) + name: Mapped[str] = mapped_column(String(120), nullable=False) + phone: Mapped[str] = mapped_column(String(40)) + address: Mapped[str] = mapped_column(String(120)) + last_login: Mapped[datetime] = mapped_column(DateTime, nullable=False, default=datetime.now(timezone.utc)) + is_active: Mapped[bool] = mapped_column(Boolean(), nullable=False, default=True) - def __repr__(self): - return f'' + wallets: Mapped[list["Wallet"]] = relationship(back_populates="user") + records: Mapped[list["Record"]] = relationship(back_populates="user") def serialize(self): return { "id": self.id, + "name": self.name, "email": self.email, - # do not serialize the password, its a security breach - } \ No newline at end of file + "phone": self.phone, + "address": self.address, + "last_login": self.last_login, + "is_active": self.is_active, + } + + +class Record(db.Model): + id: Mapped[int] = mapped_column(primary_key=True) + description: Mapped[str] = mapped_column(String(120), nullable=False) + timestamp: Mapped[datetime] = mapped_column(DateTime, nullable=False, default=datetime.now(timezone.utc)) + amount: Mapped[int] = mapped_column(Integer, nullable=False, default=0) + type: Mapped[str] = mapped_column(String(120)) + + category_id: Mapped[int] = mapped_column(ForeignKey("category.id"), nullable=False) + wallet_id: Mapped[int] = mapped_column(ForeignKey("wallet.id"), nullable=False) + user_id: Mapped[int] = mapped_column(ForeignKey("user.id"), nullable=False) + + category: Mapped["Category"] = relationship(back_populates="records") + wallet: Mapped["Wallet"] = relationship(back_populates="records") + user: Mapped["User"] = relationship(back_populates="records") + + def serialize(self): + return { + "id": self.id, + "description": self.description, + "timestamp": self.timestamp, + "amount": self.amount, + "type": self.type + } + + +class Category(db.Model): + id: Mapped[int] = mapped_column(primary_key=True) + name: Mapped[str] = mapped_column(String(120), nullable=False) + description: Mapped[str] = mapped_column(String(120), nullable=False) + + records: Mapped[list["Record"]] = relationship(back_populates="category") + + def serialize(self): + return { + "id": self.id, + "name": self.name, + "description": self.description + } + + +class Currency(db.Model): + id: Mapped[int] = mapped_column(primary_key=True) + name: Mapped[str] = mapped_column(String(120), nullable=False) + symbol: Mapped[str] = mapped_column(String(120), nullable=False) + exchange_rate: Mapped[float] = mapped_column(Float, nullable=True) + + wallets: Mapped[list["Wallet"]] = relationship(back_populates="currency") + + def serialize(self): + return { + "id": self.id, + "name": self.name, + "symbol": self.symbol, + "exchange_rate": self.exchange_rate + } + + +class Wallet(db.Model): + id: Mapped[int] = mapped_column(primary_key=True) + name: Mapped[str] = mapped_column(String(120), nullable=False) + total_value: Mapped[int] = mapped_column(nullable=False) + + currency_id: Mapped[int] = mapped_column(ForeignKey("currency.id"), nullable=False) + user_id: Mapped[int] = mapped_column(ForeignKey("user.id"), nullable=False) + + currency: Mapped["Currency"] = relationship(back_populates="wallets") + user: Mapped["User"] = relationship(back_populates="wallets") + records: Mapped[list["Record"]] = relationship(back_populates="wallet") + + def serialize(self): + return { + "id": self.id, + "name": self.name, + "balance": self.total_value, + "currency_id": self.currency_id + } From c63ba6bf214f80ef972274a6ee4cccc4020083aa Mon Sep 17 00:00:00 2001 From: rvarga09 <146484780+rvarga09@users.noreply.github.com> Date: Thu, 17 Apr 2025 01:52:48 +0000 Subject: [PATCH 02/11] dashboard1.0 --- .vscode/settings.json | 6 + Pipfile.lock | 636 ++++++++++++++------------- migrations/README | 1 + migrations/alembic.ini | 50 +++ migrations/env.py | 113 +++++ migrations/script.py.mako | 24 + migrations/versions/3bdee9c008a3_.py | 35 ++ src/front/js/component/Dashboard.jsx | 49 +++ src/front/js/pages/home.js | 80 +++- 9 files changed, 682 insertions(+), 312 deletions(-) create mode 100644 migrations/README create mode 100644 migrations/alembic.ini create mode 100644 migrations/env.py create mode 100644 migrations/script.py.mako create mode 100644 migrations/versions/3bdee9c008a3_.py create mode 100644 src/front/js/component/Dashboard.jsx diff --git a/.vscode/settings.json b/.vscode/settings.json index 24da33c3e2..7f1bff12d5 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,5 +3,11 @@ "editor.defaultFormatter": "esbenp.prettier-vscode", "workbench.editorAssociations": { "*.md": "vscode.markdown.preview.editor" + }, + "[javascript]": { + "editor.defaultFormatter": "vscode.typescript-language-features" + }, + "[javascriptreact]": { + "editor.defaultFormatter": "vscode.typescript-language-features" } } diff --git a/Pipfile.lock b/Pipfile.lock index a391864e9d..192c1a5ab8 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "74f92d76f687bb774828613a3a513123fe2ffdb429b95b351d29721dddfd3fb8" + "sha256": "4f0e9a772f04b621ff0313b7ecfa468af1526aa27df8bfcacac6955d499d352d" }, "pipfile-spec": 6, "requires": { @@ -18,73 +18,91 @@ "default": { "alembic": { "hashes": [ - "sha256:6880dec4f28dd7bd999d2ed13fbe7c9d4337700a44d11a524c0ce0c59aaf0dbd", - "sha256:e8a6ff9f3b1887e1fed68bfb8fb9a000d8f61c21bdcc85b67bb9f87fcbc4fce3" + "sha256:1c72391bbdeffccfe317eefba686cb9a3c078005478885413b95c3b26c57a8a7", + "sha256:2e76bd916d547f6900ec4bb5a90aeac1485d2c92536923d0b138c02b126edc53" ], - "markers": "python_version >= '3.7'", - "version": "==1.9.2" + "markers": "python_version >= '3.9'", + "version": "==1.15.2" + }, + "blinker": { + "hashes": [ + "sha256:b4ce2265a7abece45e7cc896e98dbebe6cead56bcf805a3d23136d145f5445bf", + "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc" + ], + "markers": "python_version >= '3.9'", + "version": "==1.9.0" }, "certifi": { "hashes": [ - "sha256:35824b4c3a97115964b408844d64aa14db1cc518f6562e8d7261699d1350a9e3", - "sha256:4ad3232f5e926d6718ec31cfc1fcadfde020920e278684144551c91769c7bc18" + "sha256:3d5da6925056f6f18f119200434a4780a94263f10d1c21d032a6f6b2baa20651", + "sha256:ca78db4565a652026a4db2bcdf68f2fb589ea80d0be70e03929ed730746b84fe" ], "markers": "python_version >= '3.6'", - "version": "==2022.12.7" + "version": "==2025.1.31" }, "click": { "hashes": [ - "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e", - "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48" + "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2", + "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a" ], "markers": "python_version >= '3.7'", - "version": "==8.1.3" + "version": "==8.1.8" }, "cloudinary": { "hashes": [ - "sha256:f52a1f5eb2c6820f13aa01c109caa5937ad3fd6caf5967817d0ef6c113403afc" + "sha256:8b2e5ac3f17068e79e58934b8836e6fea5d96536c1b85c3b4c3b9ebac44151ce", + "sha256:eb2dcf08f5fa69a1476dd357071d05089b9c8219617dacdb1cb1294719c7f633" ], "index": "pypi", - "version": "==1.31.0" + "version": "==1.44.0" }, "flask": { "hashes": [ - "sha256:642c450d19c4ad482f96729bd2a8f6d32554aa1e231f4f6b4e7e5264b16cca2b", - "sha256:b9c46cc36662a7949f34b52d8ec7bb59c0d74ba08ba6cb9ce9adc1d8676d9526" + "sha256:5f873c5184c897c8d9d1b05df1e3d01b14910ce69607a117bd3277098a5836ac", + "sha256:d667207822eb83f1c4b50949b1623c8fc8d51f2341d65f72e1a1815397551136" ], "index": "pypi", - "version": "==2.2.2" + "version": "==3.1.0" }, "flask-admin": { "hashes": [ - "sha256:424ffc79b7b0dfff051555686ea12e86e48dffacac14beaa319fb4502ac40988" + "sha256:24cae2af832b6a611a01d7dc35f42d266c1d6c75a426b869d8cb241b78233369", + "sha256:fd8190f1ec3355913a22739c46ed3623f1d82b8112cde324c60a6fc9b21c9406" ], "index": "pypi", - "version": "==1.6.0" + "version": "==1.6.1" }, "flask-cors": { "hashes": [ - "sha256:74efc975af1194fc7891ff5cd85b0f7478be4f7f59fe158102e91abb72bb4438", - "sha256:b60839393f3b84a0f3746f6cdca56c1ad7426aa738b70d6c61375857823181de" + "sha256:6ccb38d16d6b72bbc156c1c3f192bc435bfcc3c2bc864b2df1eb9b2d97b2403c", + "sha256:fa5cb364ead54bbf401a26dbf03030c6b18fb2fcaf70408096a572b409586b0c" + ], + "index": "pypi", + "version": "==5.0.1" + }, + "flask-jwt-extended": { + "hashes": [ + "sha256:63a28fc9731bcc6c4b8815b6f954b5904caa534fc2ae9b93b1d3ef12930dca95", + "sha256:9215d05a9413d3855764bcd67035e75819d23af2fafb6b55197eb5a3313fdfb2" ], "index": "pypi", - "version": "==3.0.10" + "version": "==4.6.0" }, "flask-migrate": { "hashes": [ - "sha256:8662a9dd391ce36deeaf3265987319c20fdb4c8a45306a32ba4f8224459abed4", - "sha256:a0062c8d3f32de02847086b46cfc389412f78c71c89a619ebd7097e89d72ea4b" + "sha256:1a336b06eb2c3ace005f5f2ded8641d534c18798d64061f6ff11f79e1434126d", + "sha256:24d8051af161782e0743af1b04a152d007bad9772b2bca67b7ec1e8ceeb3910d" ], "index": "pypi", - "version": "==4.0.3" + "version": "==4.1.0" }, "flask-sqlalchemy": { "hashes": [ - "sha256:2764335f3c9d7ebdc9ed6044afaf98aae9fa50d7a074cef55dde307ec95903ec", - "sha256:add5750b2f9cd10512995261ee2aa23fab85bd5626061aa3c564b33bb4aa780a" + "sha256:c5765e58ca145401b52106c0f46178569243c5da25556be2c231ecc60867c5b1", + "sha256:cabb6600ddd819a9f859f36515bb1bd8e7dbf30206cc679d2b081dff9e383283" ], "index": "pypi", - "version": "==3.0.3" + "version": "==3.0.5" }, "flask-swagger": { "hashes": [ @@ -96,304 +114,328 @@ }, "greenlet": { "hashes": [ - "sha256:03a8f4f3430c3b3ff8d10a2a86028c660355ab637cee9333d63d66b56f09d52a", - "sha256:0bf60faf0bc2468089bdc5edd10555bab6e85152191df713e2ab1fcc86382b5a", - "sha256:18a7f18b82b52ee85322d7a7874e676f34ab319b9f8cce5de06067384aa8ff43", - "sha256:18e98fb3de7dba1c0a852731c3070cf022d14f0d68b4c87a19cc1016f3bb8b33", - "sha256:1a819eef4b0e0b96bb0d98d797bef17dc1b4a10e8d7446be32d1da33e095dbb8", - "sha256:26fbfce90728d82bc9e6c38ea4d038cba20b7faf8a0ca53a9c07b67318d46088", - "sha256:2780572ec463d44c1d3ae850239508dbeb9fed38e294c68d19a24d925d9223ca", - "sha256:283737e0da3f08bd637b5ad058507e578dd462db259f7f6e4c5c365ba4ee9343", - "sha256:2d4686f195e32d36b4d7cf2d166857dbd0ee9f3d20ae349b6bf8afc8485b3645", - "sha256:2dd11f291565a81d71dab10b7033395b7a3a5456e637cf997a6f33ebdf06f8db", - "sha256:30bcf80dda7f15ac77ba5af2b961bdd9dbc77fd4ac6105cee85b0d0a5fcf74df", - "sha256:32e5b64b148966d9cccc2c8d35a671409e45f195864560829f395a54226408d3", - "sha256:36abbf031e1c0f79dd5d596bfaf8e921c41df2bdf54ee1eed921ce1f52999a86", - "sha256:3a06ad5312349fec0ab944664b01d26f8d1f05009566339ac6f63f56589bc1a2", - "sha256:3a51c9751078733d88e013587b108f1b7a1fb106d402fb390740f002b6f6551a", - "sha256:3c9b12575734155d0c09d6c3e10dbd81665d5c18e1a7c6597df72fd05990c8cf", - "sha256:3f6ea9bd35eb450837a3d80e77b517ea5bc56b4647f5502cd28de13675ee12f7", - "sha256:4b58adb399c4d61d912c4c331984d60eb66565175cdf4a34792cd9600f21b394", - "sha256:4d2e11331fc0c02b6e84b0d28ece3a36e0548ee1a1ce9ddde03752d9b79bba40", - "sha256:5454276c07d27a740c5892f4907c86327b632127dd9abec42ee62e12427ff7e3", - "sha256:561091a7be172ab497a3527602d467e2b3fbe75f9e783d8b8ce403fa414f71a6", - "sha256:6c3acb79b0bfd4fe733dff8bc62695283b57949ebcca05ae5c129eb606ff2d74", - "sha256:703f18f3fda276b9a916f0934d2fb6d989bf0b4fb5a64825260eb9bfd52d78f0", - "sha256:7492e2b7bd7c9b9916388d9df23fa49d9b88ac0640db0a5b4ecc2b653bf451e3", - "sha256:76ae285c8104046b3a7f06b42f29c7b73f77683df18c49ab5af7983994c2dd91", - "sha256:7cafd1208fdbe93b67c7086876f061f660cfddc44f404279c1585bbf3cdc64c5", - "sha256:7efde645ca1cc441d6dc4b48c0f7101e8d86b54c8530141b09fd31cef5149ec9", - "sha256:88d9ab96491d38a5ab7c56dd7a3cc37d83336ecc564e4e8816dbed12e5aaefc8", - "sha256:8eab883b3b2a38cc1e050819ef06a7e6344d4a990d24d45bc6f2cf959045a45b", - "sha256:910841381caba4f744a44bf81bfd573c94e10b3045ee00de0cbf436fe50673a6", - "sha256:9190f09060ea4debddd24665d6804b995a9c122ef5917ab26e1566dcc712ceeb", - "sha256:937e9020b514ceedb9c830c55d5c9872abc90f4b5862f89c0887033ae33c6f73", - "sha256:94c817e84245513926588caf1152e3b559ff794d505555211ca041f032abbb6b", - "sha256:971ce5e14dc5e73715755d0ca2975ac88cfdaefcaab078a284fea6cfabf866df", - "sha256:9d14b83fab60d5e8abe587d51c75b252bcc21683f24699ada8fb275d7712f5a9", - "sha256:9f35ec95538f50292f6d8f2c9c9f8a3c6540bbfec21c9e5b4b751e0a7c20864f", - "sha256:a1846f1b999e78e13837c93c778dcfc3365902cfb8d1bdb7dd73ead37059f0d0", - "sha256:acd2162a36d3de67ee896c43effcd5ee3de247eb00354db411feb025aa319857", - "sha256:b0ef99cdbe2b682b9ccbb964743a6aca37905fda5e0452e5ee239b1654d37f2a", - "sha256:b80f600eddddce72320dbbc8e3784d16bd3fb7b517e82476d8da921f27d4b249", - "sha256:b864ba53912b6c3ab6bcb2beb19f19edd01a6bfcbdfe1f37ddd1778abfe75a30", - "sha256:b9ec052b06a0524f0e35bd8790686a1da006bd911dd1ef7d50b77bfbad74e292", - "sha256:ba2956617f1c42598a308a84c6cf021a90ff3862eddafd20c3333d50f0edb45b", - "sha256:bdfea8c661e80d3c1c99ad7c3ff74e6e87184895bbaca6ee8cc61209f8b9b85d", - "sha256:be4ed120b52ae4d974aa40215fcdfde9194d63541c7ded40ee12eb4dda57b76b", - "sha256:c4302695ad8027363e96311df24ee28978162cdcdd2006476c43970b384a244c", - "sha256:c48f54ef8e05f04d6eff74b8233f6063cb1ed960243eacc474ee73a2ea8573ca", - "sha256:c9c59a2120b55788e800d82dfa99b9e156ff8f2227f07c5e3012a45a399620b7", - "sha256:cd021c754b162c0fb55ad5d6b9d960db667faad0fa2ff25bb6e1301b0b6e6a75", - "sha256:d27ec7509b9c18b6d73f2f5ede2622441de812e7b1a80bbd446cb0633bd3d5ae", - "sha256:d5508f0b173e6aa47273bdc0a0b5ba055b59662ba7c7ee5119528f466585526b", - "sha256:d75209eed723105f9596807495d58d10b3470fa6732dd6756595e89925ce2470", - "sha256:db1a39669102a1d8d12b57de2bb7e2ec9066a6f2b3da35ae511ff93b01b5d564", - "sha256:dbfcfc0218093a19c252ca8eb9aee3d29cfdcb586df21049b9d777fd32c14fd9", - "sha256:e0f72c9ddb8cd28532185f54cc1453f2c16fb417a08b53a855c4e6a418edd099", - "sha256:e7c8dc13af7db097bed64a051d2dd49e9f0af495c26995c00a9ee842690d34c0", - "sha256:ea9872c80c132f4663822dd2a08d404073a5a9b5ba6155bea72fb2a79d1093b5", - "sha256:eff4eb9b7eb3e4d0cae3d28c283dc16d9bed6b193c2e1ace3ed86ce48ea8df19", - "sha256:f82d4d717d8ef19188687aa32b8363e96062911e63ba22a0cff7802a8e58e5f1", - "sha256:fc3a569657468b6f3fb60587e48356fe512c1754ca05a564f11366ac9e306526" + "sha256:0010e928e1901d36625f21d008618273f9dda26b516dbdecf873937d39c9dff0", + "sha256:04e781447a4722e30b4861af728cb878d73a3df79509dc19ea498090cea5d204", + "sha256:0e14541f9024a280adb9645143d6a0a51fda6f7c5695fd96cb4d542bb563442f", + "sha256:144283ad88ed77f3ebd74710dd419b55dd15d18704b0ae05935766a93f5671c5", + "sha256:17fd241c0d50bacb7ce8ff77a30f94a2d0ca69434ba2e0187cf95a5414aeb7e1", + "sha256:18adc14ab154ca6e53eecc9dc50ff17aeb7ba70b7e14779b26e16d71efa90038", + "sha256:199453d64b02d0c9d139e36d29681efd0e407ed8e2c0bf89d88878d6a787c28f", + "sha256:1cf89e2d92bae0d7e2d6093ce0bed26feeaf59a5d588e3984e35fcd46fc41090", + "sha256:1d2d43bd711a43db8d9b9187500e6432ddb4fafe112d082ffabca8660a9e01a7", + "sha256:1dcb1108449b55ff6bc0edac9616468f71db261a4571f27c47ccf3530a7f8b97", + "sha256:211a9721f540e454a02e62db7956263e9a28a6cf776d4b9a7213844e36426333", + "sha256:23f56a0103deb5570c8d6a0bb4ddf8a7a28931973ad7ed7a883460a67e599b32", + "sha256:2688b3bd3198cc4bad7a79648a95fee088c24a0f6abd05d3639e6c3040ded015", + "sha256:2919b126eeb63ca5fa971501cd20cd6cdb5522369a8e39548bbc73a3e10b8b41", + "sha256:29449a2b82ed7ce11f8668c31ef20d31e9d88cd8329eb933098fab5a8608a93a", + "sha256:2b986f1a6467710e7ffeeeac1777da0318c95bbfcc467acbd0bd35abc775f558", + "sha256:33ea7e7269d6f7275ce31f593d6dcfedd97539c01f63fbdc8d84e493e20b1b2c", + "sha256:397b6bbda06f8fe895893d96218cd6f6d855a6701dc45012ebe12262423cec8b", + "sha256:39801e633a978c3f829f21022501e7b0c3872683d7495c1850558d1a6fb95ed0", + "sha256:4174fa6fa214e8924cedf332b6f2395ba2b9879f250dacd3c361b2fca86f58af", + "sha256:430cba962c85e339767235a93450a6aaffed6f9c567e73874ea2075f5aae51e1", + "sha256:47aeadd1e8fbdef8fdceb8fb4edc0cbb398a57568d56fd68f2bc00d0d809e6b6", + "sha256:58ef3d637c54e2f079064ca936556c4af3989144e4154d80cfd4e2a59fc3769c", + "sha256:598da3bd464c2cc411b723e3d4afc27b13c219ac077ba897bac88443ae45f5ec", + "sha256:5be69cd50994b8465c3ad1467f9e63001f76e53a89440ad4440d1b6d52591280", + "sha256:5e57ff52315bfc0c5493917f328b8ba3ae0c0515d94524453c4d24e7638cbb53", + "sha256:6005f7a86de836a1dc4b8d824a2339cdd5a1ca7cb1af55ea92575401f9952f4c", + "sha256:6017a4d430fad5229e397ad464db504ae70cb7b903757c4688cee6c25d6ce8d8", + "sha256:60e77242e38e99ecaede853755bbd8165e0b20a2f1f3abcaa6f0dceb826a7411", + "sha256:6fad8a9ca98b37951a053d7d2d2553569b151cd8c4ede744806b94d50d7f8f73", + "sha256:7154b13ef87a8b62fc05419f12d75532d7783586ad016c57b5de8a1c6feeb517", + "sha256:78b721dfadc60e3639141c0e1f19d23953c5b4b98bfcaf04ce40f79e4f01751c", + "sha256:7b162de2fb61b4c7f4b5d749408bf3280cae65db9b5a6aaf7f922ac829faa67c", + "sha256:7b17a26abc6a1890bf77d5d6b71c0999705386b00060d15c10b8182679ff2790", + "sha256:7d08b88ee8d506ca1f5b2a58744e934d33c6a1686dd83b81e7999dfc704a912f", + "sha256:7f163d04f777e7bd229a50b937ecc1ae2a5b25296e6001445e5433e4f51f5191", + "sha256:7fee6f518868e8206c617f4084a83ad4d7a3750b541bf04e692dfa02e52e805d", + "sha256:82a68a25a08f51fc8b66b113d1d9863ee123cdb0e8f1439aed9fc795cd6f85cf", + "sha256:844acfd479ee380f3810415e682c9ee941725fb90b45e139bb7fd6f85c6c9a30", + "sha256:8a8940a8d301828acd8b9f3f85db23069a692ff2933358861b19936e29946b95", + "sha256:8b3538711e7c0efd5f7a8fc1096c4db9598d6ed99dc87286b31e4ce9f8a8da67", + "sha256:8fd2583024ff6cd5d4f842d446d001de4c4fe1264fdb5f28ddea28f6488866df", + "sha256:a0bc5776ac2831c022e029839bf1b9d3052332dcf5f431bb88c8503e27398e31", + "sha256:b2392cc41eeed4055978c6b52549ccd9effd263bb780ffd639c0e1e7e2055ab0", + "sha256:b7a7b7f2bad3ca72eb2fa14643f1c4ca11d115614047299d89bc24a3b11ddd09", + "sha256:b86a3ccc865ae601f446af042707b749eebc297928ea7bd0c5f60c56525850be", + "sha256:b99de16560097b9984409ded0032f101f9555e1ab029440fc6a8b5e76dbba7ac", + "sha256:cd37273dc7ca1d5da149b58c8b3ce0711181672ba1b09969663905a765affe21", + "sha256:ce531d7c424ef327a391de7a9777a6c93a38e1f89e18efa903a1c4ba11f85905", + "sha256:d3f32d7c70b1c26844fd0e4e56a1da852b493e4e1c30df7b07274a1e5a9b599e", + "sha256:d97bc1be4bad83b70d8b8627ada6724091af41139616696e59b7088f358583b9", + "sha256:e61d426969b68b2170a9f853cc36d5318030494576e9ec0bfe2dc2e2afa15a68", + "sha256:e8622b33d8694ec373ad55050c3d4e49818132b44852158442e1931bb02af336", + "sha256:e8ac9a2c20fbff3d0b853e9ef705cdedb70d9276af977d1ec1cde86a87a4c821", + "sha256:ee59db626760f1ca8da697a086454210d36a19f7abecc9922a2374c04b47735b" ], "markers": "python_version >= '3' and platform_machine == 'aarch64' or (platform_machine == 'ppc64le' or (platform_machine == 'x86_64' or (platform_machine == 'amd64' or (platform_machine == 'AMD64' or (platform_machine == 'win32' or platform_machine == 'WIN32')))))", - "version": "==2.0.2" + "version": "==3.2.0" }, "gunicorn": { "hashes": [ - "sha256:9dcc4547dbb1cb284accfb15ab5667a0e5d1881cc443e0677b4882a4067a807e", - "sha256:e0a968b5ba15f8a328fdfd7ab1fcb5af4470c28aaf7e55df02a99bc13138e6e8" + "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d", + "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec" ], "index": "pypi", - "version": "==20.1.0" + "version": "==23.0.0" }, "itsdangerous": { "hashes": [ - "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44", - "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a" + "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef", + "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173" ], - "markers": "python_version >= '3.7'", - "version": "==2.1.2" + "markers": "python_version >= '3.8'", + "version": "==2.2.0" }, "jinja2": { "hashes": [ - "sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852", - "sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61" + "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d", + "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67" ], "markers": "python_version >= '3.7'", - "version": "==3.1.2" + "version": "==3.1.6" }, "mako": { "hashes": [ - "sha256:c97c79c018b9165ac9922ae4f32da095ffd3c4e6872b45eded42926deea46818", - "sha256:d60a3903dc3bb01a18ad6a89cdbe2e4eadc69c0bc8ef1e3773ba53d44c3f7a34" + "sha256:99579a6f39583fa7e5630a28c3c1f440e4e97a414b80372649c0ce338da2ea28", + "sha256:baef24a52fc4fc514a0887ac600f9f1cff3d82c61d4d700a1fa84d597b88db59" ], - "markers": "python_version >= '3.7'", - "version": "==1.2.4" + "markers": "python_version >= '3.8'", + "version": "==1.3.10" }, "markupsafe": { "hashes": [ - "sha256:0576fe974b40a400449768941d5d0858cc624e3249dfd1e0c33674e5c7ca7aed", - "sha256:085fd3201e7b12809f9e6e9bc1e5c96a368c8523fad5afb02afe3c051ae4afcc", - "sha256:090376d812fb6ac5f171e5938e82e7f2d7adc2b629101cec0db8b267815c85e2", - "sha256:0b462104ba25f1ac006fdab8b6a01ebbfbce9ed37fd37fd4acd70c67c973e460", - "sha256:137678c63c977754abe9086a3ec011e8fd985ab90631145dfb9294ad09c102a7", - "sha256:1bea30e9bf331f3fef67e0a3877b2288593c98a21ccb2cf29b74c581a4eb3af0", - "sha256:22152d00bf4a9c7c83960521fc558f55a1adbc0631fbb00a9471e097b19d72e1", - "sha256:22731d79ed2eb25059ae3df1dfc9cb1546691cc41f4e3130fe6bfbc3ecbbecfa", - "sha256:2298c859cfc5463f1b64bd55cb3e602528db6fa0f3cfd568d3605c50678f8f03", - "sha256:28057e985dace2f478e042eaa15606c7efccb700797660629da387eb289b9323", - "sha256:2e7821bffe00aa6bd07a23913b7f4e01328c3d5cc0b40b36c0bd81d362faeb65", - "sha256:2ec4f2d48ae59bbb9d1f9d7efb9236ab81429a764dedca114f5fdabbc3788013", - "sha256:340bea174e9761308703ae988e982005aedf427de816d1afe98147668cc03036", - "sha256:40627dcf047dadb22cd25ea7ecfe9cbf3bbbad0482ee5920b582f3809c97654f", - "sha256:40dfd3fefbef579ee058f139733ac336312663c6706d1163b82b3003fb1925c4", - "sha256:4cf06cdc1dda95223e9d2d3c58d3b178aa5dacb35ee7e3bbac10e4e1faacb419", - "sha256:50c42830a633fa0cf9e7d27664637532791bfc31c731a87b202d2d8ac40c3ea2", - "sha256:55f44b440d491028addb3b88f72207d71eeebfb7b5dbf0643f7c023ae1fba619", - "sha256:608e7073dfa9e38a85d38474c082d4281f4ce276ac0010224eaba11e929dd53a", - "sha256:63ba06c9941e46fa389d389644e2d8225e0e3e5ebcc4ff1ea8506dce646f8c8a", - "sha256:65608c35bfb8a76763f37036547f7adfd09270fbdbf96608be2bead319728fcd", - "sha256:665a36ae6f8f20a4676b53224e33d456a6f5a72657d9c83c2aa00765072f31f7", - "sha256:6d6607f98fcf17e534162f0709aaad3ab7a96032723d8ac8750ffe17ae5a0666", - "sha256:7313ce6a199651c4ed9d7e4cfb4aa56fe923b1adf9af3b420ee14e6d9a73df65", - "sha256:7668b52e102d0ed87cb082380a7e2e1e78737ddecdde129acadb0eccc5423859", - "sha256:7df70907e00c970c60b9ef2938d894a9381f38e6b9db73c5be35e59d92e06625", - "sha256:7e007132af78ea9df29495dbf7b5824cb71648d7133cf7848a2a5dd00d36f9ff", - "sha256:835fb5e38fd89328e9c81067fd642b3593c33e1e17e2fdbf77f5676abb14a156", - "sha256:8bca7e26c1dd751236cfb0c6c72d4ad61d986e9a41bbf76cb445f69488b2a2bd", - "sha256:8db032bf0ce9022a8e41a22598eefc802314e81b879ae093f36ce9ddf39ab1ba", - "sha256:99625a92da8229df6d44335e6fcc558a5037dd0a760e11d84be2260e6f37002f", - "sha256:9cad97ab29dfc3f0249b483412c85c8ef4766d96cdf9dcf5a1e3caa3f3661cf1", - "sha256:a4abaec6ca3ad8660690236d11bfe28dfd707778e2442b45addd2f086d6ef094", - "sha256:a6e40afa7f45939ca356f348c8e23048e02cb109ced1eb8420961b2f40fb373a", - "sha256:a6f2fcca746e8d5910e18782f976489939d54a91f9411c32051b4aab2bd7c513", - "sha256:a806db027852538d2ad7555b203300173dd1b77ba116de92da9afbc3a3be3eed", - "sha256:abcabc8c2b26036d62d4c746381a6f7cf60aafcc653198ad678306986b09450d", - "sha256:b8526c6d437855442cdd3d87eede9c425c4445ea011ca38d937db299382e6fa3", - "sha256:bb06feb762bade6bf3c8b844462274db0c76acc95c52abe8dbed28ae3d44a147", - "sha256:c0a33bc9f02c2b17c3ea382f91b4db0e6cde90b63b296422a939886a7a80de1c", - "sha256:c4a549890a45f57f1ebf99c067a4ad0cb423a05544accaf2b065246827ed9603", - "sha256:ca244fa73f50a800cf8c3ebf7fd93149ec37f5cb9596aa8873ae2c1d23498601", - "sha256:cf877ab4ed6e302ec1d04952ca358b381a882fbd9d1b07cccbfd61783561f98a", - "sha256:d9d971ec1e79906046aa3ca266de79eac42f1dbf3612a05dc9368125952bd1a1", - "sha256:da25303d91526aac3672ee6d49a2f3db2d9502a4a60b55519feb1a4c7714e07d", - "sha256:e55e40ff0cc8cc5c07996915ad367fa47da6b3fc091fdadca7f5403239c5fec3", - "sha256:f03a532d7dee1bed20bc4884194a16160a2de9ffc6354b3878ec9682bb623c54", - "sha256:f1cd098434e83e656abf198f103a8207a8187c0fc110306691a2e94a78d0abb2", - "sha256:f2bfb563d0211ce16b63c7cb9395d2c682a23187f54c3d79bfec33e6705473c6", - "sha256:f8ffb705ffcf5ddd0e80b65ddf7bed7ee4f5a441ea7d3419e861a12eaf41af58" + "sha256:0bff5e0ae4ef2e1ae4fdf2dfd5b76c75e5c2fa4132d05fc1b0dabcd20c7e28c4", + "sha256:0f4ca02bea9a23221c0182836703cbf8930c5e9454bacce27e767509fa286a30", + "sha256:1225beacc926f536dc82e45f8a4d68502949dc67eea90eab715dea3a21c1b5f0", + "sha256:131a3c7689c85f5ad20f9f6fb1b866f402c445b220c19fe4308c0b147ccd2ad9", + "sha256:15ab75ef81add55874e7ab7055e9c397312385bd9ced94920f2802310c930396", + "sha256:1a9d3f5f0901fdec14d8d2f66ef7d035f2157240a433441719ac9a3fba440b13", + "sha256:1c99d261bd2d5f6b59325c92c73df481e05e57f19837bdca8413b9eac4bd8028", + "sha256:1e084f686b92e5b83186b07e8a17fc09e38fff551f3602b249881fec658d3eca", + "sha256:2181e67807fc2fa785d0592dc2d6206c019b9502410671cc905d132a92866557", + "sha256:2cb8438c3cbb25e220c2ab33bb226559e7afb3baec11c4f218ffa7308603c832", + "sha256:3169b1eefae027567d1ce6ee7cae382c57fe26e82775f460f0b2778beaad66c0", + "sha256:3809ede931876f5b2ec92eef964286840ed3540dadf803dd570c3b7e13141a3b", + "sha256:38a9ef736c01fccdd6600705b09dc574584b89bea478200c5fbf112a6b0d5579", + "sha256:3d79d162e7be8f996986c064d1c7c817f6df3a77fe3d6859f6f9e7be4b8c213a", + "sha256:444dcda765c8a838eaae23112db52f1efaf750daddb2d9ca300bcae1039adc5c", + "sha256:48032821bbdf20f5799ff537c7ac3d1fba0ba032cfc06194faffa8cda8b560ff", + "sha256:4aa4e5faecf353ed117801a068ebab7b7e09ffb6e1d5e412dc852e0da018126c", + "sha256:52305740fe773d09cffb16f8ed0427942901f00adedac82ec8b67752f58a1b22", + "sha256:569511d3b58c8791ab4c2e1285575265991e6d8f8700c7be0e88f86cb0672094", + "sha256:57cb5a3cf367aeb1d316576250f65edec5bb3be939e9247ae594b4bcbc317dfb", + "sha256:5b02fb34468b6aaa40dfc198d813a641e3a63b98c2b05a16b9f80b7ec314185e", + "sha256:6381026f158fdb7c72a168278597a5e3a5222e83ea18f543112b2662a9b699c5", + "sha256:6af100e168aa82a50e186c82875a5893c5597a0c1ccdb0d8b40240b1f28b969a", + "sha256:6c89876f41da747c8d3677a2b540fb32ef5715f97b66eeb0c6b66f5e3ef6f59d", + "sha256:6e296a513ca3d94054c2c881cc913116e90fd030ad1c656b3869762b754f5f8a", + "sha256:70a87b411535ccad5ef2f1df5136506a10775d267e197e4cf531ced10537bd6b", + "sha256:7e94c425039cde14257288fd61dcfb01963e658efbc0ff54f5306b06054700f8", + "sha256:846ade7b71e3536c4e56b386c2a47adf5741d2d8b94ec9dc3e92e5e1ee1e2225", + "sha256:88416bd1e65dcea10bc7569faacb2c20ce071dd1f87539ca2ab364bf6231393c", + "sha256:88b49a3b9ff31e19998750c38e030fc7bb937398b1f78cfa599aaef92d693144", + "sha256:8c4e8c3ce11e1f92f6536ff07154f9d49677ebaaafc32db9db4620bc11ed480f", + "sha256:8e06879fc22a25ca47312fbe7c8264eb0b662f6db27cb2d3bbbc74b1df4b9b87", + "sha256:9025b4018f3a1314059769c7bf15441064b2207cb3f065e6ea1e7359cb46db9d", + "sha256:93335ca3812df2f366e80509ae119189886b0f3c2b81325d39efdb84a1e2ae93", + "sha256:9778bd8ab0a994ebf6f84c2b949e65736d5575320a17ae8984a77fab08db94cf", + "sha256:9e2d922824181480953426608b81967de705c3cef4d1af983af849d7bd619158", + "sha256:a123e330ef0853c6e822384873bef7507557d8e4a082961e1defa947aa59ba84", + "sha256:a904af0a6162c73e3edcb969eeeb53a63ceeb5d8cf642fade7d39e7963a22ddb", + "sha256:ad10d3ded218f1039f11a75f8091880239651b52e9bb592ca27de44eed242a48", + "sha256:b424c77b206d63d500bcb69fa55ed8d0e6a3774056bdc4839fc9298a7edca171", + "sha256:b5a6b3ada725cea8a5e634536b1b01c30bcdcd7f9c6fff4151548d5bf6b3a36c", + "sha256:ba8062ed2cf21c07a9e295d5b8a2a5ce678b913b45fdf68c32d95d6c1291e0b6", + "sha256:ba9527cdd4c926ed0760bc301f6728ef34d841f405abf9d4f959c478421e4efd", + "sha256:bbcb445fa71794da8f178f0f6d66789a28d7319071af7a496d4d507ed566270d", + "sha256:bcf3e58998965654fdaff38e58584d8937aa3096ab5354d493c77d1fdd66d7a1", + "sha256:c0ef13eaeee5b615fb07c9a7dadb38eac06a0608b41570d8ade51c56539e509d", + "sha256:cabc348d87e913db6ab4aa100f01b08f481097838bdddf7c7a84b7575b7309ca", + "sha256:cdb82a876c47801bb54a690c5ae105a46b392ac6099881cdfb9f6e95e4014c6a", + "sha256:cfad01eed2c2e0c01fd0ecd2ef42c492f7f93902e39a42fc9ee1692961443a29", + "sha256:d16a81a06776313e817c951135cf7340a3e91e8c1ff2fac444cfd75fffa04afe", + "sha256:d8213e09c917a951de9d09ecee036d5c7d36cb6cb7dbaece4c71a60d79fb9798", + "sha256:e07c3764494e3776c602c1e78e298937c3315ccc9043ead7e685b7f2b8d47b3c", + "sha256:e17c96c14e19278594aa4841ec148115f9c7615a47382ecb6b82bd8fea3ab0c8", + "sha256:e444a31f8db13eb18ada366ab3cf45fd4b31e4db1236a4448f68778c1d1a5a2f", + "sha256:e6a2a455bd412959b57a172ce6328d2dd1f01cb2135efda2e4576e8a23fa3b0f", + "sha256:eaa0a10b7f72326f1372a713e73c3f739b524b3af41feb43e4921cb529f5929a", + "sha256:eb7972a85c54febfb25b5c4b4f3af4dcc731994c7da0d8a0b4a6eb0640e1d178", + "sha256:ee55d3edf80167e48ea11a923c7386f4669df67d7994554387f84e7d8b0a2bf0", + "sha256:f3818cb119498c0678015754eba762e0d61e5b52d34c8b13d770f0719f7b1d79", + "sha256:f8b3d067f2e40fe93e1ccdd6b2e1d16c43140e76f02fb1319a05cf2b79d99430", + "sha256:fcabf5ff6eea076f859677f5f0b6b5c1a51e70a376b0579e0eadef8db48c6b50" ], - "markers": "python_version >= '3.7'", - "version": "==2.1.2" + "markers": "python_version >= '3.9'", + "version": "==3.0.2" + }, + "packaging": { + "hashes": [ + "sha256:09abb1bccd265c01f4a3aa3f7a7db064b36514d2cba19a2f694fe6150451a759", + "sha256:c228a6dc5e932d346bc5739379109d49e8853dd8223571c7c5b55260edc0b97f" + ], + "markers": "python_version >= '3.8'", + "version": "==24.2" }, "psycopg2-binary": { "hashes": [ - "sha256:00475004e5ed3e3bf5e056d66e5dcdf41a0dc62efcd57997acd9135c40a08a50", - "sha256:01ad49d68dd8c5362e4bfb4158f2896dc6e0c02e87b8a3770fc003459f1a4425", - "sha256:024030b13bdcbd53d8a93891a2cf07719715724fc9fee40243f3bd78b4264b8f", - "sha256:02551647542f2bf89073d129c73c05a25c372fc0a49aa50e0de65c3c143d8bd0", - "sha256:043a9fd45a03858ff72364b4b75090679bd875ee44df9c0613dc862ca6b98460", - "sha256:05b3d479425e047c848b9782cd7aac9c6727ce23181eb9647baf64ffdfc3da41", - "sha256:0775d6252ccb22b15da3b5d7adbbf8cfe284916b14b6dc0ff503a23edb01ee85", - "sha256:1764546ffeaed4f9428707be61d68972eb5ede81239b46a45843e0071104d0dd", - "sha256:1e491e6489a6cb1d079df8eaa15957c277fdedb102b6a68cfbf40c4994412fd0", - "sha256:212757ffcecb3e1a5338d4e6761bf9c04f750e7d027117e74aa3cd8a75bb6fbd", - "sha256:215d6bf7e66732a514f47614f828d8c0aaac9a648c46a831955cb103473c7147", - "sha256:25382c7d174c679ce6927c16b6fbb68b10e56ee44b1acb40671e02d29f2fce7c", - "sha256:2abccab84d057723d2ca8f99ff7b619285d40da6814d50366f61f0fc385c3903", - "sha256:2d964eb24c8b021623df1c93c626671420c6efadbdb8655cb2bd5e0c6fa422ba", - "sha256:2ec46ed947801652c9643e0b1dc334cfb2781232e375ba97312c2fc256597632", - "sha256:2ef892cabdccefe577088a79580301f09f2a713eb239f4f9f62b2b29cafb0577", - "sha256:33e632d0885b95a8b97165899006c40e9ecdc634a529dca7b991eb7de4ece41c", - "sha256:3520d7af1ebc838cc6084a3281145d5cd5bdd43fdef139e6db5af01b92596cb7", - "sha256:3d790f84201c3698d1bfb404c917f36e40531577a6dda02e45ba29b64d539867", - "sha256:3fc33295cfccad697a97a76dec3f1e94ad848b7b163c3228c1636977966b51e2", - "sha256:422e3d43b47ac20141bc84b3d342eead8d8099a62881a501e97d15f6addabfe9", - "sha256:426c2ae999135d64e6a18849a7d1ad0e1bd007277e4a8f4752eaa40a96b550ff", - "sha256:46512486be6fbceef51d7660dec017394ba3e170299d1dc30928cbedebbf103a", - "sha256:46850a640df62ae940e34a163f72e26aca1f88e2da79148e1862faaac985c302", - "sha256:484405b883630f3e74ed32041a87456c5e0e63a8e3429aa93e8714c366d62bd1", - "sha256:4e7904d1920c0c89105c0517dc7e3f5c20fb4e56ba9cdef13048db76947f1d79", - "sha256:56b2957a145f816726b109ee3d4e6822c23f919a7d91af5a94593723ed667835", - "sha256:5c6527c8efa5226a9e787507652dd5ba97b62d29b53c371a85cd13f957fe4d42", - "sha256:5cbc554ba47ecca8cd3396ddaca85e1ecfe3e48dd57dc5e415e59551affe568e", - "sha256:5d28ecdf191db558d0c07d0f16524ee9d67896edf2b7990eea800abeb23ebd61", - "sha256:5fc447058d083b8c6ac076fc26b446d44f0145308465d745fba93a28c14c9e32", - "sha256:63e318dbe52709ed10d516a356f22a635e07a2e34c68145484ed96a19b0c4c68", - "sha256:68d81a2fe184030aa0c5c11e518292e15d342a667184d91e30644c9d533e53e1", - "sha256:6e63814ec71db9bdb42905c925639f319c80e7909fb76c3b84edc79dadef8d60", - "sha256:6f8a9bcab7b6db2e3dbf65b214dfc795b4c6b3bb3af922901b6a67f7cb47d5f8", - "sha256:70831e03bd53702c941da1a1ad36c17d825a24fbb26857b40913d58df82ec18b", - "sha256:74eddec4537ab1f701a1647214734bc52cee2794df748f6ae5908e00771f180a", - "sha256:7b3751857da3e224f5629400736a7b11e940b5da5f95fa631d86219a1beaafec", - "sha256:7cf1d44e710ca3a9ce952bda2855830fe9f9017ed6259e01fcd71ea6287565f5", - "sha256:7d07f552d1e412f4b4e64ce386d4c777a41da3b33f7098b6219012ba534fb2c2", - "sha256:7d88db096fa19d94f433420eaaf9f3c45382da2dd014b93e4bf3215639047c16", - "sha256:7ee3095d02d6f38bd7d9a5358fcc9ea78fcdb7176921528dd709cc63f40184f5", - "sha256:902844f9c4fb19b17dfa84d9e2ca053d4a4ba265723d62ea5c9c26b38e0aa1e6", - "sha256:937880290775033a743f4836aa253087b85e62784b63fd099ee725d567a48aa1", - "sha256:95076399ec3b27a8f7fa1cc9a83417b1c920d55cf7a97f718a94efbb96c7f503", - "sha256:9c38d3869238e9d3409239bc05bc27d6b7c99c2a460ea337d2814b35fb4fea1b", - "sha256:9e32cedc389bcb76d9f24ea8a012b3cb8385ee362ea437e1d012ffaed106c17d", - "sha256:9ffdc51001136b699f9563b1c74cc1f8c07f66ef7219beb6417a4c8aaa896c28", - "sha256:a0adef094c49f242122bb145c3c8af442070dc0e4312db17e49058c1702606d4", - "sha256:a36a0e791805aa136e9cbd0ffa040d09adec8610453ee8a753f23481a0057af5", - "sha256:a7e518a0911c50f60313cb9e74a169a65b5d293770db4770ebf004245f24b5c5", - "sha256:af0516e1711995cb08dc19bbd05bec7dbdebf4185f68870595156718d237df3e", - "sha256:b8104f709590fff72af801e916817560dbe1698028cd0afe5a52d75ceb1fce5f", - "sha256:b911dfb727e247340d36ae20c4b9259e4a64013ab9888ccb3cbba69b77fd9636", - "sha256:b9a794cef1d9c1772b94a72eec6da144c18e18041d294a9ab47669bc77a80c1d", - "sha256:b9c33d4aef08dfecbd1736ceab8b7b3c4358bf10a0121483e5cd60d3d308cc64", - "sha256:b9d38a4656e4e715d637abdf7296e98d6267df0cc0a8e9a016f8ba07e4aa3eeb", - "sha256:bcda1c84a1c533c528356da5490d464a139b6e84eb77cc0b432e38c5c6dd7882", - "sha256:bef7e3f9dc6f0c13afdd671008534be5744e0e682fb851584c8c3a025ec09720", - "sha256:c15ba5982c177bc4b23a7940c7e4394197e2d6a424a2d282e7c236b66da6d896", - "sha256:c5254cbd4f4855e11cebf678c1a848a3042d455a22a4ce61349c36aafd4c2267", - "sha256:c5682a45df7d9642eff590abc73157c887a68f016df0a8ad722dcc0f888f56d7", - "sha256:c5e65c6ac0ae4bf5bef1667029f81010b6017795dcb817ba5c7b8a8d61fab76f", - "sha256:d4c7b3a31502184e856df1f7bbb2c3735a05a8ce0ade34c5277e1577738a5c91", - "sha256:d892bfa1d023c3781a3cab8dd5af76b626c483484d782e8bd047c180db590e4c", - "sha256:dbc332beaf8492b5731229a881807cd7b91b50dbbbaf7fe2faf46942eda64a24", - "sha256:dc85b3777068ed30aff8242be2813038a929f2084f69e43ef869daddae50f6ee", - "sha256:e59137cdb970249ae60be2a49774c6dfb015bd0403f05af1fe61862e9626642d", - "sha256:e67b3c26e9b6d37b370c83aa790bbc121775c57bfb096c2e77eacca25fd0233b", - "sha256:e72c91bda9880f097c8aa3601a2c0de6c708763ba8128006151f496ca9065935", - "sha256:f95b8aca2703d6a30249f83f4fe6a9abf2e627aa892a5caaab2267d56be7ab69" + "sha256:04392983d0bb89a8717772a193cfaac58871321e3ec69514e1c4e0d4957b5aff", + "sha256:056470c3dc57904bbf63d6f534988bafc4e970ffd50f6271fc4ee7daad9498a5", + "sha256:0ea8e3d0ae83564f2fc554955d327fa081d065c8ca5cc6d2abb643e2c9c1200f", + "sha256:155e69561d54d02b3c3209545fb08938e27889ff5a10c19de8d23eb5a41be8a5", + "sha256:18c5ee682b9c6dd3696dad6e54cc7ff3a1a9020df6a5c0f861ef8bfd338c3ca0", + "sha256:19721ac03892001ee8fdd11507e6a2e01f4e37014def96379411ca99d78aeb2c", + "sha256:1a6784f0ce3fec4edc64e985865c17778514325074adf5ad8f80636cd029ef7c", + "sha256:2286791ececda3a723d1910441c793be44625d86d1a4e79942751197f4d30341", + "sha256:230eeae2d71594103cd5b93fd29d1ace6420d0b86f4778739cb1a5a32f607d1f", + "sha256:245159e7ab20a71d989da00f280ca57da7641fa2cdcf71749c193cea540a74f7", + "sha256:26540d4a9a4e2b096f1ff9cce51253d0504dca5a85872c7f7be23be5a53eb18d", + "sha256:270934a475a0e4b6925b5f804e3809dd5f90f8613621d062848dd82f9cd62007", + "sha256:27422aa5f11fbcd9b18da48373eb67081243662f9b46e6fd07c3eb46e4535142", + "sha256:2ad26b467a405c798aaa1458ba09d7e2b6e5f96b1ce0ac15d82fd9f95dc38a92", + "sha256:2b3d2491d4d78b6b14f76881905c7a8a8abcf974aad4a8a0b065273a0ed7a2cb", + "sha256:2ce3e21dc3437b1d960521eca599d57408a695a0d3c26797ea0f72e834c7ffe5", + "sha256:30e34c4e97964805f715206c7b789d54a78b70f3ff19fbe590104b71c45600e5", + "sha256:3216ccf953b3f267691c90c6fe742e45d890d8272326b4a8b20850a03d05b7b8", + "sha256:32581b3020c72d7a421009ee1c6bf4a131ef5f0a968fab2e2de0c9d2bb4577f1", + "sha256:35958ec9e46432d9076286dda67942ed6d968b9c3a6a2fd62b48939d1d78bf68", + "sha256:3abb691ff9e57d4a93355f60d4f4c1dd2d68326c968e7db17ea96df3c023ef73", + "sha256:3c18f74eb4386bf35e92ab2354a12c17e5eb4d9798e4c0ad3a00783eae7cd9f1", + "sha256:3c4745a90b78e51d9ba06e2088a2fe0c693ae19cc8cb051ccda44e8df8a6eb53", + "sha256:3c4ded1a24b20021ebe677b7b08ad10bf09aac197d6943bfe6fec70ac4e4690d", + "sha256:3e9c76f0ac6f92ecfc79516a8034a544926430f7b080ec5a0537bca389ee0906", + "sha256:48b338f08d93e7be4ab2b5f1dbe69dc5e9ef07170fe1f86514422076d9c010d0", + "sha256:4b3df0e6990aa98acda57d983942eff13d824135fe2250e6522edaa782a06de2", + "sha256:512d29bb12608891e349af6a0cccedce51677725a921c07dba6342beaf576f9a", + "sha256:5a507320c58903967ef7384355a4da7ff3f28132d679aeb23572753cbf2ec10b", + "sha256:5c370b1e4975df846b0277b4deba86419ca77dbc25047f535b0bb03d1a544d44", + "sha256:6b269105e59ac96aba877c1707c600ae55711d9dcd3fc4b5012e4af68e30c648", + "sha256:6d4fa1079cab9018f4d0bd2db307beaa612b0d13ba73b5c6304b9fe2fb441ff7", + "sha256:6dc08420625b5a20b53551c50deae6e231e6371194fa0651dbe0fb206452ae1f", + "sha256:73aa0e31fa4bb82578f3a6c74a73c273367727de397a7a0f07bd83cbea696baa", + "sha256:7559bce4b505762d737172556a4e6ea8a9998ecac1e39b5233465093e8cee697", + "sha256:79625966e176dc97ddabc142351e0409e28acf4660b88d1cf6adb876d20c490d", + "sha256:7a813c8bdbaaaab1f078014b9b0b13f5de757e2b5d9be6403639b298a04d218b", + "sha256:7b2c956c028ea5de47ff3a8d6b3cc3330ab45cf0b7c3da35a2d6ff8420896526", + "sha256:7f4152f8f76d2023aac16285576a9ecd2b11a9895373a1f10fd9db54b3ff06b4", + "sha256:7f5d859928e635fa3ce3477704acee0f667b3a3d3e4bb109f2b18d4005f38287", + "sha256:851485a42dbb0bdc1edcdabdb8557c09c9655dfa2ca0460ff210522e073e319e", + "sha256:8608c078134f0b3cbd9f89b34bd60a943b23fd33cc5f065e8d5f840061bd0673", + "sha256:880845dfe1f85d9d5f7c412efea7a08946a46894537e4e5d091732eb1d34d9a0", + "sha256:8aabf1c1a04584c168984ac678a668094d831f152859d06e055288fa515e4d30", + "sha256:8aecc5e80c63f7459a1a2ab2c64df952051df196294d9f739933a9f6687e86b3", + "sha256:8cd9b4f2cfab88ed4a9106192de509464b75a906462fb846b936eabe45c2063e", + "sha256:8de718c0e1c4b982a54b41779667242bc630b2197948405b7bd8ce16bcecac92", + "sha256:9440fa522a79356aaa482aa4ba500b65f28e5d0e63b801abf6aa152a29bd842a", + "sha256:b5f86c56eeb91dc3135b3fd8a95dc7ae14c538a2f3ad77a19645cf55bab1799c", + "sha256:b73d6d7f0ccdad7bc43e6d34273f70d587ef62f824d7261c4ae9b8b1b6af90e8", + "sha256:bb89f0a835bcfc1d42ccd5f41f04870c1b936d8507c6df12b7737febc40f0909", + "sha256:c3cc28a6fd5a4a26224007712e79b81dbaee2ffb90ff406256158ec4d7b52b47", + "sha256:ce5ab4bf46a211a8e924d307c1b1fcda82368586a19d0a24f8ae166f5c784864", + "sha256:d00924255d7fc916ef66e4bf22f354a940c67179ad3fd7067d7a0a9c84d2fbfc", + "sha256:d7cd730dfa7c36dbe8724426bf5612798734bff2d3c3857f36f2733f5bfc7c00", + "sha256:e217ce4d37667df0bc1c397fdcd8de5e81018ef305aed9415c3b093faaeb10fb", + "sha256:e3923c1d9870c49a2d44f795df0c889a22380d36ef92440ff618ec315757e539", + "sha256:e5720a5d25e3b99cd0dc5c8a440570469ff82659bb09431c1439b92caf184d3b", + "sha256:e8b58f0a96e7a1e341fc894f62c1177a7c83febebb5ff9123b579418fdc8a481", + "sha256:e984839e75e0b60cfe75e351db53d6db750b00de45644c5d1f7ee5d1f34a1ce5", + "sha256:eb09aa7f9cecb45027683bb55aebaaf45a0df8bf6de68801a6afdc7947bb09d4", + "sha256:ec8a77f521a17506a24a5f626cb2aee7850f9b69a0afe704586f63a464f3cd64", + "sha256:ecced182e935529727401b24d76634a357c71c9275b356efafd8a2a91ec07392", + "sha256:ee0e8c683a7ff25d23b55b11161c2663d4b099770f6085ff0a20d4505778d6b4", + "sha256:f0c2d907a1e102526dd2986df638343388b94c33860ff3bbe1384130828714b1", + "sha256:f758ed67cab30b9a8d2833609513ce4d3bd027641673d4ebc9c067e4d208eec1", + "sha256:f8157bed2f51db683f31306aa497311b560f2265998122abe1dce6428bd86567", + "sha256:ffe8ed017e4ed70f68b7b371d84b7d4a790368db9203dfc2d222febd3a9c8863" ], "index": "pypi", - "version": "==2.9.5" + "version": "==2.9.10" }, - "python-dotenv": { + "pyjwt": { "hashes": [ - "sha256:1c93de8f636cde3ce377292818d0e440b6e45a82f215c3744979151fa8151c49", - "sha256:41e12e0318bebc859fcc4d97d4db8d20ad21721a6aa5047dd59f090391cb549a" + "sha256:3cc5772eb20009233caf06e9d8a0577824723b44e6648ee0a2aedb6cf9381953", + "sha256:dcdd193e30abefd5debf142f9adfcdd2b58004e644f25406ffaebd50bd98dacb" ], - "index": "pypi", - "version": "==0.21.1" + "markers": "python_version >= '3.9'", + "version": "==2.10.1" }, - "pyyaml": { + "python-dotenv": { "hashes": [ - "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf", - "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293", - "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b", - "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57", - "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b", - "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4", - "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07", - "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba", - "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9", - "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287", - "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513", - "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0", - "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782", - "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0", - "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92", - "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f", - "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2", - "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc", - "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1", - "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c", - "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86", - "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4", - "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c", - "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34", - "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b", - "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d", - "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c", - "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb", - "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7", - "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737", - "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3", - "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d", - "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358", - "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53", - "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78", - "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803", - "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a", - "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f", - "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174", - "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5" + "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", + "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d" ], - "markers": "python_version >= '3.6'", - "version": "==6.0" + "index": "pypi", + "version": "==1.1.0" }, - "setuptools": { + "pyyaml": { "hashes": [ - "sha256:a7687c12b444eaac951ea87a9627c4f904ac757e7abdc5aac32833234af90378", - "sha256:e261cdf010c11a41cb5cb5f1bf3338a7433832029f559a6a7614bd42a967c300" + "sha256:01179a4a8559ab5de078078f37e5c1a30d76bb88519906844fd7bdea1b7729ff", + "sha256:0833f8694549e586547b576dcfaba4a6b55b9e96098b36cdc7ebefe667dfed48", + "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086", + "sha256:0b69e4ce7a131fe56b7e4d770c67429700908fc0752af059838b1cfb41960e4e", + "sha256:0ffe8360bab4910ef1b9e87fb812d8bc0a308b0d0eef8c8f44e0254ab3b07133", + "sha256:11d8f3dd2b9c1207dcaf2ee0bbbfd5991f571186ec9cc78427ba5bd32afae4b5", + "sha256:17e311b6c678207928d649faa7cb0d7b4c26a0ba73d41e99c4fff6b6c3276484", + "sha256:1e2120ef853f59c7419231f3bf4e7021f1b936f6ebd222406c3b60212205d2ee", + "sha256:1f71ea527786de97d1a0cc0eacd1defc0985dcf6b3f17bb77dcfc8c34bec4dc5", + "sha256:23502f431948090f597378482b4812b0caae32c22213aecf3b55325e049a6c68", + "sha256:24471b829b3bf607e04e88d79542a9d48bb037c2267d7927a874e6c205ca7e9a", + "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf", + "sha256:2e99c6826ffa974fe6e27cdb5ed0021786b03fc98e5ee3c5bfe1fd5015f42b99", + "sha256:39693e1f8320ae4f43943590b49779ffb98acb81f788220ea932a6b6c51004d8", + "sha256:3ad2a3decf9aaba3d29c8f537ac4b243e36bef957511b4766cb0057d32b0be85", + "sha256:3b1fdb9dc17f5a7677423d508ab4f243a726dea51fa5e70992e59a7411c89d19", + "sha256:41e4e3953a79407c794916fa277a82531dd93aad34e29c2a514c2c0c5fe971cc", + "sha256:43fa96a3ca0d6b1812e01ced1044a003533c47f6ee8aca31724f78e93ccc089a", + "sha256:50187695423ffe49e2deacb8cd10510bc361faac997de9efef88badc3bb9e2d1", + "sha256:5ac9328ec4831237bec75defaf839f7d4564be1e6b25ac710bd1a96321cc8317", + "sha256:5d225db5a45f21e78dd9358e58a98702a0302f2659a3c6cd320564b75b86f47c", + "sha256:6395c297d42274772abc367baaa79683958044e5d3835486c16da75d2a694631", + "sha256:688ba32a1cffef67fd2e9398a2efebaea461578b0923624778664cc1c914db5d", + "sha256:68ccc6023a3400877818152ad9a1033e3db8625d899c72eacb5a668902e4d652", + "sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5", + "sha256:797b4f722ffa07cc8d62053e4cff1486fa6dc094105d13fea7b1de7d8bf71c9e", + "sha256:7c36280e6fb8385e520936c3cb3b8042851904eba0e58d277dca80a5cfed590b", + "sha256:7e7401d0de89a9a855c839bc697c079a4af81cf878373abd7dc625847d25cbd8", + "sha256:80bab7bfc629882493af4aa31a4cfa43a4c57c83813253626916b8c7ada83476", + "sha256:82d09873e40955485746739bcb8b4586983670466c23382c19cffecbf1fd8706", + "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", + "sha256:8824b5a04a04a047e72eea5cec3bc266db09e35de6bdfe34c9436ac5ee27d237", + "sha256:8b9c7197f7cb2738065c481a0461e50ad02f18c78cd75775628afb4d7137fb3b", + "sha256:9056c1ecd25795207ad294bcf39f2db3d845767be0ea6e6a34d856f006006083", + "sha256:936d68689298c36b53b29f23c6dbb74de12b4ac12ca6cfe0e047bedceea56180", + "sha256:9b22676e8097e9e22e36d6b7bda33190d0d400f345f23d4065d48f4ca7ae0425", + "sha256:a4d3091415f010369ae4ed1fc6b79def9416358877534caf6a0fdd2146c87a3e", + "sha256:a8786accb172bd8afb8be14490a16625cbc387036876ab6ba70912730faf8e1f", + "sha256:a9f8c2e67970f13b16084e04f134610fd1d374bf477b17ec1599185cf611d725", + "sha256:bc2fa7c6b47d6bc618dd7fb02ef6fdedb1090ec036abab80d4681424b84c1183", + "sha256:c70c95198c015b85feafc136515252a261a84561b7b1d51e3384e0655ddf25ab", + "sha256:cc1c1159b3d456576af7a3e4d1ba7e6924cb39de8f67111c735f6fc832082774", + "sha256:ce826d6ef20b1bc864f0a68340c8b3287705cae2f8b4b1d932177dcc76721725", + "sha256:d584d9ec91ad65861cc08d42e834324ef890a082e591037abe114850ff7bbc3e", + "sha256:d7fded462629cfa4b685c5416b949ebad6cec74af5e2d42905d41e257e0869f5", + "sha256:d84a1718ee396f54f3a086ea0a66d8e552b2ab2017ef8b420e92edbc841c352d", + "sha256:d8e03406cac8513435335dbab54c0d385e4a49e4945d2909a581c83647ca0290", + "sha256:e10ce637b18caea04431ce14fabcf5c64a1c61ec9c56b071a4b7ca131ca52d44", + "sha256:ec031d5d2feb36d1d1a24380e4db6d43695f3748343d99434e6f5f9156aaa2ed", + "sha256:ef6107725bd54b262d6dedcc2af448a266975032bc85ef0172c5f059da6325b4", + "sha256:efdca5630322a10774e8e98e1af481aad470dd62c3170801852d752aa7a783ba", + "sha256:f753120cb8181e736c57ef7636e83f31b9c0d1722c516f7e86cf15b7aa57ff12", + "sha256:ff3824dc5261f50c9b0dfb3be22b4567a6f938ccce4587b38952d85fd9e9afe4" ], - "markers": "python_version >= '3.7'", - "version": "==67.1.0" + "markers": "python_version >= '3.8'", + "version": "==6.0.2" }, "six": { "hashes": [ - "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926", - "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254" + "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", + "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81" ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", - "version": "==1.16.0" + "version": "==1.17.0" }, "sqlalchemy": { "hashes": [ @@ -444,35 +486,35 @@ }, "typing-extensions": { "hashes": [ - "sha256:1511434bb92bf8dd198c12b1cc812e800d4181cfcb867674e0f8279cc93087aa", - "sha256:16fa4864408f655d35ec496218b85f79b3437c829e93320c7c9215ccfd92489e" + "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c", + "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef" ], "index": "pypi", - "version": "==4.4.0" + "version": "==4.13.2" }, "urllib3": { "hashes": [ - "sha256:076907bf8fd355cde77728471316625a4d2f7e713c125f51953bb5b3eecf4f72", - "sha256:75edcdc2f7d85b137124a6c3c9fc3933cdeaa12ecb9a6a959f22797a0feca7e1" + "sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", + "sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813" ], - "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", - "version": "==1.26.14" + "markers": "python_version >= '3.9'", + "version": "==2.4.0" }, "werkzeug": { "hashes": [ - "sha256:7ea2d48322cc7c0f8b3a215ed73eabd7b5d75d0b50e31ab006286ccff9e00b8f", - "sha256:f979ab81f58d7318e064e99c4506445d60135ac5cd2e177a2de0089bfd4c9bd5" + "sha256:54b78bf3716d19a65be4fceccc0d1d7b89e608834989dfae50ea87564639213e", + "sha256:60723ce945c19328679790e3282cc758aa4a6040e4bb330f53d30fa546d44746" ], - "markers": "python_version >= '3.7'", - "version": "==2.2.2" + "markers": "python_version >= '3.9'", + "version": "==3.1.3" }, "wtforms": { "hashes": [ - "sha256:6b351bbb12dd58af57ffef05bc78425d08d1914e0fd68ee14143b7ade023c5bc", - "sha256:837f2f0e0ca79481b92884962b914eba4e72b7a2daaf1f939c890ed0124b834b" + "sha256:bf831c042829c8cdbad74c27575098d541d039b1faa74c771545ecac916f2c07", + "sha256:f8d76180d7239c94c6322f7990ae1216dae3659b7aa1cee94b6318bdffb474b9" ], - "markers": "python_version >= '3.7'", - "version": "==3.0.1" + "index": "pypi", + "version": "==3.1.2" } }, "develop": {} diff --git a/migrations/README b/migrations/README new file mode 100644 index 0000000000..0e04844159 --- /dev/null +++ b/migrations/README @@ -0,0 +1 @@ +Single-database configuration for Flask. diff --git a/migrations/alembic.ini b/migrations/alembic.ini new file mode 100644 index 0000000000..ec9d45c26a --- /dev/null +++ b/migrations/alembic.ini @@ -0,0 +1,50 @@ +# A generic, single database configuration. + +[alembic] +# template used to generate migration files +# file_template = %%(rev)s_%%(slug)s + +# set to 'true' to run the environment during +# the 'revision' command, regardless of autogenerate +# revision_environment = false + + +# Logging configuration +[loggers] +keys = root,sqlalchemy,alembic,flask_migrate + +[handlers] +keys = console + +[formatters] +keys = generic + +[logger_root] +level = WARN +handlers = console +qualname = + +[logger_sqlalchemy] +level = WARN +handlers = +qualname = sqlalchemy.engine + +[logger_alembic] +level = INFO +handlers = +qualname = alembic + +[logger_flask_migrate] +level = INFO +handlers = +qualname = flask_migrate + +[handler_console] +class = StreamHandler +args = (sys.stderr,) +level = NOTSET +formatter = generic + +[formatter_generic] +format = %(levelname)-5.5s [%(name)s] %(message)s +datefmt = %H:%M:%S diff --git a/migrations/env.py b/migrations/env.py new file mode 100644 index 0000000000..4c9709271b --- /dev/null +++ b/migrations/env.py @@ -0,0 +1,113 @@ +import logging +from logging.config import fileConfig + +from flask import current_app + +from alembic import context + +# this is the Alembic Config object, which provides +# access to the values within the .ini file in use. +config = context.config + +# Interpret the config file for Python logging. +# This line sets up loggers basically. +fileConfig(config.config_file_name) +logger = logging.getLogger('alembic.env') + + +def get_engine(): + try: + # this works with Flask-SQLAlchemy<3 and Alchemical + return current_app.extensions['migrate'].db.get_engine() + except (TypeError, AttributeError): + # this works with Flask-SQLAlchemy>=3 + return current_app.extensions['migrate'].db.engine + + +def get_engine_url(): + try: + return get_engine().url.render_as_string(hide_password=False).replace( + '%', '%%') + except AttributeError: + return str(get_engine().url).replace('%', '%%') + + +# add your model's MetaData object here +# for 'autogenerate' support +# from myapp import mymodel +# target_metadata = mymodel.Base.metadata +config.set_main_option('sqlalchemy.url', get_engine_url()) +target_db = current_app.extensions['migrate'].db + +# other values from the config, defined by the needs of env.py, +# can be acquired: +# my_important_option = config.get_main_option("my_important_option") +# ... etc. + + +def get_metadata(): + if hasattr(target_db, 'metadatas'): + return target_db.metadatas[None] + return target_db.metadata + + +def run_migrations_offline(): + """Run migrations in 'offline' mode. + + This configures the context with just a URL + and not an Engine, though an Engine is acceptable + here as well. By skipping the Engine creation + we don't even need a DBAPI to be available. + + Calls to context.execute() here emit the given string to the + script output. + + """ + url = config.get_main_option("sqlalchemy.url") + context.configure( + url=url, target_metadata=get_metadata(), literal_binds=True + ) + + with context.begin_transaction(): + context.run_migrations() + + +def run_migrations_online(): + """Run migrations in 'online' mode. + + In this scenario we need to create an Engine + and associate a connection with the context. + + """ + + # this callback is used to prevent an auto-migration from being generated + # when there are no changes to the schema + # reference: http://alembic.zzzcomputing.com/en/latest/cookbook.html + def process_revision_directives(context, revision, directives): + if getattr(config.cmd_opts, 'autogenerate', False): + script = directives[0] + if script.upgrade_ops.is_empty(): + directives[:] = [] + logger.info('No changes in schema detected.') + + conf_args = current_app.extensions['migrate'].configure_args + if conf_args.get("process_revision_directives") is None: + conf_args["process_revision_directives"] = process_revision_directives + + connectable = get_engine() + + with connectable.connect() as connection: + context.configure( + connection=connection, + target_metadata=get_metadata(), + **conf_args + ) + + with context.begin_transaction(): + context.run_migrations() + + +if context.is_offline_mode(): + run_migrations_offline() +else: + run_migrations_online() diff --git a/migrations/script.py.mako b/migrations/script.py.mako new file mode 100644 index 0000000000..2c0156303a --- /dev/null +++ b/migrations/script.py.mako @@ -0,0 +1,24 @@ +"""${message} + +Revision ID: ${up_revision} +Revises: ${down_revision | comma,n} +Create Date: ${create_date} + +""" +from alembic import op +import sqlalchemy as sa +${imports if imports else ""} + +# revision identifiers, used by Alembic. +revision = ${repr(up_revision)} +down_revision = ${repr(down_revision)} +branch_labels = ${repr(branch_labels)} +depends_on = ${repr(depends_on)} + + +def upgrade(): + ${upgrades if upgrades else "pass"} + + +def downgrade(): + ${downgrades if downgrades else "pass"} diff --git a/migrations/versions/3bdee9c008a3_.py b/migrations/versions/3bdee9c008a3_.py new file mode 100644 index 0000000000..55821fc363 --- /dev/null +++ b/migrations/versions/3bdee9c008a3_.py @@ -0,0 +1,35 @@ +"""empty message + +Revision ID: 3bdee9c008a3 +Revises: +Create Date: 2025-04-16 23:36:02.104156 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '3bdee9c008a3' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('user', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('email', sa.String(length=120), nullable=False), + sa.Column('password', sa.String(length=80), nullable=False), + sa.Column('is_active', sa.Boolean(), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('email') + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('user') + # ### end Alembic commands ### diff --git a/src/front/js/component/Dashboard.jsx b/src/front/js/component/Dashboard.jsx new file mode 100644 index 0000000000..70338d7714 --- /dev/null +++ b/src/front/js/component/Dashboard.jsx @@ -0,0 +1,49 @@ +import React, { useState } from "react"; +import { Context } from "../store/appContext"; +import "../../styles/home.css"; +import { Dashboard } from "../component/Dashboard"; + +export const Dashboard = ({ userEmail, onLogout }) => { + const { store } = useContext(Context); + + return ( +
+
+

Bienvenido {userEmail}

+ +
+ +
+ {store.message || "Mensaje del sistema"} +
+ +
+
+

Contenido exclusivo para usuarios registrados

+
+
+
+ ); +}; + +// Versión que incluye manejo de autenticación +export const AuthDashboard = () => { + const [user, setUser] = useState("usuario@ejemplo.com"); // Cambia por tu estado real + + if (!user) return
Por favor inicia sesión
; + + return ( + { + // Aquí puedes agregar lógica adicional antes del logout + setUser(null); + }} + /> + ); +}; \ No newline at end of file diff --git a/src/front/js/pages/home.js b/src/front/js/pages/home.js index 7b0be46a1e..c1f3fb0c2b 100755 --- a/src/front/js/pages/home.js +++ b/src/front/js/pages/home.js @@ -1,26 +1,76 @@ -import React, { useContext } from "react"; +import React, { useContext, useState } from "react"; import { Context } from "../store/appContext"; import rigoImageUrl from "../../img/rigo-baby.jpg"; import "../../styles/home.css"; + + + export const Home = () => { const { store, actions } = useContext(Context); + const [user, setUser] = useState(null); // Estado para controlar el usuario logueado + + // Función para simular login (reemplaza con tu lógica real) + const handleLogin = () => { + setUser({ + email: "usuario@ejemplo.com", + name: "Usuario Demo" + }); + }; + + // Función para logout + const handleLogout = () => { + setUser(null); + }; return (
-

Hello Rigo!!

-

- -

-
- {store.message || "Loading message from the backend (make sure your python backend is running)..."} -
-

- This boilerplate comes with lots of documentation:{" "} - - Read documentation - -

+ {user ? ( + /* --- DASHBOARD PARA USUARIO LOGUEADO --- */ +
+
+

Bienvenido, {user.name}!

+ + +
+

aca debo trabajar inicio de sesion

+
+
+
+ {store.message || "Mensaje del backend..."} +
+ +

Tu Área Privada

+

Contenido exclusivo para usuarios autenticados

+
+
+
+ ) : ( + /* --- CONTENIDO PÚBLICO (tu código original) --- */ +
+

aca debo trabajar inicio

+
+ {store.message || "Loading message from the backend..."} +
+ +

+ This boilerplate comes with lots of documentation:{" "} + + Read documentation + +

+
+ )}
); -}; +}; \ No newline at end of file From 48f7fcf2197d5a34c0ceadcfb41d13eb0877e950 Mon Sep 17 00:00:00 2001 From: Federico Serron Umpierrez <77068927+federico-serron@users.noreply.github.com> Date: Thu, 17 Apr 2025 09:06:43 +0000 Subject: [PATCH 03/11] Action login store.js done --- src/front/js/store/flux.js | 49 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 47 insertions(+), 2 deletions(-) diff --git a/src/front/js/store/flux.js b/src/front/js/store/flux.js index cc56951a22..7a020efe5a 100755 --- a/src/front/js/store/flux.js +++ b/src/front/js/store/flux.js @@ -1,4 +1,6 @@ const getState = ({ getStore, getActions, setStore }) => { + const apiUrl = process.env.BACKEND_URL; + return { store: { message: null, @@ -13,7 +15,11 @@ const getState = ({ getStore, getActions, setStore }) => { background: "white", initial: "white" } - ] + ], + + + + logged_user: [], }, actions: { // Use getActions to call a function within a fuction @@ -46,7 +52,46 @@ const getState = ({ getStore, getActions, setStore }) => { //reset the global store setStore({ demo: demo }); - } + }, + + login: async (payload) => { + const URLlogin = `${apiUrl}/api/login`; + const {email, password} = payload; + const store = getStore(); + + try { + if (!email || !password) { + console.log("Missing email or password") + return false + } + let response = await fetch(URLlogin, { + method: "POST", + body: JSON.stringify({'email': email, 'password': password}), + headers: { + "Content-type": "application/json; charset=UTF-8" + } + }) + if (!response.ok) { + console.error("Error trying to login, pelase try again."); + throw new Error(response.statusText); + } + + const data = await response.json(); + + if (!data.access_token) { + console.error(data, "No valid token received!") + throw new Error("No token received"); + } + + localStorage.setItem("token", data.access_token) + console.log("Successfully logged in!") + setStore({...store, logged_user: data }) + return data + + } catch (error) { + console.error(error); + } + }, } }; }; From 3c400c05a4e69d1713b0ba58ae44bdd4d2ba88b9 Mon Sep 17 00:00:00 2001 From: Federico Serron Umpierrez <77068927+federico-serron@users.noreply.github.com> Date: Fri, 18 Apr 2025 04:15:06 +0000 Subject: [PATCH 04/11] Vista login hecha, trabajando en la logica de la misma --- .vscode/settings.json | 3 ++ 4geeks copy.ico | Bin 0 -> 19814 bytes 4geeks.ico | Bin 19814 -> 15406 bytes package-lock.json | 38 ++++++++++++++++++++- package.json | 3 +- public/index.html | 2 +- src/front/img/logo.png | Bin 0 -> 1416718 bytes src/front/js/layout.js | 9 +++++ src/front/js/pages/Login.jsx | 62 +++++++++++++++++++++++++++++++++++ src/front/js/store/flux.js | 12 ++++--- src/front/styles/index.css | 5 +++ template.html | 2 +- 12 files changed, 127 insertions(+), 9 deletions(-) create mode 100755 4geeks copy.ico mode change 100755 => 100644 4geeks.ico create mode 100644 src/front/img/logo.png create mode 100644 src/front/js/pages/Login.jsx diff --git a/.vscode/settings.json b/.vscode/settings.json index 24da33c3e2..246b0419d0 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -3,5 +3,8 @@ "editor.defaultFormatter": "esbenp.prettier-vscode", "workbench.editorAssociations": { "*.md": "vscode.markdown.preview.editor" + }, + "[javascriptreact]": { + "editor.defaultFormatter": "vscode.typescript-language-features" } } diff --git a/4geeks copy.ico b/4geeks copy.ico new file mode 100755 index 0000000000000000000000000000000000000000..3583e2a98dfe1a88530855beaaec65c32d1bdc0f GIT binary patch literal 19814 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 literal 0 HcmV?d00001 diff --git a/4geeks.ico b/4geeks.ico old mode 100755 new mode 100644 index 3583e2a98dfe1a88530855beaaec65c32d1bdc0f..4805a2fc05d39fa6bc713c52dff9049a824f492b GIT binary patch literal 15406 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 literal 19814 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 diff --git a/package-lock.json b/package-lock.json index c932d7fc55..99945fff46 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,7 +13,8 @@ "react": "^16.8.4", "react-dom": "^16.8.4", "react-polyfills": "0.0.1", - "react-router-dom": "^6.3.0" + "react-router-dom": "^6.3.0", + "react-toastify": "^9.1.3" }, "devDependencies": { "@babel/cli": "^7.16.0", @@ -3109,6 +3110,15 @@ "node": ">=6" } }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -7654,6 +7664,19 @@ "react": ">=16.8" } }, + "node_modules/react-toastify": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-9.1.3.tgz", + "integrity": "sha512-fPfb8ghtn/XMxw3LkxQBk3IyagNpF/LIKjOBflbexr2AWxAH1MJgvnESwEwBn9liLFXgTKWgBSdZpw9m4OTHTg==", + "license": "MIT", + "dependencies": { + "clsx": "^1.1.1" + }, + "peerDependencies": { + "react": ">=16", + "react-dom": ">=16" + } + }, "node_modules/readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", @@ -11687,6 +11710,11 @@ "shallow-clone": "^3.0.0" } }, + "clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==" + }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", @@ -15035,6 +15063,14 @@ } } }, + "react-toastify": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-9.1.3.tgz", + "integrity": "sha512-fPfb8ghtn/XMxw3LkxQBk3IyagNpF/LIKjOBflbexr2AWxAH1MJgvnESwEwBn9liLFXgTKWgBSdZpw9m4OTHTg==", + "requires": { + "clsx": "^1.1.1" + } + }, "readable-stream": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", diff --git a/package.json b/package.json index 3c8d47cba7..db7c7d2e33 100755 --- a/package.json +++ b/package.json @@ -77,6 +77,7 @@ "react": "^16.8.4", "react-dom": "^16.8.4", "react-polyfills": "0.0.1", - "react-router-dom": "^6.3.0" + "react-router-dom": "^6.3.0", + "react-toastify": "^9.1.3" } } diff --git a/public/index.html b/public/index.html index 9462644fe9..04cec3e025 100644 --- a/public/index.html +++ b/public/index.html @@ -1 +1 @@ -Hello Rigo with Vanilla.js
\ No newline at end of file +AhorrApp
\ No newline at end of file diff --git a/src/front/img/logo.png b/src/front/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..71ddb9bc2115811a74da9373c468e9e7f9a5c1e6 GIT binary patch literal 1416718 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

i0Q- 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