From 22f6ed7e8c54275ecf0b7001706ccc1d1f418439 Mon Sep 17 00:00:00 2001 From: teddy Date: Mon, 28 Oct 2024 15:04:43 +0000 Subject: [PATCH] fix: Public pages - Contact and Services - page load errors due to server errors and styling improvements --- controllers/__pycache__/user.cpython-312.pyc | Bin 8312 -> 8376 bytes controllers/user.py | 5 +- .../site-packages/pip-24.0.dist-info/RECORD | 6 +- .../pip/__pycache__/__init__.cpython-312.pyc | Bin 726 -> 726 bytes .../pip/__pycache__/__main__.cpython-312.pyc | Bin 882 -> 882 bytes .../__pip-runner__.cpython-312.pyc | Bin 2245 -> 2245 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 828 -> 828 bytes .../__pycache__/build_env.cpython-312.pyc | Bin 14335 -> 14335 bytes .../__pycache__/cache.cpython-312.pyc | Bin 12706 -> 12706 bytes .../__pycache__/configuration.cpython-312.pyc | Bin 17707 -> 17707 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 33325 -> 33325 bytes .../__pycache__/main.cpython-312.pyc | Bin 711 -> 711 bytes .../__pycache__/pyproject.cpython-312.pyc | Bin 5012 -> 5012 bytes .../self_outdated_check.cpython-312.pyc | Bin 10593 -> 10593 bytes .../__pycache__/wheel_builder.cpython-312.pyc | Bin 13690 -> 13690 bytes .../cli/__pycache__/__init__.cpython-312.pyc | Bin 319 -> 319 bytes .../autocompletion.cpython-312.pyc | Bin 8506 -> 8506 bytes .../__pycache__/base_command.cpython-312.pyc | Bin 10496 -> 10496 bytes .../__pycache__/cmdoptions.cpython-312.pyc | Bin 30415 -> 30415 bytes .../command_context.cpython-312.pyc | Bin 1822 -> 1822 bytes .../cli/__pycache__/main.cpython-312.pyc | Bin 2339 -> 2339 bytes .../__pycache__/main_parser.cpython-312.pyc | Bin 4946 -> 4946 bytes .../cli/__pycache__/parser.cpython-312.pyc | Bin 15063 -> 15063 bytes .../__pycache__/progress_bars.cpython-312.pyc | Bin 2661 -> 2661 bytes .../__pycache__/req_command.cpython-312.pyc | Bin 18893 -> 18893 bytes .../cli/__pycache__/spinners.cpython-312.pyc | Bin 7881 -> 7881 bytes .../__pycache__/status_codes.cpython-312.pyc | Bin 416 -> 416 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 4043 -> 4043 bytes .../__pycache__/cache.cpython-312.pyc | Bin 9752 -> 9752 bytes .../__pycache__/check.cpython-312.pyc | Bin 2131 -> 2131 bytes .../__pycache__/completion.cpython-312.pyc | Bin 5233 -> 5233 bytes .../__pycache__/configuration.cpython-312.pyc | Bin 13253 -> 13253 bytes .../__pycache__/debug.cpython-312.pyc | Bin 10202 -> 10202 bytes .../__pycache__/download.cpython-312.pyc | Bin 7630 -> 7630 bytes .../__pycache__/freeze.cpython-312.pyc | Bin 4397 -> 4397 bytes .../commands/__pycache__/hash.cpython-312.pyc | Bin 3024 -> 3024 bytes .../commands/__pycache__/help.cpython-312.pyc | Bin 1714 -> 1714 bytes .../__pycache__/index.cpython-312.pyc | Bin 6761 -> 6761 bytes .../__pycache__/inspect.cpython-312.pyc | Bin 4016 -> 4016 bytes .../__pycache__/install.cpython-312.pyc | Bin 28954 -> 28954 bytes .../commands/__pycache__/list.cpython-312.pyc | Bin 15441 -> 15441 bytes .../__pycache__/search.cpython-312.pyc | Bin 7662 -> 7662 bytes .../commands/__pycache__/show.cpython-312.pyc | Bin 9769 -> 9769 bytes .../__pycache__/uninstall.cpython-312.pyc | Bin 4767 -> 4767 bytes .../__pycache__/wheel.cpython-312.pyc | Bin 8997 -> 8997 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 982 -> 982 bytes .../__pycache__/base.cpython-312.pyc | Bin 2903 -> 2903 bytes .../__pycache__/installed.cpython-312.pyc | Bin 1741 -> 1741 bytes .../__pycache__/sdist.cpython-312.pyc | Bin 8529 -> 8529 bytes .../__pycache__/wheel.cpython-312.pyc | Bin 2289 -> 2289 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 273 -> 273 bytes .../__pycache__/collector.cpython-312.pyc | Bin 21927 -> 21927 bytes .../package_finder.cpython-312.pyc | Bin 40776 -> 40776 bytes .../index/__pycache__/sources.cpython-312.pyc | Bin 12645 -> 12645 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 16817 -> 16817 bytes .../__pycache__/_distutils.cpython-312.pyc | Bin 6897 -> 6897 bytes .../__pycache__/_sysconfig.cpython-312.pyc | Bin 8052 -> 8052 bytes .../__pycache__/base.cpython-312.pyc | Bin 3822 -> 3822 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 5923 -> 5923 bytes .../__pycache__/_json.cpython-312.pyc | Bin 2916 -> 2916 bytes .../metadata/__pycache__/base.cpython-312.pyc | Bin 35753 -> 35753 bytes .../__pycache__/pkg_resources.cpython-312.pyc | Bin 15831 -> 15831 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 399 -> 399 bytes .../__pycache__/_compat.cpython-312.pyc | Bin 3374 -> 3374 bytes .../__pycache__/_dists.cpython-312.pyc | Bin 13466 -> 13466 bytes .../__pycache__/_envs.cpython-312.pyc | Bin 11221 -> 11221 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 307 -> 307 bytes .../__pycache__/candidate.cpython-312.pyc | Bin 1946 -> 1946 bytes .../__pycache__/direct_url.cpython-312.pyc | Bin 11240 -> 11240 bytes .../format_control.cpython-312.pyc | Bin 4268 -> 4268 bytes .../models/__pycache__/index.cpython-312.pyc | Bin 1735 -> 1735 bytes .../installation_report.cpython-312.pyc | Bin 2313 -> 2313 bytes .../models/__pycache__/link.cpython-312.pyc | Bin 26043 -> 26043 bytes .../models/__pycache__/scheme.cpython-312.pyc | Bin 1210 -> 1210 bytes .../__pycache__/search_scope.cpython-312.pyc | Bin 5129 -> 5129 bytes .../selection_prefs.cpython-312.pyc | Bin 1892 -> 1892 bytes .../__pycache__/target_python.cpython-312.pyc | Bin 4995 -> 4995 bytes .../models/__pycache__/wheel.cpython-312.pyc | Bin 5821 -> 5821 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 295 -> 295 bytes .../network/__pycache__/auth.cpython-312.pyc | Bin 22037 -> 22037 bytes .../network/__pycache__/cache.cpython-312.pyc | Bin 6559 -> 6559 bytes .../__pycache__/download.cpython-312.pyc | Bin 8594 -> 8594 bytes .../__pycache__/lazy_wheel.cpython-312.pyc | Bin 11704 -> 11704 bytes .../__pycache__/session.cpython-312.pyc | Bin 18815 -> 18815 bytes .../network/__pycache__/utils.cpython-312.pyc | Bin 2294 -> 2294 bytes .../__pycache__/xmlrpc.cpython-312.pyc | Bin 2990 -> 2990 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 238 -> 238 bytes .../__pycache__/check.cpython-312.pyc | Bin 7620 -> 7620 bytes .../__pycache__/freeze.cpython-312.pyc | Bin 10158 -> 10158 bytes .../__pycache__/prepare.cpython-312.pyc | Bin 25788 -> 25788 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 244 -> 244 bytes .../__pycache__/build_tracker.cpython-312.pyc | Bin 7864 -> 7864 bytes .../__pycache__/metadata.cpython-312.pyc | Bin 1921 -> 1921 bytes .../metadata_editable.cpython-312.pyc | Bin 1955 -> 1955 bytes .../metadata_legacy.cpython-312.pyc | Bin 3106 -> 3106 bytes .../build/__pycache__/wheel.cpython-312.pyc | Bin 1725 -> 1725 bytes .../wheel_editable.cpython-312.pyc | Bin 2066 -> 2066 bytes .../__pycache__/wheel_legacy.cpython-312.pyc | Bin 3970 -> 3970 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 307 -> 307 bytes .../editable_legacy.cpython-312.pyc | Bin 1858 -> 1858 bytes .../install/__pycache__/wheel.cpython-312.pyc | Bin 33900 -> 33900 bytes .../req/__pycache__/__init__.cpython-312.pyc | Bin 3784 -> 3784 bytes .../__pycache__/constructors.cpython-312.pyc | Bin 21623 -> 21623 bytes .../req/__pycache__/req_file.cpython-312.pyc | Bin 21502 -> 21502 bytes .../__pycache__/req_install.cpython-312.pyc | Bin 38455 -> 38455 bytes .../req/__pycache__/req_set.cpython-312.pyc | Bin 7259 -> 7259 bytes .../__pycache__/req_uninstall.cpython-312.pyc | Bin 33018 -> 33018 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 238 -> 238 bytes .../__pycache__/base.cpython-312.pyc | Bin 1226 -> 1226 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 245 -> 245 bytes .../__pycache__/resolver.cpython-312.pyc | Bin 22480 -> 22480 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 249 -> 249 bytes .../__pycache__/base.cpython-312.pyc | Bin 8378 -> 8378 bytes .../__pycache__/candidates.cpython-312.pyc | Bin 30439 -> 30439 bytes .../__pycache__/factory.cpython-312.pyc | Bin 32155 -> 32155 bytes .../found_candidates.cpython-312.pyc | Bin 6249 -> 6249 bytes .../__pycache__/provider.cpython-312.pyc | Bin 10419 -> 10419 bytes .../__pycache__/reporter.cpython-312.pyc | Bin 4976 -> 4976 bytes .../__pycache__/requirements.cpython-312.pyc | Bin 11470 -> 11470 bytes .../__pycache__/resolver.cpython-312.pyc | Bin 12392 -> 12392 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 233 -> 233 bytes .../__pycache__/_jaraco_text.cpython-312.pyc | Bin 4574 -> 4574 bytes .../utils/__pycache__/_log.cpython-312.pyc | Bin 1904 -> 1904 bytes .../utils/__pycache__/appdirs.cpython-312.pyc | Bin 2448 -> 2448 bytes .../utils/__pycache__/compat.cpython-312.pyc | Bin 2251 -> 2251 bytes .../compatibility_tags.cpython-312.pyc | Bin 5599 -> 5599 bytes .../__pycache__/datetime.cpython-312.pyc | Bin 722 -> 722 bytes .../__pycache__/deprecation.cpython-312.pyc | Bin 4224 -> 4224 bytes .../direct_url_helpers.cpython-312.pyc | Bin 3601 -> 3601 bytes .../__pycache__/egg_link.cpython-312.pyc | Bin 3264 -> 3264 bytes .../__pycache__/encoding.cpython-312.pyc | Bin 2196 -> 2196 bytes .../__pycache__/entrypoints.cpython-312.pyc | Bin 4031 -> 4031 bytes .../__pycache__/filesystem.cpython-312.pyc | Bin 7496 -> 7496 bytes .../__pycache__/filetypes.cpython-312.pyc | Bin 1202 -> 1202 bytes .../utils/__pycache__/glibc.cpython-312.pyc | Bin 2380 -> 2380 bytes .../utils/__pycache__/hashes.cpython-312.pyc | Bin 7592 -> 7592 bytes .../utils/__pycache__/logging.cpython-312.pyc | Bin 13595 -> 13595 bytes .../utils/__pycache__/misc.cpython-312.pyc | Bin 34159 -> 34159 bytes .../utils/__pycache__/models.cpython-312.pyc | Bin 2750 -> 2750 bytes .../__pycache__/packaging.cpython-312.pyc | Bin 2621 -> 2621 bytes .../setuptools_build.cpython-312.pyc | Bin 4588 -> 4588 bytes .../__pycache__/subprocess.cpython-312.pyc | Bin 8756 -> 8756 bytes .../__pycache__/temp_dir.cpython-312.pyc | Bin 12100 -> 12100 bytes .../__pycache__/unpacking.cpython-312.pyc | Bin 11146 -> 11146 bytes .../utils/__pycache__/urls.cpython-312.pyc | Bin 2443 -> 2443 bytes .../__pycache__/virtualenv.cpython-312.pyc | Bin 4518 -> 4518 bytes .../utils/__pycache__/wheel.cpython-312.pyc | Bin 5964 -> 5964 bytes .../vcs/__pycache__/__init__.cpython-312.pyc | Bin 572 -> 572 bytes .../vcs/__pycache__/bazaar.cpython-312.pyc | Bin 5064 -> 5064 bytes .../vcs/__pycache__/git.cpython-312.pyc | Bin 19033 -> 19033 bytes .../vcs/__pycache__/mercurial.cpython-312.pyc | Bin 7653 -> 7653 bytes .../__pycache__/subversion.cpython-312.pyc | Bin 12525 -> 12525 bytes .../versioncontrol.cpython-312.pyc | Bin 29051 -> 29051 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 4734 -> 4734 bytes .../_vendor/__pycache__/six.cpython-312.pyc | Bin 41311 -> 41311 bytes .../typing_extensions.cpython-312.pyc | Bin 122091 -> 122091 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 944 -> 944 bytes .../__pycache__/_cmd.cpython-312.pyc | Bin 2688 -> 2688 bytes .../__pycache__/adapter.cpython-312.pyc | Bin 6506 -> 6506 bytes .../__pycache__/cache.cpython-312.pyc | Bin 3851 -> 3851 bytes .../__pycache__/controller.cpython-312.pyc | Bin 16209 -> 16209 bytes .../__pycache__/filewrapper.cpython-312.pyc | Bin 4389 -> 4389 bytes .../__pycache__/heuristics.cpython-312.pyc | Bin 6736 -> 6736 bytes .../__pycache__/serialize.cpython-312.pyc | Bin 6447 -> 6447 bytes .../__pycache__/wrapper.cpython-312.pyc | Bin 1716 -> 1716 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 477 -> 477 bytes .../__pycache__/file_cache.cpython-312.pyc | Bin 7752 -> 7752 bytes .../__pycache__/redis_cache.cpython-312.pyc | Bin 2780 -> 2780 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 360 -> 360 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 687 -> 687 bytes .../certifi/__pycache__/core.cpython-312.pyc | Bin 2891 -> 2891 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 4610 -> 4610 bytes .../__pycache__/big5freq.cpython-312.pyc | Bin 27241 -> 27241 bytes .../__pycache__/big5prober.cpython-312.pyc | Bin 1429 -> 1429 bytes .../chardistribution.cpython-312.pyc | Bin 9680 -> 9680 bytes .../charsetgroupprober.cpython-312.pyc | Bin 4164 -> 4164 bytes .../__pycache__/charsetprober.cpython-312.pyc | Bin 5060 -> 5060 bytes .../codingstatemachine.cpython-312.pyc | Bin 3920 -> 3920 bytes .../codingstatemachinedict.cpython-312.pyc | Bin 831 -> 831 bytes .../__pycache__/cp949prober.cpython-312.pyc | Bin 1438 -> 1438 bytes .../chardet/__pycache__/enums.cpython-312.pyc | Bin 3038 -> 3038 bytes .../__pycache__/escprober.cpython-312.pyc | Bin 4608 -> 4608 bytes .../chardet/__pycache__/escsm.cpython-312.pyc | Bin 15352 -> 15352 bytes .../__pycache__/eucjpprober.cpython-312.pyc | Bin 4425 -> 4425 bytes .../__pycache__/euckrfreq.cpython-312.pyc | Bin 12124 -> 12124 bytes .../__pycache__/euckrprober.cpython-312.pyc | Bin 1432 -> 1432 bytes .../__pycache__/euctwfreq.cpython-312.pyc | Bin 27246 -> 27246 bytes .../__pycache__/euctwprober.cpython-312.pyc | Bin 1432 -> 1432 bytes .../__pycache__/gb2312freq.cpython-312.pyc | Bin 19168 -> 19168 bytes .../__pycache__/gb2312prober.cpython-312.pyc | Bin 1445 -> 1445 bytes .../__pycache__/hebrewprober.cpython-312.pyc | Bin 5864 -> 5864 bytes .../__pycache__/jisfreq.cpython-312.pyc | Bin 22197 -> 22197 bytes .../__pycache__/johabfreq.cpython-312.pyc | Bin 83045 -> 83045 bytes .../__pycache__/johabprober.cpython-312.pyc | Bin 1436 -> 1436 bytes .../__pycache__/jpcntx.cpython-312.pyc | Bin 39591 -> 39591 bytes .../langbulgarianmodel.cpython-312.pyc | Bin 83164 -> 83164 bytes .../langgreekmodel.cpython-312.pyc | Bin 77030 -> 77030 bytes .../langhebrewmodel.cpython-312.pyc | Bin 77541 -> 77541 bytes .../langhungarianmodel.cpython-312.pyc | Bin 83118 -> 83118 bytes .../langrussianmodel.cpython-312.pyc | Bin 105293 -> 105293 bytes .../__pycache__/langthaimodel.cpython-312.pyc | Bin 77719 -> 77719 bytes .../langturkishmodel.cpython-312.pyc | Bin 77558 -> 77558 bytes .../__pycache__/latin1prober.cpython-312.pyc | Bin 7044 -> 7044 bytes .../macromanprober.cpython-312.pyc | Bin 7224 -> 7224 bytes .../mbcharsetprober.cpython-312.pyc | Bin 3945 -> 3945 bytes .../mbcsgroupprober.cpython-312.pyc | Bin 1630 -> 1630 bytes .../__pycache__/mbcssm.cpython-312.pyc | Bin 38687 -> 38687 bytes .../__pycache__/resultdict.cpython-312.pyc | Bin 674 -> 674 bytes .../sbcharsetprober.cpython-312.pyc | Bin 6429 -> 6429 bytes .../sbcsgroupprober.cpython-312.pyc | Bin 2399 -> 2399 bytes .../__pycache__/sjisprober.cpython-312.pyc | Bin 4537 -> 4537 bytes .../universaldetector.cpython-312.pyc | Bin 12311 -> 12311 bytes .../__pycache__/utf1632prober.cpython-312.pyc | Bin 10021 -> 10021 bytes .../__pycache__/utf8prober.cpython-312.pyc | Bin 3217 -> 3217 bytes .../__pycache__/version.cpython-312.pyc | Bin 530 -> 530 bytes .../cli/__pycache__/__init__.cpython-312.pyc | Bin 237 -> 237 bytes .../__pycache__/chardetect.cpython-312.pyc | Bin 4054 -> 4054 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 242 -> 242 bytes .../__pycache__/languages.cpython-312.pyc | Bin 9797 -> 9797 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 534 -> 534 bytes .../colorama/__pycache__/ansi.cpython-312.pyc | Bin 3992 -> 3992 bytes .../__pycache__/ansitowin32.cpython-312.pyc | Bin 16463 -> 16463 bytes .../__pycache__/initialise.cpython-312.pyc | Bin 3592 -> 3592 bytes .../__pycache__/win32.cpython-312.pyc | Bin 8168 -> 8168 bytes .../__pycache__/winterm.cpython-312.pyc | Bin 9130 -> 9130 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 240 -> 240 bytes .../__pycache__/ansi_test.cpython-312.pyc | Bin 5509 -> 5509 bytes .../ansitowin32_test.cpython-312.pyc | Bin 18145 -> 18145 bytes .../initialise_test.cpython-312.pyc | Bin 11790 -> 11790 bytes .../__pycache__/isatty_test.cpython-312.pyc | Bin 4946 -> 4946 bytes .../tests/__pycache__/utils.cpython-312.pyc | Bin 2530 -> 2530 bytes .../__pycache__/winterm_test.cpython-312.pyc | Bin 6654 -> 6654 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 1311 -> 1311 bytes .../__pycache__/compat.cpython-312.pyc | Bin 45647 -> 45647 bytes .../__pycache__/database.cpython-312.pyc | Bin 66069 -> 66069 bytes .../distlib/__pycache__/index.cpython-312.pyc | Bin 24408 -> 24408 bytes .../__pycache__/locators.cpython-312.pyc | Bin 60200 -> 60200 bytes .../__pycache__/manifest.cpython-312.pyc | Bin 15167 -> 15167 bytes .../__pycache__/markers.cpython-312.pyc | Bin 7724 -> 7724 bytes .../__pycache__/metadata.cpython-312.pyc | Bin 41841 -> 41841 bytes .../__pycache__/resources.cpython-312.pyc | Bin 17367 -> 17367 bytes .../__pycache__/scripts.cpython-312.pyc | Bin 19622 -> 19622 bytes .../distlib/__pycache__/util.cpython-312.pyc | Bin 88298 -> 88298 bytes .../__pycache__/version.cpython-312.pyc | Bin 30408 -> 30408 bytes .../distlib/__pycache__/wheel.cpython-312.pyc | Bin 51903 -> 51903 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 1002 -> 1002 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 334 -> 334 bytes .../distro/__pycache__/distro.cpython-312.pyc | Bin 53796 -> 53796 bytes .../idna/__pycache__/__init__.cpython-312.pyc | Bin 923 -> 923 bytes .../idna/__pycache__/codec.cpython-312.pyc | Bin 4675 -> 4675 bytes .../idna/__pycache__/compat.cpython-312.pyc | Bin 929 -> 929 bytes .../idna/__pycache__/core.cpython-312.pyc | Bin 16324 -> 16324 bytes .../idna/__pycache__/idnadata.cpython-312.pyc | Bin 38424 -> 38424 bytes .../__pycache__/intranges.cpython-312.pyc | Bin 2680 -> 2680 bytes .../__pycache__/package_data.cpython-312.pyc | Bin 258 -> 258 bytes .../__pycache__/uts46data.cpython-312.pyc | Bin 158912 -> 158912 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 1873 -> 1873 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 2067 -> 2067 bytes .../msgpack/__pycache__/ext.cpython-312.pyc | Bin 8710 -> 8710 bytes .../__pycache__/fallback.cpython-312.pyc | Bin 43618 -> 43618 bytes .../__pycache__/__about__.cpython-312.pyc | Bin 672 -> 672 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 508 -> 508 bytes .../__pycache__/_manylinux.cpython-312.pyc | Bin 12118 -> 12118 bytes .../__pycache__/_musllinux.cpython-312.pyc | Bin 6952 -> 6952 bytes .../__pycache__/_structures.cpython-312.pyc | Bin 3283 -> 3283 bytes .../__pycache__/markers.cpython-312.pyc | Bin 14100 -> 14100 bytes .../__pycache__/requirements.cpython-312.pyc | Bin 6988 -> 6988 bytes .../__pycache__/specifiers.cpython-312.pyc | Bin 31289 -> 31289 bytes .../__pycache__/tags.cpython-312.pyc | Bin 18998 -> 18998 bytes .../__pycache__/utils.cpython-312.pyc | Bin 5910 -> 5910 bytes .../__pycache__/version.cpython-312.pyc | Bin 19981 -> 19981 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 146516 -> 146516 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 18071 -> 18071 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 1988 -> 1988 bytes .../__pycache__/android.cpython-312.pyc | Bin 9486 -> 9486 bytes .../__pycache__/api.cpython-312.pyc | Bin 9714 -> 9714 bytes .../__pycache__/macos.cpython-312.pyc | Bin 5679 -> 5679 bytes .../__pycache__/unix.cpython-312.pyc | Bin 12483 -> 12483 bytes .../__pycache__/version.cpython-312.pyc | Bin 353 -> 353 bytes .../__pycache__/windows.cpython-312.pyc | Bin 13041 -> 13041 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 3531 -> 3531 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 777 -> 777 bytes .../__pycache__/cmdline.cpython-312.pyc | Bin 26648 -> 26648 bytes .../__pycache__/console.cpython-312.pyc | Bin 2669 -> 2669 bytes .../__pycache__/filter.cpython-312.pyc | Bin 3275 -> 3275 bytes .../__pycache__/formatter.cpython-312.pyc | Bin 4612 -> 4612 bytes .../__pycache__/lexer.cpython-312.pyc | Bin 38372 -> 38372 bytes .../__pycache__/modeline.cpython-312.pyc | Bin 1611 -> 1611 bytes .../__pycache__/plugin.cpython-312.pyc | Bin 3439 -> 3439 bytes .../__pycache__/regexopt.cpython-312.pyc | Bin 4124 -> 4124 bytes .../__pycache__/scanner.cpython-312.pyc | Bin 4799 -> 4799 bytes .../__pycache__/sphinxext.cpython-312.pyc | Bin 11089 -> 11089 bytes .../__pycache__/style.cpython-312.pyc | Bin 6717 -> 6717 bytes .../__pycache__/token.cpython-312.pyc | Bin 8185 -> 8185 bytes .../__pycache__/unistring.cpython-312.pyc | Bin 33031 -> 33031 bytes .../pygments/__pycache__/util.cpython-312.pyc | Bin 14024 -> 14024 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 37979 -> 37979 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 6969 -> 6969 bytes .../__pycache__/_mapping.cpython-312.pyc | Bin 4258 -> 4258 bytes .../__pycache__/bbcode.cpython-312.pyc | Bin 4237 -> 4237 bytes .../__pycache__/groff.cpython-312.pyc | Bin 7307 -> 7307 bytes .../__pycache__/html.cpython-312.pyc | Bin 40615 -> 40615 bytes .../__pycache__/img.cpython-312.pyc | Bin 27086 -> 27086 bytes .../__pycache__/irc.cpython-312.pyc | Bin 6108 -> 6108 bytes .../__pycache__/latex.cpython-312.pyc | Bin 19997 -> 19997 bytes .../__pycache__/other.cpython-312.pyc | Bin 6927 -> 6927 bytes .../__pycache__/pangomarkup.cpython-312.pyc | Bin 2973 -> 2973 bytes .../__pycache__/rtf.cpython-312.pyc | Bin 6169 -> 6169 bytes .../__pycache__/svg.cpython-312.pyc | Bin 9109 -> 9109 bytes .../__pycache__/terminal.cpython-312.pyc | Bin 5872 -> 5872 bytes .../__pycache__/terminal256.cpython-312.pyc | Bin 15200 -> 15200 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 14695 -> 14695 bytes .../__pycache__/_mapping.cpython-312.pyc | Bin 64447 -> 64447 bytes .../lexers/__pycache__/python.cpython-312.pyc | Bin 42682 -> 42682 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 4491 -> 4491 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 7954 -> 7954 bytes .../__pycache__/actions.cpython-312.pyc | Bin 8438 -> 8438 bytes .../__pycache__/common.cpython-312.pyc | Bin 13457 -> 13457 bytes .../__pycache__/core.cpython-312.pyc | Bin 267751 -> 267751 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 13037 -> 13037 bytes .../__pycache__/helpers.cpython-312.pyc | Bin 48544 -> 48544 bytes .../__pycache__/results.cpython-312.pyc | Bin 34153 -> 34153 bytes .../__pycache__/testing.cpython-312.pyc | Bin 17231 -> 17231 bytes .../__pycache__/unicode.cpython-312.pyc | Bin 13227 -> 13227 bytes .../__pycache__/util.cpython-312.pyc | Bin 14947 -> 14947 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 26856 -> 26856 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 656 -> 656 bytes .../__pycache__/_compat.cpython-312.pyc | Bin 417 -> 417 bytes .../__pycache__/_impl.cpython-312.pyc | Bin 14768 -> 14768 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 1123 -> 1123 bytes .../__pycache__/_in_process.cpython-312.pyc | Bin 14440 -> 14440 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 5496 -> 5496 bytes .../__pycache__/__version__.cpython-312.pyc | Bin 627 -> 627 bytes .../_internal_utils.cpython-312.pyc | Bin 2067 -> 2067 bytes .../__pycache__/adapters.cpython-312.pyc | Bin 21323 -> 21323 bytes .../requests/__pycache__/api.cpython-312.pyc | Bin 7247 -> 7247 bytes .../requests/__pycache__/auth.cpython-312.pyc | Bin 13966 -> 13966 bytes .../__pycache__/certs.cpython-312.pyc | Bin 965 -> 965 bytes .../__pycache__/compat.cpython-312.pyc | Bin 1550 -> 1550 bytes .../__pycache__/cookies.cpython-312.pyc | Bin 25289 -> 25289 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 7090 -> 7090 bytes .../requests/__pycache__/help.cpython-312.pyc | Bin 4355 -> 4355 bytes .../__pycache__/hooks.cpython-312.pyc | Bin 1095 -> 1095 bytes .../__pycache__/models.cpython-312.pyc | Bin 35491 -> 35491 bytes .../__pycache__/packages.cpython-312.pyc | Bin 815 -> 815 bytes .../__pycache__/sessions.cpython-312.pyc | Bin 27800 -> 27800 bytes .../__pycache__/status_codes.cpython-312.pyc | Bin 6002 -> 6002 bytes .../__pycache__/structures.cpython-312.pyc | Bin 5660 -> 5660 bytes .../__pycache__/utils.cpython-312.pyc | Bin 36312 -> 36312 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 677 -> 677 bytes .../__pycache__/providers.cpython-312.pyc | Bin 6894 -> 6894 bytes .../__pycache__/reporters.cpython-312.pyc | Bin 2697 -> 2697 bytes .../__pycache__/resolvers.cpython-312.pyc | Bin 25940 -> 25940 bytes .../__pycache__/structs.cpython-312.pyc | Bin 10549 -> 10549 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 243 -> 243 bytes .../collections_abc.cpython-312.pyc | Bin 463 -> 463 bytes .../rich/__pycache__/__init__.cpython-312.pyc | Bin 7058 -> 7058 bytes .../rich/__pycache__/__main__.cpython-312.pyc | Bin 10347 -> 10347 bytes .../__pycache__/_cell_widths.cpython-312.pyc | Bin 7864 -> 7864 bytes .../__pycache__/_emoji_codes.cpython-312.pyc | Bin 206019 -> 206019 bytes .../_emoji_replace.cpython-312.pyc | Bin 1772 -> 1772 bytes .../_export_format.cpython-312.pyc | Bin 2364 -> 2364 bytes .../__pycache__/_extension.cpython-312.pyc | Bin 580 -> 580 bytes .../rich/__pycache__/_fileno.cpython-312.pyc | Bin 898 -> 898 bytes .../rich/__pycache__/_inspect.cpython-312.pyc | Bin 12120 -> 12120 bytes .../__pycache__/_log_render.cpython-312.pyc | Bin 4190 -> 4190 bytes .../rich/__pycache__/_loop.cpython-312.pyc | Bin 1928 -> 1928 bytes .../__pycache__/_null_file.cpython-312.pyc | Bin 3663 -> 3663 bytes .../__pycache__/_palettes.cpython-312.pyc | Bin 5203 -> 5203 bytes .../rich/__pycache__/_pick.cpython-312.pyc | Bin 769 -> 769 bytes .../rich/__pycache__/_ratio.cpython-312.pyc | Bin 6622 -> 6622 bytes .../__pycache__/_spinners.cpython-312.pyc | Bin 13222 -> 13222 bytes .../rich/__pycache__/_stack.cpython-312.pyc | Bin 1008 -> 1008 bytes .../rich/__pycache__/_timer.cpython-312.pyc | Bin 908 -> 908 bytes .../_win32_console.cpython-312.pyc | Bin 29019 -> 29019 bytes .../rich/__pycache__/_windows.cpython-312.pyc | Bin 2533 -> 2533 bytes .../_windows_renderer.cpython-312.pyc | Bin 3616 -> 3616 bytes .../rich/__pycache__/_wrap.cpython-312.pyc | Bin 2403 -> 2403 bytes .../rich/__pycache__/abc.cpython-312.pyc | Bin 1651 -> 1651 bytes .../rich/__pycache__/align.cpython-312.pyc | Bin 12365 -> 12365 bytes .../rich/__pycache__/ansi.cpython-312.pyc | Bin 9149 -> 9149 bytes .../rich/__pycache__/bar.cpython-312.pyc | Bin 4315 -> 4315 bytes .../rich/__pycache__/box.cpython-312.pyc | Bin 11901 -> 11901 bytes .../rich/__pycache__/cells.cpython-312.pyc | Bin 5661 -> 5661 bytes .../rich/__pycache__/color.cpython-312.pyc | Bin 26613 -> 26613 bytes .../__pycache__/color_triplet.cpython-312.pyc | Bin 1744 -> 1744 bytes .../rich/__pycache__/columns.cpython-312.pyc | Bin 8630 -> 8630 bytes .../rich/__pycache__/console.cpython-312.pyc | Bin 113836 -> 113836 bytes .../__pycache__/constrain.cpython-312.pyc | Bin 2301 -> 2301 bytes .../__pycache__/containers.cpython-312.pyc | Bin 9269 -> 9269 bytes .../rich/__pycache__/control.cpython-312.pyc | Bin 10972 -> 10972 bytes .../default_styles.cpython-312.pyc | Bin 10416 -> 10416 bytes .../rich/__pycache__/diagnose.cpython-312.pyc | Bin 1530 -> 1530 bytes .../rich/__pycache__/emoji.cpython-312.pyc | Bin 4252 -> 4252 bytes .../rich/__pycache__/errors.cpython-312.pyc | Bin 1888 -> 1888 bytes .../__pycache__/file_proxy.cpython-312.pyc | Bin 3620 -> 3620 bytes .../rich/__pycache__/filesize.cpython-312.pyc | Bin 3125 -> 3125 bytes .../__pycache__/highlighter.cpython-312.pyc | Bin 9941 -> 9941 bytes .../rich/__pycache__/json.cpython-312.pyc | Bin 6078 -> 6078 bytes .../rich/__pycache__/jupyter.cpython-312.pyc | Bin 5252 -> 5252 bytes .../rich/__pycache__/layout.cpython-312.pyc | Bin 20263 -> 20263 bytes .../rich/__pycache__/live.cpython-312.pyc | Bin 19186 -> 19186 bytes .../__pycache__/live_render.cpython-312.pyc | Bin 4937 -> 4937 bytes .../rich/__pycache__/logging.cpython-312.pyc | Bin 13597 -> 13597 bytes .../rich/__pycache__/markup.cpython-312.pyc | Bin 9341 -> 9341 bytes .../rich/__pycache__/measure.cpython-312.pyc | Bin 6419 -> 6419 bytes .../rich/__pycache__/padding.cpython-312.pyc | Bin 7177 -> 7177 bytes .../rich/__pycache__/pager.cpython-312.pyc | Bin 1863 -> 1863 bytes .../rich/__pycache__/palette.cpython-312.pyc | Bin 5357 -> 5357 bytes .../rich/__pycache__/panel.cpython-312.pyc | Bin 12140 -> 12140 bytes .../rich/__pycache__/pretty.cpython-312.pyc | Bin 40099 -> 40099 bytes .../rich/__pycache__/progress.cpython-312.pyc | Bin 75121 -> 75121 bytes .../__pycache__/progress_bar.cpython-312.pyc | Bin 10432 -> 10432 bytes .../rich/__pycache__/prompt.cpython-312.pyc | Bin 14824 -> 14824 bytes .../rich/__pycache__/protocol.cpython-312.pyc | Bin 1835 -> 1835 bytes .../rich/__pycache__/region.cpython-312.pyc | Bin 610 -> 610 bytes .../rich/__pycache__/repr.cpython-312.pyc | Bin 6669 -> 6669 bytes .../rich/__pycache__/rule.cpython-312.pyc | Bin 6611 -> 6611 bytes .../rich/__pycache__/scope.cpython-312.pyc | Bin 3873 -> 3873 bytes .../rich/__pycache__/screen.cpython-312.pyc | Bin 2527 -> 2527 bytes .../rich/__pycache__/segment.cpython-312.pyc | Bin 28204 -> 28204 bytes .../rich/__pycache__/spinner.cpython-312.pyc | Bin 6107 -> 6107 bytes .../rich/__pycache__/status.cpython-312.pyc | Bin 6111 -> 6111 bytes .../rich/__pycache__/style.cpython-312.pyc | Bin 33557 -> 33557 bytes .../rich/__pycache__/styled.cpython-312.pyc | Bin 2182 -> 2182 bytes .../rich/__pycache__/syntax.cpython-312.pyc | Bin 39655 -> 39655 bytes .../rich/__pycache__/table.cpython-312.pyc | Bin 43627 -> 43627 bytes .../terminal_theme.cpython-312.pyc | Bin 3391 -> 3391 bytes .../rich/__pycache__/text.cpython-312.pyc | Bin 59006 -> 59006 bytes .../rich/__pycache__/theme.cpython-312.pyc | Bin 6383 -> 6383 bytes .../rich/__pycache__/themes.cpython-312.pyc | Bin 357 -> 357 bytes .../__pycache__/traceback.cpython-312.pyc | Bin 31591 -> 31591 bytes .../rich/__pycache__/tree.cpython-312.pyc | Bin 11482 -> 11482 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 27129 -> 27129 bytes .../__pycache__/_asyncio.cpython-312.pyc | Bin 4849 -> 4849 bytes .../__pycache__/_utils.cpython-312.pyc | Bin 2358 -> 2358 bytes .../__pycache__/after.cpython-312.pyc | Bin 1667 -> 1667 bytes .../__pycache__/before.cpython-312.pyc | Bin 1507 -> 1507 bytes .../__pycache__/before_sleep.cpython-312.pyc | Bin 2345 -> 2345 bytes .../tenacity/__pycache__/nap.cpython-312.pyc | Bin 1455 -> 1455 bytes .../__pycache__/retry.cpython-312.pyc | Bin 14324 -> 14324 bytes .../tenacity/__pycache__/stop.cpython-312.pyc | Bin 5611 -> 5611 bytes .../__pycache__/tornadoweb.cpython-312.pyc | Bin 2629 -> 2629 bytes .../tenacity/__pycache__/wait.cpython-312.pyc | Bin 12456 -> 12456 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 427 -> 427 bytes .../tomli/__pycache__/_parser.cpython-312.pyc | Bin 26970 -> 26970 bytes .../tomli/__pycache__/_re.cpython-312.pyc | Bin 3951 -> 3951 bytes .../tomli/__pycache__/_types.cpython-312.pyc | Bin 409 -> 409 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 661 -> 661 bytes .../__pycache__/_api.cpython-312.pyc | Bin 15840 -> 15840 bytes .../__pycache__/_macos.cpython-312.pyc | Bin 16705 -> 16705 bytes .../__pycache__/_openssl.cpython-312.pyc | Bin 2258 -> 2258 bytes .../_ssl_constants.cpython-312.pyc | Bin 1142 -> 1142 bytes .../__pycache__/_windows.cpython-312.pyc | Bin 15549 -> 15549 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 3448 -> 3448 bytes .../__pycache__/_collections.cpython-312.pyc | Bin 15974 -> 15974 bytes .../__pycache__/_version.cpython-312.pyc | Bin 261 -> 261 bytes .../__pycache__/connection.cpython-312.pyc | Bin 20450 -> 20450 bytes .../connectionpool.cpython-312.pyc | Bin 36322 -> 36322 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 13536 -> 13536 bytes .../__pycache__/fields.cpython-312.pyc | Bin 10452 -> 10452 bytes .../__pycache__/filepost.cpython-312.pyc | Bin 4061 -> 4061 bytes .../__pycache__/poolmanager.cpython-312.pyc | Bin 20345 -> 20345 bytes .../__pycache__/request.cpython-312.pyc | Bin 7337 -> 7337 bytes .../__pycache__/response.cpython-312.pyc | Bin 34011 -> 34011 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 241 -> 241 bytes .../_appengine_environ.cpython-312.pyc | Bin 1891 -> 1891 bytes .../__pycache__/appengine.cpython-312.pyc | Bin 11607 -> 11607 bytes .../__pycache__/ntlmpool.cpython-312.pyc | Bin 5762 -> 5762 bytes .../__pycache__/pyopenssl.cpython-312.pyc | Bin 24493 -> 24493 bytes .../securetransport.cpython-312.pyc | Bin 35599 -> 35599 bytes .../contrib/__pycache__/socks.cpython-312.pyc | Bin 7554 -> 7554 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 258 -> 258 bytes .../__pycache__/bindings.cpython-312.pyc | Bin 17470 -> 17470 bytes .../__pycache__/low_level.cpython-312.pyc | Bin 14844 -> 14844 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 242 -> 242 bytes .../packages/__pycache__/six.cpython-312.pyc | Bin 41362 -> 41362 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 252 -> 252 bytes .../__pycache__/makefile.cpython-312.pyc | Bin 1868 -> 1868 bytes .../weakref_finalize.cpython-312.pyc | Bin 7374 -> 7374 bytes .../util/__pycache__/__init__.cpython-312.pyc | Bin 1189 -> 1189 bytes .../__pycache__/connection.cpython-312.pyc | Bin 4799 -> 4799 bytes .../util/__pycache__/proxy.cpython-312.pyc | Bin 1595 -> 1595 bytes .../util/__pycache__/queue.cpython-312.pyc | Bin 1395 -> 1395 bytes .../util/__pycache__/request.cpython-312.pyc | Bin 4226 -> 4226 bytes .../util/__pycache__/response.cpython-312.pyc | Bin 3032 -> 3032 bytes .../util/__pycache__/retry.cpython-312.pyc | Bin 21740 -> 21740 bytes .../util/__pycache__/ssl_.cpython-312.pyc | Bin 15146 -> 15146 bytes .../ssl_match_hostname.cpython-312.pyc | Bin 5114 -> 5114 bytes .../__pycache__/ssltransport.cpython-312.pyc | Bin 10815 -> 10815 bytes .../util/__pycache__/timeout.cpython-312.pyc | Bin 11182 -> 11182 bytes .../util/__pycache__/url.cpython-312.pyc | Bin 15838 -> 15838 bytes .../util/__pycache__/wait.cpython-312.pyc | Bin 4446 -> 4446 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 12044 -> 12044 bytes .../__pycache__/labels.cpython-312.pyc | Bin 7175 -> 7175 bytes .../__pycache__/mklabels.cpython-312.pyc | Bin 2742 -> 2742 bytes .../__pycache__/tests.cpython-312.pyc | Bin 9294 -> 9294 bytes .../x_user_defined.cpython-312.pyc | Bin 3338 -> 3338 bytes env_web/Scripts/pip.exe | Bin 108466 -> 108466 bytes env_web/Scripts/pip3.12.exe | Bin 108466 -> 108466 bytes env_web/Scripts/pip3.exe | Bin 108466 -> 108466 bytes .../model_view_base.cpython-312.pyc | Bin 20090 -> 20187 bytes models/model_view_base.py | 1 + static/MySQL/0000_combine.sql | 492 +++++++++--- static/MySQL/0001_destroy.sql | 1 + ...6_fn_shop_get_product_permutation_name.sql | 5 +- .../7204_p_shop_calc_product_permutation.sql | 6 +- ...price_and_discount_and_delivery_option.sql | 4 +- static/MySQL/7321_p_shop_save_user_basket.sql | 4 +- .../MySQL/7401_p_shop_get_many_supplier.sql | 6 +- .../7403_p_save_supplier_purchase_order.sql | 740 ------------------ ...shop_save_supplier_purchase_order_test.sql | 31 +- ..._shop_get_many_supplier_purchase_order.sql | 20 +- ..._get_many_manufacturing_purchase_order.sql | 14 +- .../MySQL/7422_p_shop_get_many_customer.sql | 2 +- ...5_p_shop_get_many_customer_sales_order.sql | 10 +- static/MySQL/temp.txt | 1 + static/css/main.css | 11 +- static/css/pages/core/contact.css | 5 + static/css/pages/core/services.css | 21 +- static/dist/css/core_contact.bundle.css | 5 + static/dist/css/core_services.bundle.css | 21 +- static/dist/css/main.bundle.css | 11 +- templates/pages/core/_admin_home.html | 2 +- templates/pages/core/_contact.html | 12 +- templates/pages/core/_home.html | 2 +- templates/pages/core/_services.html | 2 +- .../pages/legal/_accessibility_statement.html | 2 +- templates/pages/legal/_license.html | 2 +- templates/pages/legal/_privacy_policy.html | 2 +- .../pages/legal/_retention_schedule.html | 2 +- templates/pages/store/_basket.html | 2 +- templates/pages/store/_checkout_success.html | 2 +- templates/pages/store/_supplier.html | 2 +- 534 files changed, 526 insertions(+), 928 deletions(-) delete mode 100644 static/MySQL/7403_p_save_supplier_purchase_order.sql diff --git a/controllers/__pycache__/user.cpython-312.pyc b/controllers/__pycache__/user.cpython-312.pyc index 2ff400bc6662827a745e4609d00ae966beee4c05..68f571e2b02af87901ebfd6e1f1971c99e4f6879 100644 GIT binary patch delta 545 zcmez2u)~q}G%qg~0}$k&l}vbl0ma$q)hj(n~{ltQjz zlp>hVlcSWY9Hk6q^X91Jsz#}T*?d5CYEf#r>QU;s8c`aI3``8EGOIxr06~-{kSCeK zpQ^Q*2`ZwUs+|=HVIz_C3@HLBg6WKFgkTC&gj*Qk#^_?z#E>Ggnh|11iYSt5JshgV z;Ht%uRO^FO#~`@{%1n`fE0;u4Zh*sZDY$BBB-MtM?3yy0|1m~0@iX4y3J&yf%t_8j z&8^gA+#JVphm}!zvo)747o+>;Opzc~#@5YyBxf@+PTm|L?a0V-izy{(@;sR+#2CK$xG#`nTm2J%gTFl yH38*7K~&5&xj^1h<}QQ!T?U!^40?ANjPEj--)Ato$YAu4mA^Trfobw?`Mm(?rfzxw delta 483 zcmdnt_``wsG%qg~0}w3t;!E$G$ScWsX`=e%`dry4Sw@Bw#uTm`xm@`u`CNr41u&mG zM=@6^N(s#7$x+T#iBbWxd4cLwqf~R%qSSKLqtqE0m>5zeQ}|LfRx^Q2XJClZOx4T^ zg|Lyy6#f)}bjCG;Fm)+HEexycp(>)ZacB}=%?MGFA_7znQ>}wTwJ2P*7?NsT9IC}v zGrBn+usNDbmy6M5bEilU zD`V5Y$;;#|h3+#b+-K0c%V2z$!Tdgh(M1NM$-m|I0ss)&S_uFE diff --git a/controllers/user.py b/controllers/user.py index 8e46d43f..027d5cc4 100644 --- a/controllers/user.py +++ b/controllers/user.py @@ -20,12 +20,15 @@ from helpers.helper_app import Helper_App import lib.argument_validation as av # external from flask import Flask, render_template, jsonify, request, render_template_string, send_from_directory, redirect, url_for, session, Blueprint, current_app -from extensions import db, oauth +from flask_sqlalchemy import SQLAlchemy +from extensions import oauth # db, from urllib.parse import quote_plus, urlencode from authlib.integrations.flask_client import OAuth from authlib.integrations.base_client import OAuthError from urllib.parse import quote, urlparse, parse_qs +db = SQLAlchemy() + routes_user = Blueprint('routes_user', __name__) # User authentication diff --git a/env_web/Lib/site-packages/pip-24.0.dist-info/RECORD b/env_web/Lib/site-packages/pip-24.0.dist-info/RECORD index 6d6a0857..f0fe1f63 100644 --- a/env_web/Lib/site-packages/pip-24.0.dist-info/RECORD +++ b/env_web/Lib/site-packages/pip-24.0.dist-info/RECORD @@ -1,6 +1,6 @@ -../../Scripts/pip.exe,sha256=c7HuPbTodA03BZskKpysGLwtwFjgKiS0ReMoKwJgZMQ,108466 -../../Scripts/pip3.12.exe,sha256=c7HuPbTodA03BZskKpysGLwtwFjgKiS0ReMoKwJgZMQ,108466 -../../Scripts/pip3.exe,sha256=c7HuPbTodA03BZskKpysGLwtwFjgKiS0ReMoKwJgZMQ,108466 +../../Scripts/pip.exe,sha256=0KxTGjutpLG2NKDEqxwSZJdkxI0dC_h3FdL_-IMCxSo,108466 +../../Scripts/pip3.12.exe,sha256=0KxTGjutpLG2NKDEqxwSZJdkxI0dC_h3FdL_-IMCxSo,108466 +../../Scripts/pip3.exe,sha256=0KxTGjutpLG2NKDEqxwSZJdkxI0dC_h3FdL_-IMCxSo,108466 pip-24.0.dist-info/AUTHORS.txt,sha256=SwXm4nkwRkmtnO1ZY-dLy7EPeoQNXMNLby5CN3GlNhY,10388 pip-24.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4 pip-24.0.dist-info/LICENSE.txt,sha256=Y0MApmnUmurmWxLGxIySTFGkzfPR_whtw0VtyLyqIQQ,1093 diff --git a/env_web/Lib/site-packages/pip/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/__pycache__/__init__.cpython-312.pyc index 21d921fecfafdba716aa7ca77f9405e316de6d4d..f72f0cea7e3cc084e358e8ec8a47d942eb96d0c7 100644 GIT binary patch delta 20 acmcb{dX1I)G%qg~0}#|D%5UU8%>)2B$OSk6 delta 20 acmcb{dX1I)G%qg~0}v=n@NMKi%>)27Km>yT diff --git a/env_web/Lib/site-packages/pip/__pycache__/__main__.cpython-312.pyc b/env_web/Lib/site-packages/pip/__pycache__/__main__.cpython-312.pyc index b56889104cab9735abc9458ddc48cfce3af65ded..c5974b6b951d891a7f3b2d20683eae04f9558226 100644 GIT binary patch delta 20 acmeyw_KA)AG%qg~0}#|D%5UUOX9fU0O$84C delta 20 acmeyw_KA)AG%qg~0}v=n@NMKyX9fT`#ROUa diff --git a/env_web/Lib/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc b/env_web/Lib/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc index c18dee6a187b00bd36dc7a2c64b75af394b2e072..1922683d82715d28a64a5c51d8873b71375bada7 100644 GIT binary patch delta 20 acmX>qcvO)4G%qg~0}#|D%5UV}#Q^{~)&(N~ delta 20 acmX>qcvO)4G%qg~0}v=n@NMMY#Q^{`P6TcM diff --git a/env_web/Lib/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc index 09b64d9f750ead84515cfcab6a26ea16842ac599..a4dbbf78446ed1f0836abb668dc1fec559f8e5e9 100644 GIT binary patch delta 20 acmdnPwug=TG%qg~0}#|D%5UU0WCj2<-2`m_ delta 20 acmdnPwug=TG%qg~0}v=n@NMKaWCj2*RRg#H diff --git a/env_web/Lib/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc index 20228ebd6f3a245eb8c2ce1249a48464c79481aa..7fbdb61a4340860d815c528d2b9aad1e8f698b05 100644 GIT binary patch delta 20 acmeyL|39DmG%qg~0}#|D%5UWUVh#XLO$NLG delta 20 acmeyL|39DmG%qg~0}v=n@NMM&Vh#XG#Rdle diff --git a/env_web/Lib/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc index 89b629233b31dba441ee6ad6b53057eea0b1ae15..faf05dfa220f0a656c7978cb1200160fc2a6e557 100644 GIT binary patch delta 20 acmZ3KyeOIbG%qg~0}#|D%5UVJZU_KB4+Vz+ delta 20 acmZ3KyeOIbG%qg~0}v=n@NMLtZU_K6hXm39 diff --git a/env_web/Lib/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc index d46d1cedc0fb8a4e1322d7c0bd78e4bd82d3e150..329ef5ebee5470d4a06feb1a4b5dd0595a021732 100644 GIT binary patch delta 22 ccmZ48#kjhQk^3|+FBbz4)FsMq diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc index 4e09a57432fbca83ebe8129a2d4e0c8f1ae37b35..9af3d799c4120c094437cf18e686adc280dd765f 100644 GIT binary patch delta 20 acmdnxw9AS6G%qg~0}#|D%5UV>R|Eh(8wC9T delta 20 acmdnxw9AS6G%qg~0}v=n@NMMQR|Eh!lLSZr diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc index 895452695089daa6d5232821c210fde0c0182817..14ed70c850af144dcbfd36437ff53fc5405d0c0e 100644 GIT binary patch delta 20 acmZn&Y6#*!&CAQh00ec3@*BCoY5)K@QU!JZ delta 20 acmZn&Y6#*!&CAQh00hbsd>gsHY5)K;$^^jx diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc index 46a27c7abda8f048739d853bcd7703297acba364..da3f93fb7bd550369bd8279ce54c379ac4118912 100644 GIT binary patch delta 22 ccmX^Amht>sM()$Ryj%=GP?spbk^4v)0AC*mX#fBK delta 22 ccmX^Amht>sM()$Ryj%=Gpe(_+k^4v)09uy@v;Y7A diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc index 21b51076ef41fc7b5c2644adcc23de3d7a651d2c..47a0c83fc745d39de7838d2ea5546dc7467eb84f 100644 GIT binary patch delta 20 acmbQoH;<3|G%qg~0}#|D%5UTrW(NQGQTG%qg~0}#|D%5UV3;sO9YLGQTG%qg~0}v=n@NMLd;sO9TyaZMN diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc index aad5aa13e451f59a1dea9ceab458136e8616f779..11037e9941570edfd4891b3ff6e6178d40a16bef 100644 GIT binary patch delta 22 ccmX>*nepsoM()$Ryj%=GP?spbk^7J*08r)zf&c&j delta 22 ccmX>*nepsoM()$Ryj%=Gpe(_+k^7J*08Cy5%>V!Z diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc index 98b0cb989e46574eb00463716b4e9529d05313ec..2d5e936885244e0eacd51a4ca4b4bd9163adae42 100644 GIT binary patch delta 20 acmX?Ud(xKsG%qg~0}#|D%5UV}CkFsOyak;A delta 20 acmX?Ud(xKsG%qg~0}v=n@NMMYCkFsKGz91X diff --git a/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc index 78a4f98a9f28130ba358c33ed6be345996b38546..268c4ece6a9cb03514a10085dc9add174ea06d80 100644 GIT binary patch delta 20 acmZ3$ynvbeG%qg~0}#|D%5UVJ$_M~44+N0_ delta 20 acmZ3$ynvbeG%qg~0}v=n@NMLt$_M}~hXdRI diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc index a8e2d6f3940356a3b6470bea3e7e2c04efce729d..4846fe16c86c03b8ffd268ce890c64fdafaaf1ca 100644 GIT binary patch delta 20 acmX>te_EdVG%qg~0}#|D%5UU8zz+aB#RXUZ delta 20 acmX>te_EdVG%qg~0}v=n@NMKizz+a7Jp`iw diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc index a85e995e091a57f4a13f4f2b4387f9b74c0a6f47..6cf8a8cdf137be9169474aa9b63dd159310a37cb 100644 GIT binary patch delta 20 acmbQ?GsB1bG%qg~0}#|D%5UW6RRaJyI0Uc& delta 20 acmbQ?GsB1bG%qg~0}v=n@NMMgRRaJtumk%5 diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc index c318ee49305b15048443b32b5c14779855d702eb..f731ee534d16e5b9c873f6f4db7f9f7d7d8c671b 100644 GIT binary patch delta 20 acmcaCa9M!+G%qg~0}#|D%5UWM-~a$Q;snb8 delta 20 acmcaCa9M!+G%qg~0}v=n@NMMw-~a$MS_BpV diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc index 24232eee0806339de48b12b94f14b6d8301c4e89..71940e19143ea38eafd4ab71b6ad2273b73cfcfb 100644 GIT binary patch delta 20 acmeyU@lk{OG%qg~0}#|D%5UUO69E80{smzG delta 20 acmeyU@lk{OG%qg~0}v=n@NMKy69E7{b_A>d diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc index de33495af012dd9783cd11146da4b5aea40947bc..8e5f998c6f5ed6e61e039d8575c165f3887b1acf 100644 GIT binary patch delta 20 acmX?_el(r?G%qg~0}#|D%5UV}WefmC83p

;$p^ diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc index a888d818e135a6aa093618a0db3321f9467ec3f1..a2e0323cfd1f0d2cc86345b24a38446072ad1dad 100644 GIT binary patch delta 20 acmdlWzd@e+G%qg~0}#|D%5UUe$`1fHjRgk) delta 20 acmdlWzd@e+G%qg~0}v=n@NMK?$`1fD1q4z6 diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc index c03a7880fdffb291b10d4ade21fcbddbef243f74..0be1dd9c2404bdd795d845c37a6070ebd9d0f51c 100644 GIT binary patch delta 22 ccmbRBh;h~EG%qg~0}#|D%5UU;EDHcdI|c^; delta 20 acmaE7{mz>EG%qg~0}v=n@NMLNEDHcYvjtKB diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc index c1057b687604fb9c711ed9c12216d563ef2c2a45..fe971ec247fc695f17b2f8e621973921b45aacb4 100644 GIT binary patch delta 20 acmZ4Kv(ktAG%qg~0}#|D%5UVBQv(1y-~{6U delta 20 acmZ4Kv(ktAG%qg~0}v=n@NMLlQv(1uSOhKr diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc index e7a0511c75299cee595c5d3ced774a92551eab5c..33a7c2fcfd9e6ed55be226ec9a7a2aad2f596777 100644 GIT binary patch delta 20 acmbQQI$xFhG%qg~0}#|D%5UVJA_M?6zy#v} delta 20 acmbQQI$xFhG%qg~0}v=n@NMLtA_M?2I0P;L diff --git a/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc index 7fe8eb32252583ef65580521be95704cfd105845..dfb61d0d5c2e12e886d698475c915654e3d171e0 100644 GIT binary patch delta 20 acmZ4Lw$zRLG%qg~0}#|D%5UVBQU(AzWdz6o delta 20 acmZ4Lw$zRLG%qg~0}v=n@NMLlQU(Au-2@W= diff --git a/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc index d3980da98cca9965649e946ade7c21ae8030d269..ba7cdd47f7469f82a8157a335f8126a1d0ff7401 100644 GIT binary patch delta 20 acmcb{evO^`G%qg~0}#|D%5UU8%?toK5d}Q} delta 20 acmcb{evO^`G%qg~0}v=n@NMKi%?toFi3ErM diff --git a/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc index 0534f418efc68a567d0d3c3d4a901bc0026cc27a..3bd6baace1b2bee8e2643aec8b3f66eab0b84bfe 100644 GIT binary patch delta 20 acmcaEc3q77G%qg~0}#|D%5UWM;RXOZT?FO; delta 20 acmcaEc3q77G%qg~0}v=n@NMMw;RXOU)dVpB diff --git a/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc index a90af55cad4749cd8152b801d73ad6f91ae7faca..a5428d74bd1066ed278c443ad2b2342584fda080 100644 GIT binary patch delta 20 acmX@hdzP2`G%qg~0}#|D%5UU8#0CI4gat7G delta 20 acmX@hdzP2`G%qg~0}v=n@NMKi#0CH~`~-Xe diff --git a/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc index 26f7414cbe62cbe7329dbb7080c40749ec5ff1e3..31fd9a0e8e6b9b09b7a84d5d3661a2dedf4fd2d7 100644 GIT binary patch delta 20 acmccUbkT|XG%qg~0}#|D%5UU$Qv?7&vjsu` delta 20 acmccUbkT|XG%qg~0}v=n@NMLFQv?7!D+G-I diff --git a/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc index 16af4ae7e85b57b529ebed2c8f3773350a194a8d..ae52759f18160de8b6b93617e1ace87a22f76fc3 100644 GIT binary patch delta 20 acmew;_)(DiG%qg~0}#|D%5UU;#sL67wgsmE delta 20 acmew;_)(DiG%qg~0}v=n@NMLN#sL63E(G!b diff --git a/env_web/Lib/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc index 847c87ca594c08c2f5936e0285eaaef2c213759e..7e806e95b03572151068c454f957711071e6fdcf 100644 GIT binary patch delta 20 acmbQpG?9t>G%qg~0}#|D%5UUmV*~&#lLO)a delta 20 acmbQpG?9t>G%qg~0}v=n@NMK~V*~&x3j-|x diff --git a/env_web/Lib/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc index 82d5d962b41e4a47da9c4f3e4a476379559eb274..c11c38b586b8575f7480a6cacad2bd03ab3aa6ec 100644 GIT binary patch delta 22 ccmZ3!nsNDRM()$Ryj%=GP?spbk$X-k08TgtOaK4? delta 22 ccmZ3!nsNDRM()$Ryj%=Gpe(_+k$X-k07;M1& diff --git a/env_web/Lib/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc index e81f3a91a9964b3942e7fe859462036c3047fb62..00445797a8d85045c48be45d00126a414b72b2b4 100644 GIT binary patch delta 20 acmaEw^fZb4G%qg~0}#|D%5UV3G6VofV+GCt delta 20 acmaEw^fZb4G%qg~0}v=n@NMLdG6Voa+XWc_ diff --git a/env_web/Lib/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc index 2b1830afc4c6b677ddb8ecf7bf2f14de69f72d1b..ad64d6809f3a1472dc71e756fdd5fa0caa717f7d 100644 GIT binary patch delta 22 ccmdnk%($_ck^3|+FBbz4)FsMqC delta 20 acmaDS`%aeoG%qg~0}v=n@NMLN%m)BGYy}4Z diff --git a/env_web/Lib/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc index fdc230956d1afe83a3906ab6f890fd97f032bef0..d5523d7d50d6aa2c4d224abf19c7866c428e0dd6 100644 GIT binary patch delta 20 acmZ3iw^)z+G%qg~0}#|D%5UVB5C;G@sRV`q delta 20 acmZ3iw^)z+G%qg~0}v=n@NMLl5C;G diff --git a/env_web/Lib/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc index 64c623d607edae9544d40c00007bcbe47ddb8b3d..15189a4d09e912618e274f58ad7b4f0b65a432ae 100644 GIT binary patch delta 20 acmaDN_C$>PG%qg~0}#|D%5UV3PG%qg~0}v=n@NMLdgr27y&8Y1E~N2 diff --git a/env_web/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc index 776da64bb99f5cb9003ece5e0f5279157bbfb959..508899e7352ad1671b0cde45a5f61694eea900a9 100644 GIT binary patch delta 20 acmZ1{wN8rrG%qg~0}#|D%5UUW<^=#XhXi#1 delta 20 acmZ1{wN8rrG%qg~0}v=n@NMK)<^=#S{{z4P diff --git a/env_web/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc index 2a0be473f9e5d5d9e48b3f63b35bb418008f71ba..1759fd766c20eab1c7825f8c5d99211ca6b3879e 100644 GIT binary patch delta 20 acmbQ0IV+RU<3d%;{-?m delta 20 acmdnYw3&(fG%qg~0}v=n@NMMQU<3dzTLY5- diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc index a88fb0c0280df4fb774ba3e4d83a64908751387b..5ad322b4fd03491dd800393eacc7bb916b18ea1e 100644 GIT binary patch delta 20 acmbQmKZ~FHG%qg~0}#|D%5UWEX9oZ=)dZaY delta 20 acmbQmKZ~FHG%qg~0}v=n@NMMoX9oZ+O#|ov diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc index 8744b58559c9da59a7dd0234313fbc07dcbc6d35..00dae41182e3da9adceb7b095739cca44782f5d4 100644 GIT binary patch delta 20 acmaD6{vw?FG%qg~0}#|D%5UVps|^51Nd`Lr delta 20 acmaD6{vw?FG%qg~0}v=n@NMM2s|^4{!3Bl@ diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc index 10c5ebd14c4477afd616c1cc8e6a5b857c617d65..f42e820cc17d907469cc7ebb8ba10ac3515e8e57 100644 GIT binary patch delta 20 acmZ3ZxJHrtG%qg~0}#|D%5UUeC;$LAHU$6x delta 20 acmZ3ZxJHrtG%qg~0}v=n@NMK?C;$L5t^`W} diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc index d40ca567278803c3ca4707d1bd122dbb603f5cc2..dc4f48d64b41010598b2e66a27bf0f2180198485 100644 GIT binary patch delta 20 acmX@kdz_d1G%qg~0}#|D%5UV}!v+92lm#CE delta 20 acmX@kdz_d1G%qg~0}v=n@NMMY!v+8}3J;KW&CAQh00ec3@*BDTaR2}?ngsCx delta 20 acmeAa>J;KW&CAQh00hbsd>gs{aR2};5(GQ| diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc index 6f6387809921fe816067b6bf1ee57bf6f3c52f90..0c07209c2b79d92d54a279223cd16e180315ee16 100644 GIT binary patch delta 22 ccmdmensN7OM()$Ryj%=GP?spbk$Xcb09J$s*Z=?k delta 22 ccmdmensN7OM()$Ryj%=Gpe(_+k$Xcb08#t~BLDyZ diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc index 17a8503bc84b7130262364c689e94bc67eeeced7..9f97c5c4840355c5b98037255acfd2b6922a6a32 100644 GIT binary patch delta 20 acmdnRxr>wgG%qg~0}#|D%5UUe&jJ87`ULI( delta 20 acmdnRxr>wgG%qg~0}v=n@NMK?&jJ83as)X5 diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc index aa958c206eb79ce6b0d36bb48451b9ee7f648324..d0ba522eb97e90f199a812998cc754ced7093c9b 100644 GIT binary patch delta 20 acmeCw=+xjo&CAQh00ec3@*BDT2?GE#y#*)$ delta 20 acmeCw=+xjo&CAQh00hbsd>gs{2?GExH3V}2 diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc index 25d0eb1273eac38dd681d18b5079e77eb7e39965..b9bd9b4368c8021532ea73efa707dda86338834f 100644 GIT binary patch delta 20 acmaFD_k@r8G%qg~0}#|D%5UV3WCs8|K?L~# delta 20 acmaFD_k@r8G%qg~0}v=n@NMLdWCs8@xdcQ2 diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc index 3c06d2c31b5c57ab0f371b0a9c92717167215ba1..a4add91a01f1836df81170bb617460b64a8515ed 100644 GIT binary patch delta 20 ZcmZoxZ&v3%&CAQh00ec3@*BA;gaI+B1e5>( delta 20 ZcmZoxZ&v3%&CAQh00hbsd>gqdgaIuf1K$7u diff --git a/env_web/Lib/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc index 0bdf2542717ac24776f2b5bd7b18b93e575967b8..3c779fe3655117769c3063b59279547911f30a63 100644 GIT binary patch delta 20 acmdn1yH}U{G%qg~0}#|D%5UV}BnALGlm$@$ delta 20 acmdn1yH}U{G%qg~0}v=n@NMMYBnALC3f|M()$Ryj%=GP?spbk((f|M()$Ryj%=Gpe(_+k((;Q#;t diff --git a/env_web/Lib/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc index 86948a88b9e7d625918e45baaf8d5a13d6a3815b..74d7666619200ee496e37b5d1bbe123cd7c18a33 100644 GIT binary patch delta 20 acmew+_)U=eG%qg~0}#|D%5UU;%>e*Feg(Dw delta 20 acmew+_)U=eG%qg~0}v=n@NMLN%>e*A_5}d| diff --git a/env_web/Lib/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc index 3f2d597c58e2b7d1db29d17add616ef6fa4d6e24..d1539a437431b17f2fa7ac5cd3e2f39c5c76b0de 100644 GIT binary patch delta 20 acmZ1{zD}I`G%qg~0}#|D%5UUe%nblG83gSB delta 20 acmZ1{zD}I`G%qg~0}v=n@NMK?%nblBkpwsZ diff --git a/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc index 0afd669f27747153135272bfff0ab3d2f1efd7d9..77e0ecc95fbbe8b2b11a6b329e803d13a8acf5b9 100644 GIT binary patch delta 19 ZcmaFI_>PhLG%qg~0}#|D%1`8e3;;JE1y%q6 delta 19 ZcmaFI_>PhLG%qg~0}v=n@J-}?3;;7t1fc)` diff --git a/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc index b73fe4880336c89fba6681a70b4beaed0c647bc2..5d107ed912068321564a903c1fd4b10e19111c3d 100644 GIT binary patch delta 20 acmX?NeZ-pkG%qg~0}#|D%5UV}DGLBTs|ASw delta 20 acmX?NeZ-pkG%qg~0}v=n@NMMYDGLBPBLvg{ diff --git a/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc index 0c0926812abfd362edbca8e738c3b3b88a92164d..a20984808d4c4c89e0edb5bc6e6816d70f32d19e 100644 GIT binary patch delta 20 acmZ4Izs{fgG%qg~0}#|D%5UUetPTJ^6$N>_#1!w>O delta 19 Zcmeyu_=S=CG%qg~0}v=n@J-}?2>>)J1hW7D diff --git a/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc index de10125ad770b40016508e39d4bc3c9a47a1069a..2cb45b038f536da67f0dc71f858a02edb72ce4df 100644 GIT binary patch delta 20 acmdmCyTg|IG%qg~0}#|D%5UUeD+d5Q6a{Jk delta 20 acmdmCyTg|IG%qg~0}v=n@NMK?D+d5Lj0Cj+ diff --git a/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc index 3b62c7fb8d9faacacd35cfb66d1bf6314121faa2..60da45e28550246956d05e2cb818cbc3879a2555 100644 GIT binary patch delta 20 ZcmZqVZ{+7b&CAQh00ec3@*BC!*a0o=1X2J1 delta 20 ZcmZqVZ{+7b&CAQh00hbsd>gsT*a0bJ1DyZ> diff --git a/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc index 71c3faeeed50b02aab1b5ad823f91752e5c478ce..7251a7a390324e567e2354eab66bdb80b013fe3f 100644 GIT binary patch delta 20 acmZ3?znGuyG%qg~0}#|D%5UV}#0CI21O)*A delta 20 acmdnXyO)>yG%qg~0}v=n@NMMY#0CH|d<0AY diff --git a/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc index 39aff8d03361827cbae3c0d3e03e33af2fd16fc7..ad1c9be3d338dd2d98f8f3264ac3d3dba512c0fb 100644 GIT binary patch delta 20 acmbOvFiC*>G%qg~0}#|D%5UUm=KugNx&#OS delta 20 acmbOvFiC*>G%qg~0}v=n@NMK~=KugJG6Pcp diff --git a/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-312.pyc index ed68a00abbb7c752930c9a400f13f5e091645495..3d91cd8905de3c4cc1173c70bed325e5600413cd 100644 GIT binary patch delta 20 ZcmZpYZ<6Oe&CAQh00ec3@*BC!`2jFp1bqMi delta 20 ZcmZpYZ<6Oe&CAQh00hbsd>gsT`2j1{1IPdX diff --git a/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc index 8d9dd42f4ac3edc3822507c236ac702e0aa88733..1e6ed51daf5d0e0f407a33285e6e7385f7673476 100644 GIT binary patch delta 20 acmdnYw3&(fG%qg~0}#|D%5UV>U<3d%;{-?m delta 20 acmdnYw3&(fG%qg~0}v=n@NMMQU<3dzTLY5- diff --git a/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-312.pyc index fdc310b46d36e935776b2b934a2514be398851f2..5940c86ce35582df7cc0aea2923571976733c92f 100644 GIT binary patch delta 20 acmX@acZiSsG%qg~0}#|D%5UU0X9oZ_@dT3q delta 20 acmX@acZiSsG%qg~0}v=n@NMKaX9oZ>X#?H> diff --git a/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc index 2caf388d5734442af0d450567669fdb531739a06..284112deff1741ff605b3f4fff83aabe05b87de7 100644 GIT binary patch delta 22 ccmaFU!StqsiTgA!FBbz4)FsMq08`Eeh5!Hn delta 22 ccmaFU!StqsiTgA!FBbz4C`<5d08d5*(EtDd diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc index 556b7ef30e23f4b30ed54fa4afb6854941175cd9..8fee7cbcf1cf359b3571969359fe3b55c45ab4c7 100644 GIT binary patch delta 20 acmX>hdqS4`G%qg~0}#|D%5UV}%Lf2E1O-X} delta 20 acmX>hdqS4`G%qg~0}v=n@NMMY%Lf29d<2yM diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc index cc4908cd89c14a80c9e98e1cc552716e111ea4c3..f60a81f10a8c3dfabf95bc7f6207435c54478db4 100644 GIT binary patch delta 22 ccmeyqg7NzbM()$Ryj%=GP?spbkvk^@09rBzwEzGB delta 22 ccmeyqg7NzbM()$Ryj%=Gpe(_+kvk^@09C3600000 diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc index 4e814aa014c7786e3f8697bfd3afe6cd3bccc61e..81b1c0aa1ba685240666c475156991c8cbc55e02 100644 GIT binary patch delta 22 ccmeyjoblgsM()$Ryj%=GP?spbk^6Hn09-c*M*si- delta 22 ccmeyjoblgsM()$Ryj%=Gpe(_+k^6Hn09UUDk^lez diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc index 5e5ade34d3cf4f4db0881101ccb116289243a301..2d3ccf608a1d9f6881b52c9446161758ddea8a94 100644 GIT binary patch delta 22 ccmdnKhH3j6ChpU`yj%=GP?spbky~dP08n)XK>z>% delta 22 ccmdnKhH3j6ChpU`yj%=Gpe(_+ky~dP088x!i~s-t diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc index 740e972395274d2305d9bdbef5c51ae4a72f3459..dee8e5fdf5f3d058b14e56aac947b582e6a1a02a 100644 GIT binary patch delta 20 acmca@aod9XG%qg~0}#|D%5UTjkO2Td)&)lZ delta 20 acmca@aod9XG%qg~0}v=n@NMJ{kO2TZP6Uzw diff --git a/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc index 70331a0b587a9971c9ec6efc5146a10830f9e05d..cb783ac1254d533926df6f7f4fe79d913ce6ea51 100644 GIT binary patch delta 22 ccmey>$n>j`iTgA!FBbz4)FsMq$n>j`iTgA!FBbz4C`<5dPhLG%qg~0}#|D%1`8e3;;JE1y%q6 delta 19 ZcmaFI_>PhLG%qg~0}v=n@J-}?3;;7t1fc)` diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc index d19f005b6421385ed1ba3c7d17753b59c78e92ca..360ad6b0f24b8efd406b443fac8cdba04199c1ff 100644 GIT binary patch delta 20 acmX@bd5V+!G%qg~0}#|D%5UV}&jJ8AdIcT; delta 20 acmX@bd5V+!G%qg~0}v=n@NMMY&jJ85@&suB diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc index b1721d5be8eba38e1025729087dc146f387c77d0..ae73cf0c4effac3d705f74de1bd5ad98ae6648b2 100644 GIT binary patch delta 19 Zcmey$_?40SG%qg~0}#|D%1`8e1pqiB1#18R delta 19 Zcmey$_?40SG%qg~0}v=n@J-}?1pqWq1hxPG diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc index 03fa200d77d7f1e90d3ce9d27f02c6dbad88d370..3823615037a9fd17a5d08cfd392c8825731f0b26 100644 GIT binary patch delta 22 ccmcbxp7FwZM()$Ryj%=GP?spbk^5*k09CmL(EtDd delta 22 ccmcbxp7FwZM()$Ryj%=Gpe(_+k^5*k08udp8~^|S diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc index 8a182c1d132caf191f004eebc500e9f44d14fae2..2d71cb296da21fccbb1fffbba348215bb2126919 100644 GIT binary patch delta 19 Zcmey#_>++=0AnWyu>b%7 delta 22 ccmaF=0A8O4`~Uy| diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc index adef704245ab08c40cd2f82867ff8bc066f5499d..7b76c719e8996e79e61709eb0fcf87abb813f71d 100644 GIT binary patch delta 22 ccmbRJn{oDUM()$Ryj%=GP?spbk$XZd09cF$@Bjb+ delta 22 ccmbRJn{oDUM()$Ryj%=Gpe(_+k$XZd08|79I{*Lx diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc index 192925a4a4401d868847e27ebf3373a780e8f7dc..7ae2f7c57b4a94e3968189de5ae5e65a8c8d7d72 100644 GIT binary patch delta 20 acmaE9@X~<$G%qg~0}#|D%5UV3lK=og;ssp* delta 20 acmaE9@X~<$G%qg~0}v=n@NMLdlK=ocS_G&7 diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc index cd0b7eb4b3d148d3024d6361635ee9026468d57a..f46f93c5979c82556a6bf4b1d22aa940bc6ee339 100644 GIT binary patch delta 20 acmdlSxH*vfG%qg~0}#|D%5UUep#cCtCIyWE delta 20 acmdlSxH*vfG%qg~0}v=n@NMK?p#cCoo&?wc diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc index dd90e70611900acae042ba69af4b5c37153a3dd7..fb0b88c8236df9186cb1680d28f66e3f5483158a 100644 GIT binary patch delta 20 acmeyM_CbyNG%qg~0}#|D%5UUO6$Su7jRjc% delta 20 acmeyM_CbyNG%qg~0}v=n@NMKy6$Su31q7r3 diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc index 952f40662628b26dda9c35180a455a18084dfa66..c61ae45f7e243196a06e58687d1cf9dde9c6c8d6 100644 GIT binary patch delta 20 acmX>Xc`lOsG%qg~0}#|D%5UU8tOEcXc`lOsG%qg~0}v=n@NMKitOEc)`UO1z diff --git a/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc index 328af3225adfec903bf2276ca9d7d6c26daffdf6..75a27613a8e24168bd1cde77abb6fcdc59b45f78 100644 GIT binary patch delta 20 acmaEn@FIcxG%qg~0}#|D%5UV3H2?rek_FNL delta 20 acmaEn@FIcxG%qg~0}v=n@NMLdH2?ra3I!bi diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc index 1940a4469c7ccf17c88f3f824099a3650f059e73..bd05377348210bf570aea7abce9d51314bfec69e 100644 GIT binary patch delta 19 ZcmaFK_>z(PG%qg~0}#|D%1`9J2LLu_1xEk? delta 19 ZcmaFK_>z(PG%qg~0}v=n@J-~t2LLjZ1d;#% diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc index f0b0b873e8fbaa0a298bf1d5be3ed1bac1fdbf1f..261f2a03924b40fc279a3aaf57a10cba98bf017b 100644 GIT binary patch delta 20 acmcbod{3GCG%qg~0}#|D%5UVpEC>KUPX(I* delta 20 acmcbod{3GCG%qg~0}v=n@NMM2EC>KP#{}j8 diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc index decfa03cb6ccfb42f0edb8582010baf52f558807..b15b2947fa0121adbece9bb1a3bc6d2c4b85ef4c 100644 GIT binary patch delta 20 acmeys_koZ5G%qg~0}#|D%5UUOWd{I0Aq5=( delta 20 acmeys_koZ5G%qg~0}v=n@NMKyWd{H`nFMG6 diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc index cee3d1ff5a1630aafd95e0c98df0beeca573297f..c0d7754956768f67e3f16dca701b0af0fcff1d98 100644 GIT binary patch delta 20 acmbOrJVBWIG%qg~0}#|D%5UUutcv_JAG%qg~0}#|D%5UU8zySa`#sxJ1 delta 20 acmX>tcv_JAG%qg~0}v=n@NMKizySa?J_LXO diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc index 95697ce63ac57b94992b0deacd9e6ced22d6291e..fe8961d2f82915f07a267b706b20124f5d9630ac 100644 GIT binary patch delta 20 acmcbweP5gVG%qg~0}#|D%5UVpA_@RNn+37} delta 20 acmcbweP5gVG%qg~0}v=n@NMM2A_@RJ69oML diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc index 823ec0e3a5b97bfb6fff7ca9b34181b59ad4d5ce..d78baa2628754a71b6b921239612f2efb5ef22c5 100644 GIT binary patch delta 20 acmcb_dWn_$G%qg~0}#|D%5UU8&IABCCgq-1pq6~1IGXW diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc index 32a14b4bfb983e378569805f44beb0e9cbdb7f78..d1009da70c010678a5e8bbcaf65bcd5ad9ebfdc2 100644 GIT binary patch delta 20 acmbOzGf{^7G%qg~0}#|D%5UUm;{yOONCYDQ delta 20 acmbOzGf{^7G%qg~0}v=n@NMK~;{yOJzyodo diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc index 887eda566f208b136d76771340b00068aa51f97e..f487d0660cc5a2f2b3a16ec6ffb8a50c7fbf6936 100644 GIT binary patch delta 20 acmX>gc|el;G%qg~0}#|D%5UV}$^!s7G6g6A delta 20 acmX>gc|el;G%qg~0}v=n@NMMY$^!s2sswWY diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-312.pyc index 3cfc01532ee920b5c37cc7ab97cb828821710ed5..4d9da1c03b0e56fdd621cafbab3aff0a8e7260fe 100644 GIT binary patch delta 20 acmbOtI7N{AG%qg~0}#|D%5UWEjbVi8#G%qg~0}#|D%5UU$jbVi8#G%qg~0}v=n@NMLFTRO9eFm delta 20 acmZ2sy~3LNG%qg~0}v=n@NMLtD+>TM!vuf; diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc index 6b789afb381b6ce152dda689ef04cd72b9ff8cb7..3fe66f1cc71d32d68145de7292b389c1161be573 100644 GIT binary patch delta 20 acmbQ8H9L#@G%qg~0}#|D%5UTrFa-cT_XPw1 delta 20 acmbQ8H9L#@G%qg~0}v=n@NMK4Fa-cPZv;;O diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc index 057b0870664e7a7d21542fd8ca63ff07dd0297e8..649383543b798e994e4e6da0e9108be8c2a612f0 100644 GIT binary patch delta 22 ccmaFg#q_?5iTgA!FBbz4)FsMqR004zbOi7K delta 20 acmdnuvc-k_G%qg~0}v=n@NMMQR004u>;yXi diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc index 11623ea37e75d426badb2bfeba991ee5074710c2..c2d17855fb7685df78663e91b08526a89d80590e 100644 GIT binary patch delta 20 acmX>ScO;JcG%qg~0}#|D%5UVh)CT}UsRdyG delta 20 acmX>ScO;JcG%qg~0}v=n@NML_)CT}QAq1=d diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc index 4bf2e3844b604a1f9b25283c73e68c18e728355f..5802f7633403dfca15a764214f96700099ed8d5c 100644 GIT binary patch delta 20 ZcmeAQ?+WKW&CAQh00ec3@*BD9wE;Pq1t9gszwE;B|1Z)5R diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc index 9a542820b346f86fa1b56cb66fff828311866c86..641e3adc4cb35128ef69d788a51fa80f3dfab5c6 100644 GIT binary patch delta 20 ZcmeAc?iS`g&CAQh00ec3@*BAuH~}yZ1bP4f delta 20 ZcmeAc?iS`g&CAQh00hbsd>gqNH~}k%1H}LU diff --git a/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc index d0609fe3636c3abb13baf7087fb0afb3a9b844be..5dfd2ad657a4898123709e2296c7fb1885dfd902 100644 GIT binary patch delta 20 acmZ3cyiA$)C- diff --git a/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc index 97f8230bbe97cd48b7b9512ca2c3c870eaa26f58..48e6a8974ce0922cfde61ef0a0b489cf68b9bd9b 100644 GIT binary patch delta 22 ccmcaPh4JPTM()$Ryj%=GP?spbk=xG;08$bLDF6Tf delta 22 ccmcaPh4JPTM()$Ryj%=Gpe(_+k=xG;08NSobN~PV diff --git a/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc index 31f5d496899c9a9d702e22a71548a7910cdb9ad2..27a5b8e9e11489fbf3b1a1743f75e2b5211b94d9 100644 GIT binary patch delta 20 acmaEA{nVQKG%qg~0}#|D%5UVpB?|yU(*^7R delta 20 acmaEA{nVQKG%qg~0}v=n@NMM2B?|yQO9eLo diff --git a/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc index 4f1b477ffb858f73bfcc01aa1bd4fea365fa0009..356d371ef4713ac45e89cb7e503350accb3ca414 100644 GIT binary patch delta 20 acmaEx_%@OIG%qg~0}#|D%5UU;WB>q4egp~_64p0 diff --git a/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc b/env_web/Lib/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc index 1e7f9868e26480299d82a1b6127e65f69e550f9c..77bceb61e7dc507c6878dafadd2ad331d1f24f9a 100644 GIT binary patch delta 22 ccmezUi1GI$M()$Ryj%=GP?spbk-MM}0AtYyQUCw| delta 22 ccmezUi1GI$M()$Ryj%=Gpe(_+k-MM}0AEQ4od5s; diff --git a/env_web/Lib/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc index 6f1ca2258ab98d93baa6ca1bd0f91db1ce79e0f4..5608606a775305b1099d14c386c0757097e0c14d 100644 GIT binary patch delta 20 acmeyT@=t~PG%qg~0}#|D%5UT@76Jf6bOn9@ delta 20 acmeyT@=t~PG%qg~0}v=n@NMKS76Jf1>;%aG diff --git a/env_web/Lib/site-packages/pip/_vendor/__pycache__/six.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/__pycache__/six.cpython-312.pyc index 37e3f957968e8a59dc042cdb4ec1ee69c0478fd8..fbe364804e507f3c9342c1e1a61cde3e23615f38 100644 GIT binary patch delta 22 ccmcbAi0S?zChpU`yj%=GP?spbkvn7|09uj;@Bjb+ delta 22 ccmcbAi0S?zChpU`yj%=Gpe(_+kvn7|09FbHI{*Lx diff --git a/env_web/Lib/site-packages/pip/_vendor/__pycache__/typing_extensions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/__pycache__/typing_extensions.cpython-312.pyc index 2b823bc97a63915d416a6c68595067694c6641c2..c7ccee5b3f36d0ff1c007a6bad1b76603dc2a57a 100644 GIT binary patch delta 25 fcmaF8ll}EhcJ9->yj%=GP?sp*$i0=D@xdJcakL0n delta 25 fcmaF8ll}EhcJ9->yj%=Gpe(`H$i0=D@xdJcYYhjZ diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc index 4446491e6e98f9523220514ca4133083cf36e06c..be752d9edcc71d04d8dd30b9186bb9034749d0c2 100644 GIT binary patch delta 20 acmdnMzJZgq-xd18{1E~N2 diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc index 36ffa3c698057e3369ed9b22e85c8f48ed40ff44..21de95a778d1cb6ebe5e8f03a8662165a920bae2 100644 GIT binary patch delta 20 acmaE5^va0)G%qg~0}#|D%5UV3mjnPpQw3!J delta 20 acmaE5^va0)G%qg~0}v=n@NMLdmjnPk%LK3h diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc index 0a600c3457f60df589c2b1b0fdfb3addb432d1a3..b45901282d4d5fe64c1bcff84998bbbf1c5e31f9 100644 GIT binary patch delta 19 YcmeB{>z3m_&CAQh00ec3@(a270W4|+1^@s6 delta 19 YcmeB{>z3m_&CAQh00hbsd<(hx0VtOPQ2+n{ diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc index 154ba1357525fc30d062ae6466b9d0616f5278a0..269a958b4fa02675951e24e48adc84b6d83839e0 100644 GIT binary patch delta 20 acmcaucd?H9G%qg~0}#|D%5UU$vj+f4K?T?V delta 20 acmcaucd?H9G%qg~0}v=n@NMLFvj+e~xdkHt diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc index c118454527751b5024c259747199bb64fbfd0b60..303c56ccd9c5f492bb5b6adf293c0a8a1e741c1f 100644 GIT binary patch delta 20 acmZ3gv{Z@vG%qg~0}#|D%5UVB5(EG>Lj-OB delta 20 acmZ3gv{Z@vG%qg~0}v=n@NMLl5(EG+y92oZ diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc index db7bfab80298ae3fef84d9e8fd13c70ac2f1bba2..61f69daa5c65e2c150f93eb11ddb946b8edabc41 100644 GIT binary patch delta 20 acmca$a>0cAG%qg~0}#|D%5UU$l>z`hj0GG3 delta 20 acmca$a>0cAG%qg~0}v=n@NMLFl>z`d1O#UQ diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc index 9781359fd37535b4f9700fc8d1cd6841a707e232..c547ca8dd285516e9a756b8e9f82d73eb16d18be 100644 GIT binary patch delta 20 acmZ2)wBCsOG%qg~0}#|D%5UUWkpuua8w9if delta 20 acmZ2)wBCsOG%qg~0}v=n@NMK)kpuuVlLP+% diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc index b823d6bf7bb05bcc178b8fe9fe0abe989aeeb1eb..f318d096f56478287cc5006a5185e8a1d65c7735 100644 GIT binary patch delta 20 acmdnOyM>qgG%qg~0}#|D%5UUe$p!#5oCM|o delta 20 acmdnOyM>qgG%qg~0}v=n@NMK?$p!#16a+B< diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc index ff7e66552a5c320da56a105f5f67564e6e5f1e0a..2498c4584387028f41ce361cbf150eb22ceb0df1 100644 GIT binary patch delta 20 acmcc1e3zN~G%qg~0}#|D%5UVp#0UU7mjy@w delta 20 acmcc1e3zN~G%qg~0}v=n@NMM2#0UU34+N6{ diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc index 43f1ea2b2847f206e80878dc9af374885e392eff..86d64520fa8d104ac3d68554eb859d10d260d4af 100644 GIT binary patch delta 20 acmX?MbHaxEG%qg~0}#|D%5UVhl>-1ia0M6u delta 20 acmX?MbHaxEG%qg~0}v=n@NML_l>-1d=mcW` diff --git a/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc index aa3519a8235813a618bd5d479f8ccde9ee262d57..c6a7fb3a33db4a28fbb7347467fae0f7bddbec8c 100644 GIT binary patch delta 20 acmca3dPkJ|G%qg~0}#|D%5UVp$OQmB00nXY delta 20 acmca3dPkJ|G%qg~0}v=n@NMM2$OQm6cm%xw diff --git a/env_web/Lib/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc index 62400c817ad8d1b4c2a131440e805d18601d37fa..13641b689f3c8b0db0082b5b586162e0eb75027c 100644 GIT binary patch delta 20 acmaFC^n!`|G%qg~0}#|D%5UV3Wdr~_D+K2N delta 20 acmaFC^n!`|G%qg~0}v=n@NMLdWdr~=qXaSl diff --git a/env_web/Lib/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc index 2f35371b35b1a1dd6eec6d1922e8dd86fccb7dcd..6bc321a7cc89fee9e8147932a5128ca31ed5f453 100644 GIT binary patch delta 20 acmZ3_x}KH$G%qg~0}#|D%5UUe!UO;_umr;Z delta 20 acmZ3_x}KH$G%qg~0}v=n@NMK?!UO;>Ctc3O=4G%qg~0}#|D%5UU$;06FWeFVY) delta 20 acmX>tc3O=4G%qg~0}v=n@NMLF;06FR^#lz7 diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/__init__.cpython-312.pyc index a9d8ae52b7ab61ac7f3a94d09170639a802fb3cd..3b496de013e1a5988791a0c7a4b67b245cbd7661 100644 GIT binary patch delta 20 acmZotX;R@n&CAQh00ec3@*BCo3jzQ#69owX delta 20 acmZotX;R@n&CAQh00hbsd>gsH3jzQwiv&~v diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5freq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5freq.cpython-312.pyc index b3357757695be0aa4bd92a2d102fc3eedddb2434..9a23859745c91ee39c14bd3de8edb05f889f2624 100644 GIT binary patch delta 22 ccmaEPh4JMTM()$Ryj%=GP?spbkvlF60A8X7`2YX_ delta 22 ccmaEPh4JMTM()$Ryj%=Gpe(_+kvlF609qObL;wH) diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5prober.cpython-312.pyc index 71cf8781908aa0abf3a6c775401e74d63a844901..1fd947cd7d1d310f1a409413957df7dabf7d48d7 100644 GIT binary patch delta 20 acmbQrJ(ZjLG%qg~0}#|D%5UWEVg&#&djy04 delta 20 acmbQrJ(ZjLG%qg~0}v=n@NMMoVg&#z^8?QS diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/chardistribution.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/chardistribution.cpython-312.pyc index b0768752fb16e622e36c210e89fe1a3963685237..3773f09a980165ac79e2c790d79adf081f16920c 100644 GIT binary patch delta 20 acmccMeZiaiG%qg~0}#|D%5UU8stN!?(*@N4 delta 20 acmccMeZiaiG%qg~0}v=n@NMKistN!;O9dbR diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-312.pyc index 7b10d1ce3c3e8c3ed2aa299bc5c949cf46d89263..7cca8181af65ead99d0f7494de44bcfdf265ae01 100644 GIT binary patch delta 20 acmX@2a72OoG%qg~0}#|D%5UVh6aWA@(gel; delta 20 acmX@2a72OoG%qg~0}v=n@NML_6aWA%&z diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/cp949prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/cp949prober.cpython-312.pyc index f1ed8e8e82a6f9b5f3c1bc004d4660aedd5899b6..eef48c379f4016f0844bc4b517a415df67f6ee58 100644 GIT binary patch delta 20 acmbQoJ&&9FG%qg~0}#|D%5UVJ%nAT8;{=}o delta 20 acmbQoJ&&9FG%qg~0}v=n@NMLt%nAT4TLbC< diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/enums.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/enums.cpython-312.pyc index a1aa9576893e438a74f71ad87df0ff27b405b092..ad5064349a4db81b728a60cf8763419b686ca22e 100644 GIT binary patch delta 20 acmca7eovhHG%qg~0}#|D%5UVp%nblNnFW0S delta 20 acmca7eovhHG%qg~0}v=n@NMM2%nblJ5d_Ep diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-312.pyc index 7b9a937a52344d5c64791f6d0a218b7492e916e7..4c2f54f2b4f83f6541a876c03f6ee08f2fab1db5 100644 GIT binary patch delta 20 acmZorX;9%l&CAQh00ec3@*BCo3IYHz!vzBX delta 20 acmZorX;9%l&CAQh00hbsd>gsH3IYHvI|NPu diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/escsm.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/escsm.cpython-312.pyc index 7b49b3fdae06f76594ac9f73c74889221811c60a..70a431992dd748be545f5dea2ed160ed06624eab 100644 GIT binary patch delta 20 acmexS{-d1xG%qg~0}#|D%5UU;YYhNTSq8fR delta 20 acmexS{-d1xG%qg~0}v=n@NMLNYYhNO(FO(p diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/eucjpprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/eucjpprober.cpython-312.pyc index 41dd6596e62d713bff07008781bc467485dffd27..ff10fcbb9a35318bf63a1774e021ae6c9aede8ce 100644 GIT binary patch delta 20 acmX@9bW(}?G%qg~0}#|D%5UVh69fP{;{@6O delta 20 acmX@9bW(}?G%qg~0}v=n@NML_69fP@TLdKl diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrfreq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrfreq.cpython-312.pyc index a7827c32311603adde0dcc7fc13fb3e32469969d..f5a8f2be826531a314ebb11f97c5c9bab707d160 100644 GIT binary patch delta 20 acmcZ;cPEbfG%qg~0}#|D%5UTj)CT}YX$7eO delta 20 acmcZ;cPEbfG%qg~0}v=n@NMJ{)CT}T;RN&m diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrprober.cpython-312.pyc index 44ddecca06f078f226f313d20a9e5c2e194445d2..d4756ff5ea367ae3adf9d8985cf87094da5d6193 100644 GIT binary patch delta 20 acmbQiJ%gM3G%qg~0}#|D%5UWEWd#5*^8}3m delta 20 acmbQiJ%gM3G%qg~0}v=n@NMMoWd#5%YXjH- diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwfreq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwfreq.cpython-312.pyc index 3ccee5d8e1d688e2d09079743461d9a808281b2c..56bbd80978cbe884fed35ad98f2696230fbf8c16 100644 GIT binary patch delta 22 ccmaENh4I}LM()$Ryj%=GP?spbkvlmH0AG0r2mk;8 delta 22 ccmaENh4I}LM()$Ryj%=Gpe(_+kvlmH09x?|Qvd(} diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwprober.cpython-312.pyc index d01f11bc2b084969d75372035bf70cd2310733c8..f48264dc5d33a907a394f923554ccdc7c773f3d6 100644 GIT binary patch delta 20 acmbQiJ%gM3G%qg~0}#|D%5UWEWd#5*^8}3m delta 20 acmbQiJ%gM3G%qg~0}v=n@NMMoWd#5%YXjH- diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312freq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312freq.cpython-312.pyc index ce95cec70e58b6ec5a48de371d90a2eeb3d9266b..d9b0ae1961aa54bd3011bbaebf7d5d8ec2add4fb 100644 GIT binary patch delta 22 ccmaDbmGQw;M()$Ryj%=GP?spbk^8C_090lMzyJUM delta 22 ccmaDbmGQw;M()$Ryj%=Gpe(_+k^8C_08icq3jhEB diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312prober.cpython-312.pyc index 765aea73d178c0a58b7acf708d890e23cb2c9f08..412f57ba71210fe3ed2396aa2490e25b028492f0 100644 GIT binary patch delta 20 acmZ3=y_B2#G%qg~0}#|D%5UVJ#R>p2`vkNA delta 20 acmZ3=y_B2#G%qg~0}v=n@NMLt#R>o}a|8bX diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/hebrewprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/hebrewprober.cpython-312.pyc index d335276288a6e5427c385a86b79bc79b5be91641..4101bef224c3cf73f896d986b4f8fbb244be1bf0 100644 GIT binary patch delta 20 acmaE%`$CudG%qg~0}#|D%5UVpD+T~UOa;;a delta 20 acmaE%`$CudG%qg~0}v=n@NMM2D+T~P#04Dy diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/jisfreq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/jisfreq.cpython-312.pyc index ab8808f6451d869f4904fa6f78fff6da88e5b895..3ac26f43f99321b0f598c55e829ac9435e1eeb46 100644 GIT binary patch delta 22 ccmdnGmT~J^M()$Ryj%=GP?spbk$Y7b08rrudjJ3c delta 22 ccmdnGmT~J^M()$Ryj%=Gpe(_+k$Y7b08Cj0#sB~S diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabfreq.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabfreq.cpython-312.pyc index a8e52f1b6ee502352f37be459fe8bde0873555ea..d31e1b9f55c7f4f9d23348f833895f7f59bc3da9 100644 GIT binary patch delta 25 fcmaFb!TPj=mHRX=FBbz4)FsL{a&P5kjB)`0W&;Mu delta 25 fcmaFb!TPj=mHRX=FBbz4C`<4)a&P5kjB)`0Ut9(g diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabprober.cpython-312.pyc index 6437ed299f892e86b7eb505a3ae2a8ca1b0de5f4..f48d2fce00fc9b7e67a9f0f11641864085ee51a6 100644 GIT binary patch delta 20 acmbQkJ%^k7G%qg~0}#|D%5UVJ$O-^4lLVOn delta 20 acmbQkJ%^k7G%qg~0}v=n@NMLt$O-^03j^c; diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/jpcntx.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/jpcntx.cpython-312.pyc index c2bed173d42bfb98ad9e87ad76c747e2e11e15f5..9c52a4b9efd473235c0eca991ba170a49ac1aff7 100644 GIT binary patch delta 22 ccmZ3!m1+4_ChpU`yj%=GP?spbk$cW808l6frvLx| delta 22 ccmZ3!m1+4_ChpU`yj%=Gpe(_+k$cW8085|+@&Et; diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-312.pyc index d32d1d9bdaf27acb1401b966e0998760b5f8f04b..a59a0c5d97a7aa90a6fb63a077db9b01eb35dfa8 100644 GIT binary patch delta 25 fcmcc9$$F=gmHRX=FBbz4)FsL{a&P5kyyyY|Wp@WJ delta 25 fcmcc9$$F=gmHRX=FBbz4C`<4)a&P5kyyyY|UeE@5 diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-312.pyc index 5ea0fd0b906481557f85c5b19de3bb9dd9797b5a..f7195d8dc1dff72b9229081344a98f268e9c9b49 100644 GIT binary patch delta 25 fcmaEMljYe>7Vgu$yj%=GP?sp*$i0=D@wN^CbuI_f delta 25 fcmaEMljYe>7Vgu$yj%=Gpe(`H$i0=D@wN^CZifdR diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-312.pyc index c119af1b533522e6aee9d7b4241fb4c199495776..1bcbbbd2b3ae4e5ed33e3e7ab277c850157193c2 100644 GIT binary patch delta 25 fcmaEQm*weQ7Vgu$yj%=GP?sp*$i0=D@s=I{b+ZTB delta 25 fcmaEQm*weQ7Vgu$yj%=Gpe(`H$i0=D@s=I{Zwv<| diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-312.pyc index 995fbbdf761f1761da47381c4d68bee9b962effe..f7256203868bd18c99a57a348cc623769ca4181c 100644 GIT binary patch delta 25 fcmZ42$-1tSmHRX=FBbz4)FsL{a&P5kTT&V`7 delta 25 fcmZ42$-1tSmHRX=FBbz4C`<4)a&P5kTRssd^ diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langrussianmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langrussianmodel.cpython-312.pyc index 9db91c66ca2de80cbcb924aa55629205a5830245..2303b1711946511473689dc3c4a48b3ed67d98f4 100644 GIT binary patch delta 25 fcmX@RjqU6OXCMak delta 25 fcmbP!pJn=e7Vgu$yj%=Gpe(`H$i0=Du}2>OV0i{W diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-312.pyc index 6c226015275ae72f17cec78f515ef87f4b69140b..9fe8c6f1b5d83a7ffe193ac4eb29ece4d00a378f 100644 GIT binary patch delta 25 fcmex%m*v}C7Vgu$yj%=GP?sp*$i0=D@wFZRc=QMj delta 25 fcmex%m*v}C7Vgu$yj%=Gpe(`H$i0=D@wFZRa!m(V diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/latin1prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/latin1prober.cpython-312.pyc index 77f195a488ce84fd5d06de8680487360af48691c..40bb91bbc5f618fcc1de859a644887fa10d57300 100644 GIT binary patch delta 20 ZcmZoMZ!zaS&CAQh00ec3@*BA;r2#Y<1it_P delta 20 ZcmZoMZ!zaS&CAQh00hbsd>gqdr2#LI1PTBE diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/macromanprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/macromanprober.cpython-312.pyc index 6a19b494541040156128f5412f4ac78ad6c4b5ba..9084418c457529fa7aba1519cad92de69319c0fc 100644 GIT binary patch delta 20 acmdmCvBQGl>q=dUIg9% delta 20 acmdmCvBQGq=Y)&wa4 diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-312.pyc index 4fef0aab26b80cbcd6086c65ce52cef1ec9ae58a..af7035c7261f23afa1fffa4338215f7b91ceb865 100644 GIT binary patch delta 20 acmaDU_fn4gG%qg~0}#|D%5UV3;|BmgQ3Wsn delta 20 acmaDU_fn4gG%qg~0}v=n@NMLd;|Bmb$pm`< diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-312.pyc index 24e8e06970c1c07710f9a3da4897bd7c558cb608..96eb97c311f85b0d54f7a8bb03dc1354b92a035f 100644 GIT binary patch delta 20 acmcb|bB~AnG%qg~0}#|D%5UTjW&;2_2n6B) delta 20 acmcb|bB~AnG%qg~0}v=n@NMJ{W&;2=fCMc7 diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcssm.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcssm.cpython-312.pyc index cb3c1b19ed24ca7a606d883565e29cda9805f0a1..10c98cd4ee71752d104409e69a9f85dec34a7244 100644 GIT binary patch delta 22 ccmbQgj%ofnChpU`yj%=GP?spbky~Us08G3E{r~^~ delta 22 ccmbQgj%ofnChpU`yj%=Gpe(_+ky~Us07x_iNdN!< diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/resultdict.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/resultdict.cpython-312.pyc index 1136b953fa576361452f1ae77a94d98c5867eaa5..f99e8d0ca0f25551b781ec2e9d612b3ad20c4bc7 100644 GIT binary patch delta 20 acmZ3)x`>tgG%qg~0}#|D%5UVJ&IAB4s05q< delta 20 acmZ3)x`>tgG%qg~0}v=n@NMLt&IAB0AOq(B diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-312.pyc index f81ba647bd3800d38a54472a13b757bf051903f7..c5ef9d89ebc5cae6bd67493b79dd817ef27d5da8 100644 GIT binary patch delta 20 acmbPhG}nmxG%qg~0}#|D%5UTrk^}%YO9XxZ delta 20 acmbPhG}nmxG%qg~0}v=n@NMK4k^}%T!vo0x diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-312.pyc index d04c6e5812e59c6c9b326c47f734c2aa5a681696..76c52918f4755741d3c17e67176f5561de4b3025 100644 GIT binary patch delta 20 acmcaFbYF=3G%qg~0}#|D%5UTj;RFCY3k384 delta 20 acmcaFbYF=3G%qg~0}v=n@NMJ{;RFCTg9JYS diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sjisprober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/sjisprober.cpython-312.pyc index f4b25252e049f48bffb0b349ae6e9e73d1e70668..caede7679ee8b95f3da91560b3422eec5dbea29e 100644 GIT binary patch delta 20 acmdm~yi=L`G%qg~0}#|D%5UUeCkOyJhXpJE delta 20 acmdm~yi=L`G%qg~0}v=n@NMK?CkOyE{{(jc diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/universaldetector.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/universaldetector.cpython-312.pyc index bde40e29c5502b4458fdd0e3a2b73cc04e33c42a..56ec26b2faeb0eadf4c7394ef5708a7bd7013e5f 100644 GIT binary patch delta 20 acmbQ9Fg=0$G%qg~0}#|D%5UW6F#rHN>IB~a delta 20 acmbQ9Fg=0$G%qg~0}v=n@NMMgF#rHJVgxDx diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf1632prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf1632prober.cpython-312.pyc index 2f44036977871baf18ef6c7ea41e24421cb0ce28..ab0c058f190e04fad5189c06ef17a45ad70053f4 100644 GIT binary patch delta 20 acmZ4Lx73gOG%qg~0}#|D%5UVBQU?G#i3HpL delta 20 acmZ4Lx73gOG%qg~0}v=n@NMLlQU?Gx0R$%i diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf8prober.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf8prober.cpython-312.pyc index ffe2756d065500df51ca8645112e6b7e367ccf69..39f716e92e52bbc5bc2851478048a01819b86b21 100644 GIT binary patch delta 20 acmbOzIZ=}PG%qg~0}#|D%5UUu;{gCM+60>b delta 20 acmbOzIZ=}PG%qg~0}v=n@NML7;{gCIQUm4y diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/version.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/__pycache__/version.cpython-312.pyc index 644639b971a0d732600dc49d81b66cf7947a743c..ef01667b7325ee4397619dbcffac3d9ccab12f06 100644 GIT binary patch delta 20 acmbQlGKq!zG%qg~0}#|D%5UUmX955&1Ow^- delta 20 acmbQlGKq!zG%qg~0}v=n@NMK~X955zd;>KA diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/__init__.cpython-312.pyc index c6eb41684b2ff5452d78e78fe33910eb70565139..7773e8ef64eb0e0b6681cc6b6d14ef4c3dc61c65 100644 GIT binary patch delta 19 ZcmaFM_?D6TG%qg~0}#|D%1`8e1OPVs1ycY3 delta 19 ZcmaFM_?D6TG%qg~0}v=n@J-}?1OPKA1fBo@ diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-312.pyc index 3bdfd650e457a7203d0a0e4512dc286d6a18c68f..db4767d1ccb2fc4b016c698e5c7d798114d5418d 100644 GIT binary patch delta 20 acmca6e@&kIG%qg~0}#|D%5UU8%?|)QeFb>{ delta 20 acmca6e@&kIG%qg~0}v=n@NMKi%?|)L^#sHK diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/__init__.cpython-312.pyc index 51dc43998f82d9e6b7d32c83e94a256fab5811e4..f9f12c6503c0fce69f4a60454edd67e3b29723a6 100644 GIT binary patch delta 19 Zcmeyw_=%DGG%qg~0}#|D%1`8e4gfc_1!4dI delta 19 Zcmeyw_=%DGG%qg~0}v=n@J-}?4gfRZ1g!u7 diff --git a/env_web/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/languages.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/languages.cpython-312.pyc index 4e97df229cd71de37cd4844ee84909297329704d..2fc868e171e4db3099900eeafa06149e725ffc51 100644 GIT binary patch delta 20 acmX@=bJU0XG%qg~0}#|D%5UVhQUd@$Km|7d delta 20 acmX@=bJU0XG%qg~0}v=n@NML_QUd@xxCDX# diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-312.pyc index 66a079b0549ff9cc4d296721c310195119fee278..a64454a65a3e636d314bbf7a59f726f2e717fca7 100644 GIT binary patch delta 20 acmbQnGL41%G%qg~0}#|D%5UW6W&!{%qyzQ< delta 20 acmbQnGL41%G%qg~0}v=n@NMMgW&!{z90NfB diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-312.pyc index 2efbb3a1e652ea57261495c4dd9b7aa17b4f85db..5aedbf8d9a4bc745738cebc04fbb8fcab63450c7 100644 GIT binary patch delta 20 acmbOsKSQ4TG%qg~0}#|D%5UWE=&y delta 20 acmbOsKSQ4TG%qg~0}v=n@NMMo*#H0l delta 22 ccmX@#z<9oak^3|+FBbz4C`<5d>5$<*&CAQh00ec3@*BDT@&W)c-vtK% delta 20 acmeB>>5$<*&CAQh00hbsd>gs{@&W)YR|HZ3 diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-312.pyc index 9ed531e0d5094764bb91f6a5a098abab6135b06a..72673cf92696d6d4c05c9e2a6e3cddff165c6357 100644 GIT binary patch delta 20 acmaE1|H7X8G%qg~0}#|D%5UVpD-Qrf-39*u delta 20 acmaE1|H7X8G%qg~0}v=n@NMM2D-QrbRRu}_ diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-312.pyc index a6017876130a79d64118bf08af67ea7a9c0c025f..0beb3bc320c88104393a235f1890b63c5b324b9b 100644 GIT binary patch delta 20 acmZ4GzRI2ZG%qg~0}#|D%5UVJuM7Y@Q3Y85 delta 20 acmZ4GzRI2ZG%qg~0}v=n@NMLtuM7Y;$poYT diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/__init__.cpython-312.pyc index ca433bf68ad0f387fa00a0473963f36a0973dd79..b7e8f002126e38ffe97e48640092ec7951e7e71c 100644 GIT binary patch delta 19 Zcmeys_<@o8G%qg~0}#|D%1`8e3II211zZ3C delta 19 Zcmeys_<@o8G%qg~0}v=n@J-}?3IH>g1g8K1 diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansi_test.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansi_test.cpython-312.pyc index e71c952dbe52db5ac93e75e1d5ceb877c17b4980..8c0437336d0498eede377e6c7abf87857643b58b 100644 GIT binary patch delta 20 ZcmZqGZq?>K&CAQh00ec3@*BCUL;*631f&1} delta 20 ZcmZqGZq?>K&CAQh00hbsd>gr|L;)@X1MdI; diff --git a/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansitowin32_test.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansitowin32_test.cpython-312.pyc index 8bad27e825cf56850cb319066516ba9fb19bc924..47154602cbc484f9917c1bf21e78e74d06ff8fca 100644 GIT binary patch delta 22 ccmaFZ%lNRDk^3|+FBbz4)FsMq>4uK)l5 delta 22 ccmaFZ%lNRDk^3|+FBbz4C`<5d5Jh$&CAQh00ec3@*BCC^#D2W1iAnK delta 20 ZcmeB+>5Jh$&CAQh00hbsd>gr$^#CV!Z diff --git a/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc index 18d942be272fcf3a0ab964607e3a5ac46b71222f..e5f25f4e61bec73d74929a36cc3adaa6726d51bc 100644 GIT binary patch delta 22 ccmZ2BlX2NhM()$Ryj%=GP?spbk$bie082&&8~^|S delta 22 ccmZ2BlX2NhM()$Ryj%=Gpe(_+k$bie07kwAX8-^I diff --git a/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc index ed7735a12b03585c7b2f29dbb06a5f23d64389f3..ad9e001ceabe4b41da5590ba9967fd1b9eb5e5ae 100644 GIT binary patch delta 25 fcmaF0k@eL^R_@chyj%=GP?sp*$i0=D@qPpVZ$SsW delta 25 fcmaF0k@eL^R_@chyj%=Gpe(`H$i0=D@qPpVXqpEI diff --git a/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-312.pyc index 12c7e97ca904dd627f2a78e0def3090b88f6f82b..2e0914ccab1df83de7d2fe9a653099f41b978cd8 100644 GIT binary patch delta 22 ccmX@{mhr?}M()$Ryj%=GP?spbk$Z0$0A2D2Q~&?~ delta 22 ccmX@{mhr?}M()$Ryj%=Gpe(_+k$Z0$09k4Vp8x;= diff --git a/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-312.pyc index e6d8a198f012890e8cedcd3d8c1ddcd2ef398c7d..3d5ca6fe56b0ea9d8af646ff39590127e16dec28 100644 GIT binary patch delta 22 ccmdl#m3jYEX71Cxyj%=GP?spbk$cN208ga`;Q#;t delta 22 ccmdl#m3jYEX71Cxyj%=Gpe(_+k$cN2081SPEC2ui diff --git a/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc index 6f4e89ba800961e2c85c6f39ac6216132581918d..8e7c6f5c171a041d56448dcd29a4168a5593399c 100644 GIT binary patch delta 20 acmaFG{)(OZG%qg~0}#|D%5UVp&kO)PF$H-5 delta 20 acmaFG{)(OZG%qg~0}v=n@NMM2&kO)KsRYCT diff --git a/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc index a321278b51c387a1104c96db0b2f28261fc0adab..a714fee9df7f04200769a716fc124c59028cd29b 100644 GIT binary patch delta 20 acmX@dbdHJpG%qg~0}#|D%5UU$W&{8?8w8mE delta 20 acmX@dbdHJpG%qg~0}v=n@NMLFW&{8-lLO=c diff --git a/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc index 65424f5e914c5cc6a3d1b78f7da3ac9b2c3c188c..a0bf56d245ca96addf2ebf06b79cd9244e19eaae 100644 GIT binary patch delta 22 ccmZ3ogn7vlX71Cxyj%=GP?spbkz4W-08DKLHUIzs delta 22 ccmZ3ogn7vlX71Cxyj%=Gpe(_+kz4W-07vBofdBvi diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc index 4c9230cea0d9be42cf9f2331f2d7c09881365798..d6b59a5b153bf7a3346dcd687270ed538de2cf57 100644 GIT binary patch delta 20 acmbQuKAWBUG%qg~0}#|D%5UVJzzhH|*#wLL delta 20 acmbQuKAWBUG%qg~0}v=n@NMLtzzhH^Q3KZi diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc index d992f75d5b38ca67024d7d5f03921a5070c629b3..0125410fcc4b719b86c11f66dca937b322d5ee6b 100644 GIT binary patch delta 20 acmX@Ca#)4?G%qg~0}#|D%5UVh5CQ-?JOs@E delta 20 acmX@Ca#)4?G%qg~0}v=n@NML_5CQ--v;-Ic diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc index 4cc7cc2295b1d9908cc027c14b638f8068ad7cd0..322d9c63c3b9acf6dc9f66b7488e61f6b805277d 100644 GIT binary patch delta 20 acmZ3;zL1^!G%qg~0}#|D%5UVJ#tZ;4$poGN delta 20 acmZ3;zL1^!G%qg~0}v=n@NMLt#tZ;0K?CUk diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc index cde8d0e3a2602842f98fc4c18171039b37022392..f102a2c3739721e9f9096e61d142443db6f18852 100644 GIT binary patch delta 20 acmX?7f25xKG%qg~0}#|D%5UV}X%7HMT?R7% delta 20 acmX?7f25xKG%qg~0}v=n@NMMYX%7HH)dhY4 diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc index f51440761dd45a5eae043ee3522bb41d24ffc522..543c076b8b891cf2ec1b00dd9f54b5a994180764 100644 GIT binary patch delta 22 ccmbQShH1tcChpU`yj%=GP?spbk(+lK082mxa; diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc index e065f024086b51be33833104577819e800d38ce6..6a4479cefa3a2d60ddad69b7d62a35ec9a97aa3d 100644 GIT binary patch delta 19 ZcmZo-YGUF(&CAQh00ec3@)Nng0{|!{1e5>( delta 19 ZcmZo-YGUF(&CAQh00hbsd=t690{|pb1K$7u diff --git a/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc index 21d2fbf47a7c29b30b060c44cdc503d6532bee86..465318e92cee243b00236407e06d9284130a7671 100644 GIT binary patch delta 28 icmX?blk>n$PVUpZyj%=GP?sp*$lc1#xRsk}YYqT}*a$rU delta 28 icmX?blk>n$PVUpZyj%=Gpe(`H$lc1#xRsk}YYqT>5(kI? diff --git a/env_web/Lib/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc index bf7b8c1de6f21d10b6661d2eba09a072894dc607..c9d95be87130a803bed2da8e18729bbb15fb5c0d 100644 GIT binary patch delta 20 acmcb}cae|#G%qg~0}#|D%5UU$V+Q~^Nd&+E delta 20 acmcb}cae|#G%qg~0}v=n@NMLFV+Q~;K|&CAQh00ec3@*BB-D*^yFLj`33 delta 20 acmZp3X>;K|&CAQh00hbsd>grcD*^yAy9BTR diff --git a/env_web/Lib/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc index 23815d77ea3d30263124e715951714504ee2f143..6f354dd9d1f2513789ed2496d5ed74900e954b8b 100644 GIT binary patch delta 22 ccmaEKh3U~1ChpU`yj%=GP?spbkvn`90A1P#CIA2c delta 22 ccmaEKh3U~1ChpU`yj%=Gpe(_+kvn`909jH7aR2}S diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-312.pyc index 7dc291f6acf2d5e059c15fce476460b47219f445..62e011aea4fee1daf374e739ccb37778d0a4721d 100644 GIT binary patch delta 20 acmZ3$x`37YG%qg~0}#|D%5UVJ$^-y0SOk^; delta 20 acmZ3$x`37YG%qg~0}v=n@NMLt$^-x`&;#KB diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc index 42ffcd8872d8ef4fed8263690fd1381ff4047bfa..9c778c6694419df58389fbaaa186d2b2cf7c8907 100644 GIT binary patch delta 20 acmeyv{D+zQG%qg~0}#|D%5UWU$Or&GZv~|Q delta 20 acmeyv{D+zQG%qg~0}v=n@NMM&$Or&B=LGNo diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc index 3f782684cf3e652f8448c4615535e49535ed8848..4e4a5c3c6dfff8adb66aa59fe5f98d38014d8e89 100644 GIT binary patch delta 20 acmcZ>cP)cP)$Xo diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc index 3ca191232550ae33b151f352d92e6025217d636f..304fdf52a93a90febce8567f2a6defff91ba6d4c 100644 GIT binary patch delta 20 acmX?OcE*hRG%qg~0}#|D%5UU$lm-AkH3by_ delta 20 acmX?OcE*hRG%qg~0}v=n@NMLFlm-Aftps2I diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc index c37a7e8e80bc5209c6254132d9e20862301d8793..403c938b6f836230fc501fff94d9d6ff5ab6a3f3 100644 GIT binary patch delta 22 ccmdn_g>mN>M()$Ryj%=GP?spbkz20{09%3vxc~qF delta 22 ccmdn_g>mN>M()$Ryj%=Gpe(_+kz20{09N`21ONa4 diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc index dca1c64dd1fa66f8181cb5fbff3300e5535f3654..d1447d402cebc21e720158aa5abc92645d417557 100644 GIT binary patch delta 22 ccmdlsg>l;yM()$Ryj%=GP?spbkz3mf08B9jzyJUM delta 22 ccmdlsg>l;yM()$Ryj%=Gpe(_+kz3mf07t0>3jhEB diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc index b9799cf67c9cac2a6f162ba7dbdd217a9fd81cc9..7b0822a48861d1fbbae335e2baf2fe88bf86fa8e 100644 GIT binary patch delta 20 acmbQHH%*WGG%qg~0}#|D%5UW676$+{p#)z5 delta 20 acmbQHH%*WGG%qg~0}v=n@NMMg76$+@83U>S diff --git a/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc index db0269d00f866845b72852a91be96f9dacc370cc..fa2f8c86478b7a0ec4b2d5babf008fd155090891 100644 GIT binary patch delta 22 ccmeC3!`M5Ak^3|+FBbz4)FsMqht10&CAQh00ec3@*BCCRRK3&1dRXy delta 20 ZcmeD4>ht10&CAQh00hbsd>gr$RRJ>B1K0on diff --git a/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc index 3edeb86c0312e74586350b1b4dd5393f7e74a6ed..b1376c2358c558df4f4fbba821446c1efac56428 100644 GIT binary patch delta 20 acmez5{mGmAG%qg~0}#|D%5UU;t_lE1BL+JF delta 20 acmez5{mGmAG%qg~0}v=n@NMLNt_lD{n+1jd diff --git a/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc index d211ee79ad677d72d79ad6fe8a0f7d1951125983..699f33a648928774d52e1ac1b2940ace9b6c53d6 100644 GIT binary patch delta 20 acmZ3lvtEb$G%qg~0}#|D%5UUW5d#1?Km?@# delta 20 acmZ3lvtEb$G%qg~0}v=n@NMK)5d#1-xC8J2 diff --git a/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc index 582c5ce04c52163e5953d176d5fc2fc8922df504..8477cff3d6efd42294f6b9671ab0c9954bf9591a 100644 GIT binary patch delta 20 acmX?{csP;!G%qg~0}#|D%5UV}VE_O_?gixl delta 20 acmX?{csP;!G%qg~0}v=n@NMMYVE_O>W(6<+ diff --git a/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc index 0e8b7f33c7d915f69788aa64ff7dece65b9b0e8a..73ad928cc40a2aa956f78d7edf94822ad795456e 100644 GIT binary patch delta 20 acmaFJ^pJ`BG%qg~0}#|D%5UTjV*~&?69m!# delta 20 acmaFJ^pJ`BG%qg~0}v=n@NMJ{V*~&-iv%42 diff --git a/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc index 76b8d5f7141b19ffcdcb80d129ba4f5a38d54eea..1f54387c28af96d885aa37961fb3fc9da827cf39 100644 GIT binary patch delta 20 acmeyE`Z1OJG%qg~0}#|D%5UU;W&{9Bum*Vm delta 20 acmeyE`Z1OJG%qg~0}v=n@NMLNW&{97CteOj9PG%qg~0}#|D%5UU8zzYC7GX+in delta 20 acmX>teOj9PG%qg~0}v=n@NMKizzYC2s|1+< diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc index b0d8b8290352cf437efa72365d131e434199c912..827b5393b0280cf01a54a5730f52055b5607711e 100644 GIT binary patch delta 20 acmeBV>ty3T&CAQh00ec3@*BDTF#!NBty3T&CAQh00hbsd>gs{F#!N7Tm&8f diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-312.pyc index 684323f8f8dc9b000df822c2f3a8012642d075e2..590ee8cb3f613d38f6878e51480a25f0d6a885cb 100644 GIT binary patch delta 22 ccmbPnfpNwKM()$Ryj%=GP?spbk()OI08nWK`~Uy| delta 22 ccmbPnfpNwKM()$Ryj%=Gpe(_+k()OI088NoM*si- diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc index 37d99fc15cb74ef1da600503bd2a96f6dc376a1e..8b26dc0cbba9e3faf501d211fddf56e380a6a75a 100644 GIT binary patch delta 20 acmaDW@>YcVG%qg~0}#|D%5UUO;sO9Zgaso2 delta 20 acmaDW@>YcVG%qg~0}v=n@NMKy;sO9U`~+?Q diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc index a1a54301de39995fec4abb62c4aea195656967f9..3dd90f9dbfdfe4de15b9f8643563d396a03143fb 100644 GIT binary patch delta 20 acmX>td0LYDG%qg~0}#|D%5UU8zykm}>IF#v delta 20 acmX>td0LYDG%qg~0}v=n@NMKizykm_Vg!@` diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-312.pyc index 6324c3ab367e863710d4d766ce09fcb81cb13a8f..70d7e210a0583c57205b08a80356733f7e04a156 100644 GIT binary patch delta 20 acmZosX;I-m&CAQh00ec3@*BB-3IYH!V+9WY delta 20 acmZosX;I-m&CAQh00hbsd>grc3IYHv+XPww diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc index 88712cd23568ca467d3e69ba5b1d0f8c36d185e9..e3f3de3034cb7eef869e337b82717d4d9a014aee 100644 GIT binary patch delta 22 ccmaE|n(4`EChpU`yj%=GP?spbk^AOU09f1yMF0Q* delta 22 ccmaE|n(4`EChpU`yj%=Gpe(_+k^AOU08~^4kN^Mx diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc index 1a002da6599d7db26961ec3f4d22003cb3767531..f4946e0e2951fba67aecfddab9970b6633f6ba21 100644 GIT binary patch delta 20 acmX@jbDD?yG%qg~0}#|D%5UU$U;_X+5Co|J delta 20 acmX@jbDD?yG%qg~0}v=n@NMLFU;_X%hy(Nh diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc index c29f9e53eb98db7d67178d5df2fc4d3aeb204bb1..2ea09b9d365ff624ed57e272eeb1c24827372785 100644 GIT binary patch delta 20 acmaDa^& delta 20 acmaDa^`k^lez diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc index 8957c964a48dbc3b0de64ad984748d7a262b896f..aa025ccf502f87762299cd367de843e7f6b43338 100644 GIT binary patch delta 20 acmX?+dm@+nG%qg~0}#|D%5UV}YX$&DYz7hl delta 20 acmX?+dm@+nG%qg~0}v=n@NMMYYX$&8lLi1gJp|kU delta 20 acmdmKw$qIJG%qg~0}v=n@NMMQlLi1bwFD;s diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-312.pyc index 77d4e7f78906a77a6394532fa103be45f0b5c715..44e632d18afddf10cfc81888e7c49df0eacdf71a 100644 GIT binary patch delta 20 acmZ3axJZ%vG%qg~0}#|D%5UVJE&u>ErUc>u delta 20 acmZ3axJZ%vG%qg~0}v=n@NMLtE&u>A9t14_ diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/bbcode.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/bbcode.cpython-312.pyc index 61fbfb2e6f26d1aee38786f1fb80db2c406e7e43..f6a4b6bd17a5720f8d2707adaa913c3c46e3158f 100644 GIT binary patch delta 20 ZcmeBG>{aAG&CAQh00ec3@*BCE1OPH#1fu`| delta 20 ZcmeBG>{aAG&CAQh00hbsd>gr&1OP481MUC- diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/groff.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/groff.cpython-312.pyc index 5e6b842caa241aa89effb36cad54c1008cc1916f..9c9e1d698d772497bb802a872d375575a1b0066d 100644 GIT binary patch delta 20 ZcmeCS?6%}S&CAQh00ec3@*BAuWB@gK1la%p delta 20 ZcmeCS?6%}S&CAQh00hbsd>gqNWB@So1S9|e diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/html.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/html.cpython-312.pyc index 9aa202c1e65941bc280dcfaade7a52cfeb9ea33b..f7c06677cf9ad1e2215a68d247c2165c58c38c01 100644 GIT binary patch delta 22 ccmZ3!mudN4ChpU`yj%=GP?spbk$cWO08wNHy8r+H delta 22 ccmZ3!mudN4ChpU`yj%=Gpe(_+k$cWO08HEl1^@s6 diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/img.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/img.cpython-312.pyc index 9fdb019d07b28638e181166d858cbc3e636e597d..89e1a2cf8edacf4cc7eeee635cd1e64b4707c1c7 100644 GIT binary patch delta 22 ccmX?inep6ZM()$Ryj%=GP?spbk^68a09x?}B>(^b delta 22 ccmX?inep6ZM()$Ryj%=Gpe(_+k^68a09I)RZ~y=R diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/irc.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/irc.cpython-312.pyc index f0a597b0480b22a9df9a0fd2d28b79cc6703d20f..c8b74857aeb8292840510a58499449de5d63c58c 100644 GIT binary patch delta 20 acmcbke@CDDG%qg~0}#|D%5UVpC=LKXwFR>P delta 20 acmcbke@CDDG%qg~0}v=n@NMM2C=LKTEd>4m diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/latex.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/latex.cpython-312.pyc index f259770989afb30948575a85cf9654162a1c48ac..304b34e8503ed22156590569148ee03bcb12c5ed 100644 GIT binary patch delta 22 ccmbO`hjH#4M()$Ryj%=GP?spbkz2?Q07*Ipi2wiq delta 22 ccmbO`hjH#4M()$Ryj%=Gpe(_+kz2?Q07S9`)Bpeg diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/other.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/other.cpython-312.pyc index a061b7cf326a10d882c055019795afe99cee6249..d6200152280466ffe62d4140e01b94ab747ac8f8 100644 GIT binary patch delta 20 ZcmeA->o?;*&CAQh00ec3@*BBXqyaRo1YQ6D delta 20 ZcmeA->o?;*&CAQh00hbsd>gr0qyaD`1E~N2 diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/pangomarkup.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/pangomarkup.cpython-312.pyc index 1776891b522edc9dde7db5c1d7aa70253ddc59d2..0af85af72a024d5685e3ff5577d0e3f096d40909 100644 GIT binary patch delta 20 acmbO$K3AOkG%qg~0}#|D%5UVJ#0>y5aRj;m delta 20 acmbO$K3AOkG%qg~0}v=n@NMLt#0>y0=>!D; diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/rtf.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/rtf.cpython-312.pyc index b6b04472167290a69b25687233edac6b1abcc659..3c49e3448ce7cf33d6ce544558e085de55ce3cc6 100644 GIT binary patch delta 20 acmbPfFw=nhG%qg~0}#|D%5UW6lK=oUVgzjf delta 20 acmbPfFw=nhG%qg~0}v=n@NMMglK=oP+5@-% diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/svg.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/svg.cpython-312.pyc index c5f38179755195e8df8a83871c371408c79478f0..f991943c59cf286a2ccffdcc3461f3e062df2f39 100644 GIT binary patch delta 20 acmbR0KGmK3G%qg~0}#|D%5UWEQU(Ay2?ZJe delta 20 acmbR0KGmK3G%qg~0}v=n@NMMoQU(Atfdpj$ diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal.cpython-312.pyc index 67a454e346032e8e5352b7c2ff092021bf982e99..571793e0902bbe97e07f1baca09cd60b79250a68 100644 GIT binary patch delta 20 acmeyM`$3ocG%qg~0}#|D%5UU;Dh2>Uj0Nfd delta 20 acmeyM`$3ocG%qg~0}v=n@NMLNDh2>Q1O+t! diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal256.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal256.cpython-312.pyc index 419466360ca264125f4995154d353031882cd030..91fb196656679de2b5f69f607ccbb3e5bfc9b65e 100644 GIT binary patch delta 20 acmaD*_MnXWG%qg~0}#|D%5UTjwFUr6bp`PN delta 20 acmaD*_MnXWG%qg~0}v=n@NMJ{wFUr1?FBpl diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc index db43fe305f5598c0eb0fec4a01ea9fc87173b79a..a69b60c7fbac7c93ca309d454f4afad70b48b1c1 100644 GIT binary patch delta 20 acmaD}^t_1sG%qg~0}#|D%5UV3u>=50`vv>} delta 20 acmaD}^t_1sG%qg~0}v=n@NMLdu>=4{a|K5L diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc index 709725bab9be0ede9185b9921e63157dbb5f2bf2..ec453053e0b953e95e373a64d2b39398b895c69f 100644 GIT binary patch delta 22 ccmdo0oq7LvX71Cxyj%=GP?spbk$cN;0A9og)&Kwi delta 22 ccmdo0oq7LvX71Cxyj%=Gpe(_+k$cN;09rf;ApigX diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-312.pyc index 9c491374b8a0a184b731b4f1e51a2ab93152f136..707296be186f134f06e29c6147b9e3b615253a77 100644 GIT binary patch delta 22 ccmdmWmTA{nChpU`yj%=GP?spbk$e3z09OqM8~^|S delta 22 ccmdmWmTA{nChpU`yj%=Gpe(_+k$e3z08)hpX8-^I diff --git a/env_web/Lib/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc index 31e3124ddc36abb4227cfac32a24fd6720a0bf27..2d00d1c5b774f0b0ef3fe9fd28bfc4731873118e 100644 GIT binary patch delta 20 ZcmeBH?pEeL&CAQh00ec3@*BAu1OYNv1fl={ delta 20 ZcmeBH?pEeL&CAQh00hbsd>gqN1OYA21ML6+ diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/__init__.cpython-312.pyc index 8431192bbadd91c26cbd6ea37984a6a9cd328e2f..57db11a80e645ae473d34a5673c9f19090157bbd 100644 GIT binary patch delta 20 acmbPaH_49sG%qg~0}#|D%5UUmmj?hgNd$WU delta 20 acmbPaH_49sG%qg~0}v=n@NMK~mj?hb!2`ws diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/actions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/actions.cpython-312.pyc index 78f391e232978d343af3bc574fe490cab75bc4f0..831ae7b1ba5fc186cf8c52bacdec19917b728cd8 100644 GIT binary patch delta 20 acmez7_|1{~G%qg~0}#|D%5UU;tpET=Rt7Er delta 20 acmez7_|1{~G%qg~0}v=n@NMLNtpET*&INe@ diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/common.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/common.cpython-312.pyc index 8b6e3e6b04ce4a4cbf7eb84ac319c84f27ce1b7a..d906cad0e77a6d2d7b221de0c280ba5c7c256dcd 100644 GIT binary patch delta 20 acmbQ3IWd#_G%qg~0}#|D%5UUuGXVfSLIq<0 delta 20 acmbQ3IWd#_G%qg~0}v=n@NML7GXVfNx&*EO diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/core.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/core.cpython-312.pyc index c9e46e1b882a2ba9f64e535f7a46cc12c896236f..b74e78187baad7b983ba2d8a7c32b6b1c6508f41 100644 GIT binary patch delta 34 ocmaF9THyI=0q)bhyj%=GP?sp*$lc1#*vie+%FVo$o8^uu0JZN4Gynhq delta 34 ocmaF9THyI=0q)bhyj%=Gpe(`H$lc1#*vie+%FVo$o8^uu0I2H-e*gdg diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/exceptions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/exceptions.cpython-312.pyc index fd0eb9425bc8b1640a40ad0e9d1f3b96b941711a..74d62dd40871933c7690d21af6a188f8b60ac178 100644 GIT binary patch delta 20 acmaEx`ZksOG%qg~0}#|D%5UU;WCQ?95C&}k delta 20 acmaEx`ZksOG%qg~0}v=n@NMLNWCQ?4hy}O+ diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/helpers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/helpers.cpython-312.pyc index 10c96e5f17ff8cad3e144da33a200978d378f29b..234ab013b9affdba47c81469a49815e7d78730d4 100644 GIT binary patch delta 22 ccmZ4Rn`yysChpU`yj%=GP?spbk$dW109nWfK>z>% delta 22 ccmZ4Rn`yysChpU`yj%=Gpe(_+k$dW1098N+i~s-t diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/results.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/results.cpython-312.pyc index 63fab66998db9c86466891cb918e7bdb69a9bdeb..25a3c995ac91d280c93c9353a85382e8b7ee161a 100644 GIT binary patch delta 22 ccmaFa#q_d^iTgA!FBbz4)FsMqf&c&j delta 22 ccmaFa#q_d^iTgA!FBbz4C`<5dV!Z diff --git a/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/testing.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/testing.cpython-312.pyc index b67d3821cee2a2838432f4e1d70d416481fc1674..218212edc167bc37748facc2e193f1653e7cfc1d 100644 GIT binary patch delta 22 ccmX@##(2Jsk^3|+FBbz4)FsMqChXvUH delta 20 acmdl`yrG!;G%qg~0}v=n@NMK?Y6$>7{{X@I1!MpK delta 20 ZcmeCn?aSpp&CAQh00hbsd>gr&%>X#m1g`)9 diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc index b38878aa6469e0314839936e453a14e89d4be392..2c871d9eab6a589bfc4bed3908582cdbcd7a2c15 100644 GIT binary patch delta 20 acmX@gew3a2G%qg~0}#|D%5UV}#S8#9X$1-Z delta 20 acmX@gew3a2G%qg~0}v=n@NMMY#S8#4;RICx diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc index 34ef42d9ee385120d639ab48895a3f395026ffa8..dcca28df7157f8df40e4f157f37737584fc28aac 100644 GIT binary patch delta 20 ZcmeC<>Eq!(&CAQh00ec3@*BCC*#Itx1M&a> delta 20 ZcmeC<>Eq!(&CAQh00hbsd>gr$*#Ig413dr$ diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc index 55ba077644e2a892d5750c98a2ee386e23c23425..207945d9fdb181c919fd756ea404fbf5434c868b 100644 GIT binary patch delta 22 ccmX?kl=0+IM()$Ryj%=GP?spbk$Ybf09Ww_^8f$< delta 22 ccmX?kl=0+IM()$Ryj%=Gpe(_+k$Ybf08?oOJ^%m! diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc index aae2263999966b8b541112242a36c64efcc2c9b3..3d16e2f607bacc5cc1bf800ec80fd1c6ca168a48 100644 GIT binary patch delta 20 acmdmFzR8^XG%qg~0}#|D%5UUeE)4)XNd-v& delta 20 acmdmFzR8^XG%qg~0}v=n@NMK?E)4)S!32~5 diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/help.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/help.cpython-312.pyc index fe97e42c2155259bbcddd622ad84bf91b29b4e32..c10567da64af1e6e91b06c48b2e118e521715f67 100644 GIT binary patch delta 20 acmZoxYF6St&CAQh00ec3@*BB-2mk;v@&yL~ delta 20 acmZoxYF6St&CAQh00hbsd>grc2mk;rY6MaM diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc index e4ef674841446cbf216ad314a411e200c9445198..6e957c2f5be5f90bf125f25a4e80abed2698fab8 100644 GIT binary patch delta 20 acmX@kah!wuG%qg~0}#|D%5UVhVF3U(-UO2X delta 20 acmX@kah!wuG%qg~0}v=n@NML_VF3U#Rs-Gu diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc index 9a9e274f56ae93bc652003a88566519d4b9e50e0..e6dedd1cff340e42a2e10f0d67d96e8ae17b418a 100644 GIT binary patch delta 22 ccmZ2Hm1*%*ChpU`yj%=GP?spbk$XlL07{GoO8@`> delta 22 ccmZ2Hm1*%*ChpU`yj%=Gpe(_+k$XlL07e7_mH+?% diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc index 591638b2a3f4c6f16d71e9a1b2f9a611b0867468..0bd02208b77d7ede86395020228817cefa1763bd 100644 GIT binary patch delta 20 acmZ3_ww{gqG%qg~0}#|D%5UUWVFmy))dWTW delta 20 acmZ3_ww{gqG%qg~0}v=n@NMK)VFmy$O#_ht diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc index 3720642f812d55ed7feb5880093e8bc6aafe6c07..b21de963fab1642d62049c1e01e34c3db12d9604 100644 GIT binary patch delta 22 ccmbPnlX1pPM()$Ryj%=GP?spbk-Iks08-2bk^lez delta 22 ccmbPnlX1pPM()$Ryj%=Gpe(_+k-Iks08T^&-2eap diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc index f05ea8788d1177b85ea1becf12a53fe0bfec22cc..2dc387a4016e2c9c7c18ba784b613ed2f5670832 100644 GIT binary patch delta 20 acmeyQ_eqcYG%qg~0}#|D%5UUO7Y6`C0R?ja delta 20 acmeyQ_eqcYG%qg~0}v=n@NMKy7Y6`7c?7-y diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc index b16b17da3579365eaa15454d817ce4237efe642c..98407a3a0b20d7d5f110e09c14225724d2e8e18f 100644 GIT binary patch delta 20 acmbQEGe?K}G%qg~0}#|D%5UTr6axS?NCa#E delta 20 acmbQEGe?K}G%qg~0}v=n@NMK46axS-zyr4c diff --git a/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc index 1a776617deb6ab5633bc8778199a6490cf3e5937..40a76d1ff74de1ac48052cb58371c2cd179187c8 100644 GIT binary patch delta 22 ccmcaHo9V`EChpU`yj%=GP?spbk^5{f090TG`2YX_ delta 22 ccmcaHo9V`EChpU`yj%=Gpe(_+k^5{f08iKkL;wH) diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc index 2f1284025bb7c23d5941563477e386312b70135d..216e0fd1b19eb51cc33086985c558e30b426ee0d 100644 GIT binary patch delta 20 acmZ3=x|EgsG%qg~0}#|D%5UVJ#RLE{AOxiV delta 20 acmZ3=x|EgsG%qg~0}v=n@NMLt#RLE?m;>+t diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc index 23a8bdc0a643f494f7dbcfa65da7da37f021cf29..47133b09d8a5cc0d05a8811a82ee46c69e88a383 100644 GIT binary patch delta 20 acmaE7`p%U5G%qg~0}#|D%5UU;ECm2WUgszxBx4F1H=FT diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-312.pyc index 0af3958625472dfff5923f3e0e89b119caec73e3..978d59a901170ddb5f578ca7751fe164596dd273 100644 GIT binary patch delta 22 ccmca|it)-RM()$Ryj%=GP?spbk=rvB09lX*p#T5? delta 22 ccmca|it)-RM()$Ryj%=Gpe(_+k=rvB096PD>;M1& diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc index 4890a4097d75595025ad5fd995d41de0b38497ee..c0267690e968f5503a797bda5b17a0d090279e72 100644 GIT binary patch delta 20 acmdlQv^9wPG%qg~0}#|D%5UV>(gXlLn*|mC delta 20 acmdlQv^9wPG%qg~0}v=n@NMMQ(gXlH69i!Z diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-312.pyc index 5b82f8871dce3310df0b41ce8f1d02e1933f65d0..4a8d326f11b825e72094639fdf994c3bbabf17eb 100644 GIT binary patch delta 19 Zcmey&_?eOWG%qg~0}#|D%1`8e0RT7I1!VvL delta 19 Zcmey&_?eOWG%qg~0}v=n@J-}?0RS`x1h4=A diff --git a/env_web/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-312.pyc index be66046f9fb342217fa04310a97768770d879227..c49f43b199fcf5ad7569f30a17f7cf7abd492e9c 100644 GIT binary patch delta 20 acmX@le4d&6G%qg~0}#|D%5UU8!UzC3X9XSr delta 20 acmX@le4d&6G%qg~0}v=n@NMKi!UzB}-vns@ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc index 4a6e10da7b5c35b90a45268be0c916a647124afc..fc9bb67b0f3bdecbf3245285903bef54347ac65a 100644 GIT binary patch delta 20 acmbPaKFOT>G%qg~0}#|D%5UUumj(bfNd)Nt delta 20 acmbPaKFOT>G%qg~0}v=n@NML7mj(ba!2~n_ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-312.pyc index 761bf700b864650f16079b328551aa1bb95b3a25..6e4f06d5d95fc5bbd3a870a2aa18f2e1a392a3b7 100644 GIT binary patch delta 20 acmaDI@H&9|G%qg~0}#|D%5UUO&;S5N!UeMc delta 20 acmaDI@H&9|G%qg~0}v=n@NMKy&;S5JIt2az diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc index 9a8d70676b7de7d5e88ca52d3fbbe21a631b820d..b54ca49706ff8ed4cdfac26a67cda5871b0a4789 100644 GIT binary patch delta 20 acmdmCyTg|IG%qg~0}#|D%5UUeD+d5Q6a{Jk delta 20 acmdmCyTg|IG%qg~0}v=n@NMK?D+d5Lj0Cj+ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc index adaf9e164190233975b2d7d811e3ebefec878b25..919140ce6beda37afa5c5bb8623ecbd15df283be 100644 GIT binary patch delta 31 lcmX?nlIQSA9`4h;yj%=GP?sp*$lc1#*viecm795o3ILhz2zLMg delta 31 lcmX?nlIQSA9`4h;yj%=Gpe(`H$lc1#*viecm795o3ILA@2f_dV diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc index 1580a61b7c6c623cf2a53168fa4e9c07fc89528d..0fb0ff1d66a01dedcb8585f4fda48cdf356af33c 100644 GIT binary patch delta 20 acmaFE`-YeMG%qg~0}#|D%5UU;$OZsDTm_B* delta 20 acmaFE`-YeMG%qg~0}v=n@NMLN$OZs8)CAc8 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc index 3eda337d79f37cd30879403d1a9b784a47cf33ac..870635b5555c93ea6d5945a8740abc4eb56806a8 100644 GIT binary patch delta 20 acmdlZv`2{hG%qg~0}#|D%5UU0@&CAQh00ec3@*BC!nE@>E1VI1* delta 20 ZcmZo-Z(`>@&CAQh00hbsd>gsTnE@zi1B?Iw diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-312.pyc index 375321644e543d8041bc0a26091af39ce0a6d339..fe7762e8aacaa7e712f8e67fc9b2a86cd1f00eac 100644 GIT binary patch delta 20 acmcZ+cO#DbG%qg~0}#|D%5UWM)dv7Y$pxJN delta 20 acmcZ+cO#DbG%qg~0}v=n@NMMw)dv7UK?LXk diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc index 75154caff89f70f13f522ffd0d1a456edc3c34ab..75be12e3147a92b1423fc1219f71dabcfe6bd2ef 100644 GIT binary patch delta 20 acmcboa8H5zG%qg~0}#|D%5UTj761S};sq1{ delta 20 acmcboa8H5zG%qg~0}v=n@NMJ{761S_S_EGJ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc index c5b354ee5407e75efc3c6181aa8048405a138526..c540887eb21d057e0a518010c54681dec4ca6162 100644 GIT binary patch delta 20 ZcmeC+@8IV?&CAQh00ec3@*BBp*#R#F1ZMyM delta 20 ZcmeC+@8IV?&CAQh00hbsd>grI*#Rnj1F`@B diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc index 9b8dd0b46db547d27cc0ae40d93cced357de8734..cf93aa3e4195e0e5541a38329b2685f5638013db 100644 GIT binary patch delta 20 acmX>vb6$q~G%qg~0}#|D%5UU$;R66V_ypYm delta 20 acmX>vb6$q~G%qg~0}v=n@NMLF;R66Ra0Dm- diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc index e5d83d64a5b9053522e673698ef24b6ecd5e6624..e96c630700832f296377b1ead4f54aea0eb326f8 100644 GIT binary patch delta 20 acmcbtaan`=G%qg~0}#|D%5UWM5CH%^P6Y=5 delta 20 acmcbtaan`=G%qg~0}v=n@NMMw5CH%<#spFT diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc index 96f3eaa61043ce252280fe1fe7c1a246e6819fd2..5446dfc284103635f2a7adc7f947cb5d4b203fc8 100644 GIT binary patch delta 20 acmZod-&CAQh00ec3@*BCoF#!NAqy)PF delta 20 acmZod-&CAQh00hbsd>gsHF#!N690Udc diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc index b4c406001170ae0edbb0b86f2255f992b004f818..eb806a63a53232e31e1cb29e92a762ee5238fca4 100644 GIT binary patch delta 20 acmca-e9xHsG%qg~0}#|D%5UVpEC~QXmj%NB delta 20 acmca-e9xHsG%qg~0}v=n@NMM2EC~QT4+RbY diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc index 09aa44dbf1f040658586774dd954985913bf6b21..e1519d69b47da2b656a63afdaf1d894480300841 100644 GIT binary patch delta 20 acmZ3MzAT;lG%qg~0}#|D%5UVJZ43ZFK?R)v delta 20 acmZ3MzAT;lG%qg~0}v=n@NMLtZ43ZAxdi9{ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-312.pyc index 3ac04438687a97a718d3dedef0c36520e2f8fe91..0947d29ec0bd10b1be1a89b518e4ea860cb9b159 100644 GIT binary patch delta 20 acmeys{(+tQG%qg~0}#|D%5UU;$_xNLAq9&7 delta 20 acmeys{(+tQG%qg~0}v=n@NMLN$_xNGnFQ7V diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-312.pyc index fe7458de1b78f819683b4de2b42bf1b817fc580d..eda2f7f6def57c56a89aac31967c9cf8bcc9f1ea 100644 GIT binary patch delta 20 ZcmeBS?_uXY&CAQh00ec3@*BAunE@_=1YZCE delta 20 ZcmeBS?_uXY&CAQh00hbsd>gqNnE@&J1F8T3 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc index a18225d195db7136ce0c8ee29e4cdeb448a68f73..d939535aa100f6ec343efdf3f4ad9b0201f7d66d 100644 GIT binary patch delta 22 ccmccpi1GF#M()$Ryj%=GP?spbkvpIe0A6th@&Et; delta 22 ccmccpi1GF#M()$Ryj%=Gpe(_+kvpIe09okM()$Ryj%=GP?spbk^5CT0ASz;kN^Mx delta 22 ccmex*p7HB>M()$Ryj%=Gpe(_+k^5CT09;rG+W-In diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc index d86e94bb090cae694dc674d73b8c07a547273b88..7cba80674571a6754d1184038a10a5e0fb811c71 100644 GIT binary patch delta 20 acmcb>dx4kxG%qg~0}#|D%5UU8$_4;A`~^Ay delta 20 acmcb>dx4kxG%qg~0}v=n@NMKi$_4;6bOeO} diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc index 4b06977463612594576c036fea6f066fc9735217..3673840ef7db03f371f0362b5c8d1f21663debf4 100644 GIT binary patch delta 20 acmdnyyv>>WG%qg~0}#|D%5UUetq1@;p9OOO delta 20 acmdnyyv>>WG%qg~0}v=n@NMK?tq1@)7X-cl diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc index e87fb2713a0231f3a091c57e6e8a5c71f2d2167d..53b60aa23aff9ff6bf6c8694932c439b889ea505 100644 GIT binary patch delta 25 fcmZ4UlWomUHty5Byj%=GP?sp*$i0=Dap4{SaGD4C delta 25 fcmZ4UlWomUHty5Byj%=Gpe(`H$i0=Dap4{SY4Zm} diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc index d42eb709ed784803a3b7f2930a8b500512401e0e..ba08216fe248584fc80f1dbf2a73e608360a6ff5 100644 GIT binary patch delta 20 acmew>_*anoG%qg~0}#|D%5UWU!~p<7mIccI delta 20 acmew>_*anoG%qg~0}v=n@NMM&!~p<34h0qf diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc index e9fbb90ddba736030491fdbc367431c434581fb3..2bce099e81e36906c3b4c19fe8a59fbde99629f1 100644 GIT binary patch delta 20 acmdn$vDJh7G%qg~0}#|D%5UV>QUL%xE(HAm delta 20 acmdn$vDJh7G%qg~0}v=n@NMMQQUL%srUXa; diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc index 9fddfa23dcf5b7ca5c5524970fe9c50494102598..757be584aa0b6d850222659e9d5de07de74b71a6 100644 GIT binary patch delta 20 acmcZ;dMA|oG%qg~0}#|D%5UVps09E delta 20 acmZ1?vqXmbG%qg~0}v=n@NMLl;sF3QRs@9r delta 20 acmdlgu~mZmG%qg~0}v=n@NMMQ;sF3L&I8Z@ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc index bf6e8f94add90c67dfda84a6fbc9ef3ca3d2a378..d307a60e2c9d67cf4252744100364d6c9e61b4bc 100644 GIT binary patch delta 20 acmccWd)1fwG%qg~0}#|D%5UU8r3L^)`$ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/json.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/json.cpython-312.pyc index 24edcb6f2b1ff7d9f2621b311da7913921ffd597..fc5a9645f371d56a8d5b5d6b255b00b0cb8818d9 100644 GIT binary patch delta 20 acmdm|zfYh0G%qg~0}#|D%5UV}EDiuX1qE3E delta 20 acmdm|zfYh0G%qg~0}v=n@NMMYEDiuSeFUTc diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc index 9fc966df0d76d4b32c71c3c3a17d519833a7eefc..503df7f788bd4aecd8f675b05ebdb2af8525915e 100644 GIT binary patch delta 20 ZcmZqCY|-RC&CAQh00ec3@*BA;MF27y1e^c> delta 20 ZcmZqCY|-RC&CAQh00hbsd>gqdMF1_51Lpt$ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-312.pyc index 40151636f66458382c595a9636a5ca71813d55e7..771c52e4325d91a9920b2652de92aeb081e367f6 100644 GIT binary patch delta 22 ccmZ2Jk8$}tM()$Ryj%=GP?spbkz2+e082LotN;K2 delta 22 ccmZ2Jk8$}tM()$Ryj%=Gpe(_+kz2+e07kC__W%F@ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc index bbc7f66c5a0d696d3eecc9f35d0bb188e54afb72..a83f2034b808b19113a6556b35772144f7a89450 100644 GIT binary patch delta 22 ccmew~mGRS5M()$Ryj%=GP?spbk^8w909R}V_5c6? delta 22 ccmew~mGRS5M()$Ryj%=Gpe(_+k^8w908-=zK>z>% diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc index 80c129aff023ccd7b4a5c4051acd0e5f47e7579d..87ef71611766453cb24e823f4b1698e507b64d11 100644 GIT binary patch delta 20 acmX@9c2bS|G%qg~0}#|D%5UVh69xb~bp+%9 delta 20 acmX@9c2bS|G%qg~0}v=n@NML_69xb_?F26X diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc index 9eea1323d032c4d1bfb55d296af6810c0fb12c98..e98861795152e471258f083776cd71bf773ecb5c 100644 GIT binary patch delta 20 acmbQ6H8+d=C diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc index 27fcd71b6b3e251add04ae16ba84dbc96ae56fd9..88d6dff506540aa6fb3d3a7effd8c8d3798978fd 100644 GIT binary patch delta 20 acmbPiG}(yzG%qg~0}#|D%5UW6kOTlUy98hW delta 20 acmbPiG}(yzG%qg~0}v=n@NMMgkOTlQGXtvt diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc index cef76801af9d2bb0b5c1846c2e2e6720e73885d4..fec5e7f78e20463a893c7f1ffd1aa7a0b33fdc99 100644 GIT binary patch delta 20 acmeCQ=(ONI&CAQh00ec3@*BDTNdo{j1qDz5 delta 20 acmeCQ=(ONI&CAQh00hbsd>gs{Ndo{eeFU2T diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc index fd1a876326788abeed02fcc073f3b009cfa20198..d6e7a23c8bcac12f5f784fd2c9f60650356e1e48 100644 GIT binary patch delta 20 acmX@kcbt#=G%qg~0}#|D%5UVhVFv&=xdfsB delta 20 acmX@kcbt#=G%qg~0}v=n@NML_VFv&+F$3)Y diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc index 72c7917bccd28c8f693d13b6b97d5eba35f4b6e2..498c163f4d826520601e950396a34150013159af 100644 GIT binary patch delta 20 acmaE>`BszrG%qg~0}#|D%5UU;Bmw|Jf(6$A delta 20 acmaE>`BszrG%qg~0}v=n@NMLNBmw|E`UN5Y diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc index e6f78f42b93eb1d596354306824c1abdc1fbc6de..5c4782feb57b83881234a0a6cd578676a22562c8 100644 GIT binary patch delta 20 acmaD8_a=_}G%qg~0}#|D%5UUO)CT}a=>^#U delta 20 acmaD8_a=_}G%qg~0}v=n@NMKy)CT}WVFe@r diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc index 445de40078546f01a09a53a5510fd40cce4a070c..9374cab300c01976887fece31c83ae5b3366f029 100644 GIT binary patch delta 22 ccmZ3ylWFlzChpU`yj%=GP?spbk$c7*08knRr2qf` delta 22 ccmZ3ylWFlzChpU`yj%=Gpe(_+k$c7*085eu@Bjb+ diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc index ab390bce0e1684fad4b4fd17dde4e317d0d85780..e19d1fd1e4a962dc3c57013711905886362cc16a 100644 GIT binary patch delta 25 fcmex(isj=e7Vgu$yj%=GP?sp*$i0=DF-;W!bDsxK delta 25 fcmex(isj=e7Vgu$yj%=Gpe(`H$i0=DF-;W!Z1@J6 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc index be9dcd48968f9f0e9b80fb90a4f04b5495d1926c..04395903fb74f452ecb22025de6bffa7bf5a264b 100644 GIT binary patch delta 20 acmX>Qcp#AbG%qg~0}#|D%5UV}ssR8&E(Npz delta 20 acmX>Qcp#AbG%qg~0}v=n@NMMYssR8zrUd^0 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-312.pyc index 81efd85458278926f4537aca4ed3ad5e01079dbc..a60f142ac85c82f6a57688d28ce72631bc12f604 100644 GIT binary patch delta 20 acmaD+{GyoqG%qg~0}#|D%5UVpYY6~MM+Sia delta 20 acmaD+{GyoqG%qg~0}v=n@NMM2YY6~HzXi+y diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc index 37512211b128e2e64cb622dcbeab2c2394184929..5a87a5d6ac7aea8856ea5fe79e9ed5ec6e09b944 100644 GIT binary patch delta 20 acmZ3@x0;XpG%qg~0}#|D%5UUWUgr$qyR6B1D*f? diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-312.pyc index 0b41be655bd73eea983ffe6a14d22f9a28150f11..e4ddea35e7b67816391aa45e2b82c16add6fda0d 100644 GIT binary patch delta 20 acmca?eA$@$G%qg~0}#|D%5UU8AqfCK-vy!o delta 20 acmca?eA$@$G%qg~0}v=n@NMKiAqfCGR|M?< diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc index 2081fc8bb6ff8f1d9337788c7dbb44548fa9f44b..521d428ad57e8ffc579c5e11f2107d3fe19c7b3b 100644 GIT binary patch delta 20 acmZ1|w@{AzG%qg~0}#|D%5UTr;|BmV5d>HO delta 20 acmZ1|w@{AzG%qg~0}v=n@NMK4;|BmQi36hm diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc index d6214afb71350771978ebc35040b11d08105b4ee..0395096227e4258b60d3064112800fb1035b3054 100644 GIT binary patch delta 20 acmcaFd|#ORG%qg~0}#|D%5UVp!U+I9F9mi0 delta 20 acmcaFd|#ORG%qg~0}v=n@NMM2!U+I4rv$+O diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc index fe936c66b440f25503cf98d6813311c9f24b0560..380d9bc4bb21d7da0a412e4e125fb2b9347a648b 100644 GIT binary patch delta 22 ccmZ2;hjGmvM()$Ryj%=GP?spbky|kj09Bs`RsaA1 delta 22 ccmZ2;hjGmvM()$Ryj%=Gpe(_+ky|kj08tkOp#T5? diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc index 06ad88a3907c486e74efe64754df74cf1cb297fe..f8cedcc691cbc59a396ace0fd50da917c589dd33 100644 GIT binary patch delta 20 acmcbue_NmXG%qg~0}#|D%5UVpAPxXPjRmj( delta 20 acmcbue_NmXG%qg~0}v=n@NMM2APxXL1qAy5 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/status.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/status.cpython-312.pyc index a545951972e75686df2847700210d9014a0eab58..8662635d9e87e1cadd1a5f67d1dadbb8f4dd9709 100644 GIT binary patch delta 20 acmcbwe_x;bG%qg~0}#|D%5UVpA`SpSEd{&) delta 20 acmcbwe_x;bG%qg~0}v=n@NMM2A`SpNr3D87 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc index c1ef483b3d5d99617d92a3a4dc80058605abdb6f..cda273ee895259d468b7dc03e0e7fdd1f23c0c9c 100644 GIT binary patch delta 22 ccmbQ*#x%8!iTgA!FBbz4)FsMqgr|IRGkl1F--A diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc index 50b801a08e607a542fa802ee8c3c5e6f902f368a..0e536673d73cff0f92c38d3027cd47ad398fae02 100644 GIT binary patch delta 22 ccmaF9mFf9bChpU`yj%=GP?spbk^9ap09xn=X8-^I delta 22 ccmaF9mFf9bChpU`yj%=Gpe(_+k^9ap09IfIvH$=8 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc index c8f9dfdadcfb0af68c1fa7e70537893ca7f3d577..775ce471e317502a512092504f94ab26740a2e79 100644 GIT binary patch delta 22 ccmaETh3WMbChpU`yj%=GP?spbkvm}(0AF1PK>z>% delta 22 ccmaETh3WMbChpU`yj%=Gpe(_+kvm}(09w@si~s-t diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc index f66736b6b2c807dd572c3978b1f09d2c80832b0c..43789615101946714e47088cc5f6608cb73fe275 100644 GIT binary patch delta 20 acmdllwO@++G%qg~0}#|D%5UU0;ROIVF9fIn delta 20 acmdllwO@++G%qg~0}v=n@NMKa;ROIQrvvi< diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc index de092427edb80259e2b601731741acfd860570a7..8540082986269ee1a03c72efd85ce605923450cb 100644 GIT binary patch delta 22 ccmex&hWXzaX71Cxyj%=GP?spbk-PXA0AaTWr~m)} delta 22 ccmex&hWXzaX71Cxyj%=Gpe(_+k-PXA09`Kz^8f$< diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc index d7104e1f9a53ae91305d4e53e43f5bc31729e886..03e74cddf507b795ff5c27bde0d2f506b664546b 100644 GIT binary patch delta 20 acmaEF_}-BFG%qg~0}#|D%5UU;A^`wH_66|( delta 20 acmaEF_}-BFG%qg~0}v=n@NMLNA^`wDZUsC5 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc index 1413fe1a4d0dd9bfe4feec01ca2376ae48f7f3da..b6490691edb3980b9fb472801556b8aacafd78af 100644 GIT binary patch delta 20 acmaFL^puJFG%qg~0}#|D%5UV3Vgvv>vjpA% delta 20 acmaFL^puJFG%qg~0}v=n@NMLdVgvv-D+DP3 diff --git a/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc index b216c229efe5ac46a733d7c8a60e4674a8665790..86484fbb6dc4449ba8d286b987ea5da2fbd74aeb 100644 GIT binary patch delta 22 ccmaFNB{r; delta 22 ccmaF<^%vWqXc;X delta 20 acmdlcv`vWnG%qg~0}v=n@NMMQ<^%vS8w11u diff --git a/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/after.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/after.cpython-312.pyc index 445126eed8515d26975653e0b31646f2bc4b199d..7fb3cdbd8c362f865d06162790822e4639a84b6f 100644 GIT binary patch delta 20 ZcmZqXZRX`Z&CAQh00ec3@*BA;*Z?i`1XBP2 delta 20 ZcmZqXZRX`Z&CAQh00hbsd>gqd*Z?VP1D*f? diff --git a/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before.cpython-312.pyc index 3be0d3b4b481a781d0d9a260193a1bdcf2288ef8..a06c5b2d56817ea54f1d75215044c92e592633b2 100644 GIT binary patch delta 20 acmaFN{g|8kG%qg~0}#|D%5UVp!3qF8s|9WV delta 20 acmaFN{g|8kG%qg~0}v=n@NMM2!3qF4BLuks diff --git a/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before_sleep.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before_sleep.cpython-312.pyc index dc7c0418a191bf08f3bddb73f536d290c531cd77..b312f581514e0a190c92b85473ffa22315002170 100644 GIT binary patch delta 20 acmZ1}v{H!sG%qg~0}#|D%5UVB;{*URn*>q- delta 20 acmZ1}v{H!sG%qg~0}v=n@NMLl;{*UN69b(9 diff --git a/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/nap.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tenacity/__pycache__/nap.cpython-312.pyc index 463f4872aaa3c26de2d8aa8e38b3ebc55a3ff00c..40eb4fe23397a620292c26c9a57e1c0e5027ff55 100644 GIT binary patch delta 20 acmZ3_y`G!qa#V!-G%qg~0}#|D%5UVh;sO9TLqa#V!-G%qg~0}v=n@NML_;sO9OyaV` delta 20 acmZ3HxFV7JG%qg~0}v=n@NMLtYXAT{E(G5I diff --git a/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc index f4f205aeaa60957adbbfec93229e3d9c1c66f643..5294248b562aa0d19c286151731f0494b476351c 100644 GIT binary patch delta 20 acmZ3@yqcN&G%qg~0}#|D%5UUezz6^`#{{wf delta 20 acmZ3@yqcN&G%qg~0}v=n@NMK?zz6^?KLh;$ diff --git a/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc index 8ca15f62c8063a6b292169a262aaa441b78f5a00..b1f7860057a5d55bce3a124795bc1e739d7ddd96 100644 GIT binary patch delta 22 ccmcb0iSgDYM()$Ryj%=GP?spbk=s8L09(!m#{d8T delta 22 ccmcb0iSgDYM()$Ryj%=Gpe(_+k=s8L09Qr^5&!@I diff --git a/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc index 91af1e966ff4ed7759a182746fc71933fe39f8e9..7a6256a09ab0edfb593da1b3f7b89b2b6c1b12c2 100644 GIT binary patch delta 20 acmaDa_g;?sG%qg~0}#|D%5UUO;RgUfK?Onp delta 20 acmaDa_g;?sG%qg~0}v=n@NMKy;RgUaxde>> diff --git a/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc index b41ce807767cde33637e2ecee98461b26003f486..d7d7c63a1ed7d8544b133dcda6bb91e16a2f6792 100644 GIT binary patch delta 20 acmbQqJd>IGG%qg~0}#|D%5UWEV*~&%_XKIGG%qg~0}v=n@NMMoV*~&zZv)2w diff --git a/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/__init__.cpython-312.pyc index 7b50a050363f17ad8a65fc4049b9ae04af864b89..83300c2048b7935112c391905d25f1e2b51e38e8 100644 GIT binary patch delta 20 acmbQrI+d0CG%qg~0}#|D%5UWEVgdj!pagXQ delta 20 acmbQrI+d0CG%qg~0}v=n@NMMoVgdjw7z4ln diff --git a/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_api.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_api.cpython-312.pyc index aeebdcb27d98ccfa041b0b0de0cbc37f0dbb78b1..6149f7655ca617e95798ca56da1e1bdd73a2d1ca 100644 GIT binary patch delta 20 acmaD*{h*rrG%qg~0}#|D%5UVpY6}2ND+YZ4 delta 20 acmaD*{h*rrG%qg~0}v=n@NMM2Y6}2IqXozS diff --git a/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-312.pyc index df6ad74ac71e1ebeb3921641764968f8c75a9672..700c58e530ea647fa4be8e713954625560c8bb8b 100644 GIT binary patch delta 22 ccmX@u#CWiYk^3|+FBbz4)FsMq`HU%I6 delta 20 acmeyy@r{G~G%qg~0}v=n@NMMIW&r>>t^{iU diff --git a/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_windows.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/truststore/__pycache__/_windows.cpython-312.pyc index 15d36e45b810c8973b92591de4a9db72aee90744..63a79f51dc664884f6a573e8e1e44c83b6c4059e 100644 GIT binary patch delta 20 acmdm6xwn%0G%qg~0}#|D%5UV}WCH+3Y6cGg delta 20 acmdm6xwn%0G%qg~0}v=n@NMMYWCH*};ssg& diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc index 852b7897da650624de3d4dd5130077515832c5da..5b8d3bc51e0bd69cc7e298a9642174d51ee8db69 100644 GIT binary patch delta 20 acmew%^+SsLG%qg~0}#|D%5UV(^Q?yZG%qg~0}#|D%5UV3wgUi6Kn4;3 delta 20 acmaD>^Q?yZG%qg~0}v=n@NMLdwgUi1xCLDR diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc index 09826bee2e4f535305900fa96948a3d3f890cda4..8968caa48f18d6934d349371b11550284117ebd2 100644 GIT binary patch delta 19 ZcmZo=YGvX+&CAQh00ec3@)Nm#0RSkK1f2i? delta 19 ZcmZo=YGvX+&CAQh00hbsd=t5U0RSYz1Lyz% diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc index c007f22c15275cc743d2fdd7cb9e3df4109df352..9b09251c263193fc6252a3f93f988b911c3c8c00 100644 GIT binary patch delta 22 ccmaDfpYhRrM()$Ryj%=GP?spbk^8zo09Ho^-v9sr delta 22 ccmaDfpYhRrM()$Ryj%=Gpe(_+k^8zo08zgNDgXcg diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc index b189e04e0901f4a3363640c25fee456768b7e039..b1491c230fe587253754a1115f9436f033869f2f 100644 GIT binary patch delta 22 ccmaDfo9WSPChpU`yj%=GP?spbk^6ct09FnM7XSbN delta 22 ccmaDfo9WSPChpU`yj%=Gpe(_+k^6ct08xepVgLXD diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc index 1c48079c13a4c92ca5862cd0aa3b9016f6b6801c..56e55442ab20514887ba25b01ab7f5401d3ab827 100644 GIT binary patch delta 20 acmaEm`5=?~G%qg~0}#|D%5UVpY61XBng&n+ delta 20 acmaEm`5=?~G%qg~0}v=n@NMM2Y61X75(S$8 diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc index 6c069bd3322276749a0e079c1948fdce98c50624..2dc1ed48c052ff66159ece2202afcde984f616b0 100644 GIT binary patch delta 20 acmcZ-cqNegG%qg~0}#|D%5UU8sQ~~)P6hA) delta 20 acmcZ-cqNegG%qg~0}v=n@NMKisQ~~##sxb7 diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc index cf9450400271d0f336c67253708fa6eb7759147d..54280025bea5607cc857b5ecb1594afe70c3a08b 100644 GIT binary patch delta 20 acmcaBe^;LSG%qg~0}#|D%5UVp#18;Il?9Ff delta 20 acmcaBe^;LSG%qg~0}v=n@NMM2#18;E4FuT$ diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc index e78cf25b7da5684105619245709631978cdd37c9..815281808c84f50b2e029f24b46bdb7798a1cdd1 100644 GIT binary patch delta 22 ccmex4kMZX`M()$Ryj%=GP?spbkvq>H09gG7q5uE@ delta 22 ccmex4kMZX`M()$Ryj%=Gpe(_+kvq>H0917a?EnA( diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc index d9c14660c449588d50a78d4df722a64b2fb32744..9d2ae4f6a8ba0d1e0c6747bed0f57333e0b6411e 100644 GIT binary patch delta 20 acmZ2!xzdvRG%qg~0}#|D%5UVJCj$UFDg`qD delta 20 acmZ2!xzdvRG%qg~0}v=n@NMLtCj$UAq6B^b diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc index efde5b73f30f4e28e61c613f0e98312d2029acde..df6b65911850b49ce9e82e82e22ae6d0aae9c38f 100644 GIT binary patch delta 22 ccmccJ$#lDuiTgA!FBbz4)FsMqqzOG%qg~0}#|D%1`8e1^_pY1z!LF delta 19 Zcmey!_>qzOG%qg~0}v=n@J-}?1^_d>1gZc4 diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc index 48bd26978404a968be60d73da31aee4e38bf2076..e29b430a87ce49e51c4c8b80b7a7f5fc799645dc 100644 GIT binary patch delta 20 acmaFN_n43SG%qg~0}#|D%5UV3UgsT#Q-hT1M2_) diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc index dacad15a8e293de38f47903c15b8aa2cbbd38cfd..888298e49b1efaa6048af2e78b03592f50991203 100644 GIT binary patch delta 22 ccmZ3xpK1j7IT delta 20 ZcmZp&ZnEY+&CAQh00hbsd>gsTWdSeK1P%ZI diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-312.pyc index e19f6405ba0bd7d5be4633ecc06971bb316e1df8..1bd4c1b7766ca2da548e15cc92f282a2e0fb9212 100644 GIT binary patch delta 19 ZcmZo-YGUF(&CAQh00ec3@)Nng0{|!{1e5>( delta 19 ZcmZo-YGUF(&CAQh00hbsd=t690{|pb1K$7u diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-312.pyc index 75bf2520529c7da222d6214f1b53127689b22b0e..478b4b23e114f945bfa8d746772228a10c284c23 100644 GIT binary patch delta 22 ccmdnj!MLx3k^3|+FBbz4)FsMqP@&%#* delta 20 acmX?SdCrpiG%qg~0}v=n@NMKiECT>LY6R^7 diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc index beed0269b12b0c0f01b73903e843a26e18828e01..ff49e45652d473367b5d5595ace26f809c145a26 100644 GIT binary patch delta 20 acmZ3=xs;RpG%qg~0}#|D%5UVJ#R32_vIMUH delta 20 acmZ3=xs;RpG%qg~0}v=n@NMLt#R32>Dg*ie diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc index 4b230332ee83e8b87c07c461a79ef9413ed34bba..ea7acb4849e6c77dfea02c451255513938b89106 100644 GIT binary patch delta 20 acmdn5x?h$1G%qg~0}#|D%5UV}A_M?Bzy(79 delta 20 acmdn5x?h$1G%qg~0}v=n@NMMYA_M?7I0TLW diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc index ebecfbebdb7afc6df6001c00d4c99f42b59676d4..e6a48a160cc448fa7e7a49a940aecd512f4307a3 100644 GIT binary patch delta 20 acmdnZvzv$eG%qg~0}#|D%5UU0U;_X(kOX-E delta 20 acmdnZvzv$eG%qg~0}v=n@NMKaU;_X#2m{0b diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc index d0d47e45a9446f05bce0024c6592c849ae6aacce..f941049a6810f864ef1ff655f62dabc84a787342 100644 GIT binary patch delta 20 acmey&^_h$NG%qg~0}#|D%5UV(UgsT1pq7_1I+*c diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc index c89b11297909f0ae27ae1cad05c3196b2754eba9..c8f935268d61475aacc2a06678a0a05f431cd0f0 100644 GIT binary patch delta 20 acmca1enXu5G%qg~0}#|D%5UU8%MAcLsRe5Q delta 20 acmca1enXu5G%qg~0}v=n@NMKi%MAcHAq2Jn diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc index 11db9c55f1cb25a832293369476fdf4f01ff908b..9146bcd09c0f1a67c826f73854c9c3899a449106 100644 GIT binary patch delta 22 ccmaE}lJU(-M()$Ryj%=GP?spbk^5l?09k+s761SM delta 22 ccmaE}lJU(-M()$Ryj%=Gpe(_+k^5l?095z}VE_OC diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc index 53f122d2e483fa406720baf88d261d2727d4bf88..2b2215dcb2b65a45d8b9b8dbc840d4eeb121f763 100644 GIT binary patch delta 20 acmZ2gwyKQ#G%qg~0}#|D%5UVBw*~-01qDw4 delta 20 acmZ2gwyKQ#G%qg~0}v=n@NMLlw*~+`eFT~S diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc index 5c5553e95b188a4e93169c46b88f483643b81acc..72d38af8124241dc82385268c2601b624d5fb929 100644 GIT binary patch delta 20 acmeyR{!5+vG%qg~0}#|D%5UU;FAM-gK?V5$ delta 20 acmeyR{!5+vG%qg~0}v=n@NMLNFAM-bxdlW3 diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc index dfbdbee9892ffd98fe10b174e7fe64749d61a1a9..1fac39f12b98cfa97ff9f6fefe2f0b08f8a013ee 100644 GIT binary patch delta 20 acmdlVvOk3TG%qg~0}#|D%5UU0(E;!}W diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc index adae17d6489a8a4c2552f0e589753d9f3147ad71..7e93bf8878ce4d383ab881f87318e4474abeba3d 100644 GIT binary patch delta 20 acmZ1%zAl{mG%qg~0}#|D%5UUetPKD^IR%XX delta 20 acmZ1%zAl{mG%qg~0}v=n@NMK?tPKD{xv diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc index f39f1f7cd96a11bf9451abde56c1cb53074e2ecc..208ed6cf2b39e201afdadb60fa2951091911abc9 100644 GIT binary patch delta 20 acmcateXpAPG%qg~0}#|D%5UVpYzqKO+Xi<4 delta 20 acmcateXpAPG%qg~0}v=n@NMM2YzqKKQw72R diff --git a/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc index 16b0917a8d595fd2fe5b24265c14b4094597208b..bbe2898b97f4b369d4179333429184f151f59765 100644 GIT binary patch delta 20 acmcbobWe%xtt&&CAQh00ec3@*BAs^#M8Q1i1hJ delta 20 ZcmeB)>xtt&&CAQh00hbsd>gqL^#L_u1Oxy8 diff --git a/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/labels.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/labels.cpython-312.pyc index f7478f59fc954eefe24a97d653a34cc3df32796c..6e52a031acf53e844e469827c658cee9a8683163 100644 GIT binary patch delta 20 acmZp-Xt&@#&CAQh00ec3@*BDTNCN;hwFOE5 delta 20 acmZp-Xt&@#&CAQh00hbsd>gs{NCN;dEd-SS diff --git a/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/mklabels.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/mklabels.cpython-312.pyc index 742c2e1088f7ff00ef42332ffe3f1bd8b5af8042..b83e319e54830ce365e4a77bce1a6987db22ed9f 100644 GIT binary patch delta 20 acmdlcx=ob(G%qg~0}#|D%5UUe%>@8A5Cs4L delta 20 acmdlcx=ob(G%qg~0}v=n@NMK?%>@85hy+Uj diff --git a/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/tests.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/tests.cpython-312.pyc index 31552b02a56192ecd9457251ebab64a118d20519..4703b13b363bbecff5b637d71eabe34393df6c59 100644 GIT binary patch delta 20 acmX@-an6JLG%qg~0}#|D%5UU$RsjG(76nKE delta 20 acmX@-an6JLG%qg~0}v=n@NMLFRsjG!js%kc diff --git a/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-312.pyc b/env_web/Lib/site-packages/pip/_vendor/webencodings/__pycache__/x_user_defined.cpython-312.pyc index 05542f47aadcbd94eec8a5afaa7df0818b85ce0c..ca02142ca250136ddd842fb2975074c2acef60bf 100644 GIT binary patch delta 20 acmeB@>XPC<&CAQh00ec3@*BDT^8f%b<^>1< delta 20 acmeB@>XPC<&CAQh00b%$d>gs{^8f%XWdu|J diff --git a/env_web/Scripts/pip.exe b/env_web/Scripts/pip.exe index 2d816dfa8564045baee37ce0045238682b3c1b01..5c462e519da6fc9eb8c9b57bd22887346814e5ae 100644 GIT binary patch delta 29 icmdmVo^8{4wuUW?Rm+$w0%E4uE@S)zW)v-FbN~Rv=nPN* delta 29 icmdmVo^8{4wuUW?Rm+%9IQdVnUB>tc%qUvU=l}r9WemCi diff --git a/env_web/Scripts/pip3.12.exe b/env_web/Scripts/pip3.12.exe index 2d816dfa8564045baee37ce0045238682b3c1b01..5c462e519da6fc9eb8c9b57bd22887346814e5ae 100644 GIT binary patch delta 29 icmdmVo^8{4wuUW?Rm+$w0%E4uE@S)zW)v-FbN~Rv=nPN* delta 29 icmdmVo^8{4wuUW?Rm+%9IQdVnUB>tc%qUvU=l}r9WemCi diff --git a/env_web/Scripts/pip3.exe b/env_web/Scripts/pip3.exe index 2d816dfa8564045baee37ce0045238682b3c1b01..5c462e519da6fc9eb8c9b57bd22887346814e5ae 100644 GIT binary patch delta 29 icmdmVo^8{4wuUW?Rm+$w0%E4uE@S)zW)v-FbN~Rv=nPN* delta 29 icmdmVo^8{4wuUW?Rm+%9IQdVnUB>tc%qUvU=l}r9WemCi diff --git a/models/__pycache__/model_view_base.cpython-312.pyc b/models/__pycache__/model_view_base.cpython-312.pyc index e6ad9da9902379bf1e5f405522eddcb66cee4fdf..714e3dd8dfe4d02595c43474eb1d381cdf47099e 100644 GIT binary patch delta 3009 zcmZvec}!f#9mjWemj%2FEQf6lV=%D5axK?-F=jCsV+;XorNqbcvEKL%c$$sMp{t-n{(~2}!k7rd?+w@Y8IDb@iokZ>LJFM}m z$x8c~neY6LnRzqw-rbYz)+v_tldP;27W#EwD4Tfi&8&cp9ZdGyN^D#7CasF6aYqq# z@^szTg|bp_o~Basn0i`NkL|0&)bYSizU-)W>wc})WWHYh(^0c4ka8M(z=N7voyocb zcKQab-lTP=e0MMRmAlhB$Mqh~XEN_inIBwkt~HzNHmg*9T8l~BlJeD;`^r1%opt(< z<~Nx?lroQgiTS>a({6pQ)@?H1C)Z}yu>EptW=+X~lbr_8y0!L_dBe9HA_%UzQ< zT&*^FJEwqUN}Kz=nK`CsYRB)#q4o-RXIi*}r&G&`7L_jT1V5>itR>|Xbfsl4X{Y&1 zO37JL&ZHFgl5&=FWs}=Ab1(QgeqKp=FtS?s%M?0)j$JO8XC%;1dxd|GUm$hmtYv;t zS}L_yGcm+fvli_lm8+?|L}ekB^Hdg5d0AQ1Qmc5DX|GXs7-`Yi6I^($%FRfBG!~2U@KoGNvC7MZ zUDnn&vNdvN{aWUb-3>+Z`TA`|YG4i;)OchMsG-5RBZTQ;|eGG|9v9qk>QJ zse~vc{lS1`((P+v19FqEf#O7c<5mlkH+^-?F8}M>&PL?+<^-g7n_E{^!k_+F1}a1i zVY*$0+G^!rnq6ympgW(spS66PlmE+{jt_G>uC4hfXX`@7R^gDLmV-XER?JAB;E8Y| zAuiekVj8x`_*0?^?zYA0s`y5uTxc$o?m(K{^Omx>CYZkcOq z%C%VTZ`;ClCeO7wSzZHdmDdqUbI~d)bRH4>ahzA$^`c7tbi?Y! z$yKU>SUY>zVcFLiqud9AMe>8r?)D(!bOVgwwHbDDjT>3S(B#o*A`-|k>}m8&HhT0i&$dp_h!{XV zW@PH&1P>)5lln78n6#I0EB=ra0tL>gBS-U zfC%syFbPaq=vAejkHCHt0!RRl15X0@+7eF#&j8N?_(Tx1z}JCq0>^;ofaifZ;5)zz zz>C0lf#bjl;3T12oI>>_;0$mUI1ju6TmUWtcs+{OfY*UH0GD+2w6N>4yXWxE1qeR} zZUVmmegzo7E#No6Z-L(de*pdn{2BNw@HgNez$d_`^7Ed;x__gJ>sI6fdB9zQVaG+S zZhV0^f%rmh=xvxu!-K|sFY delta 2928 zcmZveeQZ-z7{>2uyLH`KD}zlsV6JRz>%O`U#&C3Fe29p{`Hgl$f!(vMvs?AtB7*2< zm@zsH)e|-9L_|Pf6F;gb>Yqjv^$!U#>V+6%j1o0!R20!f-{*9WE3Qd@=iKK!?|VM( zx#!*!PqVY5%=3ZAldIA1@Et`x+h6uH+1aY}rS@6&6}(ih+eQtMGM>e=eN^L4Js3u5 z?^{j9dB4a!i?1F&JtX&LmzRb8L70`8>N|Dv3#KlYKl}@S{6-oc*7JKsx7`t zRBW@n(b?Qh9j>3k9<}J{Es&KATq3hF0*Aa%;!&AhrwZuLkoAWB1BP!}axjnBO z<2y1%P^Tp*rR)#O5A$|aalP;TDeT;0e-?IbmqTv9bB_vrF8#KpW?e& z2-t*8Zm6EY>~eE;ZOJUkVib^TNIU7xPc@Bf|HSJ*=Jg-QD*!Z5N_!jgY; z`ea#M6Z(fY2sA9P;SjSe%2ZJ>fbu`#*`&*O#`YKwa z_WBOiE=TK=o{4$op!YI)b^T1)81fd*MLPOpDbPtdVcPyuAZ9vycyePhDGu5Nl9={e_*PL$HN&2nlS*jTs;=4^3uJG@5_XL|&@f&$ zF_cPl=m!G-3u{nesrl>K_30ny=P_Cj@~Mafr9WuPbm~fM>Wg;8HyVcZ)|ibGo$BmH zxv#OC2JT*Xq$x-#0@Y&LRYA&>09eS)QDXOfAz%Jk!Z6R?ts(XOFz<%HWa0nO&@VOvf z1hBN?C3#a@h`l98+Ik0%K{yV4415B72AIG};B(*$;7i~u;A`L%@GbB?@B{D@@H6lW z@GEc{_zl3pE2aVYz#kgz1Jki7k%+4|gTNa@{3S=0)(kpu&+%Rm`9L9nLss~JVuI;5 z=*)?A_48zJLKkJwabgK|I;bak0WKE;%|IKl0=OJ#2e1>>6O!3w>fG~bnmcnK%%fIA zPcK_$vUK%|quGw*j=E3Nr&b?hEGzwH`yp0@hwEJE*_?2HLf;(ct)f@nedX%u8?xA( NRBZS3(;8~Z_z!D{i--UK diff --git a/models/model_view_base.py b/models/model_view_base.py index 7ca14822..75476cf3 100644 --- a/models/model_view_base.py +++ b/models/model_view_base.py @@ -67,6 +67,7 @@ class Model_View_Base(BaseModel, ABC): FLAG_COMMENT: ClassVar[str] = 'comment' # FLAG_CONTACT_US: ClassVar[str] = 'button-contact' FLAG_CONTAINER: ClassVar[str] = 'container' + FLAG_CONTAINER_ICON_AND_LABEL: ClassVar[str] = 'container-icon-label' FLAG_CONTAINER_INPUT: ClassVar[str] = FLAG_CONTAINER + '-input' FLAG_COUNTY: ClassVar[str] = Base.FLAG_COUNTY FLAG_CURRENCY: ClassVar[str] = 'currency' diff --git a/static/MySQL/0000_combine.sql b/static/MySQL/0000_combine.sql index b09e4ea4..72546d6d 100644 --- a/static/MySQL/0000_combine.sql +++ b/static/MySQL/0000_combine.sql @@ -309,6 +309,7 @@ DROP PROCEDURE IF EXISTS p_shop_save_supplier; DROP PROCEDURE IF EXISTS p_shop_save_supplier_test; DROP PROCEDURE IF EXISTS p_shop_get_many_supplier; DROP PROCEDURE IF EXISTS p_shop_save_supplier_purchase_order; +DROP PROCEDURE IF EXISTS p_shop_save_supplier_purchase_order_test; DROP PROCEDURE IF EXISTS p_shop_get_many_supplier_purchase_order; DROP PROCEDURE IF EXISTS p_shop_save_manufacturing_purchase_order; DROP PROCEDURE IF EXISTS p_shop_get_many_manufacturing_purchase_order; @@ -2633,13 +2634,16 @@ CREATE TABLE IF NOT EXISTS Shop_Supplier_Purchase_Order_Audit ( # Supplier Purchase Order Staging +DROP TABLE IF EXISTS Shop_Supplier_Purchase_Order_Temp; + SELECT CONCAT('WARNING: Table ', TABLE_NAME, ' already exists.') AS msg_warning FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'Shop_Supplier_Purchase_Order_Temp'; CREATE TABLE IF NOT EXISTS Shop_Supplier_Purchase_Order_Temp ( - id_order INT NOT NULL, - id_supplier_ordered INT NOT NULL, - id_currency_cost INT NOT NULL, - active BIT NULL + id_order INT NOT NULL + , id_supplier_ordered INT NOT NULL + , id_currency_cost INT NOT NULL + , active BIT NULL + , GUID BINARY(36) NOT NULL ); # Supplier Purchase Order Product Link @@ -2715,8 +2719,9 @@ SELECT CONCAT('WARNING: Table ', TABLE_NAME, ' already exists.') AS msg_warning CREATE TABLE IF NOT EXISTS Shop_Supplier_Purchase_Order_Product_Link_Temp ( id_link INT NOT NULL PRIMARY KEY , id_order INT NOT NULL - , id_permutation INT NOT NULL - , id_currency_cost INT NOT NULL + , id_product INT NULL + , id_permutation INT NULL + , csv_list_variations VARCHAR(4000) NULL , id_unit_quantity INT NOT NULL , quantity_ordered FLOAT NOT NULL , quantity_received FLOAT NULL @@ -6635,18 +6640,21 @@ BEGIN SET name := ( SELECT CONCAT( - P.name + IFNULL(PC.name, '(No Category)') + , ' - ' + , IFNULL(P.name, '(No Product)') , CASE WHEN P.has_variations = 1 THEN CONCAT(' - ', GROUP_CONCAT(CONCAT(VT.name, ': ', V.name) SEPARATOR ', ')) ELSE '' END ) FROM Shop_Product_Permutation PP INNER JOIN Shop_Product P ON PP.id_product = P.id_product - INNER JOIN Shop_Product_Permutation_Variation_Link PPVL ON PP.id_permutation = PPVL.id_permutation - INNER JOIN Shop_Variation V ON PPVL.id_variation = V.id_variation - INNER JOIN Shop_Variation_Type VT ON V.id_type = VT.id_type + INNER JOIN Shop_Product_Category PC ON P.id_category = PC.id_category + LEFT JOIN Shop_Product_Permutation_Variation_Link PPVL ON PP.id_permutation = PPVL.id_permutation + LEFT JOIN Shop_Variation V ON PPVL.id_variation = V.id_variation + LEFT JOIN Shop_Variation_Type VT ON V.id_type = VT.id_type WHERE PP.id_permutation = id_product_permutation - GROUP BY P.id_product, P.name, P.has_variations, VT.display_order, VT.name, V.display_order, V.name + GROUP BY PC.id_category, PC.name, P.id_product, P.name, P.has_variations, VT.display_order, VT.name, V.display_order, V.name LIMIT 1 ); @@ -6655,6 +6663,13 @@ END // DELIMITER ; +/* +SELECT + fn_shop_get_product_permutation_name( + 3 -- id_product_permutation + ) +; +*/ DROP FUNCTION IF EXISTS fn_shop_get_id_product_permutation_from_variation_csv_list; DELIMITER // @@ -9153,17 +9168,17 @@ BEGIN WHERE ISNULL(t_P.can_view) ); - DELETE + DELETE t_C FROM tmp_Category_calc t_C WHERE FIND_IN_SET(t_C.id_category, v_ids_category_invalid) > 0 ; - DELETE + DELETE t_P FROM tmp_Product_calc t_P WHERE FIND_IN_SET(t_P.id_product, v_ids_product_invalid) > 0 ; - DELETE + DELETE t_PP FROM tmp_Permutation_calc t_PP WHERE FIND_IN_SET(t_PP.id_product, v_ids_product_invalid) > 0 ; @@ -13211,7 +13226,7 @@ BEGIN SELECT * FROM tmp_Shop_Product t_P WHERE - /*( + *( a_get_all_category OR a_get_all_product OR a_get_all_product_permutation @@ -13427,7 +13442,7 @@ BEGIN -- select * from Shop_Calc_User_Temp; -- select * from tmp_Shop_Product; - DELETE -- t_P + DELETE t_P FROM tmp_Shop_Product t_P WHERE FIND_IN_SET(t_P.id_product, (SELECT GROUP_CONCAT(UET.id_product SEPARATOR ',') FROM Shop_Calc_User_Temp UET)) = 0 # id_product NOT LIKE CONCAT('%', (SELECT GROUP_CONCAT(id_product SEPARATOR '|') FROM Shop_Calc_User_Temp), '%'); @@ -15118,7 +15133,7 @@ BEGIN -- String product id, permutation id, quantity list IF NOT EXISTS (SELECT * FROM tmp_Shop_Basket WHERE active LIMIT 1) AND NOT EXISTS (SELECT msg FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN -- NOT v_has_filter_user AND # Get product ids - CALL p_split(a_guid, a_ids_permutation_basket, ','); + CALL p_split(v_guid, a_ids_permutation_basket, ','); INSERT INTO tmp_Shop_Product ( id_product, id_permutation, display_order ) @@ -15136,7 +15151,7 @@ BEGIN DROP TABLE Split_Temp; # Get product quantities - CALL p_split(a_guid, a_quantities_permutation_basket, ','); + CALL p_split(v_guid, a_quantities_permutation_basket, ','); INSERT INTO tmp_Shop_Quantity ( quantity, display_order ) @@ -16354,7 +16369,7 @@ BEGIN -- Suppliers IF v_has_filter_supplier = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_supplier, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_supplier, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -16365,12 +16380,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -16483,8 +16498,8 @@ BEGIN SELECT t_S.id_supplier, S.id_currency, - C.symbol AS symbol_currency, C.code AS code_currency, + C.symbol AS symbol_currency, S.name_company, S.name_contact, S.department_contact, @@ -16599,9 +16614,11 @@ BEGIN , msg ) SELECT - NULL + MET.id_type , @errno , @text + FROM partsltd_prod.Shop_Msg_Error_Type MET + WHERE code = 'MYSQL_ERROR' ; SELECT * FROM tmp_Msg_Error; @@ -16609,19 +16626,20 @@ BEGIN END; SET v_time_start := CURRENT_TIMESTAMP(6); - SET v_code_type_error_bad_data := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'BAD_DATA'); - SET v_id_type_error_bad_data := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_bad_data); - SET v_code_type_error_no_permission := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'NO_PERMISSION'); - SET v_id_type_error_no_permission := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_no_permission); - SET v_code_type_error_warning := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'WARNING'); - SET v_id_type_error_warning := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_warning); - SET v_id_permission_supplier_purchase_order := (SELECT GROUP_CONCAT(id_permission SEPARATOR ',') FROM partsltd_prod.Shop_Permission WHERE code IN ('STORE_SUPPLIER', 'STORE_SUPPLIER_PURCHASE_ORDER', 'STORE_PRODUCT') LIMIT 1); + SET v_code_type_error_bad_data := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'BAD_DATA' LIMIT 1); + SET v_id_type_error_bad_data := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_bad_data LIMIT 1); + SET v_code_type_error_no_permission := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'NO_PERMISSION' LIMIT 1); + SET v_id_type_error_no_permission := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_no_permission LIMIT 1); + SET v_code_type_error_warning := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'WARNING' LIMIT 1); + SET v_id_type_error_warning := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_warning LIMIT 1); + SET v_id_permission_supplier_purchase_order := (SELECT GROUP_CONCAT(id_permission SEPARATOR ',') FROM partsltd_prod.Shop_Permission WHERE code IN ('STORE_SUPPLIER', 'STORE_SUPPLIER_PURCHASE_ORDER', 'STORE_PRODUCT')); SET v_id_access_level_edit := (SELECT id_access_level FROM partsltd_prod.Shop_Access_Level WHERE code = 'EDIT' LIMIT 1); CALL p_validate_guid ( a_guid ); SET a_comment := TRIM(IFNULL(a_comment, '')); - DROP TEMPORARY TABLE IF EXISTS tmp_Supplier; + DROP TEMPORARY TABLE IF EXISTS tmp_Supplier_Purchase_Order; + DROP TEMPORARY TABLE IF EXISTS tmp_Supplier_Purchase_Order_Product_Link; DROP TEMPORARY TABLE IF EXISTS tmp_Msg_Error; -- Temporary tables @@ -16630,8 +16648,11 @@ BEGIN , id_order_temp INT NOT NULL , id_supplier_ordered INT NOT NULL , id_currency_cost INT NOT NULL - -- , cost_total_local FLOAT NOT NULL + , cost_total_local_VAT_excl FLOAT NULL + , cost_total_local_VAT_incl FLOAT NULL , active BIT NOT NULL + , is_new BIT NOT NULL + , name_error VARCHAR(1000) NOT NULL ); CREATE TEMPORARY TABLE tmp_Supplier_Purchase_Order_Product_Link ( @@ -16645,12 +16666,13 @@ BEGIN , latency_delivery_days INT NOT NULL , display_order INT NOT NULL , active BIT NOT NULL - , name_error VARCHAR(200) NOT NULL , cost_total_local_VAT_excl FLOAT NOT NULL , cost_total_local_VAT_incl FLOAT NOT NULL , cost_unit_local_VAT_excl FLOAT NOT NULL , cost_unit_local_VAT_incl FLOAT NOT NULL , has_order BIT NULL + , is_new BIT NOT NULL + , name_error VARCHAR(1000) NULL ); CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Msg_Error ( @@ -16665,14 +16687,30 @@ BEGIN , id_order_temp , id_supplier_ordered , id_currency_cost + , active + , is_new + , name_error ) SELECT SPO_T.id_order , SPO_T.id_order , IFNULL(IFNULL(SPO_T.id_supplier_ordered, SPO.id_supplier_ordered), 0) AS id_supplier_ordered , IFNULL(IFNULL(SPO_T.id_currency_cost, SPO.id_currency_cost), 0) AS id_currency_cost + , IFNULL(IFNULL(SPO_T.active, SPO.active), 1) AS active + , ISNULL(SPO.id_order) AS is_new + , CONCAT( + IFNULL(S.name_company, '(No Supplier)') + , ' - ' + , IFNULL(SPO.created_on, '(No creation date)') + , ' - ' + , IFNULL(C.symbol, '(No Currency)') + , ' ' + , IFNULL(IFNULL(SPO.cost_total_local_vat_excl, SPO.cost_total_local_vat_incl), '(No cost)') + ) AS name_error FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp SPO_T LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order SPO ON SPO_T.id_order = SPO.id_order + LEFT JOIN partsltd_prod.Shop_Supplier S ON SPO_T.id_supplier_ordered = S.id_supplier + LEFT JOIN partsltd_prod.Shop_Currency C ON SPO_T.id_currency_cost = C.id_currency WHERE SPO_T.GUID = a_guid ; @@ -16686,59 +16724,106 @@ BEGIN , quantity_received , latency_delivery_days , display_order - , active - , name_error - , is_new , cost_total_local_VAT_excl , cost_total_local_VAT_incl , cost_unit_local_VAT_excl , cost_unit_local_VAT_incl + , active , has_order + , is_new ) SELECT IFNULL(SPOPL_T.id_link, 0) AS id_link , IFNULL(IFNULL(SPOPL_T.id_order, SPOPL.id_order), 0) AS id_order - , IFNULL(IFNULL(SPOPL_T.id_permutation, SPOPL.id_permutation), 0) AS id_permutation + , IFNULL( + IFNULL( + IFNULL( + SPOPL_T.id_permutation + , CASE WHEN NOT ISNULL(SPOPL_T.id_product) AND NOT ISNULL(SPOPL_T.csv_list_variations) THEN + partsltd_prod.fn_shop_get_id_product_permutation_from_variation_csv_list(SPOPL_T.id_product, SPOPL_T.csv_list_variations) + ELSE NULL END + ) + , SPOPL.id_permutation + ) + , 0 + ) AS id_permutation -- , IFNULL(IFNULL(SPOPL_T.id_currency_cost, SPOPL.id_currency_cost), 0) AS id_currency_cost , IFNULL(IFNULL(SPOPL_T.id_unit_quantity, SPOPL.id_unit_quantity), 0) AS id_unit_quantity , IFNULL(IFNULL(SPOPL_T.quantity_ordered, SPOPL.quantity_ordered), 0) AS quantity_ordered , IFNULL(SPOPL_T.quantity_received, SPOPL.quantity_received) AS quantity_received , IFNULL(SPOPL_T.latency_delivery_days, SPOPL.latency_delivery_days) AS latency_delivery_days , RANK() OVER (PARTITION BY IFNULL(IFNULL(SPOPL_T.id_order, SPOPL.id_order), 0) ORDER BY IFNULL(IFNULL(SPOPL_T.display_order, SPOPL.display_order), 0)) AS display_order - , IFNULL(IFNULL(SPOPL_T.active, SPOPL.active), 1) AS active - , CONCAT( - fn_shop_get_product_permutation_name(SPOPL_T.id_permutation) - , ' - x' - , IFNULL(SPOPL_T.quantity_ordered, '(No Quantity)') - ) AS name_error - , IFNULL(SPOPL_T.id_link, 0) < 1 AS is_new , IFNULL(IFNULL(SPOPL_T.cost_total_local_VAT_excl, SPOPL.cost_total_local_VAT_excl), 0) AS cost_total_local_VAT_excl , IFNULL(IFNULL(SPOPL_T.cost_total_local_VAT_incl, SPOPL.cost_total_local_VAT_incl), 0) AS cost_total_local_VAT_incl , IFNULL(SPOPL_T.cost_total_local_VAT_excl / SPOPL_T.quantity_ordered, SPOPL.cost_unit_local_VAT_excl) AS cost_unit_local_VAT_excl , IFNULL(SPOPL_T.cost_total_local_VAT_incl / SPOPL_T.quantity_ordered, SPOPL.cost_unit_local_VAT_incl) AS cost_unit_local_VAT_incl + , IFNULL(IFNULL(SPOPL_T.active, SPOPL.active), 1) AS active , NOT ISNULL(t_SPO.id_order) AS has_order + , IFNULL(SPOPL_T.id_link, 0) < 1 AS is_new FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp SPOPL_T LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link SPOPL ON SPOPL_T.id_link = SPOPL.id_link LEFT JOIN tmp_Supplier_Purchase_Order t_SPO ON SPOPL_T.id_order = t_SPO.id_order WHERE SPOPL_T.GUID = a_guid ; - + + UPDATE tmp_Supplier_Purchase_Order_Product_Link t_SPOPL + INNER JOIN partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp SPOPL_T ON t_SPOPL.id_order = SPOPL_T.id_order + LEFT JOIN partsltd_prod.Shop_Product P ON SPOPL_T.id_product = P.id_product + LEFT JOIN partsltd_prod.Shop_Product_Category PC ON P.id_category = PC.id_category + SET + name_error = CONCAT( + CASE WHEN ISNULL(t_SPOPL.id_permutation) THEN + CASE WHEN ISNULL(SPOPL_T.id_product) THEN + '(No Product Permutation)' + ELSE + CONCAT( + PC.name + , ' - ' + , P.name + ) + END + ELSE + fn_shop_get_product_permutation_name(t_SPOPL.id_permutation) + END + , ' - x' + , IFNULL(t_SPOPL.quantity_ordered, '(No Quantity)') + ) + ; + INSERT INTO tmp_Supplier_Purchase_Order ( id_order , id_order_temp , id_supplier_ordered , id_currency_cost + , active + , is_new ) SELECT - SPO_T.id_order - , SPO_T.id_order - , IFNULL(IFNULL(SPO_T.id_supplier_ordered, SPO.id_supplier_ordered), 0) AS id_supplier_ordered - , IFNULL(IFNULL(SPO_T.id_currency_cost, SPO.id_currency_cost), 0) AS id_currency_cost + SPO.id_order + , SPO.id_order + , IFNULL(SPO.id_supplier_ordered, 0) AS id_supplier_ordered + , IFNULL(SPO.id_currency_cost, 0) AS id_currency_cost + , SPO.active AS active + , 0 AS is_new FROM partsltd_prod.Shop_Supplier_Purchase_Order SPO INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON SPO.id_order = t_SPOPL.id_order AND t_SPOPL.has_order = 0 ; + + UPDATE tmp_Supplier_Purchase_Order t_SPO + INNER JOIN ( + SELECT + t_SPOPL.id_order + , SUM(t_SPOPL.cost_total_local_VAT_excl) AS cost_total_local_VAT_excl + , SUM(t_SPOPL.cost_total_local_VAT_incl) AS cost_total_local_VAT_incl + FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL + GROUP BY t_SPOPL.id_order + ) SUM_t_SPOPL ON t_SPO.id_order = SUM_t_SPOPL.id_order + SET + t_SPO.cost_total_local_VAT_excl = SUM_t_SPOPL.cost_total_local_VAT_excl + , t_SPO.cost_total_local_VAT_incl = SUM_t_SPOPL.cost_total_local_VAT_incl + ; -- Validation -- Supplier Purchase Order @@ -16942,7 +17027,7 @@ BEGIN , name_error , COUNT(*) FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - GROUP BY id_permutation + GROUP BY id_permutation, name_error HAVING COUNT(*) > 1 ) THEN INSERT INTO tmp_Msg_Error ( @@ -16958,7 +17043,7 @@ BEGIN , name_error , COUNT(*) FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - GROUP BY id_permutation + GROUP BY id_permutation, name_error HAVING COUNT(*) > 1 ) t_SPOPLC ; @@ -17013,7 +17098,7 @@ BEGIN ); IF a_debug = 1 THEN SELECT - v_guid + a_guid , a_id_user , FALSE -- get inactive users , v_id_permission_supplier_purchase_order @@ -17025,7 +17110,7 @@ BEGIN END IF; CALL p_shop_calc_user( - v_guid + a_guid , a_id_user , FALSE -- get inactive users , v_id_permission_supplier_purchase_order @@ -17038,7 +17123,7 @@ BEGIN SELECT * from partsltd_prod.Shop_Calc_User_Temp WHERE GUID = a_guid; END IF; - IF NOT EXISTS (SELECT can_view FROM partsltd_prod.Shop_Calc_User_Temp UE_T WHERE UE_T.GUID = v_guid) THEN + IF NOT EXISTS (SELECT can_view FROM partsltd_prod.Shop_Calc_User_Temp UE_T WHERE UE_T.GUID = a_guid) THEN DELETE FROM tmp_Msg_Error; INSERT INTO tmp_Msg_Error ( @@ -17054,12 +17139,10 @@ BEGIN ; END IF; - CALL partsltd_prod.p_shop_clear_calc_user( a_guid ); - - IF EXISTS ( SELECT * FROM tmp_Msg_Error LIMIT 1 ) THEN - DELETE FROM tmp_Supplier_Purchase_Order; - DELETE FROM tmp_Supplier_Purchase_Order_Product_Link; - END IF; + CALL partsltd_prod.p_shop_clear_calc_user( + a_guid + , 0 -- a_debug + ); IF EXISTS ( SELECT * @@ -17092,6 +17175,11 @@ BEGIN ) AS msg ; END IF; + + IF EXISTS ( SELECT * FROM tmp_Msg_Error LIMIT 1 ) THEN + DELETE FROM tmp_Supplier_Purchase_Order; + DELETE FROM tmp_Supplier_Purchase_Order_Product_Link; + END IF; -- Transaction IF NOT EXISTS (SELECT * FROM tmp_Msg_Error) THEN @@ -17115,17 +17203,17 @@ BEGIN , id_currency_cost , cost_total_local_VAT_excl , cost_total_local_VAT_incl + , active , created_by , created_on , id_change_set - , active ) SELECT t_SPO.id_order_temp , t_SPO.id_supplier_ordered , t_SPO.id_currency_cost - , SUM(t_SPOPL.cost_total_local_VAT_excl) - , SUM(t_SPOPL.cost_total_local_VAT_incl) + , t_SPO.cost_total_local_VAT_excl + , t_SPO.cost_total_local_VAT_incl , t_SPO.active , a_id_user , v_time_start @@ -17133,6 +17221,7 @@ BEGIN FROM tmp_Supplier_Purchase_Order t_SPO INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order WHERE t_SPOPL.is_new = 1 + GROUP BY t_SPO.id_order ; UPDATE partsltd_prod.Shop_Supplier_Purchase_Order SPO @@ -17142,10 +17231,10 @@ BEGIN INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order SET SPO.id_supplier_ordered = t_SPO.id_supplier_ordered - , SPO.id_currency_cost = id_currency_cost - , SPO.cost_total_local_VAT_excl = SUM(t_SPOPL.cost_total_local_VAT_excl) - , SPO.cost_total_local_VAT_incl = SUM(t_SPOPL.cost_total_local_VAT_incl) - , SPO.active = a_active + , SPO.id_currency_cost = t_SPO.id_currency_cost + , SPO.cost_total_local_VAT_excl = t_SPO.cost_total_local_VAT_excl + , SPO.cost_total_local_VAT_incl = t_SPO.cost_total_local_VAT_incl + , SPO.active = t_SPO.active , SPO.id_change_set = v_id_change_set ; @@ -17168,7 +17257,6 @@ BEGIN INSERT INTO Shop_Supplier_Purchase_Order_Product_Link ( id_order , id_permutation - -- , id_currency_cost , id_unit_quantity , quantity_ordered , quantity_received @@ -17177,13 +17265,15 @@ BEGIN , active , cost_total_local_VAT_excl , cost_total_local_VAT_incl + , cost_unit_local_VAT_excl + , cost_unit_local_VAT_incl , created_by + , created_on , id_change_set ) SELECT t_SPOPL.id_order , t_SPOPL.id_permutation - -- , t_SPOPL.id_currency_cost , t_SPOPL.id_unit_quantity , t_SPOPL.quantity_ordered , t_SPOPL.quantity_received @@ -17192,7 +17282,10 @@ BEGIN , t_SPOPL.active , t_SPOPL.cost_total_local_VAT_excl , t_SPOPL.cost_total_local_VAT_incl + , t_SPOPL.cost_unit_local_VAT_excl + , t_SPOPL.cost_unit_local_VAT_incl , a_id_user + , v_time_start , v_id_change_set FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL WHERE t_SPOPL.is_new = 1 @@ -17203,18 +17296,19 @@ BEGIN ON SPOPL.id_link = t_SPOPL.id_link AND t_SPOPL.is_new = 0 SET - SPOPL.id_order = t_SPOPL.id_order, - SPOPL.id_permutation = t_SPOPL.id_permutation, - -- SPOPL.id_currency_cost = t_SPOPL.id_currency_cost, - SPOPL.id_unit_quantity = t_SPOPL.id_unit_quantity, - SPOPL.quantity_ordered = t_SPOPL.quantity_ordered, - SPOPL.quantity_received = t_SPOPL.quantity_received, - SPOPL.latency_delivery_days = t_SPOPL.latency_delivery_days, - SPOPL.display_order = t_SPOPL.display_order, - SPOPL.active = t_SPOPL.active, - SPOPL.cost_total_local_VAT_excl = t_SPOPL.cost_total_local_VAT_excl, - SPOPL.cost_total_local_VAT_incl = t_SPOPL.cost_total_local_VAT_incl, - SPOPL.id_change_set = v_id_change_set + SPOPL.id_order = t_SPOPL.id_order + , SPOPL.id_permutation = t_SPOPL.id_permutation + , SPOPL.id_unit_quantity = t_SPOPL.id_unit_quantity + , SPOPL.quantity_ordered = t_SPOPL.quantity_ordered + , SPOPL.quantity_received = t_SPOPL.quantity_received + , SPOPL.latency_delivery_days = t_SPOPL.latency_delivery_days + , SPOPL.display_order = t_SPOPL.display_order + , SPOPL.active = t_SPOPL.active + , SPOPL.cost_total_local_VAT_excl = t_SPOPL.cost_total_local_VAT_excl + , SPOPL.cost_total_local_VAT_incl = t_SPOPL.cost_total_local_VAT_incl + , SPOPL.cost_unit_local_VAT_excl = t_SPOPL.cost_unit_local_VAT_excl + , SPOPL.cost_unit_local_VAT_incl = t_SPOPL.cost_unit_local_VAT_incl + , SPOPL.id_change_set = v_id_change_set ; DELETE SPO_T @@ -17236,7 +17330,8 @@ BEGIN ; IF a_debug = 1 THEN - SELECT * from tmp_Supplier; + SELECT * from tmp_Supplier_Purchase_Order; + SELECT * from tmp_Supplier_Purchase_Order_Product_Link; END IF; DROP TEMPORARY TABLE tmp_Supplier_Purchase_Order; @@ -17312,6 +17407,159 @@ DELETE FROM Shop_Supplier_Purchase_Order; +-- Clear previous proc +DROP PROCEDURE IF EXISTS partsltd_prod.p_shop_save_supplier_purchase_order_test; + + +DELIMITER // +CREATE PROCEDURE p_shop_save_supplier_purchase_order_test () +BEGIN + + DECLARE v_guid BINARY(36); + DECLARE v_time_start TIMESTAMP(6); + + SET v_time_start := CURRENT_TIMESTAMP(6); + SET v_guid := 'nips'; + + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp + ; + + START TRANSACTION; + + DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp; + DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp; + + INSERT INTO partsltd_prod.Shop_Supplier_Purchase_Order_Temp ( + id_order + , id_supplier_ordered + , id_currency_cost + , active + , GUID + ) + /* Test 1 - Insert + VALUES ( + -1 + , 1 + , 1 + , 1 + , v_guid + ) + */ + SELECT + id_order + , id_supplier_ordered + , id_currency_cost + , active + , v_guid + FROM partsltd_prod.Shop_Supplier_Purchase_Order + WHERE id_order = 6 + ; + + INSERT INTO partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp ( + id_link + , id_order + , id_permutation + , id_unit_quantity + , quantity_ordered + , quantity_received + , latency_delivery_days + , display_order + , active + , cost_total_local_VAT_excl + , cost_total_local_VAT_incl + , GUID + ) + /* Test 1 - Insert + VALUES ( + -1 + , -1 + , 3 + , 3 + , 3 + , 1 + , 7 + , 1 + , 1 + , 5 + , 6 + , v_guid + ) + */ + SELECT + id_link + , id_order + , id_permutation + , id_unit_quantity + , 5 AS quantity_ordered + , quantity_received + , latency_delivery_days + , display_order + , active + , cost_total_local_VAT_excl + , cost_total_local_VAT_incl + , v_guid + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link + WHERE id_order = 6 + ; + + COMMIT; + + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp + WHERE GUID = v_guid + ; + + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp + WHERE GUID = v_guid + ; + + CALL partsltd_prod.p_shop_save_supplier_purchase_order ( + 'Test save Supplier Purchase Order' -- comment + , v_guid -- guid + , 1 -- id_user + , 1 -- debug + ); + + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order + ; + SELECT * + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link + ; + + CALL partsltd_prod.p_debug_timing_reporting ( v_time_start ); +END // +DELIMITER ;; + +/* +CALL partsltd_prod.p_shop_save_supplier_purchase_order_test (); + +DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp; +DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp; + +DROP TABLE IF EXISTS tmp_Msg_Error; + +Cannot add or update a child row: a foreign key constraint fails (`partsltd_prod`.`shop_supplier_address`, CONSTRAINT `FK_Shop_Supplier_Address_id_supplier` FOREIGN KEY (`id_supplier`) REFERENCES `shop_supplier` (`id_supplier`) ON UPDATE RESTRICT) + +*/ + DROP PROCEDURE IF EXISTS p_shop_get_many_supplier_purchase_order; DELIMITER // @@ -17413,7 +17661,7 @@ BEGIN -- Permutations IF v_has_filter_permutation = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_permutation, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_permutation, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -17424,12 +17672,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -17478,7 +17726,7 @@ BEGIN -- Suppliers IF v_has_filter_supplier = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_supplier, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_supplier, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -17489,12 +17737,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -17556,7 +17804,7 @@ BEGIN -- Supplier Purchase Orders IF v_has_filter_order = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_order, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_order, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -17567,12 +17815,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -17726,7 +17974,10 @@ BEGIN SELECT t_SPO.id_order , SPO.id_supplier_ordered + , S.name_company , SPO.id_currency_cost + , C.symbol + , C.code , SPO.cost_total_local_VAT_excl , SPO.cost_total_local_VAT_incl , SPO.active @@ -17738,12 +17989,16 @@ BEGIN ) AS name FROM tmp_Supplier_Purchase_Order t_SPO INNER JOIN partsltd_prod.Shop_Supplier_Purchase_Order SPO ON SPO.id_order = t_SPO.id_order + LEFT JOIN partsltd_prod.Shop_Supplier S ON SPO.id_supplier_ordered = S.id_supplier + LEFT JOIN partsltd_prod.Shop_Currency C ON SPO.id_currency_cost = C.id_currency ; # Supplier Purchase Order Product Link SELECT SPOPL.id_link , SPOPL.id_order + , P.id_category + , P.id_product , SPOPL.id_permutation , fn_shop_get_product_permutation_name(SPOPL.id_permutation) AS name_permutation -- , SPOPL.id_currency_cost @@ -17759,6 +18014,8 @@ BEGIN , SPOPL.active FROM tmp_Supplier_Purchase_Order t_SPO INNER JOIN partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link SPOPL ON t_SPO.id_order = SPOPL.id_order + LEFT JOIN partsltd_prod.Shop_Product_Permutation PP ON SPOPL.id_permutation = PP.id_permutation + LEFT JOIN partsltd_prod.Shop_Product P ON PP.id_product = P.id_product ; # Errors @@ -17787,9 +18044,10 @@ END // DELIMITER ;; +/* CALL p_shop_get_many_supplier_purchase_order ( - 0, # a_id_user + 1, # a_id_user 1, # a_get_all_supplier 0, # a_get_inactive_supplier '', # a_ids_supplier @@ -17802,7 +18060,6 @@ CALL p_shop_get_many_supplier_purchase_order ( , 0 # a_debug ); -/* */ @@ -17854,9 +18111,11 @@ BEGIN , msg ) SELECT - NULL + MET.id_type , @errno , @text + FROM partsltd_prod.Shop_Msg_Error_Type MET + WHERE code = 'MYSQL_ERROR' ; SELECT * FROM tmp_Msg_Error; @@ -17874,13 +18133,16 @@ BEGIN CALL p_validate_guid ( a_guid ); SET a_comment := TRIM(IFNULL(a_comment, '')); - DROP TEMPORARY TABLE IF EXISTS tmp_Manufacturing; + DROP TEMPORARY TABLE IF EXISTS tmp_Manufacturing_Purchase_Order; + DROP TEMPORARY TABLE IF EXISTS tmp_Manufacturing_Purchase_Order_Product_Link; DROP TEMPORARY TABLE IF EXISTS tmp_Msg_Error; -- Temporary tables CREATE TEMPORARY TABLE tmp_Manufacturing_Purchase_Order ( id_order INT NOT NULL PRIMARY KEY , id_currency_cost INT NOT NULL + , is_new BIT NOT NULL + , name_error VARCHAR(1000) NOT NULL ); CREATE TEMPORARY TABLE tmp_Manufacturing_Purchase_Order_Product_Link ( @@ -17901,6 +18163,8 @@ BEGIN , cost_unit_local_VAT_excl FLOAT NOT NULL , cost_unit_local_VAT_incl FLOAT NOT NULL , has_order BIT NULL + , is_new BIT NOT NULL + , name_error VARCHAR(1000) NOT NULL ); CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Msg_Error ( @@ -18259,7 +18523,7 @@ BEGIN ); IF a_debug = 1 THEN SELECT - v_guid + a_guid , a_id_user , FALSE -- get inactive users , v_ids_permission_manufacturing_purchase_order @@ -18271,7 +18535,7 @@ BEGIN END IF; CALL p_shop_calc_user( - v_guid + a_guid , a_id_user , FALSE -- get inactive users , v_ids_permission_manufacturing_purchase_order @@ -18284,7 +18548,7 @@ BEGIN SELECT * from partsltd_prod.Shop_Calc_User_Temp WHERE GUID = a_guid; END IF; - IF NOT EXISTS (SELECT can_view FROM partsltd_prod.Shop_Calc_User_Temp UE_T WHERE UE_T.GUID = v_guid) THEN + IF NOT EXISTS (SELECT can_view FROM partsltd_prod.Shop_Calc_User_Temp UE_T WHERE UE_T.GUID = a_guid) THEN DELETE FROM tmp_Msg_Error; INSERT INTO tmp_Msg_Error ( @@ -18431,7 +18695,8 @@ BEGIN ; IF a_debug = 1 THEN - SELECT * from tmp_Manufacturing; + SELECT * from tmp_Manufacturing_Purchase_Order; + SELECT * from tmp_Manufacturing_Purchase_Order_Product_Link; END IF; DROP TEMPORARY TABLE tmp_Manufacturing_Purchase_Order; @@ -18593,7 +18858,7 @@ BEGIN -- Permutations IF v_has_filter_permutation = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_permutation, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_permutation, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -18604,12 +18869,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -18658,7 +18923,7 @@ BEGIN -- Manufacturing Purchase Orders IF v_has_filter_order = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_order, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_order, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -18669,12 +18934,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -18823,6 +19088,8 @@ BEGIN SELECT t_MPO.id_order , MPO.id_currency + , C.code + , C.symbol , MPO.cost_total_local_VAT_excl , MPO.cost_total_local_VAT_incl , MPO.price_total_local_VAT_excl @@ -18836,6 +19103,7 @@ BEGIN ) AS name FROM tmp_Manufacturing_Purchase_Order t_MPO INNER JOIN partsltd_prod.Shop_Manufacturing_Purchase_Order MPO ON MPO.id_order = t_MPO.id_order + LEFT JOIN partsltd_prod.Shop_Currency C ON MPO.id_currency_cost = C.id_currency ; # Manufacturing Purchase Order Product Link @@ -18883,6 +19151,7 @@ END // DELIMITER ;; +/* CALL p_shop_get_many_manufacturing_purchase_order ( 1 # a_id_user @@ -18895,7 +19164,6 @@ CALL p_shop_get_many_manufacturing_purchase_order ( , 0 # a_debug ); -/* */ @@ -19305,7 +19573,7 @@ BEGIN -- select v_has_filter_product, v_has_filter_permutation; IF v_has_filter_customer = 1 OR a_get_all_customer = 1 THEN - CALL p_split(a_guid, a_ids_customer, ','); + CALL p_split(v_guid, a_ids_customer, ','); IF EXISTS (SELECT * FROM Split_Temp S_T LEFT JOIN Shop_Customer C ON S_T.substring = C.id_customer WHERE ISNULL(C.id_customer)) THEN INSERT INTO tmp_Msg_Error ( @@ -20271,7 +20539,7 @@ BEGIN -- select v_has_filter_product, v_has_filter_permutation; IF v_has_filter_customer = 1 OR a_get_all_customer = 1 THEN - CALL p_split(a_guid, a_ids_customer, ','); + CALL p_split(v_guid, a_ids_customer, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Customer S ON TS.substring = S.id_customer WHERE ISNULL(S.id_customer)) THEN INSERT INTO tmp_Msg_Error ( @@ -20328,7 +20596,7 @@ BEGIN IF v_has_filter_category = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_category, ','); + CALL p_split(v_guid, a_ids_category, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product_Category C ON TS.substring = C.id_category WHERE ISNULL(C.id_category)) THEN INSERT INTO tmp_Msg_Error ( @@ -20354,7 +20622,7 @@ BEGIN IF v_has_filter_product = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_product, ','); + CALL p_split(v_guid, a_ids_product, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product ON TS.substring = P.id_product WHERE ISNULL(P.id_product)) THEN INSERT INTO tmp_Msg_Error ( @@ -20380,7 +20648,7 @@ BEGIN IF v_has_filter_permutation = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_permutation, ','); + CALL p_split(v_guid, a_ids_permutation, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product_Permutation PP ON TS.substring = PP.id_permutation WHERE ISNULL(PP.id_permutation)) THEN INSERT INTO tmp_Msg_Error ( @@ -20513,7 +20781,7 @@ BEGIN -- Get orders IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_order, ','); + CALL p_split(v_guid, a_ids_order, ','); IF v_has_filter_order AND EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Customer_Sales_Order CSO ON TS.substring = CSO.id_order WHERE ISNULL(CSO.id_order)) THEN INSERT INTO tmp_Msg_Error ( diff --git a/static/MySQL/0001_destroy.sql b/static/MySQL/0001_destroy.sql index ac88b893..b6db35f0 100644 --- a/static/MySQL/0001_destroy.sql +++ b/static/MySQL/0001_destroy.sql @@ -309,6 +309,7 @@ DROP PROCEDURE IF EXISTS p_shop_save_supplier; DROP PROCEDURE IF EXISTS p_shop_save_supplier_test; DROP PROCEDURE IF EXISTS p_shop_get_many_supplier; DROP PROCEDURE IF EXISTS p_shop_save_supplier_purchase_order; +DROP PROCEDURE IF EXISTS p_shop_save_supplier_purchase_order_test; DROP PROCEDURE IF EXISTS p_shop_get_many_supplier_purchase_order; DROP PROCEDURE IF EXISTS p_shop_save_manufacturing_purchase_order; DROP PROCEDURE IF EXISTS p_shop_get_many_manufacturing_purchase_order; diff --git a/static/MySQL/6206_fn_shop_get_product_permutation_name.sql b/static/MySQL/6206_fn_shop_get_product_permutation_name.sql index fb975848..cd6ee9b8 100644 --- a/static/MySQL/6206_fn_shop_get_product_permutation_name.sql +++ b/static/MySQL/6206_fn_shop_get_product_permutation_name.sql @@ -35,9 +35,10 @@ END // DELIMITER ; - +/* SELECT fn_shop_get_product_permutation_name( 3 -- id_product_permutation ) -; \ No newline at end of file +; +*/ \ No newline at end of file diff --git a/static/MySQL/7204_p_shop_calc_product_permutation.sql b/static/MySQL/7204_p_shop_calc_product_permutation.sql index 0652d628..6816cb29 100644 --- a/static/MySQL/7204_p_shop_calc_product_permutation.sql +++ b/static/MySQL/7204_p_shop_calc_product_permutation.sql @@ -441,17 +441,17 @@ BEGIN WHERE ISNULL(t_P.can_view) ); - DELETE + DELETE t_C FROM tmp_Category_calc t_C WHERE FIND_IN_SET(t_C.id_category, v_ids_category_invalid) > 0 ; - DELETE + DELETE t_P FROM tmp_Product_calc t_P WHERE FIND_IN_SET(t_P.id_product, v_ids_product_invalid) > 0 ; - DELETE + DELETE t_PP FROM tmp_Permutation_calc t_PP WHERE FIND_IN_SET(t_PP.id_product, v_ids_product_invalid) > 0 ; diff --git a/static/MySQL/7221_p_get_many_shop_product_price_and_discount_and_delivery_option.sql b/static/MySQL/7221_p_get_many_shop_product_price_and_discount_and_delivery_option.sql index e7decea6..0def7981 100644 --- a/static/MySQL/7221_p_get_many_shop_product_price_and_discount_and_delivery_option.sql +++ b/static/MySQL/7221_p_get_many_shop_product_price_and_discount_and_delivery_option.sql @@ -412,7 +412,7 @@ BEGIN SELECT * FROM tmp_Shop_Product t_P WHERE - /*( + *( a_get_all_category OR a_get_all_product OR a_get_all_product_permutation @@ -628,7 +628,7 @@ BEGIN -- select * from Shop_Calc_User_Temp; -- select * from tmp_Shop_Product; - DELETE -- t_P + DELETE t_P FROM tmp_Shop_Product t_P WHERE FIND_IN_SET(t_P.id_product, (SELECT GROUP_CONCAT(UET.id_product SEPARATOR ',') FROM Shop_Calc_User_Temp UET)) = 0 # id_product NOT LIKE CONCAT('%', (SELECT GROUP_CONCAT(id_product SEPARATOR '|') FROM Shop_Calc_User_Temp), '%'); diff --git a/static/MySQL/7321_p_shop_save_user_basket.sql b/static/MySQL/7321_p_shop_save_user_basket.sql index 0f29cfe6..30ebf728 100644 --- a/static/MySQL/7321_p_shop_save_user_basket.sql +++ b/static/MySQL/7321_p_shop_save_user_basket.sql @@ -379,7 +379,7 @@ BEGIN -- String product id, permutation id, quantity list IF NOT EXISTS (SELECT * FROM tmp_Shop_Basket WHERE active LIMIT 1) AND NOT EXISTS (SELECT msg FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN -- NOT v_has_filter_user AND # Get product ids - CALL p_split(a_guid, a_ids_permutation_basket, ','); + CALL p_split(v_guid, a_ids_permutation_basket, ','); INSERT INTO tmp_Shop_Product ( id_product, id_permutation, display_order ) @@ -397,7 +397,7 @@ BEGIN DROP TABLE Split_Temp; # Get product quantities - CALL p_split(a_guid, a_quantities_permutation_basket, ','); + CALL p_split(v_guid, a_quantities_permutation_basket, ','); INSERT INTO tmp_Shop_Quantity ( quantity, display_order ) diff --git a/static/MySQL/7401_p_shop_get_many_supplier.sql b/static/MySQL/7401_p_shop_get_many_supplier.sql index 1df38a87..d8c1d90f 100644 --- a/static/MySQL/7401_p_shop_get_many_supplier.sql +++ b/static/MySQL/7401_p_shop_get_many_supplier.sql @@ -67,7 +67,7 @@ BEGIN -- Suppliers IF v_has_filter_supplier = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_supplier, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_supplier, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -78,12 +78,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN diff --git a/static/MySQL/7403_p_save_supplier_purchase_order.sql b/static/MySQL/7403_p_save_supplier_purchase_order.sql deleted file mode 100644 index 965e4205..00000000 --- a/static/MySQL/7403_p_save_supplier_purchase_order.sql +++ /dev/null @@ -1,740 +0,0 @@ - - - - --- Clear previous proc -DROP PROCEDURE IF EXISTS p_shop_save_supplier_purchase_order; - -DROP TABLE IF EXISTS tmp_Supplier_Purchase_Order_Product_Link; -DROP TABLE IF EXISTS tmp_Msg_Error; - -DELIMITER // -CREATE PROCEDURE p_shop_save_supplier_purchase_order ( - IN a_comment VARCHAR(500) - , IN a_guid BINARY(36) - , IN a_id_user INT - , IN a_debug BIT -) -BEGIN - DECLARE v_code_type_error_bad_data VARCHAR(50); - DECLARE v_code_type_error_no_permission VARCHAR(50); - DECLARE v_code_type_error_warning VARCHAR(50); - DECLARE v_id_access_level_edit INT; - DECLARE v_id_change_set INT; - DECLARE v_id_permission_supplier_purchase_order VARCHAR(100); - DECLARE v_id_type_error_bad_data INT; - DECLARE v_id_type_error_no_permission INT; - DECLARE v_id_type_error_warning INT; - DECLARE v_ids_product_permission TEXT; - DECLARE v_time_start TIMESTAMP(6); - - DECLARE exit handler for SQLEXCEPTION - BEGIN - GET DIAGNOSTICS CONDITION 1 - @sqlstate = RETURNED_SQLSTATE - , @errno = MYSQL_ERRNO - , @text = MESSAGE_TEXT - ; - - ROLLBACK; - - CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Msg_Error ( - display_order INT NOT NULL PRIMARY KEY AUTO_INCREMENT - , id_type INT NULL - , code VARCHAR(50) NOT NULL - , msg VARCHAR(4000) NOT NULL - ); - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - NULL - , @errno - , @text - ; - SELECT * - FROM tmp_Msg_Error; - DROP TABLE IF EXISTS tmp_Msg_Error; - END; - - SET v_time_start := CURRENT_TIMESTAMP(6); - SET v_code_type_error_bad_data := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'BAD_DATA'); - SET v_id_type_error_bad_data := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_bad_data); - SET v_code_type_error_no_permission := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'NO_PERMISSION'); - SET v_id_type_error_no_permission := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_no_permission); - SET v_code_type_error_warning := (SELECT code FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = 'WARNING'); - SET v_id_type_error_warning := (SELECT id_type FROM partsltd_prod.Shop_Msg_Error_Type WHERE code = v_code_type_error_warning); - SET v_id_permission_supplier_purchase_order := (SELECT GROUP_CONCAT(id_permission SEPARATOR ',') FROM partsltd_prod.Shop_Permission WHERE code IN ('STORE_SUPPLIER', 'STORE_SUPPLIER_PURCHASE_ORDER', 'STORE_PRODUCT') LIMIT 1); - SET v_id_access_level_edit := (SELECT id_access_level FROM partsltd_prod.Shop_Access_Level WHERE code = 'EDIT' LIMIT 1); - - CALL p_validate_guid ( a_guid ); - SET a_comment := TRIM(IFNULL(a_comment, '')); - - DROP TEMPORARY TABLE IF EXISTS tmp_Supplier; - DROP TEMPORARY TABLE IF EXISTS tmp_Msg_Error; - - -- Temporary tables - CREATE TEMPORARY TABLE tmp_Supplier_Purchase_Order ( - id_order INT NOT NULL PRIMARY KEY - , id_supplier_ordered INT NOT NULL - , id_currency_cost INT NOT NULL - -- , cost_total_local FLOAT NOT NULL - , active BIT NOT NULL - ); - - CREATE TEMPORARY TABLE tmp_Supplier_Purchase_Order_Product_Link ( - id_link INT NOT NULL PRIMARY KEY - , id_order INT NOT NULL - , id_permutation INT NOT NULL - -- , id_currency_cost INT NOT NULL - , quantity_ordered FLOAT NOT NULL - , id_unit_quantity INT NOT NULL - , quantity_received FLOAT NULL - , latency_delivery_days INT NOT NULL - , display_order INT NOT NULL - , active BIT NOT NULL - , name_error VARCHAR(200) NOT NULL - , cost_total_local_VAT_excl FLOAT NOT NULL - , cost_total_local_VAT_incl FLOAT NOT NULL - , cost_unit_local_VAT_excl FLOAT NOT NULL - , cost_unit_local_VAT_incl FLOAT NOT NULL - , has_order BIT NULL - ); - - CREATE TEMPORARY TABLE IF NOT EXISTS tmp_Msg_Error ( - display_order INT NOT NULL PRIMARY KEY AUTO_INCREMENT - , id_type INT NOT NULL - , code VARCHAR(50) NOT NULL - , msg VARCHAR(4000) NOT NULL - ); - - INSERT INTO tmp_Supplier_Purchase_Order ( - id_order - , id_supplier_ordered - , id_currency_cost - ) - SELECT - SPO_T.id_order - , IFNULL(IFNULL(SPO_T.id_supplier_ordered, SPO.id_supplier_ordered), 0) AS id_supplier_ordered - , IFNULL(IFNULL(SPO_T.id_currency_cost, SPO.id_currency_cost), 0) AS id_currency_cost - FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp SPO_T - LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order SPO ON SPO_T.id_order = SPO.id_order - WHERE SPO_T.GUID = a_guid - ; - - INSERT INTO tmp_Supplier_Purchase_Order_Product_Link ( - id_link - , id_order - , id_permutation - -- , id_currency_cost - , id_unit_quantity - , quantity_ordered - , quantity_received - , latency_delivery_days - , display_order - , active - , name_error - , is_new - , cost_total_local_VAT_excl - , cost_total_local_VAT_incl - , cost_unit_local_VAT_excl - , cost_unit_local_VAT_incl - , has_order - ) - SELECT - IFNULL(SPOPL_T.id_link, 0) AS id_link - , IFNULL(IFNULL(SPOPL_T.id_order, SPOPL.id_order), 0) AS id_order - , IFNULL(IFNULL(SPOPL_T.id_permutation, SPOPL.id_permutation), 0) AS id_permutation - -- , IFNULL(IFNULL(SPOPL_T.id_currency_cost, SPOPL.id_currency_cost), 0) AS id_currency_cost - , IFNULL(IFNULL(SPOPL_T.id_unit_quantity, SPOPL.id_unit_quantity), 0) AS id_unit_quantity - , IFNULL(IFNULL(SPOPL_T.quantity_ordered, SPOPL.quantity_ordered), 0) AS quantity_ordered - , IFNULL(SPOPL_T.quantity_received, SPOPL.quantity_received) AS quantity_received - , IFNULL(SPOPL_T.latency_delivery_days, SPOPL.latency_delivery_days) AS latency_delivery_days - , RANK() OVER (PARTITION BY IFNULL(IFNULL(SPOPL_T.id_order, SPOPL.id_order), 0) ORDER BY IFNULL(IFNULL(SPOPL_T.display_order, SPOPL.display_order), 0)) AS display_order - , IFNULL(IFNULL(SPOPL_T.active, SPOPL.active), 1) AS active - , CONCAT( - fn_shop_get_product_permutation_name(SPOPL_T.id_permutation) - , ' - x' - , IFNULL(SPOPL_T.quantity_ordered, '(No Quantity)') - ) AS name_error - , IFNULL(SPOPL_T.id_link, 0) < 1 AS is_new - , IFNULL(IFNULL(SPOPL_T.cost_total_local_VAT_excl, SPOPL.cost_total_local_VAT_excl), 0) AS cost_total_local_VAT_excl - , IFNULL(IFNULL(SPOPL_T.cost_total_local_VAT_incl, SPOPL.cost_total_local_VAT_incl), 0) AS cost_total_local_VAT_incl - , IFNULL(SPOPL_T.cost_total_local_VAT_excl / SPOPL_T.quantity_ordered, SPOPL.cost_unit_local_VAT_excl) AS cost_unit_local_VAT_excl - , IFNULL(SPOPL_T.cost_total_local_VAT_incl / SPOPL_T.quantity_ordered, SPOPL.cost_unit_local_VAT_incl) AS cost_unit_local_VAT_incl - , NOT ISNULL(t_SPO.id_order) AS has_order - FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp SPOPL_T - LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link SPOPL ON SPOPL_T.id_link = SPOPL.id_link - LEFT JOIN tmp_Supplier_Purchase_Order t_SPO ON SPOPL_T.id_order = t_SPO.id_order - WHERE SPOPL_T.GUID = a_guid - ; - - INSERT INTO tmp_Supplier_Purchase_Order ( - id_order - , id_supplier_ordered - , id_currency_cost - ) - SELECT - SPO_T.id_order - , IFNULL(IFNULL(SPO_T.id_supplier_ordered, SPO.id_supplier_ordered), 0) AS id_supplier_ordered - , IFNULL(IFNULL(SPO_T.id_currency_cost, SPO.id_currency_cost), 0) AS id_currency_cost - FROM partsltd_prod.Shop_Supplier_Purchase_Order SPO - INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - ON SPO.id_order = t_SPOPL.id_order - AND t_SPOPL.has_order = 0 - ; - - -- Validation - -- Supplier Purchase Order - # id_order - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order t_SPO - LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order SPO ON t_SPO.id_order = SPO.id_order - WHERE 1=1 - AND t_SPO.id_order > 0 - AND ISNULL(SPO.id_order) - LIMIT 1 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - v_id_type_error_bad_data - , v_code_type_error_bad_data - , CONCAT( - 'A valid ID is required for the following Supplier Purchase Order(s): ' - , GROUP_CONCAT(CONCAT(IFNULL(t_SPO.id_stock, '(No Supplier Purchase Order)')) SEPARATOR ', ') - ) AS msg - FROM tmp_Stock_Item t_SPO - LEFT JOIN partsltd_prod.Shop_Supplier_Purchase_Order SPO ON t_SPO.id_order = SPO.id_order - WHERE 1=1 - AND t_SPO.id_stock > 0 - AND ISNULL(SPO.id_stock) - ; - END IF; - # id_supplier_ordered - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order t_SPO - LEFT JOIN partsltd_prod.Shop_Supplier S ON t_SPO.id_supplier_ordered = S.id_supplier - WHERE 1=1 - AND ( - ISNULL(S.id_supplier) - OR S.active = 0 - ) - LIMIT 1 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - v_id_type_error_bad_data - , v_code_type_error_bad_data - , CONCAT( - 'A valid supplier is required for the following Supplier Purchase Order(s): ' - , GROUP_CONCAT(CONCAT(IFNULL(t_SPO.id_stock, '(No Supplier Purchase Order)'), ' - ', t_SPO.id_supplier_ordered) SEPARATOR ', ') - ) AS msg - FROM tmp_Stock_Item t_SPO - LEFT JOIN partsltd_prod.Shop_Supplier S ON t_SPO.id_supplier_ordered = S.id_supplier - WHERE 1=1 - AND ( - ISNULL(S.id_supplier) - OR S.active = 0 - ) - ; - END IF; - # id_currency_cost - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order t_SPO - LEFT JOIN partsltd_prod.Shop_Currency C ON t_SPO.id_currency_cost = C.id_currency - WHERE 1=1 - AND ( - ISNULL(C.id_currency) - OR C.active = 0 - ) - LIMIT 1 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - v_id_type_error_bad_data - , v_code_type_error_bad_data - , CONCAT( - 'A valid currency is required for the following Supplier Purchase Order(s): ' - , GROUP_CONCAT(CONCAT(IFNULL(t_SPO.id_stock, '(No Supplier Purchase Order)'), ' - ', t_SPO.id_currency_cost) SEPARATOR ', ') - ) AS msg - FROM tmp_Stock_Item t_SPO - LEFT JOIN partsltd_prod.Shop_Currency C ON t_SPO.id_currency_cost = C.id_currency - WHERE 1=1 - AND ( - ISNULL(C.id_currency) - OR C.active = 0 - ) - ; - END IF; - # id_unit_quantity - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - LEFT JOIN partsltd_prod.Shop_Unit_Measurement UM ON t_SPOPL.id_unit_quantity = UM.id_unit_measurement - WHERE 1=1 - AND ( - ISNULL(UM.id_unit_measurement) - OR UM.active = 0 - ) - LIMIT 1 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - v_id_type_error_bad_data - , v_code_type_error_bad_data - , CONCAT( - 'A valid unit measurement of quantity is required for the following Supplier Purchase Order(s): ' - , GROUP_CONCAT(CONCAT(IFNULL(t_SPO.id_stock, '(No Supplier Purchase Order)'), ' - ', t_SPO.id_currency_cost) SEPARATOR ', ') - ) AS msg - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - LEFT JOIN partsltd_prod.Shop_Unit_Measurement UM ON t_SPOPL.id_unit_quantity = UM.id_unit_measurement - WHERE 1=1 - AND ( - ISNULL(UM.id_unit_measurement) - OR UM.active = 0 - ) - ; - END IF; - # Invalid quantity ordered - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE - ISNULL(t_SPOPL.quantity_ordered) - OR t_SPOPL.quantity_ordered <= 0 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT( - 'A valid quantity ordered is required for the following Supplier Purchase Order Item(s): ' - , GROUP_CONCAT(t_SPOPL.name_error SEPARATOR ', ') - ) - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE - ISNULL(t_SPOPL.quantity_ordered) - OR t_SPOPL.quantity_ordered <= 0 - ; - END IF; - # Invalid quantity received - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE t_SPOPL.quantity_received < 0 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT( - 'A valid quantity received is required for the following Supplier Purchase Order Item(s): ' - , GROUP_CONCAT(t_SPOPL.name_error, ' - ', t_SPOPL.quantity_received SEPARATOR ', ') - ) - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE t_SPOPL.quantity_received < 0 - ; - END IF; - # Invalid delivery latency - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE t_SPOPL.latency_delivery_days < 0 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT( - 'A valid delivery latency is required for the following Supplier Purchase Order Item(s): ' - , GROUP_CONCAT(t_SPOPL.name_error, ' - ', t_SPOPL.latency_delivery_days SEPARATOR ', ') - ) - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE t_SPOPL.latency_delivery_days < 0 - ; - END IF; - - -- Duplicates - IF EXISTS ( - SELECT - id_permutation - , name_error - , COUNT(*) - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - GROUP BY id_permutation - HAVING COUNT(*) > 1 - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT('Duplicate records: ', GROUP_CONCAT(t_SPOPLC.name_error SEPARATOR ', ')) - FROM ( - SELECT - id_permutation - , name_error - , COUNT(*) - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - GROUP BY id_permutation - HAVING COUNT(*) > 1 - ) t_SPOPLC - ; - END IF; - -- Empty Supplier Purchase Order - IF EXISTS ( SELECT * FROM tmp_Supplier_Purchase_Order t_SPO LEFT JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order WHERE ISNULL(t_SPOPL.id_order) ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT( - 'There are no items in the following Supplier Purchase Order(s): ' - , GROUP_CONCAT(t_SPO.name_error SEPARATOR ', ') - ) AS msg - FROM tmp_Supplier_Purchase_Order t_SPO - LEFT JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order - WHERE ISNULL(t_SPOPL.id_order) - ; - END IF; - - -- Supplier Purchase Order Items without Order - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - LEFT JOIN tmp_Supplier_Purchase_Order t_SPO ON t_SPOPL.id_order = t_SPO.id_order - WHERE ISNULL(t_SPO.id_order) - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type, code, msg - ) - SELECT - v_id_error_type_bad_data, - v_code_error_type_bad_data, - CONCAT( - 'There is no order for the following Supplier Purchase Order Item(s): ' - , GROUP_CONCAT(t_SPOPL.name_error SEPARATOR ', ') - ) AS msg - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - LEFT JOIN tmp_Supplier_Purchase_Order t_SPO ON t_SPOPL.id_order = t_SPO.id_order - WHERE ISNULL(t_SPO.id_order) - ; - END IF; - - -- Permissions - SET v_ids_product_permission := ( - SELECT - GROUP_CONCAT(DISTINCT PP.id_product SEPARATOR ',') - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - INNER JOIN partsltd_prod.Shop_Product_Permutation PP ON t_SPOPL.id_permutation = PP.id_permutation - ); - IF a_debug = 1 THEN - SELECT - v_guid - , a_id_user - , FALSE -- get inactive users - , v_id_permission_supplier_purchase_order - , v_id_access_level_edit - , v_ids_product_permission -- ids_product - , 0 -- a_debug - ; - SELECT * from partsltd_prod.Shop_Calc_User_Temp; - END IF; - - CALL p_shop_calc_user( - v_guid - , a_id_user - , FALSE -- get inactive users - , v_id_permission_supplier_purchase_order - , v_id_access_level_edit - , v_ids_product_permission -- ids_product - , 0 -- a_debug - ); - - IF a_debug = 1 THEN - SELECT * from partsltd_prod.Shop_Calc_User_Temp WHERE GUID = a_guid; - END IF; - - IF NOT EXISTS (SELECT can_view FROM partsltd_prod.Shop_Calc_User_Temp UE_T WHERE UE_T.GUID = v_guid) THEN - DELETE FROM tmp_Msg_Error; - - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - VALUES ( - v_id_type_error_no_permission - , v_code_type_error_no_permission - , CONCAT('You do not have view permissions for ', (SELECT name FROM partsltd_prod.Shop_Permission WHERE id_permission = v_id_permission_supplier LIMIT 1)) - ) - ; - END IF; - - CALL partsltd_prod.p_shop_clear_calc_user( a_guid ); - - IF EXISTS ( SELECT * FROM tmp_Msg_Error LIMIT 1 ) THEN - DELETE FROM tmp_Supplier_Purchase_Order; - DELETE FROM tmp_Supplier_Purchase_Order_Product_Link; - END IF; - - IF EXISTS ( - SELECT * - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - INNER JOIN partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link SPOPL ON t_SPOPL.id_link = SPOPL.id_link - INNER JOIN partsltd_prod.Shop_Stock_Item SI ON SPOPL.id_permutation = SI.id_permutation - WHERE - t_SPOPL.is_new = 0 - AND t_SPOPL.quantity_received <> SPOPL.quantity_received - ) THEN - INSERT INTO tmp_Msg_Error ( - id_type - , code - , msg - ) - SELECT - v_id_type_error_warning - , v_code_type_error_warning - , CONCAT( - 'The quantity received has changed on the following orders. Please update the stock items appropriately.' - , GROUP_CONCAT( - CONCAT( - t_SPOPL.name_error - , ' - from ' - , SPOPL.quantity_received - , ' to ' - , t_SPOPL.quantity_received - ) SEPARATOR ', ' - ) - ) AS msg - ; - END IF; - - -- Transaction - IF NOT EXISTS (SELECT * FROM tmp_Msg_Error) THEN - START TRANSACTION; - INSERT INTO Shop_Sales_And_Purchasing_Change_Set ( - comment - , updated_last_by - , updated_last_on - ) - VALUES ( - a_comment - , a_id_user - , v_time_start - ); - - SET v_id_change_set := LAST_INSERT_ID(); - - INSERT INTO partsltd_prod.Shop_Supplier_Purchase_Order ( - id_supplier_ordered - , id_currency_cost - , cost_total_local_VAT_excl - , cost_total_local_VAT_incl - , created_by - , created_on - , id_change_set - , active - ) - SELECT - t_SPO.id_supplier_ordered - , t_SPO.id_currency_cost - , SUM(t_SPOPL.cost_total_local_VAT_excl) - , SUM(t_SPOPL.cost_total_local_VAT_incl) - , t_SPO.active - , a_id_user - , v_time_start - , v_id_change_set - FROM tmp_Supplier_Purchase_Order t_SPO - INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order - WHERE t_SPOPL.is_new = 1 - ; - - INSERT INTO Shop_Supplier_Purchase_Order_Product_Link ( - id_order - , id_permutation - -- , id_currency_cost - , id_unit_quantity - , quantity_ordered - , quantity_received - , latency_delivery_days - , display_order - , active - , cost_total_local_VAT_excl - , cost_total_local_VAT_incl - , created_by - , id_change_set - ) - SELECT - t_SPOPL.id_order - , t_SPOPL.id_permutation - -- , t_SPOPL.id_currency_cost - , t_SPOPL.id_unit_quantity - , t_SPOPL.quantity_ordered - , t_SPOPL.quantity_received - , t_SPOPL.latency_delivery_days - , t_SPOPL.display_order - , t_SPOPL.active - , t_SPOPL.cost_total_local_VAT_excl - , t_SPOPL.cost_total_local_VAT_incl - , a_id_user - , v_id_change_set - FROM tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - WHERE t_SPOPL.is_new = 1 - ; - - UPDATE partsltd_prod.Shop_Supplier_Purchase_Order SPO - INNER JOIN tmp_Supplier_Purchase_Order t_SPO - ON SPO.id_order = t_SPO.id_order - AND t_SPO.is_new = 0 - INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL ON t_SPO.id_order = t_SPOPL.id_order - SET - SPO.id_supplier_ordered = t_SPO.id_supplier_ordered - , SPO.id_currency_cost = id_currency_cost - , SPO.cost_total_local_VAT_excl = SUM(t_SPOPL.cost_total_local_VAT_excl) - , SPO.cost_total_local_VAT_incl = SUM(t_SPOPL.cost_total_local_VAT_incl) - , SPO.active = a_active - , SPO.id_change_set = v_id_change_set - ; - - UPDATE partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link SPOPL - INNER JOIN tmp_Supplier_Purchase_Order_Product_Link t_SPOPL - ON SPOPL.id_link = t_SPOPL.id_link - AND t_SPOPL.is_new = 0 - SET - SPOPL.id_order = t_SPOPL.id_order, - SPOPL.id_permutation = t_SPOPL.id_permutation, - -- SPOPL.id_currency_cost = t_SPOPL.id_currency_cost, - SPOPL.id_unit_quantity = t_SPOPL.id_unit_quantity, - SPOPL.quantity_ordered = t_SPOPL.quantity_ordered, - SPOPL.quantity_received = t_SPOPL.quantity_received, - SPOPL.latency_delivery_days = t_SPOPL.latency_delivery_days, - SPOPL.display_order = t_SPOPL.display_order, - SPOPL.active = t_SPOPL.active, - SPOPL.cost_total_local_VAT_excl = t_SPOPL.cost_total_local_VAT_excl, - SPOPL.cost_total_local_VAT_incl = t_SPOPL.cost_total_local_VAT_incl, - SPOPL.id_change_set = v_id_change_set - ; - - DELETE SPO_T - FROM Shop_Supplier_Purchase_Order_Temp SPO_T - WHERE SPO_T.GUID = a_guid - ; - DELETE SPOPL_T - FROM Shop_Supplier_Purchase_Order_Product_Link_Temp SPOPL_T - WHERE SPOPL_T.GUID = a_guid - ; - - COMMIT; - END IF; - - # Errors - SELECT * - FROM tmp_Msg_Error t_ME - INNER JOIN partsltd_prod.Shop_Msg_Error_Type MET ON t_ME.id_type = MET.id_type - ; - - IF a_debug = 1 THEN - SELECT * from tmp_Supplier; - END IF; - - DROP TEMPORARY TABLE tmp_Supplier_Purchase_Order; - DROP TEMPORARY TABLE tmp_Supplier_Purchase_Order_Product_Link; - DROP TEMPORARY TABLE tmp_Msg_Error; - - IF a_debug = 1 THEN - CALL partsltd_prod.p_debug_timing_reporting ( v_time_start ); - END IF; -END // -DELIMITER ;; - - -/* - -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link_Audit; -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link; -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link_Temp; -DELETE FROM Shop_Supplier_Purchase_Order_Audit; -DELETE FROM Shop_Supplier_Purchase_Order; - -INSERT INTO Shop_Supplier_Purchase_Order_Product_Link_Temp ( - guid, - id_link, - id_order, - id_permutation, - cost_total_local, - id_currency_cost, - quantity_ordered, - id_unit_quantity, - quantity_received, - latency_delivery_days, - display_order, - active -) -VALUES - ( - 'NIPS', # guid - -1, # id_link, - -1, # id_order, - 1, # id_permutation, - 100, # cost_total_local, - 1, # id_currency_cost, - 1, # quantity_ordered, - 1, # id_unit_quantity, - 1, # quantity_received, - 14, # latency_delivery_days , - 1, # display_order - 1 # active - ) -; - -SELECT * FROM Shop_Supplier_Purchase_Order_Product_Link_Temp; - -CALL p_shop_save_supplier_purchase_order ( - 'NIPS', # a_guid - 'auth0|6582b95c895d09a70ba10fef', # a_id_user - -1, # a_id_order - 1, # a_id_supplier_ordered - 1 # a_id_currency_cost -); - -SELECT * FROM Shop_Supplier_Purchase_Order_Product_Link_Temp; - -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link_Audit; -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link; -DELETE FROM Shop_Supplier_Purchase_Order_Product_Link_Temp; -DELETE FROM Shop_Supplier_Purchase_Order_Audit; -DELETE FROM Shop_Supplier_Purchase_Order; - - -*/ - diff --git a/static/MySQL/7403_p_shop_save_supplier_purchase_order_test.sql b/static/MySQL/7403_p_shop_save_supplier_purchase_order_test.sql index 9206e14a..59964fd1 100644 --- a/static/MySQL/7403_p_shop_save_supplier_purchase_order_test.sql +++ b/static/MySQL/7403_p_shop_save_supplier_purchase_order_test.sql @@ -26,7 +26,7 @@ BEGIN SELECT * FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp ; - + START TRANSACTION; DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp; @@ -39,6 +39,7 @@ BEGIN , active , GUID ) + /* Test 1 - Insert VALUES ( -1 , 1 @@ -46,6 +47,15 @@ BEGIN , 1 , v_guid ) + */ + SELECT + id_order + , id_supplier_ordered + , id_currency_cost + , active + , v_guid + FROM partsltd_prod.Shop_Supplier_Purchase_Order + WHERE id_order = 6 ; INSERT INTO partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp ( @@ -62,6 +72,7 @@ BEGIN , cost_total_local_VAT_incl , GUID ) + /* Test 1 - Insert VALUES ( -1 , -1 @@ -76,6 +87,22 @@ BEGIN , 6 , v_guid ) + */ + SELECT + id_link + , id_order + , id_permutation + , id_unit_quantity + , 5 AS quantity_ordered + , quantity_received + , latency_delivery_days + , display_order + , active + , cost_total_local_VAT_excl + , cost_total_local_VAT_incl + , v_guid + FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link + WHERE id_order = 6 ; COMMIT; @@ -114,13 +141,13 @@ BEGIN END // DELIMITER ;; +/* CALL partsltd_prod.p_shop_save_supplier_purchase_order_test (); DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Temp; DELETE FROM partsltd_prod.Shop_Supplier_Purchase_Order_Product_Link_Temp; DROP TABLE IF EXISTS tmp_Msg_Error; -/* Cannot add or update a child row: a foreign key constraint fails (`partsltd_prod`.`shop_supplier_address`, CONSTRAINT `FK_Shop_Supplier_Address_id_supplier` FOREIGN KEY (`id_supplier`) REFERENCES `shop_supplier` (`id_supplier`) ON UPDATE RESTRICT) diff --git a/static/MySQL/7404_p_shop_get_many_supplier_purchase_order.sql b/static/MySQL/7404_p_shop_get_many_supplier_purchase_order.sql index 5d808804..0605fa71 100644 --- a/static/MySQL/7404_p_shop_get_many_supplier_purchase_order.sql +++ b/static/MySQL/7404_p_shop_get_many_supplier_purchase_order.sql @@ -101,7 +101,7 @@ BEGIN -- Permutations IF v_has_filter_permutation = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_permutation, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_permutation, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -112,12 +112,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -166,7 +166,7 @@ BEGIN -- Suppliers IF v_has_filter_supplier = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_supplier, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_supplier, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -177,12 +177,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -244,7 +244,7 @@ BEGIN -- Supplier Purchase Orders IF v_has_filter_order = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_order, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_order, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -255,12 +255,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -484,6 +484,7 @@ END // DELIMITER ;; +/* CALL p_shop_get_many_supplier_purchase_order ( 1, # a_id_user @@ -499,5 +500,4 @@ CALL p_shop_get_many_supplier_purchase_order ( , 0 # a_debug ); -/* */ diff --git a/static/MySQL/7416_p_shop_get_many_manufacturing_purchase_order.sql b/static/MySQL/7416_p_shop_get_many_manufacturing_purchase_order.sql index b4a49d4a..b4e62cdd 100644 --- a/static/MySQL/7416_p_shop_get_many_manufacturing_purchase_order.sql +++ b/static/MySQL/7416_p_shop_get_many_manufacturing_purchase_order.sql @@ -87,7 +87,7 @@ BEGIN -- Permutations IF v_has_filter_permutation = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_permutation, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_permutation, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -98,12 +98,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -152,7 +152,7 @@ BEGIN -- Manufacturing Purchase Orders IF v_has_filter_order = 1 THEN - CALL partsltd_prod.p_split(a_guid, a_ids_order, ',', a_debug); + CALL partsltd_prod.p_split(v_guid, a_ids_order, ',', a_debug); INSERT INTO tmp_Split ( substring @@ -163,12 +163,12 @@ BEGIN , CONVERT(substring, DECIMAL(10,0)) AS as_int FROM partsltd_prod.Split_Temp WHERE 1=1 - AND GUID = a_guid + AND GUID = v_guid AND NOT ISNULL(substring) AND substring != '' ; - CALL partsltd_prod.p_clear_split_temp( a_guid ); + CALL partsltd_prod.p_clear_split_temp( v_guid ); END IF; IF NOT EXISTS (SELECT * FROM tmp_Msg_Error LIMIT 1) THEN @@ -380,6 +380,7 @@ END // DELIMITER ;; +/* CALL p_shop_get_many_manufacturing_purchase_order ( 1 # a_id_user @@ -392,5 +393,4 @@ CALL p_shop_get_many_manufacturing_purchase_order ( , 0 # a_debug ); -/* */ diff --git a/static/MySQL/7422_p_shop_get_many_customer.sql b/static/MySQL/7422_p_shop_get_many_customer.sql index a68cdcb7..db41c932 100644 --- a/static/MySQL/7422_p_shop_get_many_customer.sql +++ b/static/MySQL/7422_p_shop_get_many_customer.sql @@ -106,7 +106,7 @@ BEGIN -- select v_has_filter_product, v_has_filter_permutation; IF v_has_filter_customer = 1 OR a_get_all_customer = 1 THEN - CALL p_split(a_guid, a_ids_customer, ','); + CALL p_split(v_guid, a_ids_customer, ','); IF EXISTS (SELECT * FROM Split_Temp S_T LEFT JOIN Shop_Customer C ON S_T.substring = C.id_customer WHERE ISNULL(C.id_customer)) THEN INSERT INTO tmp_Msg_Error ( diff --git a/static/MySQL/7425_p_shop_get_many_customer_sales_order.sql b/static/MySQL/7425_p_shop_get_many_customer_sales_order.sql index c8373587..18d48cb7 100644 --- a/static/MySQL/7425_p_shop_get_many_customer_sales_order.sql +++ b/static/MySQL/7425_p_shop_get_many_customer_sales_order.sql @@ -244,7 +244,7 @@ BEGIN -- select v_has_filter_product, v_has_filter_permutation; IF v_has_filter_customer = 1 OR a_get_all_customer = 1 THEN - CALL p_split(a_guid, a_ids_customer, ','); + CALL p_split(v_guid, a_ids_customer, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Customer S ON TS.substring = S.id_customer WHERE ISNULL(S.id_customer)) THEN INSERT INTO tmp_Msg_Error ( @@ -301,7 +301,7 @@ BEGIN IF v_has_filter_category = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_category, ','); + CALL p_split(v_guid, a_ids_category, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product_Category C ON TS.substring = C.id_category WHERE ISNULL(C.id_category)) THEN INSERT INTO tmp_Msg_Error ( @@ -327,7 +327,7 @@ BEGIN IF v_has_filter_product = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_product, ','); + CALL p_split(v_guid, a_ids_product, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product ON TS.substring = P.id_product WHERE ISNULL(P.id_product)) THEN INSERT INTO tmp_Msg_Error ( @@ -353,7 +353,7 @@ BEGIN IF v_has_filter_permutation = 1 THEN IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_permutation, ','); + CALL p_split(v_guid, a_ids_permutation, ','); IF EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Product_Permutation PP ON TS.substring = PP.id_permutation WHERE ISNULL(PP.id_permutation)) THEN INSERT INTO tmp_Msg_Error ( @@ -486,7 +486,7 @@ BEGIN -- Get orders IF NOT EXISTS (SELECT * FROM tmp_Msg_Error WHERE guid = v_guid LIMIT 1) THEN - CALL p_split(a_guid, a_ids_order, ','); + CALL p_split(v_guid, a_ids_order, ','); IF v_has_filter_order AND EXISTS (SELECT * FROM Split_Temp TS LEFT JOIN Shop_Customer_Sales_Order CSO ON TS.substring = CSO.id_order WHERE ISNULL(CSO.id_order)) THEN INSERT INTO tmp_Msg_Error ( diff --git a/static/MySQL/temp.txt b/static/MySQL/temp.txt index c6f60ddc..669da2aa 100644 --- a/static/MySQL/temp.txt +++ b/static/MySQL/temp.txt @@ -200,6 +200,7 @@ 7400_p_shop_save_supplier_temp.sql 7401_p_shop_get_many_supplier.sql 7403_p_shop_save_supplier_purchase_order.sql +7403_p_shop_save_supplier_purchase_order_test.sql 7404_p_shop_get_many_supplier_purchase_order.sql 7415_p_shop_save_manufacturing_purchase_order.sql 7416_p_shop_get_many_manufacturing_purchase_order.sql diff --git a/static/css/main.css b/static/css/main.css index 04258f7b..d01cbda5 100644 --- a/static/css/main.css +++ b/static/css/main.css @@ -99,15 +99,15 @@ h1, h2, h3, h4, h5, p, a, label { */ h1 { - font-size: 24px; + font-size: min(24px, calc(1vh * 6)); } h2 { - font-size: 22px; + font-size: min(20px, calc(1vh * 5)); } h3 { - font-size: 18px; + font-size: min(16px, calc(1vh * 4)); margin-top: 1vh; } @@ -239,8 +239,8 @@ h5 { } #pageBody > * > * { align-self: center; - padding-top: 1vh; - padding-bottom: 1vh; + padding-top: 0.5vh; + padding-bottom: 0.5vh; color: var(--c_purple_dark); } #pageBody > .card { @@ -572,6 +572,7 @@ button:hover, input[type="submit"]:hover, #overlayHamburger .row *:hover { ul { max-width: 90%; + padding: 5px 0 10px 0; } li { text-align: left; diff --git a/static/css/pages/core/contact.css b/static/css/pages/core/contact.css index 2ced1cbb..a3b9a19f 100644 --- a/static/css/pages/core/contact.css +++ b/static/css/pages/core/contact.css @@ -6,6 +6,11 @@ } #pageBody > .card:not(:first-of-type) { } + +#pageBody label { + font-size: min(16px, calc(1vh * 4)); +} + #email { min-width: 40vw; width: 40vw; diff --git a/static/css/pages/core/services.css b/static/css/pages/core/services.css index 1ef83971..382d2828 100644 --- a/static/css/pages/core/services.css +++ b/static/css/pages/core/services.css @@ -3,13 +3,14 @@ padding-right: 5vw; max-width: 80vw; } -#pageBody > .card:first-of-type{ + +#pageBody .card h1, +#pageBody .card h2 { + width: 100%; } -#pageBody > .card:last-of-type { - padding-left: 5vw; - padding-right: 5vw; -} -#pageBody > .card:not(:first-of-type) { + +#pageBody .card p { + font-size: min(16px, calc(1vh * 4)); } table { @@ -18,6 +19,14 @@ table { width: fit-content !important; } +table td { + padding: 10px; +} + +table th { + font-size: min(16px, calc(1vh * 4)); +} + /* tr th::after { content: ""; diff --git a/static/dist/css/core_contact.bundle.css b/static/dist/css/core_contact.bundle.css index a029db9e..b026545b 100644 --- a/static/dist/css/core_contact.bundle.css +++ b/static/dist/css/core_contact.bundle.css @@ -6,6 +6,11 @@ } #pageBody > .card:not(:first-of-type) { } + +#pageBody label { + font-size: min(16px, calc(1vh * 4)); +} + #email { min-width: 40vw; width: 40vw; diff --git a/static/dist/css/core_services.bundle.css b/static/dist/css/core_services.bundle.css index ae3f57de..db07e8eb 100644 --- a/static/dist/css/core_services.bundle.css +++ b/static/dist/css/core_services.bundle.css @@ -3,13 +3,14 @@ padding-right: 5vw; max-width: 80vw; } -#pageBody > .card:first-of-type{ + +#pageBody .card h1, +#pageBody .card h2 { + width: 100%; } -#pageBody > .card:last-of-type { - padding-left: 5vw; - padding-right: 5vw; -} -#pageBody > .card:not(:first-of-type) { + +#pageBody .card p { + font-size: min(16px, calc(1vh * 4)); } table { @@ -18,6 +19,14 @@ table { width: fit-content !important; } +table td { + padding: 10px; +} + +table th { + font-size: min(16px, calc(1vh * 4)); +} + /* tr th::after { content: ""; diff --git a/static/dist/css/main.bundle.css b/static/dist/css/main.bundle.css index e4173340..480fe7ca 100644 --- a/static/dist/css/main.bundle.css +++ b/static/dist/css/main.bundle.css @@ -99,15 +99,15 @@ h1, h2, h3, h4, h5, p, a, label { */ h1 { - font-size: 24px; + font-size: min(24px, calc(1vh * 6)); } h2 { - font-size: 22px; + font-size: min(20px, calc(1vh * 5)); } h3 { - font-size: 18px; + font-size: min(16px, calc(1vh * 4)); margin-top: 1vh; } @@ -239,8 +239,8 @@ h5 { } #pageBody > * > * { align-self: center; - padding-top: 1vh; - padding-bottom: 1vh; + padding-top: 0.5vh; + padding-bottom: 0.5vh; color: var(--c_purple_dark); } #pageBody > .card { @@ -572,6 +572,7 @@ button:hover, input[type="submit"]:hover, #overlayHamburger .row *:hover { ul { max-width: 90%; + padding: 5px 0 10px 0; } li { text-align: left; diff --git a/templates/pages/core/_admin_home.html b/templates/pages/core/_admin_home.html index d6e110f7..cd45a418 100644 --- a/templates/pages/core/_admin_home.html +++ b/templates/pages/core/_admin_home.html @@ -7,7 +7,7 @@ --> - +

diff --git a/templates/pages/core/_contact.html b/templates/pages/core/_contact.html index e28d8890..27afcbc5 100644 --- a/templates/pages/core/_contact.html +++ b/templates/pages/core/_contact.html @@ -7,7 +7,7 @@ --> - +