From 76642b73f439917237531125c43451de91fb68f6 Mon Sep 17 00:00:00 2001 From: 24024 <240241002@qq.com> Date: Sat, 7 Feb 2026 00:17:23 +0800 Subject: [PATCH] 1 --- .agent/workflows/ui-ux-pro-max.md | 231 + .shared/ui-ux-pro-max/data/charts.csv | 26 + .shared/ui-ux-pro-max/data/colors.csv | 97 + .shared/ui-ux-pro-max/data/landing.csv | 31 + .shared/ui-ux-pro-max/data/products.csv | 97 + .shared/ui-ux-pro-max/data/prompts.csv | 24 + .shared/ui-ux-pro-max/data/stacks/flutter.csv | 53 + .../data/stacks/html-tailwind.csv | 56 + .shared/ui-ux-pro-max/data/stacks/nextjs.csv | 53 + .shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv | 51 + .shared/ui-ux-pro-max/data/stacks/nuxtjs.csv | 59 + .../data/stacks/react-native.csv | 52 + .shared/ui-ux-pro-max/data/stacks/react.csv | 54 + .shared/ui-ux-pro-max/data/stacks/svelte.csv | 54 + .shared/ui-ux-pro-max/data/stacks/swiftui.csv | 51 + .shared/ui-ux-pro-max/data/stacks/vue.csv | 50 + .shared/ui-ux-pro-max/data/styles.csv | 59 + .shared/ui-ux-pro-max/data/typography.csv | 58 + .shared/ui-ux-pro-max/data/ux-guidelines.csv | 100 + .../scripts/__pycache__/core.cpython-312.pyc | Bin 0 -> 11089 bytes .shared/ui-ux-pro-max/scripts/core.py | 238 + .shared/ui-ux-pro-max/scripts/search.py | 61 + __pycache__/config.cpython-312.pyc | Bin 0 -> 527 bytes __pycache__/database.cpython-312.pyc | Bin 0 -> 1207 bytes __pycache__/node_engine.cpython-312.pyc | Bin 0 -> 8607 bytes app.py | 102 + config.py | 10 + configs/nodes/image_preview.json | 14 + configs/nodes/image_upload.json | 20 + configs/nodes/nano_banana.json | 46 + configs/nodes/sys_dict_api.json | 27 + configs/nodes/text_input.json | 20 + database.py | 34 + node_engine.py | 204 + noirflow.db | Bin 0 -> 20480 bytes static/css/style.css | 784 ++ static/uploads/upload_027569d2_image.png | Bin 0 -> 4083 bytes static/uploads/upload_08b012c5_image.png | Bin 0 -> 66396 bytes static/uploads/upload_09deb06d_image.png | Bin 0 -> 60831 bytes static/uploads/upload_0cd3bff0_image.png | Bin 0 -> 31279 bytes static/uploads/upload_0e89c895_image.png | Bin 0 -> 4947 bytes static/uploads/upload_10f3510c_image.png | Bin 0 -> 5402 bytes static/uploads/upload_13f7dd75_image.png | Bin 0 -> 40710 bytes static/uploads/upload_1534a21b_image.png | Bin 0 -> 31279 bytes static/uploads/upload_22ee24b3_image.png | Bin 0 -> 31279 bytes static/uploads/upload_26353bd1_image.png | Bin 0 -> 34373 bytes static/uploads/upload_26b6b99a_image.png | Bin 0 -> 60831 bytes ...5a206_6bcf334b7205ca1aff8c8945f366ac5a.png | Bin 0 -> 2079686 bytes static/uploads/upload_2c164822_image.png | Bin 0 -> 4947 bytes static/uploads/upload_2dc4189c_image.png | Bin 0 -> 4947 bytes static/uploads/upload_31dead0d_image.png | Bin 0 -> 2883 bytes static/uploads/upload_33080fb2_image.png | Bin 0 -> 39058 bytes static/uploads/upload_34eb3a97_image.png | Bin 0 -> 31279 bytes static/uploads/upload_38dccb87_image.png | Bin 0 -> 33634 bytes static/uploads/upload_3a67d002_image.png | Bin 0 -> 60831 bytes ...8043caebd23b02a965c28822ca886417fca8f.webp | Bin 0 -> 38188 bytes static/uploads/upload_461070e6_image.png | Bin 0 -> 39058 bytes static/uploads/upload_471bd313_image.png | Bin 0 -> 31279 bytes static/uploads/upload_475d7c31_image.png | Bin 0 -> 60831 bytes static/uploads/upload_4c41922b_image.png | Bin 0 -> 60831 bytes static/uploads/upload_534b80f5_image.png | Bin 0 -> 5402 bytes static/uploads/upload_53640b93_image.png | Bin 0 -> 5402 bytes static/uploads/upload_53d8a1c8_image.png | Bin 0 -> 4214 bytes static/uploads/upload_552e5f4a_image.png | Bin 0 -> 60831 bytes static/uploads/upload_55d207b0_1.gif | Bin 0 -> 2736 bytes static/uploads/upload_59fa3ed8_image.png | Bin 0 -> 22006 bytes static/uploads/upload_5b34efb2_1.gif | Bin 0 -> 2736 bytes static/uploads/upload_5e1b7c7d_image.png | Bin 0 -> 60831 bytes static/uploads/upload_62fb00f3_image.png | Bin 0 -> 4947 bytes static/uploads/upload_64a98abb_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_72c277af_image.png | Bin 0 -> 3985 bytes static/uploads/upload_7a30cd2d_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_7bce4bcc_image.png | Bin 0 -> 66396 bytes static/uploads/upload_8bda7a45_image.png | Bin 0 -> 7270 bytes static/uploads/upload_8de118a9_image.png | Bin 0 -> 39058 bytes static/uploads/upload_8de83dec_image.png | Bin 0 -> 22006 bytes static/uploads/upload_913d0d39_image.png | Bin 0 -> 5402 bytes static/uploads/upload_95aff1e8_image.png | Bin 0 -> 8413 bytes static/uploads/upload_96e8917c_image.png | Bin 0 -> 31279 bytes static/uploads/upload_9913d4bf_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_9de0d05f_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_a17bfc23_image.png | Bin 0 -> 29776 bytes static/uploads/upload_a7149f30_image.png | Bin 0 -> 31279 bytes static/uploads/upload_a72d3b0e_image.png | Bin 0 -> 60831 bytes static/uploads/upload_ad2b62a8_image.png | Bin 0 -> 4947 bytes static/uploads/upload_af082bd7_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_af1b837e_image.png | Bin 0 -> 39058 bytes static/uploads/upload_b00f8491_image.png | Bin 0 -> 60831 bytes static/uploads/upload_b1d1741c_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_b3139f03_image.png | Bin 0 -> 4947 bytes static/uploads/upload_bbdc0c3b_image.png | Bin 0 -> 2016 bytes static/uploads/upload_bffbd264_image.png | Bin 0 -> 31279 bytes static/uploads/upload_c01012be_image.png | Bin 0 -> 39058 bytes static/uploads/upload_c08f3e62_image.png | Bin 0 -> 4947 bytes static/uploads/upload_c9f8d1cb_image.png | Bin 0 -> 60831 bytes static/uploads/upload_ca37c3be_image.png | Bin 0 -> 8956 bytes static/uploads/upload_ca694730_image.png | Bin 0 -> 60831 bytes static/uploads/upload_cbfc9184_image.png | Bin 0 -> 34373 bytes static/uploads/upload_ced25e77_image.png | Bin 0 -> 1685 bytes static/uploads/upload_cf7a17d7_image.png | Bin 0 -> 31279 bytes static/uploads/upload_d3dd73e2_image.png | Bin 0 -> 3790 bytes static/uploads/upload_d6713658_image.png | Bin 0 -> 31279 bytes static/uploads/upload_d8970d52_image.png | Bin 0 -> 14619 bytes static/uploads/upload_dac62892_image.png | Bin 0 -> 60831 bytes static/uploads/upload_dc2589da_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_eb4d9232_image.png | Bin 0 -> 3244 bytes static/uploads/upload_eb8722b2_image.png | Bin 0 -> 29776 bytes static/uploads/upload_ec7dda37_0.png | Bin 0 -> 1555815 bytes static/uploads/upload_f66614f7_image.png | Bin 0 -> 60831 bytes static/uploads/upload_ff162729_image.png | Bin 0 -> 60831 bytes static/uploads/upload_ff4c5182_image.png | Bin 0 -> 60831 bytes templates/base.html | 24 + templates/board.html | 509 + templates/components/node_macro.html | 155 + templates/partials/node.html | 2 + .../blinker-1.9.0.dist-info/INSTALLER | 1 + .../blinker-1.9.0.dist-info/LICENSE.txt | 20 + .../blinker-1.9.0.dist-info/METADATA | 60 + .../blinker-1.9.0.dist-info/RECORD | 12 + .../blinker-1.9.0.dist-info/WHEEL | 4 + venv/Lib/site-packages/blinker/__init__.py | 17 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 461 bytes .../__pycache__/_utilities.cpython-312.pyc | Bin 0 -> 2688 bytes .../blinker/__pycache__/base.cpython-312.pyc | Bin 0 -> 21965 bytes venv/Lib/site-packages/blinker/_utilities.py | 64 + venv/Lib/site-packages/blinker/base.py | 512 + venv/Lib/site-packages/blinker/py.typed | 0 .../certifi-2026.1.4.dist-info/INSTALLER | 1 + .../certifi-2026.1.4.dist-info/METADATA | 78 + .../certifi-2026.1.4.dist-info/RECORD | 14 + .../certifi-2026.1.4.dist-info/WHEEL | 5 + .../licenses/LICENSE | 20 + .../certifi-2026.1.4.dist-info/top_level.txt | 1 + venv/Lib/site-packages/certifi/__init__.py | 4 + venv/Lib/site-packages/certifi/__main__.py | 12 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 276 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 591 bytes .../certifi/__pycache__/core.cpython-312.pyc | Bin 0 -> 2023 bytes venv/Lib/site-packages/certifi/cacert.pem | 4468 +++++++++ venv/Lib/site-packages/certifi/core.py | 83 + venv/Lib/site-packages/certifi/py.typed | 0 .../INSTALLER | 1 + .../METADATA | 764 ++ .../charset_normalizer-3.4.4.dist-info/RECORD | 35 + .../charset_normalizer-3.4.4.dist-info/WHEEL | 5 + .../entry_points.txt | 2 + .../licenses/LICENSE | 21 + .../top_level.txt | 1 + .../charset_normalizer/__init__.py | 48 + .../charset_normalizer/__main__.py | 6 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1742 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 317 bytes .../__pycache__/api.cpython-312.pyc | Bin 0 -> 18153 bytes .../__pycache__/cd.cpython-312.pyc | Bin 0 -> 13258 bytes .../__pycache__/constant.cpython-312.pyc | Bin 0 -> 40772 bytes .../__pycache__/legacy.cpython-312.pyc | Bin 0 -> 2972 bytes .../__pycache__/md.cpython-312.pyc | Bin 0 -> 24309 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 17089 bytes .../__pycache__/utils.cpython-312.pyc | Bin 0 -> 13718 bytes .../__pycache__/version.cpython-312.pyc | Bin 0 -> 344 bytes .../site-packages/charset_normalizer/api.py | 669 ++ .../site-packages/charset_normalizer/cd.py | 395 + .../charset_normalizer/cli/__init__.py | 8 + .../charset_normalizer/cli/__main__.py | 381 + .../cli/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 305 bytes .../cli/__pycache__/__main__.cpython-312.pyc | Bin 0 -> 14366 bytes .../charset_normalizer/constant.py | 2015 ++++ .../charset_normalizer/legacy.py | 80 + .../charset_normalizer/md.cp312-win_amd64.pyd | Bin 0 -> 10752 bytes .../site-packages/charset_normalizer/md.py | 635 ++ .../md__mypyc.cp312-win_amd64.pyd | Bin 0 -> 126976 bytes .../charset_normalizer/models.py | 360 + .../site-packages/charset_normalizer/py.typed | 0 .../site-packages/charset_normalizer/utils.py | 414 + .../charset_normalizer/version.py | 8 + .../click-8.3.1.dist-info/INSTALLER | 1 + .../click-8.3.1.dist-info/METADATA | 84 + .../click-8.3.1.dist-info/RECORD | 40 + .../site-packages/click-8.3.1.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 28 + venv/Lib/site-packages/click/__init__.py | 123 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 4033 bytes .../click/__pycache__/_compat.cpython-312.pyc | Bin 0 -> 24155 bytes .../__pycache__/_termui_impl.cpython-312.pyc | Bin 0 -> 31577 bytes .../__pycache__/_textwrap.cpython-312.pyc | Bin 0 -> 2386 bytes .../click/__pycache__/_utils.cpython-312.pyc | Bin 0 -> 1161 bytes .../__pycache__/_winconsole.cpython-312.pyc | Bin 0 -> 11731 bytes .../click/__pycache__/core.cpython-312.pyc | Bin 0 -> 134627 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 0 -> 22098 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 14737 bytes .../__pycache__/formatting.cpython-312.pyc | Bin 0 -> 13633 bytes .../click/__pycache__/globals.cpython-312.pyc | Bin 0 -> 2926 bytes .../click/__pycache__/parser.cpython-312.pyc | Bin 0 -> 20403 bytes .../shell_completion.cpython-312.pyc | Bin 0 -> 23298 bytes .../click/__pycache__/termui.cpython-312.pyc | Bin 0 -> 34612 bytes .../click/__pycache__/testing.cpython-312.pyc | Bin 0 -> 27370 bytes .../click/__pycache__/types.cpython-312.pyc | Bin 0 -> 49999 bytes .../click/__pycache__/utils.cpython-312.pyc | Bin 0 -> 24840 bytes venv/Lib/site-packages/click/_compat.py | 622 ++ venv/Lib/site-packages/click/_termui_impl.py | 852 ++ venv/Lib/site-packages/click/_textwrap.py | 51 + venv/Lib/site-packages/click/_utils.py | 36 + venv/Lib/site-packages/click/_winconsole.py | 296 + venv/Lib/site-packages/click/core.py | 3415 +++++++ venv/Lib/site-packages/click/decorators.py | 551 + venv/Lib/site-packages/click/exceptions.py | 308 + venv/Lib/site-packages/click/formatting.py | 301 + venv/Lib/site-packages/click/globals.py | 67 + venv/Lib/site-packages/click/parser.py | 532 + venv/Lib/site-packages/click/py.typed | 0 .../site-packages/click/shell_completion.py | 667 ++ venv/Lib/site-packages/click/termui.py | 883 ++ venv/Lib/site-packages/click/testing.py | 577 ++ venv/Lib/site-packages/click/types.py | 1209 +++ venv/Lib/site-packages/click/utils.py | 627 ++ .../colorama-0.4.6.dist-info/INSTALLER | 1 + .../colorama-0.4.6.dist-info/METADATA | 441 + .../colorama-0.4.6.dist-info/RECORD | 31 + .../colorama-0.4.6.dist-info/WHEEL | 5 + .../licenses/LICENSE.txt | 27 + venv/Lib/site-packages/colorama/__init__.py | 7 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 450 bytes .../colorama/__pycache__/ansi.cpython-312.pyc | Bin 0 -> 3908 bytes .../__pycache__/ansitowin32.cpython-312.pyc | Bin 0 -> 16379 bytes .../__pycache__/initialise.cpython-312.pyc | Bin 0 -> 3508 bytes .../__pycache__/win32.cpython-312.pyc | Bin 0 -> 8084 bytes .../__pycache__/winterm.cpython-312.pyc | Bin 0 -> 9046 bytes venv/Lib/site-packages/colorama/ansi.py | 102 + .../Lib/site-packages/colorama/ansitowin32.py | 277 + venv/Lib/site-packages/colorama/initialise.py | 121 + .../site-packages/colorama/tests/__init__.py | 1 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 156 bytes .../__pycache__/ansi_test.cpython-312.pyc | Bin 0 -> 5425 bytes .../ansitowin32_test.cpython-312.pyc | Bin 0 -> 18061 bytes .../initialise_test.cpython-312.pyc | Bin 0 -> 11706 bytes .../__pycache__/isatty_test.cpython-312.pyc | Bin 0 -> 4862 bytes .../tests/__pycache__/utils.cpython-312.pyc | Bin 0 -> 2446 bytes .../__pycache__/winterm_test.cpython-312.pyc | Bin 0 -> 6570 bytes .../site-packages/colorama/tests/ansi_test.py | 76 + .../colorama/tests/ansitowin32_test.py | 294 + .../colorama/tests/initialise_test.py | 189 + .../colorama/tests/isatty_test.py | 57 + .../Lib/site-packages/colorama/tests/utils.py | 49 + .../colorama/tests/winterm_test.py | 131 + venv/Lib/site-packages/colorama/win32.py | 180 + venv/Lib/site-packages/colorama/winterm.py | 195 + .../flask-3.1.2.dist-info/INSTALLER | 1 + .../flask-3.1.2.dist-info/METADATA | 91 + .../flask-3.1.2.dist-info/RECORD | 58 + .../flask-3.1.2.dist-info/REQUESTED | 0 .../site-packages/flask-3.1.2.dist-info/WHEEL | 4 + .../flask-3.1.2.dist-info/entry_points.txt | 3 + .../licenses/LICENSE.txt | 28 + venv/Lib/site-packages/flask/__init__.py | 61 + venv/Lib/site-packages/flask/__main__.py | 3 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 2493 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 201 bytes .../flask/__pycache__/app.cpython-312.pyc | Bin 0 -> 62448 bytes .../__pycache__/blueprints.cpython-312.pyc | Bin 0 -> 4960 bytes .../flask/__pycache__/cli.cpython-312.pyc | Bin 0 -> 43504 bytes .../flask/__pycache__/config.cpython-312.pyc | Bin 0 -> 16212 bytes .../flask/__pycache__/ctx.cpython-312.pyc | Bin 0 -> 19798 bytes .../__pycache__/debughelpers.cpython-312.pyc | Bin 0 -> 9110 bytes .../flask/__pycache__/globals.cpython-312.pyc | Bin 0 -> 1825 bytes .../flask/__pycache__/helpers.cpython-312.pyc | Bin 0 -> 25526 bytes .../flask/__pycache__/logging.cpython-312.pyc | Bin 0 -> 3227 bytes .../__pycache__/sessions.cpython-312.pyc | Bin 0 -> 17142 bytes .../flask/__pycache__/signals.cpython-312.pyc | Bin 0 -> 1182 bytes .../__pycache__/templating.cpython-312.pyc | Bin 0 -> 9891 bytes .../flask/__pycache__/testing.cpython-312.pyc | Bin 0 -> 13572 bytes .../flask/__pycache__/typing.cpython-312.pyc | Bin 0 -> 4090 bytes .../flask/__pycache__/views.cpython-312.pyc | Bin 0 -> 6981 bytes .../__pycache__/wrappers.cpython-312.pyc | Bin 0 -> 10013 bytes venv/Lib/site-packages/flask/app.py | 1536 +++ venv/Lib/site-packages/flask/blueprints.py | 128 + venv/Lib/site-packages/flask/cli.py | 1135 +++ venv/Lib/site-packages/flask/config.py | 367 + venv/Lib/site-packages/flask/ctx.py | 449 + venv/Lib/site-packages/flask/debughelpers.py | 178 + venv/Lib/site-packages/flask/globals.py | 51 + venv/Lib/site-packages/flask/helpers.py | 641 ++ venv/Lib/site-packages/flask/json/__init__.py | 170 + .../json/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 6653 bytes .../json/__pycache__/provider.cpython-312.pyc | Bin 0 -> 9220 bytes .../json/__pycache__/tag.cpython-312.pyc | Bin 0 -> 13915 bytes venv/Lib/site-packages/flask/json/provider.py | 215 + venv/Lib/site-packages/flask/json/tag.py | 327 + venv/Lib/site-packages/flask/logging.py | 79 + venv/Lib/site-packages/flask/py.typed | 0 venv/Lib/site-packages/flask/sansio/README.md | 6 + .../sansio/__pycache__/app.cpython-312.pyc | Bin 0 -> 33672 bytes .../__pycache__/blueprints.cpython-312.pyc | Bin 0 -> 31173 bytes .../__pycache__/scaffold.cpython-312.pyc | Bin 0 -> 30186 bytes venv/Lib/site-packages/flask/sansio/app.py | 964 ++ .../site-packages/flask/sansio/blueprints.py | 632 ++ .../site-packages/flask/sansio/scaffold.py | 792 ++ venv/Lib/site-packages/flask/sessions.py | 399 + venv/Lib/site-packages/flask/signals.py | 17 + venv/Lib/site-packages/flask/templating.py | 219 + venv/Lib/site-packages/flask/testing.py | 298 + venv/Lib/site-packages/flask/typing.py | 93 + venv/Lib/site-packages/flask/views.py | 191 + venv/Lib/site-packages/flask/wrappers.py | 257 + .../idna-3.11.dist-info/INSTALLER | 1 + .../idna-3.11.dist-info/METADATA | 209 + .../site-packages/idna-3.11.dist-info/RECORD | 22 + .../site-packages/idna-3.11.dist-info/WHEEL | 4 + .../idna-3.11.dist-info/licenses/LICENSE.md | 31 + venv/Lib/site-packages/idna/__init__.py | 45 + .../idna/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 844 bytes .../idna/__pycache__/codec.cpython-312.pyc | Bin 0 -> 4944 bytes .../idna/__pycache__/compat.cpython-312.pyc | Bin 0 -> 848 bytes .../idna/__pycache__/core.cpython-312.pyc | Bin 0 -> 16156 bytes .../idna/__pycache__/idnadata.cpython-312.pyc | Bin 0 -> 100873 bytes .../__pycache__/intranges.cpython-312.pyc | Bin 0 -> 2596 bytes .../__pycache__/package_data.cpython-312.pyc | Bin 0 -> 175 bytes .../__pycache__/uts46data.cpython-312.pyc | Bin 0 -> 161803 bytes venv/Lib/site-packages/idna/codec.py | 122 + venv/Lib/site-packages/idna/compat.py | 15 + venv/Lib/site-packages/idna/core.py | 437 + venv/Lib/site-packages/idna/idnadata.py | 4309 ++++++++ venv/Lib/site-packages/idna/intranges.py | 57 + venv/Lib/site-packages/idna/package_data.py | 1 + venv/Lib/site-packages/idna/py.typed | 0 venv/Lib/site-packages/idna/uts46data.py | 8841 +++++++++++++++++ .../itsdangerous-2.2.0.dist-info/INSTALLER | 1 + .../itsdangerous-2.2.0.dist-info/LICENSE.txt | 28 + .../itsdangerous-2.2.0.dist-info/METADATA | 60 + .../itsdangerous-2.2.0.dist-info/RECORD | 22 + .../itsdangerous-2.2.0.dist-info/WHEEL | 4 + .../site-packages/itsdangerous/__init__.py | 38 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1592 bytes .../__pycache__/_json.cpython-312.pyc | Bin 0 -> 1146 bytes .../__pycache__/encoding.cpython-312.pyc | Bin 0 -> 2646 bytes .../__pycache__/exc.cpython-312.pyc | Bin 0 -> 3906 bytes .../__pycache__/serializer.cpython-312.pyc | Bin 0 -> 15387 bytes .../__pycache__/signer.cpython-312.pyc | Bin 0 -> 11252 bytes .../__pycache__/timed.cpython-312.pyc | Bin 0 -> 8700 bytes .../__pycache__/url_safe.cpython-312.pyc | Bin 0 -> 3496 bytes venv/Lib/site-packages/itsdangerous/_json.py | 18 + .../site-packages/itsdangerous/encoding.py | 54 + venv/Lib/site-packages/itsdangerous/exc.py | 106 + venv/Lib/site-packages/itsdangerous/py.typed | 0 .../site-packages/itsdangerous/serializer.py | 406 + venv/Lib/site-packages/itsdangerous/signer.py | 266 + venv/Lib/site-packages/itsdangerous/timed.py | 228 + .../site-packages/itsdangerous/url_safe.py | 83 + .../jinja2-3.1.6.dist-info/INSTALLER | 1 + .../jinja2-3.1.6.dist-info/METADATA | 84 + .../jinja2-3.1.6.dist-info/RECORD | 57 + .../jinja2-3.1.6.dist-info/WHEEL | 4 + .../jinja2-3.1.6.dist-info/entry_points.txt | 3 + .../licenses/LICENSE.txt | 28 + venv/Lib/site-packages/jinja2/__init__.py | 38 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1617 bytes .../__pycache__/_identifier.cpython-312.pyc | Bin 0 -> 2098 bytes .../__pycache__/async_utils.cpython-312.pyc | Bin 0 -> 4938 bytes .../__pycache__/bccache.cpython-312.pyc | Bin 0 -> 19309 bytes .../__pycache__/compiler.cpython-312.pyc | Bin 0 -> 104024 bytes .../__pycache__/constants.cpython-312.pyc | Bin 0 -> 1520 bytes .../jinja2/__pycache__/debug.cpython-312.pyc | Bin 0 -> 6545 bytes .../__pycache__/defaults.cpython-312.pyc | Bin 0 -> 1570 bytes .../__pycache__/environment.cpython-312.pyc | Bin 0 -> 76646 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 7684 bytes .../jinja2/__pycache__/ext.cpython-312.pyc | Bin 0 -> 41877 bytes .../__pycache__/filters.cpython-312.pyc | Bin 0 -> 72294 bytes .../__pycache__/idtracking.cpython-312.pyc | Bin 0 -> 19159 bytes .../jinja2/__pycache__/lexer.cpython-312.pyc | Bin 0 -> 32040 bytes .../__pycache__/loaders.cpython-312.pyc | Bin 0 -> 32319 bytes .../jinja2/__pycache__/meta.cpython-312.pyc | Bin 0 -> 5454 bytes .../__pycache__/nativetypes.cpython-312.pyc | Bin 0 -> 6975 bytes .../jinja2/__pycache__/nodes.cpython-312.pyc | Bin 0 -> 58237 bytes .../__pycache__/optimizer.cpython-312.pyc | Bin 0 -> 2653 bytes .../jinja2/__pycache__/parser.cpython-312.pyc | Bin 0 -> 61167 bytes .../__pycache__/runtime.cpython-312.pyc | Bin 0 -> 48855 bytes .../__pycache__/sandbox.cpython-312.pyc | Bin 0 -> 18071 bytes .../jinja2/__pycache__/tests.cpython-312.pyc | Bin 0 -> 9014 bytes .../jinja2/__pycache__/utils.cpython-312.pyc | Bin 0 -> 34827 bytes .../__pycache__/visitor.cpython-312.pyc | Bin 0 -> 5329 bytes venv/Lib/site-packages/jinja2/_identifier.py | 6 + venv/Lib/site-packages/jinja2/async_utils.py | 99 + venv/Lib/site-packages/jinja2/bccache.py | 408 + venv/Lib/site-packages/jinja2/compiler.py | 1998 ++++ venv/Lib/site-packages/jinja2/constants.py | 20 + venv/Lib/site-packages/jinja2/debug.py | 191 + venv/Lib/site-packages/jinja2/defaults.py | 48 + venv/Lib/site-packages/jinja2/environment.py | 1672 ++++ venv/Lib/site-packages/jinja2/exceptions.py | 166 + venv/Lib/site-packages/jinja2/ext.py | 870 ++ venv/Lib/site-packages/jinja2/filters.py | 1873 ++++ venv/Lib/site-packages/jinja2/idtracking.py | 318 + venv/Lib/site-packages/jinja2/lexer.py | 868 ++ venv/Lib/site-packages/jinja2/loaders.py | 693 ++ venv/Lib/site-packages/jinja2/meta.py | 112 + venv/Lib/site-packages/jinja2/nativetypes.py | 130 + venv/Lib/site-packages/jinja2/nodes.py | 1206 +++ venv/Lib/site-packages/jinja2/optimizer.py | 48 + venv/Lib/site-packages/jinja2/parser.py | 1049 ++ venv/Lib/site-packages/jinja2/py.typed | 0 venv/Lib/site-packages/jinja2/runtime.py | 1062 ++ venv/Lib/site-packages/jinja2/sandbox.py | 436 + venv/Lib/site-packages/jinja2/tests.py | 256 + venv/Lib/site-packages/jinja2/utils.py | 766 ++ venv/Lib/site-packages/jinja2/visitor.py | 92 + .../markupsafe-3.0.3.dist-info/INSTALLER | 1 + .../markupsafe-3.0.3.dist-info/METADATA | 74 + .../markupsafe-3.0.3.dist-info/RECORD | 14 + .../markupsafe-3.0.3.dist-info/WHEEL | 5 + .../licenses/LICENSE.txt | 28 + .../markupsafe-3.0.3.dist-info/top_level.txt | 1 + venv/Lib/site-packages/markupsafe/__init__.py | 396 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 20927 bytes .../__pycache__/_native.cpython-312.pyc | Bin 0 -> 579 bytes venv/Lib/site-packages/markupsafe/_native.py | 8 + venv/Lib/site-packages/markupsafe/_speedups.c | 200 + .../markupsafe/_speedups.cp312-win_amd64.pyd | Bin 0 -> 13312 bytes .../site-packages/markupsafe/_speedups.pyi | 1 + venv/Lib/site-packages/markupsafe/py.typed | 0 .../pip-24.0.dist-info/AUTHORS.txt | 760 ++ .../pip-24.0.dist-info/LICENSE.txt | 20 + .../site-packages/pip-24.0.dist-info/METADATA | 88 + .../site-packages/pip-24.0.dist-info/RECORD | 524 + .../site-packages/pip-24.0.dist-info/WHEEL | 5 + .../pip-24.0.dist-info/entry_points.txt | 4 + .../pip-24.0.dist-info/top_level.txt | 1 + venv/Lib/site-packages/pip/__init__.py | 13 + venv/Lib/site-packages/pip/__main__.py | 24 + venv/Lib/site-packages/pip/__pip-runner__.py | 50 + .../pip/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 654 bytes .../pip/__pycache__/__main__.cpython-312.pyc | Bin 0 -> 810 bytes .../__pip-runner__.cpython-312.pyc | Bin 0 -> 2173 bytes .../site-packages/pip/_internal/__init__.py | 18 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 756 bytes .../__pycache__/build_env.cpython-312.pyc | Bin 0 -> 14263 bytes .../__pycache__/cache.cpython-312.pyc | Bin 0 -> 12634 bytes .../__pycache__/configuration.cpython-312.pyc | Bin 0 -> 17635 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 33253 bytes .../__pycache__/main.cpython-312.pyc | Bin 0 -> 639 bytes .../__pycache__/pyproject.cpython-312.pyc | Bin 0 -> 4940 bytes .../self_outdated_check.cpython-312.pyc | Bin 0 -> 10521 bytes .../__pycache__/wheel_builder.cpython-312.pyc | Bin 0 -> 13618 bytes .../site-packages/pip/_internal/build_env.py | 311 + venv/Lib/site-packages/pip/_internal/cache.py | 290 + .../pip/_internal/cli/__init__.py | 4 + .../cli/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 247 bytes .../autocompletion.cpython-312.pyc | Bin 0 -> 8434 bytes .../__pycache__/base_command.cpython-312.pyc | Bin 0 -> 10424 bytes .../__pycache__/cmdoptions.cpython-312.pyc | Bin 0 -> 30343 bytes .../command_context.cpython-312.pyc | Bin 0 -> 1750 bytes .../cli/__pycache__/main.cpython-312.pyc | Bin 0 -> 2267 bytes .../__pycache__/main_parser.cpython-312.pyc | Bin 0 -> 4874 bytes .../cli/__pycache__/parser.cpython-312.pyc | Bin 0 -> 14991 bytes .../__pycache__/progress_bars.cpython-312.pyc | Bin 0 -> 2589 bytes .../__pycache__/req_command.cpython-312.pyc | Bin 0 -> 18821 bytes .../cli/__pycache__/spinners.cpython-312.pyc | Bin 0 -> 7809 bytes .../__pycache__/status_codes.cpython-312.pyc | Bin 0 -> 344 bytes .../pip/_internal/cli/autocompletion.py | 172 + .../pip/_internal/cli/base_command.py | 236 + .../pip/_internal/cli/cmdoptions.py | 1074 ++ .../pip/_internal/cli/command_context.py | 27 + .../site-packages/pip/_internal/cli/main.py | 79 + .../pip/_internal/cli/main_parser.py | 134 + .../site-packages/pip/_internal/cli/parser.py | 294 + .../pip/_internal/cli/progress_bars.py | 68 + .../pip/_internal/cli/req_command.py | 505 + .../pip/_internal/cli/spinners.py | 159 + .../pip/_internal/cli/status_codes.py | 6 + .../pip/_internal/commands/__init__.py | 132 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 3971 bytes .../__pycache__/cache.cpython-312.pyc | Bin 0 -> 9680 bytes .../__pycache__/check.cpython-312.pyc | Bin 0 -> 2059 bytes .../__pycache__/completion.cpython-312.pyc | Bin 0 -> 5161 bytes .../__pycache__/configuration.cpython-312.pyc | Bin 0 -> 13181 bytes .../__pycache__/debug.cpython-312.pyc | Bin 0 -> 10130 bytes .../__pycache__/download.cpython-312.pyc | Bin 0 -> 7558 bytes .../__pycache__/freeze.cpython-312.pyc | Bin 0 -> 4325 bytes .../commands/__pycache__/hash.cpython-312.pyc | Bin 0 -> 2952 bytes .../commands/__pycache__/help.cpython-312.pyc | Bin 0 -> 1642 bytes .../__pycache__/index.cpython-312.pyc | Bin 0 -> 6689 bytes .../__pycache__/inspect.cpython-312.pyc | Bin 0 -> 3944 bytes .../__pycache__/install.cpython-312.pyc | Bin 0 -> 28882 bytes .../commands/__pycache__/list.cpython-312.pyc | Bin 0 -> 15369 bytes .../__pycache__/search.cpython-312.pyc | Bin 0 -> 7590 bytes .../commands/__pycache__/show.cpython-312.pyc | Bin 0 -> 9697 bytes .../__pycache__/uninstall.cpython-312.pyc | Bin 0 -> 4695 bytes .../__pycache__/wheel.cpython-312.pyc | Bin 0 -> 8925 bytes .../pip/_internal/commands/cache.py | 225 + .../pip/_internal/commands/check.py | 54 + .../pip/_internal/commands/completion.py | 130 + .../pip/_internal/commands/configuration.py | 280 + .../pip/_internal/commands/debug.py | 201 + .../pip/_internal/commands/download.py | 147 + .../pip/_internal/commands/freeze.py | 108 + .../pip/_internal/commands/hash.py | 59 + .../pip/_internal/commands/help.py | 41 + .../pip/_internal/commands/index.py | 139 + .../pip/_internal/commands/inspect.py | 92 + .../pip/_internal/commands/install.py | 774 ++ .../pip/_internal/commands/list.py | 368 + .../pip/_internal/commands/search.py | 174 + .../pip/_internal/commands/show.py | 189 + .../pip/_internal/commands/uninstall.py | 113 + .../pip/_internal/commands/wheel.py | 183 + .../pip/_internal/configuration.py | 383 + .../pip/_internal/distributions/__init__.py | 21 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 910 bytes .../__pycache__/base.cpython-312.pyc | Bin 0 -> 2831 bytes .../__pycache__/installed.cpython-312.pyc | Bin 0 -> 1669 bytes .../__pycache__/sdist.cpython-312.pyc | Bin 0 -> 8457 bytes .../__pycache__/wheel.cpython-312.pyc | Bin 0 -> 2217 bytes .../pip/_internal/distributions/base.py | 51 + .../pip/_internal/distributions/installed.py | 29 + .../pip/_internal/distributions/sdist.py | 156 + .../pip/_internal/distributions/wheel.py | 40 + .../site-packages/pip/_internal/exceptions.py | 728 ++ .../pip/_internal/index/__init__.py | 2 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 201 bytes .../__pycache__/collector.cpython-312.pyc | Bin 0 -> 21855 bytes .../package_finder.cpython-312.pyc | Bin 0 -> 40704 bytes .../index/__pycache__/sources.cpython-312.pyc | Bin 0 -> 12573 bytes .../pip/_internal/index/collector.py | 507 + .../pip/_internal/index/package_finder.py | 1027 ++ .../pip/_internal/index/sources.py | 285 + .../pip/_internal/locations/__init__.py | 467 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 16745 bytes .../__pycache__/_distutils.cpython-312.pyc | Bin 0 -> 6825 bytes .../__pycache__/_sysconfig.cpython-312.pyc | Bin 0 -> 7980 bytes .../__pycache__/base.cpython-312.pyc | Bin 0 -> 3750 bytes .../pip/_internal/locations/_distutils.py | 172 + .../pip/_internal/locations/_sysconfig.py | 213 + .../pip/_internal/locations/base.py | 81 + venv/Lib/site-packages/pip/_internal/main.py | 12 + .../pip/_internal/metadata/__init__.py | 128 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 5851 bytes .../__pycache__/_json.cpython-312.pyc | Bin 0 -> 2844 bytes .../metadata/__pycache__/base.cpython-312.pyc | Bin 0 -> 35681 bytes .../__pycache__/pkg_resources.cpython-312.pyc | Bin 0 -> 15759 bytes .../pip/_internal/metadata/_json.py | 84 + .../pip/_internal/metadata/base.py | 702 ++ .../_internal/metadata/importlib/__init__.py | 6 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 327 bytes .../__pycache__/_compat.cpython-312.pyc | Bin 0 -> 3302 bytes .../__pycache__/_dists.cpython-312.pyc | Bin 0 -> 13394 bytes .../__pycache__/_envs.cpython-312.pyc | Bin 0 -> 11149 bytes .../_internal/metadata/importlib/_compat.py | 55 + .../_internal/metadata/importlib/_dists.py | 227 + .../pip/_internal/metadata/importlib/_envs.py | 189 + .../pip/_internal/metadata/pkg_resources.py | 278 + .../pip/_internal/models/__init__.py | 2 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 235 bytes .../__pycache__/candidate.cpython-312.pyc | Bin 0 -> 1874 bytes .../__pycache__/direct_url.cpython-312.pyc | Bin 0 -> 11168 bytes .../format_control.cpython-312.pyc | Bin 0 -> 4196 bytes .../models/__pycache__/index.cpython-312.pyc | Bin 0 -> 1663 bytes .../installation_report.cpython-312.pyc | Bin 0 -> 2241 bytes .../models/__pycache__/link.cpython-312.pyc | Bin 0 -> 25971 bytes .../models/__pycache__/scheme.cpython-312.pyc | Bin 0 -> 1138 bytes .../__pycache__/search_scope.cpython-312.pyc | Bin 0 -> 5057 bytes .../selection_prefs.cpython-312.pyc | Bin 0 -> 1820 bytes .../__pycache__/target_python.cpython-312.pyc | Bin 0 -> 4923 bytes .../models/__pycache__/wheel.cpython-312.pyc | Bin 0 -> 5749 bytes .../pip/_internal/models/candidate.py | 30 + .../pip/_internal/models/direct_url.py | 235 + .../pip/_internal/models/format_control.py | 78 + .../pip/_internal/models/index.py | 28 + .../_internal/models/installation_report.py | 56 + .../pip/_internal/models/link.py | 579 ++ .../pip/_internal/models/scheme.py | 31 + .../pip/_internal/models/search_scope.py | 132 + .../pip/_internal/models/selection_prefs.py | 51 + .../pip/_internal/models/target_python.py | 122 + .../pip/_internal/models/wheel.py | 92 + .../pip/_internal/network/__init__.py | 2 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 223 bytes .../network/__pycache__/auth.cpython-312.pyc | Bin 0 -> 21965 bytes .../network/__pycache__/cache.cpython-312.pyc | Bin 0 -> 6487 bytes .../__pycache__/download.cpython-312.pyc | Bin 0 -> 8522 bytes .../__pycache__/lazy_wheel.cpython-312.pyc | Bin 0 -> 11632 bytes .../__pycache__/session.cpython-312.pyc | Bin 0 -> 18743 bytes .../network/__pycache__/utils.cpython-312.pyc | Bin 0 -> 2222 bytes .../__pycache__/xmlrpc.cpython-312.pyc | Bin 0 -> 2918 bytes .../pip/_internal/network/auth.py | 561 ++ .../pip/_internal/network/cache.py | 106 + .../pip/_internal/network/download.py | 186 + .../pip/_internal/network/lazy_wheel.py | 210 + .../pip/_internal/network/session.py | 520 + .../pip/_internal/network/utils.py | 96 + .../pip/_internal/network/xmlrpc.py | 62 + .../pip/_internal/operations/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 166 bytes .../__pycache__/check.cpython-312.pyc | Bin 0 -> 7548 bytes .../__pycache__/freeze.cpython-312.pyc | Bin 0 -> 10086 bytes .../__pycache__/prepare.cpython-312.pyc | Bin 0 -> 25716 bytes .../_internal/operations/build/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 172 bytes .../__pycache__/build_tracker.cpython-312.pyc | Bin 0 -> 7792 bytes .../__pycache__/metadata.cpython-312.pyc | Bin 0 -> 1849 bytes .../metadata_editable.cpython-312.pyc | Bin 0 -> 1883 bytes .../metadata_legacy.cpython-312.pyc | Bin 0 -> 3034 bytes .../build/__pycache__/wheel.cpython-312.pyc | Bin 0 -> 1653 bytes .../wheel_editable.cpython-312.pyc | Bin 0 -> 1994 bytes .../__pycache__/wheel_legacy.cpython-312.pyc | Bin 0 -> 3898 bytes .../operations/build/build_tracker.py | 139 + .../_internal/operations/build/metadata.py | 39 + .../operations/build/metadata_editable.py | 41 + .../operations/build/metadata_legacy.py | 74 + .../pip/_internal/operations/build/wheel.py | 37 + .../operations/build/wheel_editable.py | 46 + .../operations/build/wheel_legacy.py | 102 + .../pip/_internal/operations/check.py | 187 + .../pip/_internal/operations/freeze.py | 255 + .../_internal/operations/install/__init__.py | 2 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 235 bytes .../editable_legacy.cpython-312.pyc | Bin 0 -> 1786 bytes .../install/__pycache__/wheel.cpython-312.pyc | Bin 0 -> 33828 bytes .../operations/install/editable_legacy.py | 46 + .../pip/_internal/operations/install/wheel.py | 734 ++ .../pip/_internal/operations/prepare.py | 730 ++ .../site-packages/pip/_internal/pyproject.py | 179 + .../pip/_internal/req/__init__.py | 92 + .../req/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 3712 bytes .../__pycache__/constructors.cpython-312.pyc | Bin 0 -> 21551 bytes .../req/__pycache__/req_file.cpython-312.pyc | Bin 0 -> 21430 bytes .../__pycache__/req_install.cpython-312.pyc | Bin 0 -> 38383 bytes .../req/__pycache__/req_set.cpython-312.pyc | Bin 0 -> 7187 bytes .../__pycache__/req_uninstall.cpython-312.pyc | Bin 0 -> 32946 bytes .../pip/_internal/req/constructors.py | 576 ++ .../pip/_internal/req/req_file.py | 554 ++ .../pip/_internal/req/req_install.py | 923 ++ .../pip/_internal/req/req_set.py | 119 + .../pip/_internal/req/req_uninstall.py | 649 ++ .../pip/_internal/resolution/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 166 bytes .../__pycache__/base.cpython-312.pyc | Bin 0 -> 1154 bytes .../pip/_internal/resolution/base.py | 20 + .../_internal/resolution/legacy/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 173 bytes .../__pycache__/resolver.cpython-312.pyc | Bin 0 -> 22408 bytes .../_internal/resolution/legacy/resolver.py | 598 ++ .../resolution/resolvelib/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 177 bytes .../__pycache__/base.cpython-312.pyc | Bin 0 -> 8306 bytes .../__pycache__/candidates.cpython-312.pyc | Bin 0 -> 30367 bytes .../__pycache__/factory.cpython-312.pyc | Bin 0 -> 32083 bytes .../found_candidates.cpython-312.pyc | Bin 0 -> 6177 bytes .../__pycache__/provider.cpython-312.pyc | Bin 0 -> 10347 bytes .../__pycache__/reporter.cpython-312.pyc | Bin 0 -> 4904 bytes .../__pycache__/requirements.cpython-312.pyc | Bin 0 -> 11398 bytes .../__pycache__/resolver.cpython-312.pyc | Bin 0 -> 12320 bytes .../_internal/resolution/resolvelib/base.py | 141 + .../resolution/resolvelib/candidates.py | 597 ++ .../resolution/resolvelib/factory.py | 812 ++ .../resolution/resolvelib/found_candidates.py | 155 + .../resolution/resolvelib/provider.py | 255 + .../resolution/resolvelib/reporter.py | 80 + .../resolution/resolvelib/requirements.py | 166 + .../resolution/resolvelib/resolver.py | 317 + .../pip/_internal/self_outdated_check.py | 248 + .../pip/_internal/utils/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 161 bytes .../__pycache__/_jaraco_text.cpython-312.pyc | Bin 0 -> 4502 bytes .../utils/__pycache__/_log.cpython-312.pyc | Bin 0 -> 1832 bytes .../utils/__pycache__/appdirs.cpython-312.pyc | Bin 0 -> 2376 bytes .../utils/__pycache__/compat.cpython-312.pyc | Bin 0 -> 2179 bytes .../compatibility_tags.cpython-312.pyc | Bin 0 -> 5527 bytes .../__pycache__/datetime.cpython-312.pyc | Bin 0 -> 650 bytes .../__pycache__/deprecation.cpython-312.pyc | Bin 0 -> 4152 bytes .../direct_url_helpers.cpython-312.pyc | Bin 0 -> 3529 bytes .../__pycache__/egg_link.cpython-312.pyc | Bin 0 -> 3192 bytes .../__pycache__/encoding.cpython-312.pyc | Bin 0 -> 2124 bytes .../__pycache__/entrypoints.cpython-312.pyc | Bin 0 -> 3959 bytes .../__pycache__/filesystem.cpython-312.pyc | Bin 0 -> 7424 bytes .../__pycache__/filetypes.cpython-312.pyc | Bin 0 -> 1130 bytes .../utils/__pycache__/glibc.cpython-312.pyc | Bin 0 -> 2308 bytes .../utils/__pycache__/hashes.cpython-312.pyc | Bin 0 -> 7520 bytes .../utils/__pycache__/logging.cpython-312.pyc | Bin 0 -> 13523 bytes .../utils/__pycache__/misc.cpython-312.pyc | Bin 0 -> 34087 bytes .../utils/__pycache__/models.cpython-312.pyc | Bin 0 -> 2678 bytes .../__pycache__/packaging.cpython-312.pyc | Bin 0 -> 2549 bytes .../setuptools_build.cpython-312.pyc | Bin 0 -> 4516 bytes .../__pycache__/subprocess.cpython-312.pyc | Bin 0 -> 8684 bytes .../__pycache__/temp_dir.cpython-312.pyc | Bin 0 -> 12028 bytes .../__pycache__/unpacking.cpython-312.pyc | Bin 0 -> 11074 bytes .../utils/__pycache__/urls.cpython-312.pyc | Bin 0 -> 2371 bytes .../__pycache__/virtualenv.cpython-312.pyc | Bin 0 -> 4446 bytes .../utils/__pycache__/wheel.cpython-312.pyc | Bin 0 -> 5892 bytes .../pip/_internal/utils/_jaraco_text.py | 109 + .../site-packages/pip/_internal/utils/_log.py | 38 + .../pip/_internal/utils/appdirs.py | 52 + .../pip/_internal/utils/compat.py | 63 + .../pip/_internal/utils/compatibility_tags.py | 165 + .../pip/_internal/utils/datetime.py | 11 + .../pip/_internal/utils/deprecation.py | 120 + .../pip/_internal/utils/direct_url_helpers.py | 87 + .../pip/_internal/utils/egg_link.py | 80 + .../pip/_internal/utils/encoding.py | 36 + .../pip/_internal/utils/entrypoints.py | 84 + .../pip/_internal/utils/filesystem.py | 153 + .../pip/_internal/utils/filetypes.py | 27 + .../pip/_internal/utils/glibc.py | 88 + .../pip/_internal/utils/hashes.py | 151 + .../pip/_internal/utils/logging.py | 348 + .../site-packages/pip/_internal/utils/misc.py | 783 ++ .../pip/_internal/utils/models.py | 39 + .../pip/_internal/utils/packaging.py | 57 + .../pip/_internal/utils/setuptools_build.py | 146 + .../pip/_internal/utils/subprocess.py | 260 + .../pip/_internal/utils/temp_dir.py | 296 + .../pip/_internal/utils/unpacking.py | 257 + .../site-packages/pip/_internal/utils/urls.py | 62 + .../pip/_internal/utils/virtualenv.py | 104 + .../pip/_internal/utils/wheel.py | 134 + .../pip/_internal/vcs/__init__.py | 15 + .../vcs/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 500 bytes .../vcs/__pycache__/bazaar.cpython-312.pyc | Bin 0 -> 4992 bytes .../vcs/__pycache__/git.cpython-312.pyc | Bin 0 -> 18961 bytes .../vcs/__pycache__/mercurial.cpython-312.pyc | Bin 0 -> 7581 bytes .../__pycache__/subversion.cpython-312.pyc | Bin 0 -> 12453 bytes .../versioncontrol.cpython-312.pyc | Bin 0 -> 28979 bytes .../site-packages/pip/_internal/vcs/bazaar.py | 112 + .../site-packages/pip/_internal/vcs/git.py | 526 + .../pip/_internal/vcs/mercurial.py | 163 + .../pip/_internal/vcs/subversion.py | 324 + .../pip/_internal/vcs/versioncontrol.py | 705 ++ .../pip/_internal/wheel_builder.py | 354 + .../Lib/site-packages/pip/_vendor/__init__.py | 121 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 4662 bytes .../pip/_vendor/cachecontrol/__init__.py | 28 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 872 bytes .../__pycache__/_cmd.cpython-312.pyc | Bin 0 -> 2616 bytes .../__pycache__/adapter.cpython-312.pyc | Bin 0 -> 6434 bytes .../__pycache__/cache.cpython-312.pyc | Bin 0 -> 3779 bytes .../__pycache__/controller.cpython-312.pyc | Bin 0 -> 16137 bytes .../__pycache__/filewrapper.cpython-312.pyc | Bin 0 -> 4317 bytes .../__pycache__/heuristics.cpython-312.pyc | Bin 0 -> 6664 bytes .../__pycache__/serialize.cpython-312.pyc | Bin 0 -> 6375 bytes .../__pycache__/wrapper.cpython-312.pyc | Bin 0 -> 1644 bytes .../pip/_vendor/cachecontrol/_cmd.py | 70 + .../pip/_vendor/cachecontrol/adapter.py | 161 + .../pip/_vendor/cachecontrol/cache.py | 74 + .../_vendor/cachecontrol/caches/__init__.py | 8 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 405 bytes .../__pycache__/file_cache.cpython-312.pyc | Bin 0 -> 7680 bytes .../__pycache__/redis_cache.cpython-312.pyc | Bin 0 -> 2708 bytes .../_vendor/cachecontrol/caches/file_cache.py | 181 + .../cachecontrol/caches/redis_cache.py | 48 + .../pip/_vendor/cachecontrol/controller.py | 494 + .../pip/_vendor/cachecontrol/filewrapper.py | 119 + .../pip/_vendor/cachecontrol/heuristics.py | 154 + .../pip/_vendor/cachecontrol/py.typed | 0 .../pip/_vendor/cachecontrol/serialize.py | 206 + .../pip/_vendor/cachecontrol/wrapper.py | 43 + .../pip/_vendor/certifi/__init__.py | 4 + .../pip/_vendor/certifi/__main__.py | 12 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 288 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 615 bytes .../certifi/__pycache__/core.cpython-312.pyc | Bin 0 -> 2819 bytes .../pip/_vendor/certifi/cacert.pem | 4635 +++++++++ .../site-packages/pip/_vendor/certifi/core.py | 108 + .../pip/_vendor/certifi/py.typed | 0 .../pip/_vendor/chardet/__init__.py | 115 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 4538 bytes .../__pycache__/big5freq.cpython-312.pyc | Bin 0 -> 27169 bytes .../__pycache__/big5prober.cpython-312.pyc | Bin 0 -> 1357 bytes .../chardistribution.cpython-312.pyc | Bin 0 -> 9608 bytes .../charsetgroupprober.cpython-312.pyc | Bin 0 -> 4092 bytes .../__pycache__/charsetprober.cpython-312.pyc | Bin 0 -> 4988 bytes .../codingstatemachine.cpython-312.pyc | Bin 0 -> 3848 bytes .../codingstatemachinedict.cpython-312.pyc | Bin 0 -> 759 bytes .../__pycache__/cp949prober.cpython-312.pyc | Bin 0 -> 1366 bytes .../chardet/__pycache__/enums.cpython-312.pyc | Bin 0 -> 2966 bytes .../__pycache__/escprober.cpython-312.pyc | Bin 0 -> 4536 bytes .../chardet/__pycache__/escsm.cpython-312.pyc | Bin 0 -> 15280 bytes .../__pycache__/eucjpprober.cpython-312.pyc | Bin 0 -> 4353 bytes .../__pycache__/euckrfreq.cpython-312.pyc | Bin 0 -> 12052 bytes .../__pycache__/euckrprober.cpython-312.pyc | Bin 0 -> 1360 bytes .../__pycache__/euctwfreq.cpython-312.pyc | Bin 0 -> 27174 bytes .../__pycache__/euctwprober.cpython-312.pyc | Bin 0 -> 1360 bytes .../__pycache__/gb2312freq.cpython-312.pyc | Bin 0 -> 19096 bytes .../__pycache__/gb2312prober.cpython-312.pyc | Bin 0 -> 1373 bytes .../__pycache__/hebrewprober.cpython-312.pyc | Bin 0 -> 5792 bytes .../__pycache__/jisfreq.cpython-312.pyc | Bin 0 -> 22125 bytes .../__pycache__/johabfreq.cpython-312.pyc | Bin 0 -> 82973 bytes .../__pycache__/johabprober.cpython-312.pyc | Bin 0 -> 1364 bytes .../__pycache__/jpcntx.cpython-312.pyc | Bin 0 -> 39519 bytes .../langbulgarianmodel.cpython-312.pyc | Bin 0 -> 83092 bytes .../langgreekmodel.cpython-312.pyc | Bin 0 -> 76958 bytes .../langhebrewmodel.cpython-312.pyc | Bin 0 -> 77469 bytes .../langhungarianmodel.cpython-312.pyc | Bin 0 -> 83046 bytes .../langrussianmodel.cpython-312.pyc | Bin 0 -> 105221 bytes .../__pycache__/langthaimodel.cpython-312.pyc | Bin 0 -> 77647 bytes .../langturkishmodel.cpython-312.pyc | Bin 0 -> 77486 bytes .../__pycache__/latin1prober.cpython-312.pyc | Bin 0 -> 6972 bytes .../macromanprober.cpython-312.pyc | Bin 0 -> 7152 bytes .../mbcharsetprober.cpython-312.pyc | Bin 0 -> 3873 bytes .../mbcsgroupprober.cpython-312.pyc | Bin 0 -> 1558 bytes .../__pycache__/mbcssm.cpython-312.pyc | Bin 0 -> 38615 bytes .../__pycache__/resultdict.cpython-312.pyc | Bin 0 -> 602 bytes .../sbcharsetprober.cpython-312.pyc | Bin 0 -> 6357 bytes .../sbcsgroupprober.cpython-312.pyc | Bin 0 -> 2327 bytes .../__pycache__/sjisprober.cpython-312.pyc | Bin 0 -> 4465 bytes .../universaldetector.cpython-312.pyc | Bin 0 -> 12239 bytes .../__pycache__/utf1632prober.cpython-312.pyc | Bin 0 -> 9949 bytes .../__pycache__/utf8prober.cpython-312.pyc | Bin 0 -> 3145 bytes .../__pycache__/version.cpython-312.pyc | Bin 0 -> 458 bytes .../pip/_vendor/chardet/big5freq.py | 386 + .../pip/_vendor/chardet/big5prober.py | 47 + .../pip/_vendor/chardet/chardistribution.py | 261 + .../pip/_vendor/chardet/charsetgroupprober.py | 106 + .../pip/_vendor/chardet/charsetprober.py | 147 + .../pip/_vendor/chardet/cli/__init__.py | 0 .../cli/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 165 bytes .../__pycache__/chardetect.cpython-312.pyc | Bin 0 -> 3982 bytes .../pip/_vendor/chardet/cli/chardetect.py | 112 + .../pip/_vendor/chardet/codingstatemachine.py | 90 + .../_vendor/chardet/codingstatemachinedict.py | 19 + .../pip/_vendor/chardet/cp949prober.py | 49 + .../pip/_vendor/chardet/enums.py | 85 + .../pip/_vendor/chardet/escprober.py | 102 + .../pip/_vendor/chardet/escsm.py | 261 + .../pip/_vendor/chardet/eucjpprober.py | 102 + .../pip/_vendor/chardet/euckrfreq.py | 196 + .../pip/_vendor/chardet/euckrprober.py | 47 + .../pip/_vendor/chardet/euctwfreq.py | 388 + .../pip/_vendor/chardet/euctwprober.py | 47 + .../pip/_vendor/chardet/gb2312freq.py | 284 + .../pip/_vendor/chardet/gb2312prober.py | 47 + .../pip/_vendor/chardet/hebrewprober.py | 316 + .../pip/_vendor/chardet/jisfreq.py | 325 + .../pip/_vendor/chardet/johabfreq.py | 2382 +++++ .../pip/_vendor/chardet/johabprober.py | 47 + .../pip/_vendor/chardet/jpcntx.py | 238 + .../pip/_vendor/chardet/langbulgarianmodel.py | 4649 +++++++++ .../pip/_vendor/chardet/langgreekmodel.py | 4397 ++++++++ .../pip/_vendor/chardet/langhebrewmodel.py | 4380 ++++++++ .../pip/_vendor/chardet/langhungarianmodel.py | 4649 +++++++++ .../pip/_vendor/chardet/langrussianmodel.py | 5725 +++++++++++ .../pip/_vendor/chardet/langthaimodel.py | 4380 ++++++++ .../pip/_vendor/chardet/langturkishmodel.py | 4380 ++++++++ .../pip/_vendor/chardet/latin1prober.py | 147 + .../pip/_vendor/chardet/macromanprober.py | 162 + .../pip/_vendor/chardet/mbcharsetprober.py | 95 + .../pip/_vendor/chardet/mbcsgroupprober.py | 57 + .../pip/_vendor/chardet/mbcssm.py | 661 ++ .../pip/_vendor/chardet/metadata/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 170 bytes .../__pycache__/languages.cpython-312.pyc | Bin 0 -> 9725 bytes .../pip/_vendor/chardet/metadata/languages.py | 352 + .../pip/_vendor/chardet/py.typed | 0 .../pip/_vendor/chardet/resultdict.py | 16 + .../pip/_vendor/chardet/sbcharsetprober.py | 162 + .../pip/_vendor/chardet/sbcsgroupprober.py | 88 + .../pip/_vendor/chardet/sjisprober.py | 105 + .../pip/_vendor/chardet/universaldetector.py | 362 + .../pip/_vendor/chardet/utf1632prober.py | 225 + .../pip/_vendor/chardet/utf8prober.py | 82 + .../pip/_vendor/chardet/version.py | 9 + .../pip/_vendor/colorama/__init__.py | 7 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 462 bytes .../colorama/__pycache__/ansi.cpython-312.pyc | Bin 0 -> 3920 bytes .../__pycache__/ansitowin32.cpython-312.pyc | Bin 0 -> 16391 bytes .../__pycache__/initialise.cpython-312.pyc | Bin 0 -> 3520 bytes .../__pycache__/win32.cpython-312.pyc | Bin 0 -> 8096 bytes .../__pycache__/winterm.cpython-312.pyc | Bin 0 -> 9058 bytes .../pip/_vendor/colorama/ansi.py | 102 + .../pip/_vendor/colorama/ansitowin32.py | 277 + .../pip/_vendor/colorama/initialise.py | 121 + .../pip/_vendor/colorama/tests/__init__.py | 1 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 168 bytes .../__pycache__/ansi_test.cpython-312.pyc | Bin 0 -> 5437 bytes .../ansitowin32_test.cpython-312.pyc | Bin 0 -> 18073 bytes .../initialise_test.cpython-312.pyc | Bin 0 -> 11718 bytes .../__pycache__/isatty_test.cpython-312.pyc | Bin 0 -> 4874 bytes .../tests/__pycache__/utils.cpython-312.pyc | Bin 0 -> 2458 bytes .../__pycache__/winterm_test.cpython-312.pyc | Bin 0 -> 6582 bytes .../pip/_vendor/colorama/tests/ansi_test.py | 76 + .../colorama/tests/ansitowin32_test.py | 294 + .../_vendor/colorama/tests/initialise_test.py | 189 + .../pip/_vendor/colorama/tests/isatty_test.py | 57 + .../pip/_vendor/colorama/tests/utils.py | 49 + .../_vendor/colorama/tests/winterm_test.py | 131 + .../pip/_vendor/colorama/win32.py | 180 + .../pip/_vendor/colorama/winterm.py | 195 + .../pip/_vendor/distlib/__init__.py | 33 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1239 bytes .../__pycache__/compat.cpython-312.pyc | Bin 0 -> 45575 bytes .../__pycache__/database.cpython-312.pyc | Bin 0 -> 65997 bytes .../distlib/__pycache__/index.cpython-312.pyc | Bin 0 -> 24336 bytes .../__pycache__/locators.cpython-312.pyc | Bin 0 -> 60128 bytes .../__pycache__/manifest.cpython-312.pyc | Bin 0 -> 15095 bytes .../__pycache__/markers.cpython-312.pyc | Bin 0 -> 7652 bytes .../__pycache__/metadata.cpython-312.pyc | Bin 0 -> 41769 bytes .../__pycache__/resources.cpython-312.pyc | Bin 0 -> 17295 bytes .../__pycache__/scripts.cpython-312.pyc | Bin 0 -> 19550 bytes .../distlib/__pycache__/util.cpython-312.pyc | Bin 0 -> 88226 bytes .../__pycache__/version.cpython-312.pyc | Bin 0 -> 30336 bytes .../distlib/__pycache__/wheel.cpython-312.pyc | Bin 0 -> 51831 bytes .../pip/_vendor/distlib/compat.py | 1138 +++ .../pip/_vendor/distlib/database.py | 1359 +++ .../pip/_vendor/distlib/index.py | 508 + .../pip/_vendor/distlib/locators.py | 1303 +++ .../pip/_vendor/distlib/manifest.py | 384 + .../pip/_vendor/distlib/markers.py | 167 + .../pip/_vendor/distlib/metadata.py | 1068 ++ .../pip/_vendor/distlib/resources.py | 358 + .../pip/_vendor/distlib/scripts.py | 452 + .../site-packages/pip/_vendor/distlib/t32.exe | Bin 0 -> 97792 bytes .../pip/_vendor/distlib/t64-arm.exe | Bin 0 -> 182784 bytes .../site-packages/pip/_vendor/distlib/t64.exe | Bin 0 -> 108032 bytes .../site-packages/pip/_vendor/distlib/util.py | 2025 ++++ .../pip/_vendor/distlib/version.py | 751 ++ .../site-packages/pip/_vendor/distlib/w32.exe | Bin 0 -> 91648 bytes .../pip/_vendor/distlib/w64-arm.exe | Bin 0 -> 168448 bytes .../site-packages/pip/_vendor/distlib/w64.exe | Bin 0 -> 101888 bytes .../pip/_vendor/distlib/wheel.py | 1099 ++ .../pip/_vendor/distro/__init__.py | 54 + .../pip/_vendor/distro/__main__.py | 4 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 930 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 262 bytes .../distro/__pycache__/distro.cpython-312.pyc | Bin 0 -> 53724 bytes .../pip/_vendor/distro/distro.py | 1399 +++ .../site-packages/pip/_vendor/distro/py.typed | 0 .../pip/_vendor/idna/__init__.py | 44 + .../idna/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 851 bytes .../idna/__pycache__/codec.cpython-312.pyc | Bin 0 -> 4603 bytes .../idna/__pycache__/compat.cpython-312.pyc | Bin 0 -> 857 bytes .../idna/__pycache__/core.cpython-312.pyc | Bin 0 -> 16252 bytes .../idna/__pycache__/idnadata.cpython-312.pyc | Bin 0 -> 38352 bytes .../__pycache__/intranges.cpython-312.pyc | Bin 0 -> 2608 bytes .../__pycache__/package_data.cpython-312.pyc | Bin 0 -> 186 bytes .../__pycache__/uts46data.cpython-312.pyc | Bin 0 -> 158840 bytes .../site-packages/pip/_vendor/idna/codec.py | 112 + .../site-packages/pip/_vendor/idna/compat.py | 13 + .../site-packages/pip/_vendor/idna/core.py | 400 + .../pip/_vendor/idna/idnadata.py | 2151 ++++ .../pip/_vendor/idna/intranges.py | 54 + .../pip/_vendor/idna/package_data.py | 2 + .../site-packages/pip/_vendor/idna/py.typed | 0 .../pip/_vendor/idna/uts46data.py | 8600 ++++++++++++++++ .../pip/_vendor/msgpack/__init__.py | 57 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1801 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 1995 bytes .../msgpack/__pycache__/ext.cpython-312.pyc | Bin 0 -> 8638 bytes .../__pycache__/fallback.cpython-312.pyc | Bin 0 -> 43546 bytes .../pip/_vendor/msgpack/exceptions.py | 48 + .../site-packages/pip/_vendor/msgpack/ext.py | 193 + .../pip/_vendor/msgpack/fallback.py | 1010 ++ .../pip/_vendor/packaging/__about__.py | 26 + .../pip/_vendor/packaging/__init__.py | 25 + .../__pycache__/__about__.cpython-312.pyc | Bin 0 -> 600 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 436 bytes .../__pycache__/_manylinux.cpython-312.pyc | Bin 0 -> 12046 bytes .../__pycache__/_musllinux.cpython-312.pyc | Bin 0 -> 6880 bytes .../__pycache__/_structures.cpython-312.pyc | Bin 0 -> 3211 bytes .../__pycache__/markers.cpython-312.pyc | Bin 0 -> 14028 bytes .../__pycache__/requirements.cpython-312.pyc | Bin 0 -> 6916 bytes .../__pycache__/specifiers.cpython-312.pyc | Bin 0 -> 31217 bytes .../__pycache__/tags.cpython-312.pyc | Bin 0 -> 18926 bytes .../__pycache__/utils.cpython-312.pyc | Bin 0 -> 5838 bytes .../__pycache__/version.cpython-312.pyc | Bin 0 -> 19909 bytes .../pip/_vendor/packaging/_manylinux.py | 301 + .../pip/_vendor/packaging/_musllinux.py | 136 + .../pip/_vendor/packaging/_structures.py | 61 + .../pip/_vendor/packaging/markers.py | 304 + .../pip/_vendor/packaging/py.typed | 0 .../pip/_vendor/packaging/requirements.py | 146 + .../pip/_vendor/packaging/specifiers.py | 802 ++ .../pip/_vendor/packaging/tags.py | 487 + .../pip/_vendor/packaging/utils.py | 136 + .../pip/_vendor/packaging/version.py | 504 + .../pip/_vendor/pkg_resources/__init__.py | 3361 +++++++ .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 146444 bytes .../pip/_vendor/platformdirs/__init__.py | 566 ++ .../pip/_vendor/platformdirs/__main__.py | 53 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 17999 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 1916 bytes .../__pycache__/android.cpython-312.pyc | Bin 0 -> 9414 bytes .../__pycache__/api.cpython-312.pyc | Bin 0 -> 9642 bytes .../__pycache__/macos.cpython-312.pyc | Bin 0 -> 5607 bytes .../__pycache__/unix.cpython-312.pyc | Bin 0 -> 12411 bytes .../__pycache__/version.cpython-312.pyc | Bin 0 -> 281 bytes .../__pycache__/windows.cpython-312.pyc | Bin 0 -> 12969 bytes .../pip/_vendor/platformdirs/android.py | 210 + .../pip/_vendor/platformdirs/api.py | 223 + .../pip/_vendor/platformdirs/macos.py | 91 + .../pip/_vendor/platformdirs/py.typed | 0 .../pip/_vendor/platformdirs/unix.py | 223 + .../pip/_vendor/platformdirs/version.py | 4 + .../pip/_vendor/platformdirs/windows.py | 255 + .../pip/_vendor/pygments/__init__.py | 82 + .../pip/_vendor/pygments/__main__.py | 17 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 3459 bytes .../__pycache__/__main__.cpython-312.pyc | Bin 0 -> 705 bytes .../__pycache__/cmdline.cpython-312.pyc | Bin 0 -> 26576 bytes .../__pycache__/console.cpython-312.pyc | Bin 0 -> 2597 bytes .../__pycache__/filter.cpython-312.pyc | Bin 0 -> 3203 bytes .../__pycache__/lexer.cpython-312.pyc | Bin 0 -> 38300 bytes .../__pycache__/modeline.cpython-312.pyc | Bin 0 -> 1539 bytes .../__pycache__/plugin.cpython-312.pyc | Bin 0 -> 3367 bytes .../__pycache__/regexopt.cpython-312.pyc | Bin 0 -> 4052 bytes .../__pycache__/style.cpython-312.pyc | Bin 0 -> 6645 bytes .../__pycache__/token.cpython-312.pyc | Bin 0 -> 8113 bytes .../pygments/__pycache__/util.cpython-312.pyc | Bin 0 -> 13952 bytes .../pip/_vendor/pygments/cmdline.py | 668 ++ .../pip/_vendor/pygments/console.py | 70 + .../pip/_vendor/pygments/filter.py | 71 + .../pip/_vendor/pygments/filters/__init__.py | 940 ++ .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 37907 bytes .../pip/_vendor/pygments/formatter.py | 124 + .../_vendor/pygments/formatters/__init__.py | 158 + .../_vendor/pygments/formatters/_mapping.py | 23 + .../pip/_vendor/pygments/formatters/bbcode.py | 108 + .../pip/_vendor/pygments/formatters/groff.py | 170 + .../pip/_vendor/pygments/formatters/html.py | 989 ++ .../pip/_vendor/pygments/formatters/img.py | 645 ++ .../pip/_vendor/pygments/formatters/irc.py | 154 + .../pip/_vendor/pygments/formatters/latex.py | 521 + .../pip/_vendor/pygments/formatters/other.py | 161 + .../pygments/formatters/pangomarkup.py | 83 + .../pip/_vendor/pygments/formatters/rtf.py | 146 + .../pip/_vendor/pygments/formatters/svg.py | 188 + .../_vendor/pygments/formatters/terminal.py | 127 + .../pygments/formatters/terminal256.py | 338 + .../pip/_vendor/pygments/lexer.py | 943 ++ .../pip/_vendor/pygments/lexers/__init__.py | 362 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 14623 bytes .../__pycache__/_mapping.cpython-312.pyc | Bin 0 -> 64375 bytes .../pip/_vendor/pygments/lexers/_mapping.py | 559 ++ .../pip/_vendor/pygments/lexers/python.py | 1198 +++ .../pip/_vendor/pygments/modeline.py | 43 + .../pip/_vendor/pygments/plugin.py | 88 + .../pip/_vendor/pygments/regexopt.py | 91 + .../pip/_vendor/pygments/scanner.py | 104 + .../pip/_vendor/pygments/sphinxext.py | 217 + .../pip/_vendor/pygments/style.py | 197 + .../pip/_vendor/pygments/styles/__init__.py | 103 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 4419 bytes .../pip/_vendor/pygments/token.py | 213 + .../pip/_vendor/pygments/unistring.py | 153 + .../pip/_vendor/pygments/util.py | 330 + .../pip/_vendor/pyparsing/__init__.py | 322 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 7882 bytes .../__pycache__/actions.cpython-312.pyc | Bin 0 -> 8366 bytes .../__pycache__/common.cpython-312.pyc | Bin 0 -> 13385 bytes .../__pycache__/core.cpython-312.pyc | Bin 0 -> 267679 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 12965 bytes .../__pycache__/helpers.cpython-312.pyc | Bin 0 -> 48472 bytes .../__pycache__/results.cpython-312.pyc | Bin 0 -> 34081 bytes .../__pycache__/testing.cpython-312.pyc | Bin 0 -> 17159 bytes .../__pycache__/unicode.cpython-312.pyc | Bin 0 -> 13155 bytes .../__pycache__/util.cpython-312.pyc | Bin 0 -> 14875 bytes .../pip/_vendor/pyparsing/actions.py | 217 + .../pip/_vendor/pyparsing/common.py | 432 + .../pip/_vendor/pyparsing/core.py | 6115 ++++++++++++ .../pip/_vendor/pyparsing/diagram/__init__.py | 656 ++ .../pip/_vendor/pyparsing/exceptions.py | 299 + .../pip/_vendor/pyparsing/helpers.py | 1100 ++ .../pip/_vendor/pyparsing/py.typed | 0 .../pip/_vendor/pyparsing/results.py | 796 ++ .../pip/_vendor/pyparsing/testing.py | 331 + .../pip/_vendor/pyparsing/unicode.py | 361 + .../pip/_vendor/pyparsing/util.py | 284 + .../pip/_vendor/pyproject_hooks/__init__.py | 23 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 584 bytes .../__pycache__/_impl.cpython-312.pyc | Bin 0 -> 14696 bytes .../pip/_vendor/pyproject_hooks/_compat.py | 8 + .../pip/_vendor/pyproject_hooks/_impl.py | 330 + .../pyproject_hooks/_in_process/__init__.py | 18 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1051 bytes .../_in_process/_in_process.py | 353 + .../pip/_vendor/requests/__init__.py | 182 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 5424 bytes .../__pycache__/__version__.cpython-312.pyc | Bin 0 -> 555 bytes .../_internal_utils.cpython-312.pyc | Bin 0 -> 1995 bytes .../__pycache__/adapters.cpython-312.pyc | Bin 0 -> 21251 bytes .../requests/__pycache__/api.cpython-312.pyc | Bin 0 -> 7175 bytes .../requests/__pycache__/auth.cpython-312.pyc | Bin 0 -> 13894 bytes .../__pycache__/certs.cpython-312.pyc | Bin 0 -> 893 bytes .../__pycache__/compat.cpython-312.pyc | Bin 0 -> 1478 bytes .../__pycache__/cookies.cpython-312.pyc | Bin 0 -> 25217 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 7018 bytes .../__pycache__/hooks.cpython-312.pyc | Bin 0 -> 1023 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 35419 bytes .../__pycache__/packages.cpython-312.pyc | Bin 0 -> 743 bytes .../__pycache__/sessions.cpython-312.pyc | Bin 0 -> 27728 bytes .../__pycache__/status_codes.cpython-312.pyc | Bin 0 -> 5930 bytes .../__pycache__/structures.cpython-312.pyc | Bin 0 -> 5588 bytes .../__pycache__/utils.cpython-312.pyc | Bin 0 -> 36240 bytes .../pip/_vendor/requests/__version__.py | 14 + .../pip/_vendor/requests/_internal_utils.py | 50 + .../pip/_vendor/requests/adapters.py | 538 + .../site-packages/pip/_vendor/requests/api.py | 157 + .../pip/_vendor/requests/auth.py | 315 + .../pip/_vendor/requests/certs.py | 24 + .../pip/_vendor/requests/compat.py | 67 + .../pip/_vendor/requests/cookies.py | 561 ++ .../pip/_vendor/requests/exceptions.py | 141 + .../pip/_vendor/requests/help.py | 131 + .../pip/_vendor/requests/hooks.py | 33 + .../pip/_vendor/requests/models.py | 1034 ++ .../pip/_vendor/requests/packages.py | 16 + .../pip/_vendor/requests/sessions.py | 833 ++ .../pip/_vendor/requests/status_codes.py | 128 + .../pip/_vendor/requests/structures.py | 99 + .../pip/_vendor/requests/utils.py | 1094 ++ .../pip/_vendor/resolvelib/__init__.py | 26 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 605 bytes .../__pycache__/providers.cpython-312.pyc | Bin 0 -> 6822 bytes .../__pycache__/reporters.cpython-312.pyc | Bin 0 -> 2625 bytes .../__pycache__/resolvers.cpython-312.pyc | Bin 0 -> 25868 bytes .../__pycache__/structs.cpython-312.pyc | Bin 0 -> 10477 bytes .../pip/_vendor/resolvelib/compat/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 171 bytes .../collections_abc.cpython-312.pyc | Bin 0 -> 391 bytes .../resolvelib/compat/collections_abc.py | 6 + .../pip/_vendor/resolvelib/providers.py | 133 + .../pip/_vendor/resolvelib/py.typed | 0 .../pip/_vendor/resolvelib/reporters.py | 43 + .../pip/_vendor/resolvelib/resolvers.py | 547 + .../pip/_vendor/resolvelib/structs.py | 170 + .../pip/_vendor/rich/__init__.py | 177 + .../pip/_vendor/rich/__main__.py | 274 + .../rich/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 6986 bytes .../__pycache__/_cell_widths.cpython-312.pyc | Bin 0 -> 7792 bytes .../__pycache__/_emoji_codes.cpython-312.pyc | Bin 0 -> 205947 bytes .../_emoji_replace.cpython-312.pyc | Bin 0 -> 1700 bytes .../_export_format.cpython-312.pyc | Bin 0 -> 2292 bytes .../__pycache__/_extension.cpython-312.pyc | Bin 0 -> 508 bytes .../rich/__pycache__/_fileno.cpython-312.pyc | Bin 0 -> 826 bytes .../__pycache__/_log_render.cpython-312.pyc | Bin 0 -> 4118 bytes .../rich/__pycache__/_loop.cpython-312.pyc | Bin 0 -> 1856 bytes .../__pycache__/_null_file.cpython-312.pyc | Bin 0 -> 3591 bytes .../__pycache__/_palettes.cpython-312.pyc | Bin 0 -> 5131 bytes .../rich/__pycache__/_pick.cpython-312.pyc | Bin 0 -> 697 bytes .../rich/__pycache__/_ratio.cpython-312.pyc | Bin 0 -> 6550 bytes .../__pycache__/_spinners.cpython-312.pyc | Bin 0 -> 13150 bytes .../_win32_console.cpython-312.pyc | Bin 0 -> 28947 bytes .../rich/__pycache__/_windows.cpython-312.pyc | Bin 0 -> 2461 bytes .../rich/__pycache__/_wrap.cpython-312.pyc | Bin 0 -> 2331 bytes .../rich/__pycache__/abc.cpython-312.pyc | Bin 0 -> 1579 bytes .../rich/__pycache__/align.cpython-312.pyc | Bin 0 -> 12293 bytes .../rich/__pycache__/ansi.cpython-312.pyc | Bin 0 -> 9077 bytes .../rich/__pycache__/box.cpython-312.pyc | Bin 0 -> 11829 bytes .../rich/__pycache__/cells.cpython-312.pyc | Bin 0 -> 5589 bytes .../rich/__pycache__/color.cpython-312.pyc | Bin 0 -> 26541 bytes .../__pycache__/color_triplet.cpython-312.pyc | Bin 0 -> 1672 bytes .../rich/__pycache__/columns.cpython-312.pyc | Bin 0 -> 8558 bytes .../rich/__pycache__/console.cpython-312.pyc | Bin 0 -> 113764 bytes .../__pycache__/constrain.cpython-312.pyc | Bin 0 -> 2229 bytes .../__pycache__/containers.cpython-312.pyc | Bin 0 -> 9197 bytes .../rich/__pycache__/control.cpython-312.pyc | Bin 0 -> 10900 bytes .../default_styles.cpython-312.pyc | Bin 0 -> 10344 bytes .../rich/__pycache__/emoji.cpython-312.pyc | Bin 0 -> 4180 bytes .../rich/__pycache__/errors.cpython-312.pyc | Bin 0 -> 1816 bytes .../__pycache__/file_proxy.cpython-312.pyc | Bin 0 -> 3548 bytes .../rich/__pycache__/filesize.cpython-312.pyc | Bin 0 -> 3053 bytes .../__pycache__/highlighter.cpython-312.pyc | Bin 0 -> 9869 bytes .../rich/__pycache__/jupyter.cpython-312.pyc | Bin 0 -> 5180 bytes .../rich/__pycache__/live.cpython-312.pyc | Bin 0 -> 19114 bytes .../__pycache__/live_render.cpython-312.pyc | Bin 0 -> 4865 bytes .../rich/__pycache__/logging.cpython-312.pyc | Bin 0 -> 13525 bytes .../rich/__pycache__/markup.cpython-312.pyc | Bin 0 -> 9269 bytes .../rich/__pycache__/measure.cpython-312.pyc | Bin 0 -> 6347 bytes .../rich/__pycache__/padding.cpython-312.pyc | Bin 0 -> 7105 bytes .../rich/__pycache__/pager.cpython-312.pyc | Bin 0 -> 1791 bytes .../rich/__pycache__/palette.cpython-312.pyc | Bin 0 -> 5285 bytes .../rich/__pycache__/panel.cpython-312.pyc | Bin 0 -> 12068 bytes .../rich/__pycache__/pretty.cpython-312.pyc | Bin 0 -> 40027 bytes .../rich/__pycache__/progress.cpython-312.pyc | Bin 0 -> 75049 bytes .../__pycache__/progress_bar.cpython-312.pyc | Bin 0 -> 10360 bytes .../rich/__pycache__/protocol.cpython-312.pyc | Bin 0 -> 1763 bytes .../rich/__pycache__/region.cpython-312.pyc | Bin 0 -> 538 bytes .../rich/__pycache__/repr.cpython-312.pyc | Bin 0 -> 6597 bytes .../rich/__pycache__/scope.cpython-312.pyc | Bin 0 -> 3801 bytes .../rich/__pycache__/screen.cpython-312.pyc | Bin 0 -> 2455 bytes .../rich/__pycache__/segment.cpython-312.pyc | Bin 0 -> 28132 bytes .../rich/__pycache__/spinner.cpython-312.pyc | Bin 0 -> 6035 bytes .../rich/__pycache__/style.cpython-312.pyc | Bin 0 -> 33485 bytes .../rich/__pycache__/styled.cpython-312.pyc | Bin 0 -> 2110 bytes .../rich/__pycache__/syntax.cpython-312.pyc | Bin 0 -> 39583 bytes .../rich/__pycache__/table.cpython-312.pyc | Bin 0 -> 43555 bytes .../terminal_theme.cpython-312.pyc | Bin 0 -> 3319 bytes .../rich/__pycache__/text.cpython-312.pyc | Bin 0 -> 58934 bytes .../rich/__pycache__/theme.cpython-312.pyc | Bin 0 -> 6311 bytes .../rich/__pycache__/themes.cpython-312.pyc | Bin 0 -> 285 bytes .../__pycache__/traceback.cpython-312.pyc | Bin 0 -> 31519 bytes .../pip/_vendor/rich/_cell_widths.py | 451 + .../pip/_vendor/rich/_emoji_codes.py | 3610 +++++++ .../pip/_vendor/rich/_emoji_replace.py | 32 + .../pip/_vendor/rich/_export_format.py | 76 + .../pip/_vendor/rich/_extension.py | 10 + .../site-packages/pip/_vendor/rich/_fileno.py | 24 + .../pip/_vendor/rich/_inspect.py | 270 + .../pip/_vendor/rich/_log_render.py | 94 + .../site-packages/pip/_vendor/rich/_loop.py | 43 + .../pip/_vendor/rich/_null_file.py | 69 + .../pip/_vendor/rich/_palettes.py | 309 + .../site-packages/pip/_vendor/rich/_pick.py | 17 + .../site-packages/pip/_vendor/rich/_ratio.py | 160 + .../pip/_vendor/rich/_spinners.py | 482 + .../site-packages/pip/_vendor/rich/_stack.py | 16 + .../site-packages/pip/_vendor/rich/_timer.py | 19 + .../pip/_vendor/rich/_win32_console.py | 662 ++ .../pip/_vendor/rich/_windows.py | 72 + .../pip/_vendor/rich/_windows_renderer.py | 56 + .../site-packages/pip/_vendor/rich/_wrap.py | 56 + .../Lib/site-packages/pip/_vendor/rich/abc.py | 33 + .../site-packages/pip/_vendor/rich/align.py | 311 + .../site-packages/pip/_vendor/rich/ansi.py | 240 + .../Lib/site-packages/pip/_vendor/rich/bar.py | 94 + .../Lib/site-packages/pip/_vendor/rich/box.py | 517 + .../site-packages/pip/_vendor/rich/cells.py | 154 + .../site-packages/pip/_vendor/rich/color.py | 622 ++ .../pip/_vendor/rich/color_triplet.py | 38 + .../site-packages/pip/_vendor/rich/columns.py | 187 + .../site-packages/pip/_vendor/rich/console.py | 2633 +++++ .../pip/_vendor/rich/constrain.py | 37 + .../pip/_vendor/rich/containers.py | 167 + .../site-packages/pip/_vendor/rich/control.py | 225 + .../pip/_vendor/rich/default_styles.py | 190 + .../pip/_vendor/rich/diagnose.py | 37 + .../site-packages/pip/_vendor/rich/emoji.py | 96 + .../site-packages/pip/_vendor/rich/errors.py | 34 + .../pip/_vendor/rich/file_proxy.py | 57 + .../pip/_vendor/rich/filesize.py | 89 + .../pip/_vendor/rich/highlighter.py | 232 + .../site-packages/pip/_vendor/rich/json.py | 140 + .../site-packages/pip/_vendor/rich/jupyter.py | 101 + .../site-packages/pip/_vendor/rich/layout.py | 443 + .../site-packages/pip/_vendor/rich/live.py | 375 + .../pip/_vendor/rich/live_render.py | 113 + .../site-packages/pip/_vendor/rich/logging.py | 289 + .../site-packages/pip/_vendor/rich/markup.py | 246 + .../site-packages/pip/_vendor/rich/measure.py | 151 + .../site-packages/pip/_vendor/rich/padding.py | 141 + .../site-packages/pip/_vendor/rich/pager.py | 34 + .../site-packages/pip/_vendor/rich/palette.py | 100 + .../site-packages/pip/_vendor/rich/panel.py | 308 + .../site-packages/pip/_vendor/rich/pretty.py | 994 ++ .../pip/_vendor/rich/progress.py | 1702 ++++ .../pip/_vendor/rich/progress_bar.py | 224 + .../site-packages/pip/_vendor/rich/prompt.py | 376 + .../pip/_vendor/rich/protocol.py | 42 + .../site-packages/pip/_vendor/rich/py.typed | 0 .../site-packages/pip/_vendor/rich/region.py | 10 + .../site-packages/pip/_vendor/rich/repr.py | 149 + .../site-packages/pip/_vendor/rich/rule.py | 130 + .../site-packages/pip/_vendor/rich/scope.py | 86 + .../site-packages/pip/_vendor/rich/screen.py | 54 + .../site-packages/pip/_vendor/rich/segment.py | 739 ++ .../site-packages/pip/_vendor/rich/spinner.py | 137 + .../site-packages/pip/_vendor/rich/status.py | 132 + .../site-packages/pip/_vendor/rich/style.py | 796 ++ .../site-packages/pip/_vendor/rich/styled.py | 42 + .../site-packages/pip/_vendor/rich/syntax.py | 948 ++ .../site-packages/pip/_vendor/rich/table.py | 1002 ++ .../pip/_vendor/rich/terminal_theme.py | 153 + .../site-packages/pip/_vendor/rich/text.py | 1307 +++ .../site-packages/pip/_vendor/rich/theme.py | 115 + .../site-packages/pip/_vendor/rich/themes.py | 5 + .../pip/_vendor/rich/traceback.py | 756 ++ .../site-packages/pip/_vendor/rich/tree.py | 251 + venv/Lib/site-packages/pip/_vendor/six.py | 998 ++ .../pip/_vendor/tenacity/__init__.py | 608 ++ .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 27057 bytes .../__pycache__/_asyncio.cpython-312.pyc | Bin 0 -> 4777 bytes .../__pycache__/_utils.cpython-312.pyc | Bin 0 -> 2286 bytes .../__pycache__/after.cpython-312.pyc | Bin 0 -> 1595 bytes .../__pycache__/before.cpython-312.pyc | Bin 0 -> 1435 bytes .../__pycache__/before_sleep.cpython-312.pyc | Bin 0 -> 2273 bytes .../tenacity/__pycache__/nap.cpython-312.pyc | Bin 0 -> 1383 bytes .../__pycache__/retry.cpython-312.pyc | Bin 0 -> 14252 bytes .../tenacity/__pycache__/stop.cpython-312.pyc | Bin 0 -> 5539 bytes .../tenacity/__pycache__/wait.cpython-312.pyc | Bin 0 -> 12384 bytes .../pip/_vendor/tenacity/_asyncio.py | 94 + .../pip/_vendor/tenacity/_utils.py | 76 + .../pip/_vendor/tenacity/after.py | 51 + .../pip/_vendor/tenacity/before.py | 46 + .../pip/_vendor/tenacity/before_sleep.py | 71 + .../site-packages/pip/_vendor/tenacity/nap.py | 43 + .../pip/_vendor/tenacity/py.typed | 0 .../pip/_vendor/tenacity/retry.py | 272 + .../pip/_vendor/tenacity/stop.py | 103 + .../pip/_vendor/tenacity/tornadoweb.py | 59 + .../pip/_vendor/tenacity/wait.py | 228 + .../pip/_vendor/tomli/__init__.py | 11 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 355 bytes .../tomli/__pycache__/_parser.cpython-312.pyc | Bin 0 -> 26898 bytes .../tomli/__pycache__/_re.cpython-312.pyc | Bin 0 -> 3879 bytes .../tomli/__pycache__/_types.cpython-312.pyc | Bin 0 -> 337 bytes .../pip/_vendor/tomli/_parser.py | 691 ++ .../site-packages/pip/_vendor/tomli/_re.py | 107 + .../site-packages/pip/_vendor/tomli/_types.py | 10 + .../site-packages/pip/_vendor/tomli/py.typed | 1 + .../pip/_vendor/truststore/__init__.py | 13 + .../pip/_vendor/truststore/_api.py | 302 + .../pip/_vendor/truststore/_macos.py | 501 + .../pip/_vendor/truststore/_openssl.py | 66 + .../pip/_vendor/truststore/_ssl_constants.py | 31 + .../pip/_vendor/truststore/_windows.py | 554 ++ .../pip/_vendor/truststore/py.typed | 0 .../pip/_vendor/typing_extensions.py | 3072 ++++++ .../pip/_vendor/urllib3/__init__.py | 102 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 3376 bytes .../__pycache__/_collections.cpython-312.pyc | Bin 0 -> 15902 bytes .../__pycache__/_version.cpython-312.pyc | Bin 0 -> 189 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 20378 bytes .../connectionpool.cpython-312.pyc | Bin 0 -> 36250 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 13464 bytes .../__pycache__/fields.cpython-312.pyc | Bin 0 -> 10384 bytes .../__pycache__/filepost.cpython-312.pyc | Bin 0 -> 3989 bytes .../__pycache__/poolmanager.cpython-312.pyc | Bin 0 -> 20273 bytes .../__pycache__/request.cpython-312.pyc | Bin 0 -> 7265 bytes .../__pycache__/response.cpython-312.pyc | Bin 0 -> 33939 bytes .../pip/_vendor/urllib3/_collections.py | 337 + .../pip/_vendor/urllib3/_version.py | 2 + .../pip/_vendor/urllib3/connection.py | 572 ++ .../pip/_vendor/urllib3/connectionpool.py | 1132 +++ .../pip/_vendor/urllib3/contrib/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 169 bytes .../_appengine_environ.cpython-312.pyc | Bin 0 -> 1819 bytes .../contrib/__pycache__/socks.cpython-312.pyc | Bin 0 -> 7482 bytes .../urllib3/contrib/_appengine_environ.py | 36 + .../contrib/_securetransport/__init__.py | 0 .../contrib/_securetransport/bindings.py | 519 + .../contrib/_securetransport/low_level.py | 397 + .../pip/_vendor/urllib3/contrib/appengine.py | 314 + .../pip/_vendor/urllib3/contrib/ntlmpool.py | 130 + .../pip/_vendor/urllib3/contrib/pyopenssl.py | 518 + .../urllib3/contrib/securetransport.py | 921 ++ .../pip/_vendor/urllib3/contrib/socks.py | 216 + .../pip/_vendor/urllib3/exceptions.py | 323 + .../pip/_vendor/urllib3/fields.py | 274 + .../pip/_vendor/urllib3/filepost.py | 98 + .../pip/_vendor/urllib3/packages/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 170 bytes .../packages/__pycache__/six.cpython-312.pyc | Bin 0 -> 41290 bytes .../urllib3/packages/backports/__init__.py | 0 .../urllib3/packages/backports/makefile.py | 51 + .../packages/backports/weakref_finalize.py | 155 + .../pip/_vendor/urllib3/packages/six.py | 1076 ++ .../pip/_vendor/urllib3/poolmanager.py | 537 + .../pip/_vendor/urllib3/request.py | 191 + .../pip/_vendor/urllib3/response.py | 879 ++ .../pip/_vendor/urllib3/util/__init__.py | 49 + .../util/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1117 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 4727 bytes .../util/__pycache__/proxy.cpython-312.pyc | Bin 0 -> 1523 bytes .../util/__pycache__/queue.cpython-312.pyc | Bin 0 -> 1323 bytes .../util/__pycache__/request.cpython-312.pyc | Bin 0 -> 4154 bytes .../util/__pycache__/response.cpython-312.pyc | Bin 0 -> 2960 bytes .../util/__pycache__/retry.cpython-312.pyc | Bin 0 -> 21668 bytes .../util/__pycache__/ssl_.cpython-312.pyc | Bin 0 -> 15074 bytes .../ssl_match_hostname.cpython-312.pyc | Bin 0 -> 5042 bytes .../__pycache__/ssltransport.cpython-312.pyc | Bin 0 -> 10743 bytes .../util/__pycache__/timeout.cpython-312.pyc | Bin 0 -> 11110 bytes .../util/__pycache__/url.cpython-312.pyc | Bin 0 -> 15766 bytes .../util/__pycache__/wait.cpython-312.pyc | Bin 0 -> 4374 bytes .../pip/_vendor/urllib3/util/connection.py | 149 + .../pip/_vendor/urllib3/util/proxy.py | 57 + .../pip/_vendor/urllib3/util/queue.py | 22 + .../pip/_vendor/urllib3/util/request.py | 137 + .../pip/_vendor/urllib3/util/response.py | 107 + .../pip/_vendor/urllib3/util/retry.py | 620 ++ .../pip/_vendor/urllib3/util/ssl_.py | 495 + .../urllib3/util/ssl_match_hostname.py | 159 + .../pip/_vendor/urllib3/util/ssltransport.py | 221 + .../pip/_vendor/urllib3/util/timeout.py | 271 + .../pip/_vendor/urllib3/util/url.py | 435 + .../pip/_vendor/urllib3/util/wait.py | 152 + venv/Lib/site-packages/pip/_vendor/vendor.txt | 24 + .../pip/_vendor/webencodings/__init__.py | 342 + .../pip/_vendor/webencodings/labels.py | 231 + .../pip/_vendor/webencodings/mklabels.py | 59 + .../pip/_vendor/webencodings/tests.py | 153 + .../_vendor/webencodings/x_user_defined.py | 325 + venv/Lib/site-packages/pip/py.typed | 4 + .../requests-2.32.5.dist-info/INSTALLER | 1 + .../requests-2.32.5.dist-info/METADATA | 133 + .../requests-2.32.5.dist-info/RECORD | 43 + .../requests-2.32.5.dist-info/REQUESTED | 0 .../requests-2.32.5.dist-info/WHEEL | 5 + .../licenses/LICENSE | 175 + .../requests-2.32.5.dist-info/top_level.txt | 1 + venv/Lib/site-packages/requests/__init__.py | 184 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 5379 bytes .../__pycache__/__version__.cpython-312.pyc | Bin 0 -> 543 bytes .../_internal_utils.cpython-312.pyc | Bin 0 -> 1983 bytes .../__pycache__/adapters.cpython-312.pyc | Bin 0 -> 27770 bytes .../requests/__pycache__/api.cpython-312.pyc | Bin 0 -> 7163 bytes .../requests/__pycache__/auth.cpython-312.pyc | Bin 0 -> 13882 bytes .../__pycache__/certs.cpython-312.pyc | Bin 0 -> 625 bytes .../__pycache__/compat.cpython-312.pyc | Bin 0 -> 2339 bytes .../__pycache__/cookies.cpython-312.pyc | Bin 0 -> 25235 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 7544 bytes .../requests/__pycache__/help.cpython-312.pyc | Bin 0 -> 4286 bytes .../__pycache__/hooks.cpython-312.pyc | Bin 0 -> 1011 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 35460 bytes .../__pycache__/packages.cpython-312.pyc | Bin 0 -> 1098 bytes .../__pycache__/sessions.cpython-312.pyc | Bin 0 -> 27849 bytes .../__pycache__/status_codes.cpython-312.pyc | Bin 0 -> 5990 bytes .../__pycache__/structures.cpython-312.pyc | Bin 0 -> 5576 bytes .../__pycache__/utils.cpython-312.pyc | Bin 0 -> 36137 bytes .../Lib/site-packages/requests/__version__.py | 14 + .../site-packages/requests/_internal_utils.py | 50 + venv/Lib/site-packages/requests/adapters.py | 696 ++ venv/Lib/site-packages/requests/api.py | 157 + venv/Lib/site-packages/requests/auth.py | 314 + venv/Lib/site-packages/requests/certs.py | 17 + venv/Lib/site-packages/requests/compat.py | 106 + venv/Lib/site-packages/requests/cookies.py | 561 ++ venv/Lib/site-packages/requests/exceptions.py | 151 + venv/Lib/site-packages/requests/help.py | 134 + venv/Lib/site-packages/requests/hooks.py | 33 + venv/Lib/site-packages/requests/models.py | 1039 ++ venv/Lib/site-packages/requests/packages.py | 23 + venv/Lib/site-packages/requests/sessions.py | 831 ++ .../site-packages/requests/status_codes.py | 128 + venv/Lib/site-packages/requests/structures.py | 99 + venv/Lib/site-packages/requests/utils.py | 1086 ++ .../urllib3-2.6.3.dist-info/INSTALLER | 1 + .../urllib3-2.6.3.dist-info/METADATA | 164 + .../urllib3-2.6.3.dist-info/RECORD | 79 + .../urllib3-2.6.3.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 21 + venv/Lib/site-packages/urllib3/__init__.py | 211 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 7274 bytes .../_base_connection.cpython-312.pyc | Bin 0 -> 6812 bytes .../__pycache__/_collections.cpython-312.pyc | Bin 0 -> 22963 bytes .../_request_methods.cpython-312.pyc | Bin 0 -> 10566 bytes .../__pycache__/_version.cpython-312.pyc | Bin 0 -> 757 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 38884 bytes .../connectionpool.cpython-312.pyc | Bin 0 -> 39699 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 16575 bytes .../__pycache__/fields.cpython-312.pyc | Bin 0 -> 11986 bytes .../__pycache__/filepost.cpython-312.pyc | Bin 0 -> 3453 bytes .../__pycache__/poolmanager.cpython-312.pyc | Bin 0 -> 24302 bytes .../__pycache__/response.cpython-312.pyc | Bin 0 -> 57454 bytes .../site-packages/urllib3/_base_connection.py | 165 + .../Lib/site-packages/urllib3/_collections.py | 487 + .../site-packages/urllib3/_request_methods.py | 278 + venv/Lib/site-packages/urllib3/_version.py | 34 + venv/Lib/site-packages/urllib3/connection.py | 1099 ++ .../site-packages/urllib3/connectionpool.py | 1178 +++ .../site-packages/urllib3/contrib/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 157 bytes .../__pycache__/pyopenssl.cpython-312.pyc | Bin 0 -> 28180 bytes .../contrib/__pycache__/socks.cpython-312.pyc | Bin 0 -> 8135 bytes .../urllib3/contrib/emscripten/__init__.py | 17 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 954 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 10351 bytes .../__pycache__/fetch.cpython-312.pyc | Bin 0 -> 28602 bytes .../__pycache__/request.cpython-312.pyc | Bin 0 -> 1385 bytes .../__pycache__/response.cpython-312.pyc | Bin 0 -> 12179 bytes .../urllib3/contrib/emscripten/connection.py | 260 + .../emscripten/emscripten_fetch_worker.js | 110 + .../urllib3/contrib/emscripten/fetch.py | 726 ++ .../urllib3/contrib/emscripten/request.py | 22 + .../urllib3/contrib/emscripten/response.py | 277 + .../urllib3/contrib/pyopenssl.py | 564 ++ .../site-packages/urllib3/contrib/socks.py | 228 + venv/Lib/site-packages/urllib3/exceptions.py | 335 + venv/Lib/site-packages/urllib3/fields.py | 341 + venv/Lib/site-packages/urllib3/filepost.py | 89 + .../site-packages/urllib3/http2/__init__.py | 53 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 1710 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 17017 bytes .../http2/__pycache__/probe.cpython-312.pyc | Bin 0 -> 3661 bytes .../site-packages/urllib3/http2/connection.py | 356 + venv/Lib/site-packages/urllib3/http2/probe.py | 87 + venv/Lib/site-packages/urllib3/poolmanager.py | 651 ++ venv/Lib/site-packages/urllib3/py.typed | 2 + venv/Lib/site-packages/urllib3/response.py | 1480 +++ .../site-packages/urllib3/util/__init__.py | 42 + .../util/__pycache__/__init__.cpython-312.pyc | Bin 0 -> 970 bytes .../__pycache__/connection.cpython-312.pyc | Bin 0 -> 4660 bytes .../util/__pycache__/proxy.cpython-312.pyc | Bin 0 -> 1182 bytes .../util/__pycache__/request.cpython-312.pyc | Bin 0 -> 8306 bytes .../util/__pycache__/response.cpython-312.pyc | Bin 0 -> 2838 bytes .../util/__pycache__/retry.cpython-312.pyc | Bin 0 -> 20798 bytes .../util/__pycache__/ssl_.cpython-312.pyc | Bin 0 -> 17284 bytes .../ssl_match_hostname.cpython-312.pyc | Bin 0 -> 5522 bytes .../__pycache__/ssltransport.cpython-312.pyc | Bin 0 -> 13289 bytes .../util/__pycache__/timeout.cpython-312.pyc | Bin 0 -> 11654 bytes .../util/__pycache__/url.cpython-312.pyc | Bin 0 -> 16191 bytes .../util/__pycache__/util.cpython-312.pyc | Bin 0 -> 1959 bytes .../util/__pycache__/wait.cpython-312.pyc | Bin 0 -> 3405 bytes .../site-packages/urllib3/util/connection.py | 137 + venv/Lib/site-packages/urllib3/util/proxy.py | 43 + .../Lib/site-packages/urllib3/util/request.py | 263 + .../site-packages/urllib3/util/response.py | 101 + venv/Lib/site-packages/urllib3/util/retry.py | 549 + venv/Lib/site-packages/urllib3/util/ssl_.py | 527 + .../urllib3/util/ssl_match_hostname.py | 159 + .../urllib3/util/ssltransport.py | 271 + .../Lib/site-packages/urllib3/util/timeout.py | 275 + venv/Lib/site-packages/urllib3/util/url.py | 469 + venv/Lib/site-packages/urllib3/util/util.py | 42 + venv/Lib/site-packages/urllib3/util/wait.py | 124 + .../werkzeug-3.1.5.dist-info/INSTALLER | 1 + .../werkzeug-3.1.5.dist-info/METADATA | 109 + .../werkzeug-3.1.5.dist-info/RECORD | 116 + .../werkzeug-3.1.5.dist-info/WHEEL | 4 + .../licenses/LICENSE.txt | 28 + venv/Lib/site-packages/werkzeug/__init__.py | 4 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 304 bytes .../__pycache__/_internal.cpython-312.pyc | Bin 0 -> 9717 bytes .../__pycache__/_reloader.cpython-312.pyc | Bin 0 -> 20888 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 33983 bytes .../__pycache__/formparser.cpython-312.pyc | Bin 0 -> 16990 bytes .../werkzeug/__pycache__/http.cpython-312.pyc | Bin 0 -> 50215 bytes .../__pycache__/local.cpython-312.pyc | Bin 0 -> 28445 bytes .../__pycache__/security.cpython-312.pyc | Bin 0 -> 8054 bytes .../__pycache__/serving.cpython-312.pyc | Bin 0 -> 46061 bytes .../werkzeug/__pycache__/test.cpython-312.pyc | Bin 0 -> 59834 bytes .../__pycache__/testapp.cpython-312.pyc | Bin 0 -> 8855 bytes .../werkzeug/__pycache__/urls.cpython-312.pyc | Bin 0 -> 8234 bytes .../__pycache__/user_agent.cpython-312.pyc | Bin 0 -> 2117 bytes .../__pycache__/utils.cpython-312.pyc | Bin 0 -> 27694 bytes .../werkzeug/__pycache__/wsgi.cpython-312.pyc | Bin 0 -> 25180 bytes venv/Lib/site-packages/werkzeug/_internal.py | 211 + venv/Lib/site-packages/werkzeug/_reloader.py | 465 + .../werkzeug/datastructures/__init__.py | 64 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 2381 bytes .../__pycache__/accept.cpython-312.pyc | Bin 0 -> 15908 bytes .../__pycache__/auth.cpython-312.pyc | Bin 0 -> 14423 bytes .../__pycache__/cache_control.cpython-312.pyc | Bin 0 -> 12190 bytes .../__pycache__/csp.cpython-312.pyc | Bin 0 -> 6151 bytes .../__pycache__/etag.cpython-312.pyc | Bin 0 -> 5366 bytes .../__pycache__/file_storage.cpython-312.pyc | Bin 0 -> 8788 bytes .../__pycache__/headers.cpython-312.pyc | Bin 0 -> 30484 bytes .../__pycache__/mixins.cpython-312.pyc | Bin 0 -> 16364 bytes .../__pycache__/range.cpython-312.pyc | Bin 0 -> 10019 bytes .../__pycache__/structures.cpython-312.pyc | Bin 0 -> 59078 bytes .../werkzeug/datastructures/accept.py | 350 + .../werkzeug/datastructures/auth.py | 317 + .../werkzeug/datastructures/cache_control.py | 273 + .../werkzeug/datastructures/csp.py | 100 + .../werkzeug/datastructures/etag.py | 106 + .../werkzeug/datastructures/file_storage.py | 209 + .../werkzeug/datastructures/headers.py | 662 ++ .../werkzeug/datastructures/mixins.py | 317 + .../werkzeug/datastructures/range.py | 214 + .../werkzeug/datastructures/structures.py | 1239 +++ .../site-packages/werkzeug/debug/__init__.py | 574 ++ .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 23570 bytes .../debug/__pycache__/console.cpython-312.pyc | Bin 0 -> 11601 bytes .../debug/__pycache__/repr.cpython-312.pyc | Bin 0 -> 13774 bytes .../debug/__pycache__/tbtools.cpython-312.pyc | Bin 0 -> 17006 bytes .../site-packages/werkzeug/debug/console.py | 219 + venv/Lib/site-packages/werkzeug/debug/repr.py | 282 + .../werkzeug/debug/shared/ICON_LICENSE.md | 6 + .../werkzeug/debug/shared/console.png | Bin 0 -> 507 bytes .../werkzeug/debug/shared/debugger.js | 344 + .../werkzeug/debug/shared/less.png | Bin 0 -> 191 bytes .../werkzeug/debug/shared/more.png | Bin 0 -> 200 bytes .../werkzeug/debug/shared/style.css | 150 + .../site-packages/werkzeug/debug/tbtools.py | 449 + venv/Lib/site-packages/werkzeug/exceptions.py | 905 ++ venv/Lib/site-packages/werkzeug/formparser.py | 430 + venv/Lib/site-packages/werkzeug/http.py | 1405 +++ venv/Lib/site-packages/werkzeug/local.py | 653 ++ .../werkzeug/middleware/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 161 bytes .../__pycache__/dispatcher.cpython-312.pyc | Bin 0 -> 3279 bytes .../__pycache__/http_proxy.cpython-312.pyc | Bin 0 -> 9371 bytes .../__pycache__/lint.cpython-312.pyc | Bin 0 -> 17741 bytes .../__pycache__/profiler.cpython-312.pyc | Bin 0 -> 7165 bytes .../__pycache__/proxy_fix.cpython-312.pyc | Bin 0 -> 7162 bytes .../__pycache__/shared_data.cpython-312.pyc | Bin 0 -> 12717 bytes .../werkzeug/middleware/dispatcher.py | 81 + .../werkzeug/middleware/http_proxy.py | 236 + .../site-packages/werkzeug/middleware/lint.py | 439 + .../werkzeug/middleware/profiler.py | 155 + .../werkzeug/middleware/proxy_fix.py | 183 + .../werkzeug/middleware/shared_data.py | 283 + venv/Lib/site-packages/werkzeug/py.typed | 0 .../werkzeug/routing/__init__.py | 134 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 4634 bytes .../__pycache__/converters.cpython-312.pyc | Bin 0 -> 10874 bytes .../__pycache__/exceptions.cpython-312.pyc | Bin 0 -> 7877 bytes .../routing/__pycache__/map.cpython-312.pyc | Bin 0 -> 39803 bytes .../__pycache__/matcher.cpython-312.pyc | Bin 0 -> 8245 bytes .../routing/__pycache__/rules.cpython-312.pyc | Bin 0 -> 39136 bytes .../werkzeug/routing/converters.py | 261 + .../werkzeug/routing/exceptions.py | 152 + .../Lib/site-packages/werkzeug/routing/map.py | 951 ++ .../site-packages/werkzeug/routing/matcher.py | 202 + .../site-packages/werkzeug/routing/rules.py | 928 ++ .../site-packages/werkzeug/sansio/__init__.py | 0 .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 157 bytes .../sansio/__pycache__/http.cpython-312.pyc | Bin 0 -> 5608 bytes .../__pycache__/multipart.cpython-312.pyc | Bin 0 -> 14234 bytes .../__pycache__/request.cpython-312.pyc | Bin 0 -> 21850 bytes .../__pycache__/response.cpython-312.pyc | Bin 0 -> 31702 bytes .../sansio/__pycache__/utils.cpython-312.pyc | Bin 0 -> 6147 bytes .../Lib/site-packages/werkzeug/sansio/http.py | 170 + .../werkzeug/sansio/multipart.py | 329 + .../site-packages/werkzeug/sansio/request.py | 534 + .../site-packages/werkzeug/sansio/response.py | 763 ++ .../site-packages/werkzeug/sansio/utils.py | 167 + venv/Lib/site-packages/werkzeug/security.py | 188 + venv/Lib/site-packages/werkzeug/serving.py | 1125 +++ venv/Lib/site-packages/werkzeug/test.py | 1464 +++ venv/Lib/site-packages/werkzeug/testapp.py | 194 + venv/Lib/site-packages/werkzeug/urls.py | 203 + venv/Lib/site-packages/werkzeug/user_agent.py | 47 + venv/Lib/site-packages/werkzeug/utils.py | 684 ++ .../werkzeug/wrappers/__init__.py | 3 + .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 281 bytes .../__pycache__/request.cpython-312.pyc | Bin 0 -> 26111 bytes .../__pycache__/response.cpython-312.pyc | Bin 0 -> 34536 bytes .../werkzeug/wrappers/request.py | 650 ++ .../werkzeug/wrappers/response.py | 831 ++ venv/Lib/site-packages/werkzeug/wsgi.py | 595 ++ venv/Scripts/flask.exe | Bin 0 -> 108379 bytes venv/Scripts/normalizer.exe | Bin 0 -> 108404 bytes venv/Scripts/python.exe | Bin 0 -> 274712 bytes venv/Scripts/pythonw.exe | Bin 0 -> 263448 bytes venv/pyvenv.cfg | 5 + 1620 files changed, 297804 insertions(+) create mode 100644 .agent/workflows/ui-ux-pro-max.md create mode 100644 .shared/ui-ux-pro-max/data/charts.csv create mode 100644 .shared/ui-ux-pro-max/data/colors.csv create mode 100644 .shared/ui-ux-pro-max/data/landing.csv create mode 100644 .shared/ui-ux-pro-max/data/products.csv create mode 100644 .shared/ui-ux-pro-max/data/prompts.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/flutter.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/html-tailwind.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/nextjs.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/nuxtjs.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/react-native.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/react.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/svelte.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/swiftui.csv create mode 100644 .shared/ui-ux-pro-max/data/stacks/vue.csv create mode 100644 .shared/ui-ux-pro-max/data/styles.csv create mode 100644 .shared/ui-ux-pro-max/data/typography.csv create mode 100644 .shared/ui-ux-pro-max/data/ux-guidelines.csv create mode 100644 .shared/ui-ux-pro-max/scripts/__pycache__/core.cpython-312.pyc create mode 100644 .shared/ui-ux-pro-max/scripts/core.py create mode 100644 .shared/ui-ux-pro-max/scripts/search.py create mode 100644 __pycache__/config.cpython-312.pyc create mode 100644 __pycache__/database.cpython-312.pyc create mode 100644 __pycache__/node_engine.cpython-312.pyc create mode 100644 app.py create mode 100644 config.py create mode 100644 configs/nodes/image_preview.json create mode 100644 configs/nodes/image_upload.json create mode 100644 configs/nodes/nano_banana.json create mode 100644 configs/nodes/sys_dict_api.json create mode 100644 configs/nodes/text_input.json create mode 100644 database.py create mode 100644 node_engine.py create mode 100644 noirflow.db create mode 100644 static/css/style.css create mode 100644 static/uploads/upload_027569d2_image.png create mode 100644 static/uploads/upload_08b012c5_image.png create mode 100644 static/uploads/upload_09deb06d_image.png create mode 100644 static/uploads/upload_0cd3bff0_image.png create mode 100644 static/uploads/upload_0e89c895_image.png create mode 100644 static/uploads/upload_10f3510c_image.png create mode 100644 static/uploads/upload_13f7dd75_image.png create mode 100644 static/uploads/upload_1534a21b_image.png create mode 100644 static/uploads/upload_22ee24b3_image.png create mode 100644 static/uploads/upload_26353bd1_image.png create mode 100644 static/uploads/upload_26b6b99a_image.png create mode 100644 static/uploads/upload_2bd5a206_6bcf334b7205ca1aff8c8945f366ac5a.png create mode 100644 static/uploads/upload_2c164822_image.png create mode 100644 static/uploads/upload_2dc4189c_image.png create mode 100644 static/uploads/upload_31dead0d_image.png create mode 100644 static/uploads/upload_33080fb2_image.png create mode 100644 static/uploads/upload_34eb3a97_image.png create mode 100644 static/uploads/upload_38dccb87_image.png create mode 100644 static/uploads/upload_3a67d002_image.png create mode 100644 static/uploads/upload_420fcd43_30258318-f06ababedb4ba1f25f18fd4c7148043caebd23b02a965c28822ca886417fca8f.webp create mode 100644 static/uploads/upload_461070e6_image.png create mode 100644 static/uploads/upload_471bd313_image.png create mode 100644 static/uploads/upload_475d7c31_image.png create mode 100644 static/uploads/upload_4c41922b_image.png create mode 100644 static/uploads/upload_534b80f5_image.png create mode 100644 static/uploads/upload_53640b93_image.png create mode 100644 static/uploads/upload_53d8a1c8_image.png create mode 100644 static/uploads/upload_552e5f4a_image.png create mode 100644 static/uploads/upload_55d207b0_1.gif create mode 100644 static/uploads/upload_59fa3ed8_image.png create mode 100644 static/uploads/upload_5b34efb2_1.gif create mode 100644 static/uploads/upload_5e1b7c7d_image.png create mode 100644 static/uploads/upload_62fb00f3_image.png create mode 100644 static/uploads/upload_64a98abb_0.png create mode 100644 static/uploads/upload_72c277af_image.png create mode 100644 static/uploads/upload_7a30cd2d_0.png create mode 100644 static/uploads/upload_7bce4bcc_image.png create mode 100644 static/uploads/upload_8bda7a45_image.png create mode 100644 static/uploads/upload_8de118a9_image.png create mode 100644 static/uploads/upload_8de83dec_image.png create mode 100644 static/uploads/upload_913d0d39_image.png create mode 100644 static/uploads/upload_95aff1e8_image.png create mode 100644 static/uploads/upload_96e8917c_image.png create mode 100644 static/uploads/upload_9913d4bf_0.png create mode 100644 static/uploads/upload_9de0d05f_0.png create mode 100644 static/uploads/upload_a17bfc23_image.png create mode 100644 static/uploads/upload_a7149f30_image.png create mode 100644 static/uploads/upload_a72d3b0e_image.png create mode 100644 static/uploads/upload_ad2b62a8_image.png create mode 100644 static/uploads/upload_af082bd7_0.png create mode 100644 static/uploads/upload_af1b837e_image.png create mode 100644 static/uploads/upload_b00f8491_image.png create mode 100644 static/uploads/upload_b1d1741c_0.png create mode 100644 static/uploads/upload_b3139f03_image.png create mode 100644 static/uploads/upload_bbdc0c3b_image.png create mode 100644 static/uploads/upload_bffbd264_image.png create mode 100644 static/uploads/upload_c01012be_image.png create mode 100644 static/uploads/upload_c08f3e62_image.png create mode 100644 static/uploads/upload_c9f8d1cb_image.png create mode 100644 static/uploads/upload_ca37c3be_image.png create mode 100644 static/uploads/upload_ca694730_image.png create mode 100644 static/uploads/upload_cbfc9184_image.png create mode 100644 static/uploads/upload_ced25e77_image.png create mode 100644 static/uploads/upload_cf7a17d7_image.png create mode 100644 static/uploads/upload_d3dd73e2_image.png create mode 100644 static/uploads/upload_d6713658_image.png create mode 100644 static/uploads/upload_d8970d52_image.png create mode 100644 static/uploads/upload_dac62892_image.png create mode 100644 static/uploads/upload_dc2589da_0.png create mode 100644 static/uploads/upload_eb4d9232_image.png create mode 100644 static/uploads/upload_eb8722b2_image.png create mode 100644 static/uploads/upload_ec7dda37_0.png create mode 100644 static/uploads/upload_f66614f7_image.png create mode 100644 static/uploads/upload_ff162729_image.png create mode 100644 static/uploads/upload_ff4c5182_image.png create mode 100644 templates/base.html create mode 100644 templates/board.html create mode 100644 templates/components/node_macro.html create mode 100644 templates/partials/node.html create mode 100644 venv/Lib/site-packages/blinker-1.9.0.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/blinker-1.9.0.dist-info/LICENSE.txt create mode 100644 venv/Lib/site-packages/blinker-1.9.0.dist-info/METADATA create mode 100644 venv/Lib/site-packages/blinker-1.9.0.dist-info/RECORD create mode 100644 venv/Lib/site-packages/blinker-1.9.0.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/blinker/__init__.py create mode 100644 venv/Lib/site-packages/blinker/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/blinker/__pycache__/_utilities.cpython-312.pyc create mode 100644 venv/Lib/site-packages/blinker/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/blinker/_utilities.py create mode 100644 venv/Lib/site-packages/blinker/base.py create mode 100644 venv/Lib/site-packages/blinker/py.typed create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/METADATA create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/RECORD create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/licenses/LICENSE create mode 100644 venv/Lib/site-packages/certifi-2026.1.4.dist-info/top_level.txt create mode 100644 venv/Lib/site-packages/certifi/__init__.py create mode 100644 venv/Lib/site-packages/certifi/__main__.py create mode 100644 venv/Lib/site-packages/certifi/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/certifi/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/certifi/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/certifi/cacert.pem create mode 100644 venv/Lib/site-packages/certifi/core.py create mode 100644 venv/Lib/site-packages/certifi/py.typed create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/METADATA create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/RECORD create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/entry_points.txt create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/licenses/LICENSE create mode 100644 venv/Lib/site-packages/charset_normalizer-3.4.4.dist-info/top_level.txt create mode 100644 venv/Lib/site-packages/charset_normalizer/__init__.py create mode 100644 venv/Lib/site-packages/charset_normalizer/__main__.py create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/api.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/cd.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/constant.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/legacy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/md.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/models.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/__pycache__/version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/api.py create mode 100644 venv/Lib/site-packages/charset_normalizer/cd.py create mode 100644 venv/Lib/site-packages/charset_normalizer/cli/__init__.py create mode 100644 venv/Lib/site-packages/charset_normalizer/cli/__main__.py create mode 100644 venv/Lib/site-packages/charset_normalizer/cli/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/cli/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/charset_normalizer/constant.py create mode 100644 venv/Lib/site-packages/charset_normalizer/legacy.py create mode 100644 venv/Lib/site-packages/charset_normalizer/md.cp312-win_amd64.pyd create mode 100644 venv/Lib/site-packages/charset_normalizer/md.py create mode 100644 venv/Lib/site-packages/charset_normalizer/md__mypyc.cp312-win_amd64.pyd create mode 100644 venv/Lib/site-packages/charset_normalizer/models.py create mode 100644 venv/Lib/site-packages/charset_normalizer/py.typed create mode 100644 venv/Lib/site-packages/charset_normalizer/utils.py create mode 100644 venv/Lib/site-packages/charset_normalizer/version.py create mode 100644 venv/Lib/site-packages/click-8.3.1.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/click-8.3.1.dist-info/METADATA create mode 100644 venv/Lib/site-packages/click-8.3.1.dist-info/RECORD create mode 100644 venv/Lib/site-packages/click-8.3.1.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/click-8.3.1.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/click/__init__.py create mode 100644 venv/Lib/site-packages/click/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/_compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/_termui_impl.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/_textwrap.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/_utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/_winconsole.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/decorators.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/formatting.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/globals.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/parser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/shell_completion.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/termui.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/testing.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/types.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/click/_compat.py create mode 100644 venv/Lib/site-packages/click/_termui_impl.py create mode 100644 venv/Lib/site-packages/click/_textwrap.py create mode 100644 venv/Lib/site-packages/click/_utils.py create mode 100644 venv/Lib/site-packages/click/_winconsole.py create mode 100644 venv/Lib/site-packages/click/core.py create mode 100644 venv/Lib/site-packages/click/decorators.py create mode 100644 venv/Lib/site-packages/click/exceptions.py create mode 100644 venv/Lib/site-packages/click/formatting.py create mode 100644 venv/Lib/site-packages/click/globals.py create mode 100644 venv/Lib/site-packages/click/parser.py create mode 100644 venv/Lib/site-packages/click/py.typed create mode 100644 venv/Lib/site-packages/click/shell_completion.py create mode 100644 venv/Lib/site-packages/click/termui.py create mode 100644 venv/Lib/site-packages/click/testing.py create mode 100644 venv/Lib/site-packages/click/types.py create mode 100644 venv/Lib/site-packages/click/utils.py create mode 100644 venv/Lib/site-packages/colorama-0.4.6.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/colorama-0.4.6.dist-info/METADATA create mode 100644 venv/Lib/site-packages/colorama-0.4.6.dist-info/RECORD create mode 100644 venv/Lib/site-packages/colorama-0.4.6.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/colorama-0.4.6.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/colorama/__init__.py create mode 100644 venv/Lib/site-packages/colorama/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/__pycache__/ansi.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/__pycache__/ansitowin32.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/__pycache__/initialise.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/__pycache__/win32.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/__pycache__/winterm.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/ansi.py create mode 100644 venv/Lib/site-packages/colorama/ansitowin32.py create mode 100644 venv/Lib/site-packages/colorama/initialise.py create mode 100644 venv/Lib/site-packages/colorama/tests/__init__.py create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/ansi_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/ansitowin32_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/initialise_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/isatty_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/__pycache__/winterm_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/colorama/tests/ansi_test.py create mode 100644 venv/Lib/site-packages/colorama/tests/ansitowin32_test.py create mode 100644 venv/Lib/site-packages/colorama/tests/initialise_test.py create mode 100644 venv/Lib/site-packages/colorama/tests/isatty_test.py create mode 100644 venv/Lib/site-packages/colorama/tests/utils.py create mode 100644 venv/Lib/site-packages/colorama/tests/winterm_test.py create mode 100644 venv/Lib/site-packages/colorama/win32.py create mode 100644 venv/Lib/site-packages/colorama/winterm.py create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/METADATA create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/RECORD create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/REQUESTED create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/entry_points.txt create mode 100644 venv/Lib/site-packages/flask-3.1.2.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/flask/__init__.py create mode 100644 venv/Lib/site-packages/flask/__main__.py create mode 100644 venv/Lib/site-packages/flask/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/app.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/blueprints.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/cli.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/config.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/ctx.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/debughelpers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/globals.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/helpers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/logging.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/sessions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/signals.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/templating.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/testing.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/typing.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/views.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/__pycache__/wrappers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/app.py create mode 100644 venv/Lib/site-packages/flask/blueprints.py create mode 100644 venv/Lib/site-packages/flask/cli.py create mode 100644 venv/Lib/site-packages/flask/config.py create mode 100644 venv/Lib/site-packages/flask/ctx.py create mode 100644 venv/Lib/site-packages/flask/debughelpers.py create mode 100644 venv/Lib/site-packages/flask/globals.py create mode 100644 venv/Lib/site-packages/flask/helpers.py create mode 100644 venv/Lib/site-packages/flask/json/__init__.py create mode 100644 venv/Lib/site-packages/flask/json/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/json/__pycache__/provider.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/json/__pycache__/tag.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/json/provider.py create mode 100644 venv/Lib/site-packages/flask/json/tag.py create mode 100644 venv/Lib/site-packages/flask/logging.py create mode 100644 venv/Lib/site-packages/flask/py.typed create mode 100644 venv/Lib/site-packages/flask/sansio/README.md create mode 100644 venv/Lib/site-packages/flask/sansio/__pycache__/app.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/sansio/__pycache__/blueprints.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/sansio/__pycache__/scaffold.cpython-312.pyc create mode 100644 venv/Lib/site-packages/flask/sansio/app.py create mode 100644 venv/Lib/site-packages/flask/sansio/blueprints.py create mode 100644 venv/Lib/site-packages/flask/sansio/scaffold.py create mode 100644 venv/Lib/site-packages/flask/sessions.py create mode 100644 venv/Lib/site-packages/flask/signals.py create mode 100644 venv/Lib/site-packages/flask/templating.py create mode 100644 venv/Lib/site-packages/flask/testing.py create mode 100644 venv/Lib/site-packages/flask/typing.py create mode 100644 venv/Lib/site-packages/flask/views.py create mode 100644 venv/Lib/site-packages/flask/wrappers.py create mode 100644 venv/Lib/site-packages/idna-3.11.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/idna-3.11.dist-info/METADATA create mode 100644 venv/Lib/site-packages/idna-3.11.dist-info/RECORD create mode 100644 venv/Lib/site-packages/idna-3.11.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/idna-3.11.dist-info/licenses/LICENSE.md create mode 100644 venv/Lib/site-packages/idna/__init__.py create mode 100644 venv/Lib/site-packages/idna/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/codec.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/idnadata.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/intranges.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/package_data.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/__pycache__/uts46data.cpython-312.pyc create mode 100644 venv/Lib/site-packages/idna/codec.py create mode 100644 venv/Lib/site-packages/idna/compat.py create mode 100644 venv/Lib/site-packages/idna/core.py create mode 100644 venv/Lib/site-packages/idna/idnadata.py create mode 100644 venv/Lib/site-packages/idna/intranges.py create mode 100644 venv/Lib/site-packages/idna/package_data.py create mode 100644 venv/Lib/site-packages/idna/py.typed create mode 100644 venv/Lib/site-packages/idna/uts46data.py create mode 100644 venv/Lib/site-packages/itsdangerous-2.2.0.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/itsdangerous-2.2.0.dist-info/LICENSE.txt create mode 100644 venv/Lib/site-packages/itsdangerous-2.2.0.dist-info/METADATA create mode 100644 venv/Lib/site-packages/itsdangerous-2.2.0.dist-info/RECORD create mode 100644 venv/Lib/site-packages/itsdangerous-2.2.0.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/itsdangerous/__init__.py create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/_json.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/encoding.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/exc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/serializer.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/signer.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/timed.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/__pycache__/url_safe.cpython-312.pyc create mode 100644 venv/Lib/site-packages/itsdangerous/_json.py create mode 100644 venv/Lib/site-packages/itsdangerous/encoding.py create mode 100644 venv/Lib/site-packages/itsdangerous/exc.py create mode 100644 venv/Lib/site-packages/itsdangerous/py.typed create mode 100644 venv/Lib/site-packages/itsdangerous/serializer.py create mode 100644 venv/Lib/site-packages/itsdangerous/signer.py create mode 100644 venv/Lib/site-packages/itsdangerous/timed.py create mode 100644 venv/Lib/site-packages/itsdangerous/url_safe.py create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/METADATA create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/RECORD create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/entry_points.txt create mode 100644 venv/Lib/site-packages/jinja2-3.1.6.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/jinja2/__init__.py create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/_identifier.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/async_utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/bccache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/compiler.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/constants.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/debug.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/defaults.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/environment.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/ext.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/filters.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/idtracking.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/lexer.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/loaders.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/meta.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/nativetypes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/nodes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/optimizer.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/parser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/runtime.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/sandbox.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/tests.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/__pycache__/visitor.cpython-312.pyc create mode 100644 venv/Lib/site-packages/jinja2/_identifier.py create mode 100644 venv/Lib/site-packages/jinja2/async_utils.py create mode 100644 venv/Lib/site-packages/jinja2/bccache.py create mode 100644 venv/Lib/site-packages/jinja2/compiler.py create mode 100644 venv/Lib/site-packages/jinja2/constants.py create mode 100644 venv/Lib/site-packages/jinja2/debug.py create mode 100644 venv/Lib/site-packages/jinja2/defaults.py create mode 100644 venv/Lib/site-packages/jinja2/environment.py create mode 100644 venv/Lib/site-packages/jinja2/exceptions.py create mode 100644 venv/Lib/site-packages/jinja2/ext.py create mode 100644 venv/Lib/site-packages/jinja2/filters.py create mode 100644 venv/Lib/site-packages/jinja2/idtracking.py create mode 100644 venv/Lib/site-packages/jinja2/lexer.py create mode 100644 venv/Lib/site-packages/jinja2/loaders.py create mode 100644 venv/Lib/site-packages/jinja2/meta.py create mode 100644 venv/Lib/site-packages/jinja2/nativetypes.py create mode 100644 venv/Lib/site-packages/jinja2/nodes.py create mode 100644 venv/Lib/site-packages/jinja2/optimizer.py create mode 100644 venv/Lib/site-packages/jinja2/parser.py create mode 100644 venv/Lib/site-packages/jinja2/py.typed create mode 100644 venv/Lib/site-packages/jinja2/runtime.py create mode 100644 venv/Lib/site-packages/jinja2/sandbox.py create mode 100644 venv/Lib/site-packages/jinja2/tests.py create mode 100644 venv/Lib/site-packages/jinja2/utils.py create mode 100644 venv/Lib/site-packages/jinja2/visitor.py create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/METADATA create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/RECORD create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/markupsafe-3.0.3.dist-info/top_level.txt create mode 100644 venv/Lib/site-packages/markupsafe/__init__.py create mode 100644 venv/Lib/site-packages/markupsafe/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/markupsafe/__pycache__/_native.cpython-312.pyc create mode 100644 venv/Lib/site-packages/markupsafe/_native.py create mode 100644 venv/Lib/site-packages/markupsafe/_speedups.c create mode 100644 venv/Lib/site-packages/markupsafe/_speedups.cp312-win_amd64.pyd create mode 100644 venv/Lib/site-packages/markupsafe/_speedups.pyi create mode 100644 venv/Lib/site-packages/markupsafe/py.typed create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/AUTHORS.txt create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/LICENSE.txt create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/METADATA create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/RECORD create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/entry_points.txt create mode 100644 venv/Lib/site-packages/pip-24.0.dist-info/top_level.txt create mode 100644 venv/Lib/site-packages/pip/__init__.py create mode 100644 venv/Lib/site-packages/pip/__main__.py create mode 100644 venv/Lib/site-packages/pip/__pip-runner__.py create mode 100644 venv/Lib/site-packages/pip/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/main.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/pyproject.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/__pycache__/wheel_builder.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/build_env.py create mode 100644 venv/Lib/site-packages/pip/_internal/cache.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/main.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/parser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/progress_bars.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/cli/autocompletion.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/base_command.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/cmdoptions.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/command_context.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/main.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/main_parser.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/parser.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/progress_bars.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/req_command.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/spinners.py create mode 100644 venv/Lib/site-packages/pip/_internal/cli/status_codes.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/debug.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/download.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/hash.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/help.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/index.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/list.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/search.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/commands/cache.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/check.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/completion.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/configuration.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/debug.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/download.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/freeze.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/hash.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/help.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/index.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/inspect.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/install.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/list.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/search.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/show.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/uninstall.py create mode 100644 venv/Lib/site-packages/pip/_internal/commands/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/configuration.py create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/base.py create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/installed.py create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/sdist.py create mode 100644 venv/Lib/site-packages/pip/_internal/distributions/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/exceptions.py create mode 100644 venv/Lib/site-packages/pip/_internal/index/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/index/__pycache__/package_finder.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/index/collector.py create mode 100644 venv/Lib/site-packages/pip/_internal/index/package_finder.py create mode 100644 venv/Lib/site-packages/pip/_internal/index/sources.py create mode 100644 venv/Lib/site-packages/pip/_internal/locations/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/locations/__pycache__/_distutils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/locations/__pycache__/_sysconfig.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/locations/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/locations/_distutils.py create mode 100644 venv/Lib/site-packages/pip/_internal/locations/_sysconfig.py create mode 100644 venv/Lib/site-packages/pip/_internal/locations/base.py create mode 100644 venv/Lib/site-packages/pip/_internal/main.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/__pycache__/pkg_resources.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/_json.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/base.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/__pycache__/_envs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py create mode 100644 venv/Lib/site-packages/pip/_internal/metadata/pkg_resources.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/installation_report.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/models/candidate.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/direct_url.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/format_control.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/index.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/installation_report.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/link.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/scheme.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/search_scope.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/selection_prefs.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/target_python.py create mode 100644 venv/Lib/site-packages/pip/_internal/models/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/auth.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/download.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/lazy_wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/session.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/network/auth.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/cache.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/download.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/lazy_wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/session.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/utils.py create mode 100644 venv/Lib/site-packages/pip/_internal/network/xmlrpc.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/metadata_legacy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/build_tracker.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/metadata.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/check.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/freeze.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/install/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/operations/prepare.py create mode 100644 venv/Lib/site-packages/pip/_internal/pyproject.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/req/constructors.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/req_file.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/req_install.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/req_set.py create mode 100644 venv/Lib/site-packages/pip/_internal/req/req_uninstall.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/base.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/base.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py create mode 100644 venv/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py create mode 100644 venv/Lib/site-packages/pip/_internal/self_outdated_check.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/models.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/setuptools_build.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/utils/_jaraco_text.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/_log.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/appdirs.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/compat.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/compatibility_tags.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/datetime.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/deprecation.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/egg_link.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/encoding.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/entrypoints.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/filesystem.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/filetypes.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/glibc.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/hashes.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/logging.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/misc.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/models.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/packaging.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/setuptools_build.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/subprocess.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/temp_dir.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/unpacking.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/urls.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/virtualenv.py create mode 100644 venv/Lib/site-packages/pip/_internal/utils/wheel.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__init__.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/bazaar.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/git.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/mercurial.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/subversion.py create mode 100644 venv/Lib/site-packages/pip/_internal/vcs/versioncontrol.py create mode 100644 venv/Lib/site-packages/pip/_internal/wheel_builder.py create mode 100644 venv/Lib/site-packages/pip/_vendor/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/cache.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/controller.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py create mode 100644 venv/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/__main__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/cacert.pem create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/core.py create mode 100644 venv/Lib/site-packages/pip/_vendor/certifi/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5freq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/big5prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/chardistribution.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/charsetgroupprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/charsetprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/codingstatemachine.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/codingstatemachinedict.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/cp949prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/enums.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/escsm.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/eucjpprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrfreq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/euckrprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwfreq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/euctwprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312freq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/gb2312prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/hebrewprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/jisfreq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabfreq.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/johabprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/jpcntx.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langbulgarianmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langgreekmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhebrewmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langhungarianmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langrussianmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langthaimodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/langturkishmodel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/latin1prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/macromanprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcharsetprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcsgroupprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/mbcssm.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/resultdict.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcharsetprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/sbcsgroupprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/sjisprober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/universaldetector.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf1632prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/utf8prober.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/__pycache__/version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/big5freq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/big5prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/chardistribution.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/charsetgroupprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/charsetprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/cli/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/cli/__pycache__/chardetect.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/cli/chardetect.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/codingstatemachine.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/codingstatemachinedict.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/cp949prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/enums.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/escprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/escsm.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/eucjpprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/euckrfreq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/euckrprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/euctwfreq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/euctwprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/gb2312freq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/gb2312prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/hebrewprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/jisfreq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/johabfreq.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/johabprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/jpcntx.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langbulgarianmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langgreekmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langhebrewmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langhungarianmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langrussianmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langthaimodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/langturkishmodel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/latin1prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/macromanprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/mbcharsetprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/mbcsgroupprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/mbcssm.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/metadata/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/metadata/__pycache__/languages.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/metadata/languages.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/resultdict.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/sbcharsetprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/sbcsgroupprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/sjisprober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/universaldetector.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/utf1632prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/utf8prober.py create mode 100644 venv/Lib/site-packages/pip/_vendor/chardet/version.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/ansi.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/ansitowin32.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/initialise.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/win32.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/__pycache__/winterm.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/ansi.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/ansitowin32.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/initialise.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansi_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/ansitowin32_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/initialise_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/isatty_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/__pycache__/winterm_test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/ansi_test.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/ansitowin32_test.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/initialise_test.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/isatty_test.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/utils.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/tests/winterm_test.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/win32.py create mode 100644 venv/Lib/site-packages/pip/_vendor/colorama/winterm.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/compat.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/database.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/index.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/locators.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/manifest.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/markers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/metadata.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/resources.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/scripts.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/t32.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/t64-arm.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/t64.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/util.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/version.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/w32.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/w64-arm.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/w64.exe create mode 100644 venv/Lib/site-packages/pip/_vendor/distlib/wheel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/__main__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/distro.py create mode 100644 venv/Lib/site-packages/pip/_vendor/distro/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/codec.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/compat.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/core.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/idnadata.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/intranges.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/package_data.py create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/idna/uts46data.py create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/__pycache__/ext.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/exceptions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/ext.py create mode 100644 venv/Lib/site-packages/pip/_vendor/msgpack/fallback.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__about__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/__about__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/_manylinux.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/_musllinux.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/_structures.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/markers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/requirements.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/specifiers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/tags.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/utils.py create mode 100644 venv/Lib/site-packages/pip/_vendor/packaging/version.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__main__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/android.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/api.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/macos.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/unix.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/version.py create mode 100644 venv/Lib/site-packages/pip/_vendor/platformdirs/windows.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__main__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/regexopt.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/style.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/token.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/cmdline.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/console.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/filter.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/filters/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatter.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/bbcode.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/groff.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/html.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/img.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/irc.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/latex.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/other.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/rtf.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/svg.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/terminal.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/formatters/terminal256.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexer.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/lexers/python.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/modeline.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/plugin.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/regexopt.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/scanner.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/sphinxext.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/style.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/token.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/unistring.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pygments/util.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/actions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/common.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/core.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/helpers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/results.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/testing.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/unicode.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/__pycache__/util.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/actions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/common.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/core.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/diagram/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/exceptions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/helpers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/results.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/testing.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/unicode.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyparsing/util.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/__pycache__/_impl.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_compat.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_impl.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/api.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/__version__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/_internal_utils.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/adapters.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/api.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/auth.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/certs.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/compat.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/cookies.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/exceptions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/help.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/hooks.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/models.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/packages.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/sessions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/status_codes.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/structures.py create mode 100644 venv/Lib/site-packages/pip/_vendor/requests/utils.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/reporters.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/compat/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/providers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/reporters.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/resolvelib/structs.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__main__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_extension.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_fileno.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_windows.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/_wrap.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/abc.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/align.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/ansi.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/box.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/cells.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/color.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/default_styles.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/emoji.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/errors.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/file_proxy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/filesize.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/markup.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/region.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/repr.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/styled.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_cell_widths.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_export_format.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_extension.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_fileno.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_inspect.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_log_render.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_loop.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_null_file.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_palettes.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_pick.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_ratio.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_spinners.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_stack.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_timer.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_win32_console.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_windows.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/_wrap.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/abc.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/align.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/ansi.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/bar.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/box.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/cells.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/color.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/color_triplet.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/columns.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/console.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/constrain.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/containers.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/control.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/default_styles.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/diagnose.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/emoji.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/errors.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/filesize.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/highlighter.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/json.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/jupyter.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/layout.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/live.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/live_render.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/logging.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/markup.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/measure.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/padding.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/pager.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/palette.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/panel.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/pretty.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/progress.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/progress_bar.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/prompt.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/protocol.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/region.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/repr.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/rule.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/scope.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/screen.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/segment.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/spinner.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/status.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/style.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/styled.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/syntax.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/table.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/terminal_theme.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/text.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/theme.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/themes.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/traceback.py create mode 100644 venv/Lib/site-packages/pip/_vendor/rich/tree.py create mode 100644 venv/Lib/site-packages/pip/_vendor/six.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/_asyncio.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/_utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/after.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/before_sleep.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/nap.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/retry.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/stop.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/__pycache__/wait.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/_asyncio.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/_utils.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/after.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/before.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/before_sleep.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/nap.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/retry.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/stop.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/tornadoweb.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tenacity/wait.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/_parser.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/_re.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/_types.py create mode 100644 venv/Lib/site-packages/pip/_vendor/tomli/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/_api.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/_macos.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/_openssl.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/_ssl_constants.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/_windows.py create mode 100644 venv/Lib/site-packages/pip/_vendor/truststore/py.typed create mode 100644 venv/Lib/site-packages/pip/_vendor/typing_extensions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/_collections.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/_version.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/connection.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/exceptions.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/fields.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/filepost.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/packages/six.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/request.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/response.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/connection.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/queue.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/request.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/response.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/retry.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/url.py create mode 100644 venv/Lib/site-packages/pip/_vendor/urllib3/util/wait.py create mode 100644 venv/Lib/site-packages/pip/_vendor/vendor.txt create mode 100644 venv/Lib/site-packages/pip/_vendor/webencodings/__init__.py create mode 100644 venv/Lib/site-packages/pip/_vendor/webencodings/labels.py create mode 100644 venv/Lib/site-packages/pip/_vendor/webencodings/mklabels.py create mode 100644 venv/Lib/site-packages/pip/_vendor/webencodings/tests.py create mode 100644 venv/Lib/site-packages/pip/_vendor/webencodings/x_user_defined.py create mode 100644 venv/Lib/site-packages/pip/py.typed create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/METADATA create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/RECORD create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/REQUESTED create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/licenses/LICENSE create mode 100644 venv/Lib/site-packages/requests-2.32.5.dist-info/top_level.txt create mode 100644 venv/Lib/site-packages/requests/__init__.py create mode 100644 venv/Lib/site-packages/requests/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/__version__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/_internal_utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/adapters.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/api.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/auth.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/certs.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/compat.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/cookies.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/help.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/hooks.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/models.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/packages.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/sessions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/status_codes.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/structures.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/requests/__version__.py create mode 100644 venv/Lib/site-packages/requests/_internal_utils.py create mode 100644 venv/Lib/site-packages/requests/adapters.py create mode 100644 venv/Lib/site-packages/requests/api.py create mode 100644 venv/Lib/site-packages/requests/auth.py create mode 100644 venv/Lib/site-packages/requests/certs.py create mode 100644 venv/Lib/site-packages/requests/compat.py create mode 100644 venv/Lib/site-packages/requests/cookies.py create mode 100644 venv/Lib/site-packages/requests/exceptions.py create mode 100644 venv/Lib/site-packages/requests/help.py create mode 100644 venv/Lib/site-packages/requests/hooks.py create mode 100644 venv/Lib/site-packages/requests/models.py create mode 100644 venv/Lib/site-packages/requests/packages.py create mode 100644 venv/Lib/site-packages/requests/sessions.py create mode 100644 venv/Lib/site-packages/requests/status_codes.py create mode 100644 venv/Lib/site-packages/requests/structures.py create mode 100644 venv/Lib/site-packages/requests/utils.py create mode 100644 venv/Lib/site-packages/urllib3-2.6.3.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/urllib3-2.6.3.dist-info/METADATA create mode 100644 venv/Lib/site-packages/urllib3-2.6.3.dist-info/RECORD create mode 100644 venv/Lib/site-packages/urllib3-2.6.3.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/urllib3-2.6.3.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/urllib3/__init__.py create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/_base_connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/_collections.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/_request_methods.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/_version.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/connectionpool.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/fields.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/filepost.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/poolmanager.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/_base_connection.py create mode 100644 venv/Lib/site-packages/urllib3/_collections.py create mode 100644 venv/Lib/site-packages/urllib3/_request_methods.py create mode 100644 venv/Lib/site-packages/urllib3/_version.py create mode 100644 venv/Lib/site-packages/urllib3/connection.py create mode 100644 venv/Lib/site-packages/urllib3/connectionpool.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/__init__.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/__pycache__/socks.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__init__.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__pycache__/fetch.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/connection.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/emscripten_fetch_worker.js create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/fetch.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/request.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/emscripten/response.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/pyopenssl.py create mode 100644 venv/Lib/site-packages/urllib3/contrib/socks.py create mode 100644 venv/Lib/site-packages/urllib3/exceptions.py create mode 100644 venv/Lib/site-packages/urllib3/fields.py create mode 100644 venv/Lib/site-packages/urllib3/filepost.py create mode 100644 venv/Lib/site-packages/urllib3/http2/__init__.py create mode 100644 venv/Lib/site-packages/urllib3/http2/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/http2/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/http2/__pycache__/probe.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/http2/connection.py create mode 100644 venv/Lib/site-packages/urllib3/http2/probe.py create mode 100644 venv/Lib/site-packages/urllib3/poolmanager.py create mode 100644 venv/Lib/site-packages/urllib3/py.typed create mode 100644 venv/Lib/site-packages/urllib3/response.py create mode 100644 venv/Lib/site-packages/urllib3/util/__init__.py create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/connection.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/proxy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/retry.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/ssl_.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/ssltransport.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/timeout.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/url.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/util.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/__pycache__/wait.cpython-312.pyc create mode 100644 venv/Lib/site-packages/urllib3/util/connection.py create mode 100644 venv/Lib/site-packages/urllib3/util/proxy.py create mode 100644 venv/Lib/site-packages/urllib3/util/request.py create mode 100644 venv/Lib/site-packages/urllib3/util/response.py create mode 100644 venv/Lib/site-packages/urllib3/util/retry.py create mode 100644 venv/Lib/site-packages/urllib3/util/ssl_.py create mode 100644 venv/Lib/site-packages/urllib3/util/ssl_match_hostname.py create mode 100644 venv/Lib/site-packages/urllib3/util/ssltransport.py create mode 100644 venv/Lib/site-packages/urllib3/util/timeout.py create mode 100644 venv/Lib/site-packages/urllib3/util/url.py create mode 100644 venv/Lib/site-packages/urllib3/util/util.py create mode 100644 venv/Lib/site-packages/urllib3/util/wait.py create mode 100644 venv/Lib/site-packages/werkzeug-3.1.5.dist-info/INSTALLER create mode 100644 venv/Lib/site-packages/werkzeug-3.1.5.dist-info/METADATA create mode 100644 venv/Lib/site-packages/werkzeug-3.1.5.dist-info/RECORD create mode 100644 venv/Lib/site-packages/werkzeug-3.1.5.dist-info/WHEEL create mode 100644 venv/Lib/site-packages/werkzeug-3.1.5.dist-info/licenses/LICENSE.txt create mode 100644 venv/Lib/site-packages/werkzeug/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/_internal.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/_reloader.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/formparser.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/http.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/local.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/security.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/serving.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/test.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/testapp.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/urls.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/user_agent.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/__pycache__/wsgi.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/_internal.py create mode 100644 venv/Lib/site-packages/werkzeug/_reloader.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/accept.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/auth.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/cache_control.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/csp.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/etag.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/file_storage.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/headers.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/mixins.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/range.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/__pycache__/structures.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/accept.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/auth.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/cache_control.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/csp.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/etag.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/file_storage.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/headers.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/mixins.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/range.py create mode 100644 venv/Lib/site-packages/werkzeug/datastructures/structures.py create mode 100644 venv/Lib/site-packages/werkzeug/debug/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/debug/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/debug/__pycache__/console.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/debug/__pycache__/repr.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/debug/__pycache__/tbtools.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/debug/console.py create mode 100644 venv/Lib/site-packages/werkzeug/debug/repr.py create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/ICON_LICENSE.md create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/console.png create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/debugger.js create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/less.png create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/more.png create mode 100644 venv/Lib/site-packages/werkzeug/debug/shared/style.css create mode 100644 venv/Lib/site-packages/werkzeug/debug/tbtools.py create mode 100644 venv/Lib/site-packages/werkzeug/exceptions.py create mode 100644 venv/Lib/site-packages/werkzeug/formparser.py create mode 100644 venv/Lib/site-packages/werkzeug/http.py create mode 100644 venv/Lib/site-packages/werkzeug/local.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/dispatcher.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/http_proxy.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/lint.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/profiler.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/proxy_fix.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/__pycache__/shared_data.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/middleware/dispatcher.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/http_proxy.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/lint.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/profiler.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/proxy_fix.py create mode 100644 venv/Lib/site-packages/werkzeug/middleware/shared_data.py create mode 100644 venv/Lib/site-packages/werkzeug/py.typed create mode 100644 venv/Lib/site-packages/werkzeug/routing/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/converters.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/exceptions.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/map.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/matcher.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/__pycache__/rules.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/routing/converters.py create mode 100644 venv/Lib/site-packages/werkzeug/routing/exceptions.py create mode 100644 venv/Lib/site-packages/werkzeug/routing/map.py create mode 100644 venv/Lib/site-packages/werkzeug/routing/matcher.py create mode 100644 venv/Lib/site-packages/werkzeug/routing/rules.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/http.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/multipart.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/__pycache__/utils.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/sansio/http.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/multipart.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/request.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/response.py create mode 100644 venv/Lib/site-packages/werkzeug/sansio/utils.py create mode 100644 venv/Lib/site-packages/werkzeug/security.py create mode 100644 venv/Lib/site-packages/werkzeug/serving.py create mode 100644 venv/Lib/site-packages/werkzeug/test.py create mode 100644 venv/Lib/site-packages/werkzeug/testapp.py create mode 100644 venv/Lib/site-packages/werkzeug/urls.py create mode 100644 venv/Lib/site-packages/werkzeug/user_agent.py create mode 100644 venv/Lib/site-packages/werkzeug/utils.py create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/__init__.py create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/__pycache__/__init__.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/__pycache__/request.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/__pycache__/response.cpython-312.pyc create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/request.py create mode 100644 venv/Lib/site-packages/werkzeug/wrappers/response.py create mode 100644 venv/Lib/site-packages/werkzeug/wsgi.py create mode 100644 venv/Scripts/flask.exe create mode 100644 venv/Scripts/normalizer.exe create mode 100644 venv/Scripts/python.exe create mode 100644 venv/Scripts/pythonw.exe create mode 100644 venv/pyvenv.cfg diff --git a/.agent/workflows/ui-ux-pro-max.md b/.agent/workflows/ui-ux-pro-max.md new file mode 100644 index 0000000..acb7203 --- /dev/null +++ b/.agent/workflows/ui-ux-pro-max.md @@ -0,0 +1,231 @@ +--- +description: Plan and implement UI +auto_execution_mode: 3 +--- + +# UI/UX Pro Max - Design Intelligence + +Searchable database of UI styles, color palettes, font pairings, chart types, product recommendations, UX guidelines, and stack-specific best practices. + +## Prerequisites + +Check if Python is installed: + +```bash +python3 --version || python --version +``` + +If Python is not installed, install it based on user's OS: + +**macOS:** +```bash +brew install python3 +``` + +**Ubuntu/Debian:** +```bash +sudo apt update && sudo apt install python3 +``` + +**Windows:** +```powershell +winget install Python.Python.3.12 +``` + +--- + +## How to Use This Workflow + +When user requests UI/UX work (design, build, create, implement, review, fix, improve), follow this workflow: + +### Step 1: Analyze User Requirements + +Extract key information from user request: +- **Product type**: SaaS, e-commerce, portfolio, dashboard, landing page, etc. +- **Style keywords**: minimal, playful, professional, elegant, dark mode, etc. +- **Industry**: healthcare, fintech, gaming, education, etc. +- **Stack**: React, Vue, Next.js, or default to `html-tailwind` + +### Step 2: Search Relevant Domains + +Use `search.py` multiple times to gather comprehensive information. Search until you have enough context. + +```bash +python3 .shared/ui-ux-pro-max/scripts/search.py "" --domain [-n ] +``` + +**Recommended search order:** + +1. **Product** - Get style recommendations for product type +2. **Style** - Get detailed style guide (colors, effects, frameworks) +3. **Typography** - Get font pairings with Google Fonts imports +4. **Color** - Get color palette (Primary, Secondary, CTA, Background, Text, Border) +5. **Landing** - Get page structure (if landing page) +6. **Chart** - Get chart recommendations (if dashboard/analytics) +7. **UX** - Get best practices and anti-patterns +8. **Stack** - Get stack-specific guidelines (default: html-tailwind) + +### Step 3: Stack Guidelines (Default: html-tailwind) + +If user doesn't specify a stack, **default to `html-tailwind`**. + +```bash +python3 .shared/ui-ux-pro-max/scripts/search.py "" --stack html-tailwind +``` + +Available stacks: `html-tailwind`, `react`, `nextjs`, `vue`, `svelte`, `swiftui`, `react-native`, `flutter` + +--- + +## Search Reference + +### Available Domains + +| Domain | Use For | Example Keywords | +|--------|---------|------------------| +| `product` | Product type recommendations | SaaS, e-commerce, portfolio, healthcare, beauty, service | +| `style` | UI styles, colors, effects | glassmorphism, minimalism, dark mode, brutalism | +| `typography` | Font pairings, Google Fonts | elegant, playful, professional, modern | +| `color` | Color palettes by product type | saas, ecommerce, healthcare, beauty, fintech, service | +| `landing` | Page structure, CTA strategies | hero, hero-centric, testimonial, pricing, social-proof | +| `chart` | Chart types, library recommendations | trend, comparison, timeline, funnel, pie | +| `ux` | Best practices, anti-patterns | animation, accessibility, z-index, loading | +| `prompt` | AI prompts, CSS keywords | (style name) | + +### Available Stacks + +| Stack | Focus | +|-------|-------| +| `html-tailwind` | Tailwind utilities, responsive, a11y (DEFAULT) | +| `react` | State, hooks, performance, patterns | +| `nextjs` | SSR, routing, images, API routes | +| `vue` | Composition API, Pinia, Vue Router | +| `svelte` | Runes, stores, SvelteKit | +| `swiftui` | Views, State, Navigation, Animation | +| `react-native` | Components, Navigation, Lists | +| `flutter` | Widgets, State, Layout, Theming | + +--- + +## Example Workflow + +**User request:** "Làm landing page cho dịch vụ chăm sóc da chuyên nghiệp" + +**AI should:** + +```bash +# 1. Search product type +python3 .shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness service" --domain product + +# 2. Search style (based on industry: beauty, elegant) +python3 .shared/ui-ux-pro-max/scripts/search.py "elegant minimal soft" --domain style + +# 3. Search typography +python3 .shared/ui-ux-pro-max/scripts/search.py "elegant luxury" --domain typography + +# 4. Search color palette +python3 .shared/ui-ux-pro-max/scripts/search.py "beauty spa wellness" --domain color + +# 5. Search landing page structure +python3 .shared/ui-ux-pro-max/scripts/search.py "hero-centric social-proof" --domain landing + +# 6. Search UX guidelines +python3 .shared/ui-ux-pro-max/scripts/search.py "animation" --domain ux +python3 .shared/ui-ux-pro-max/scripts/search.py "accessibility" --domain ux + +# 7. Search stack guidelines (default: html-tailwind) +python3 .shared/ui-ux-pro-max/scripts/search.py "layout responsive" --stack html-tailwind +``` + +**Then:** Synthesize all search results and implement the design. + +--- + +## Tips for Better Results + +1. **Be specific with keywords** - "healthcare SaaS dashboard" > "app" +2. **Search multiple times** - Different keywords reveal different insights +3. **Combine domains** - Style + Typography + Color = Complete design system +4. **Always check UX** - Search "animation", "z-index", "accessibility" for common issues +5. **Use stack flag** - Get implementation-specific best practices +6. **Iterate** - If first search doesn't match, try different keywords +7. **Split Into Multiple Files** - For better maintainability: + - Separate components into individual files (e.g., `Header.tsx`, `Footer.tsx`) + - Extract reusable styles into dedicated files + - Keep each file focused and under 200-300 lines + +--- + +## Common Rules for Professional UI + +These are frequently overlooked issues that make UI look unprofessional: + +### Icons & Visual Elements + +| Rule | Do | Don't | +|------|----|----- | +| **No emoji icons** | Use SVG icons (Heroicons, Lucide, Simple Icons) | Use emojis like 🎨 🚀 ⚙️ as UI icons | +| **Stable hover states** | Use color/opacity transitions on hover | Use scale transforms that shift layout | +| **Correct brand logos** | Research official SVG from Simple Icons | Guess or use incorrect logo paths | +| **Consistent icon sizing** | Use fixed viewBox (24x24) with w-6 h-6 | Mix different icon sizes randomly | + +### Interaction & Cursor + +| Rule | Do | Don't | +|------|----|----- | +| **Cursor pointer** | Add `cursor-pointer` to all clickable/hoverable cards | Leave default cursor on interactive elements | +| **Hover feedback** | Provide visual feedback (color, shadow, border) | No indication element is interactive | +| **Smooth transitions** | Use `transition-colors duration-200` | Instant state changes or too slow (>500ms) | + +### Light/Dark Mode Contrast + +| Rule | Do | Don't | +|------|----|----- | +| **Glass card light mode** | Use `bg-white/80` or higher opacity | Use `bg-white/10` (too transparent) | +| **Text contrast light** | Use `#0F172A` (slate-900) for text | Use `#94A3B8` (slate-400) for body text | +| **Muted text light** | Use `#475569` (slate-600) minimum | Use gray-400 or lighter | +| **Border visibility** | Use `border-gray-200` in light mode | Use `border-white/10` (invisible) | + +### Layout & Spacing + +| Rule | Do | Don't | +|------|----|----- | +| **Floating navbar** | Add `top-4 left-4 right-4` spacing | Stick navbar to `top-0 left-0 right-0` | +| **Content padding** | Account for fixed navbar height | Let content hide behind fixed elements | +| **Consistent max-width** | Use same `max-w-6xl` or `max-w-7xl` | Mix different container widths | + +--- + +## Pre-Delivery Checklist + +Before delivering UI code, verify these items: + +### Visual Quality +- [ ] No emojis used as icons (use SVG instead) +- [ ] All icons from consistent icon set (Heroicons/Lucide) +- [ ] Brand logos are correct (verified from Simple Icons) +- [ ] Hover states don't cause layout shift + +### Interaction +- [ ] All clickable elements have `cursor-pointer` +- [ ] Hover states provide clear visual feedback +- [ ] Transitions are smooth (150-300ms) +- [ ] Focus states visible for keyboard navigation + +### Light/Dark Mode +- [ ] Light mode text has sufficient contrast (4.5:1 minimum) +- [ ] Glass/transparent elements visible in light mode +- [ ] Borders visible in both modes +- [ ] Test both modes before delivery + +### Layout +- [ ] Floating elements have proper spacing from edges +- [ ] No content hidden behind fixed navbars +- [ ] Responsive at 320px, 768px, 1024px, 1440px +- [ ] No horizontal scroll on mobile + +### Accessibility +- [ ] All images have alt text +- [ ] Form inputs have labels +- [ ] Color is not the only indicator +- [ ] `prefers-reduced-motion` respected diff --git a/.shared/ui-ux-pro-max/data/charts.csv b/.shared/ui-ux-pro-max/data/charts.csv new file mode 100644 index 0000000..5d84794 --- /dev/null +++ b/.shared/ui-ux-pro-max/data/charts.csv @@ -0,0 +1,26 @@ +No,Data Type,Keywords,Best Chart Type,Secondary Options,Color Guidance,Performance Impact,Accessibility Notes,Library Recommendation,Interactive Level +1,Trend Over Time,"trend, time-series, line, growth, timeline, progress",Line Chart,"Area Chart, Smooth Area",Primary: #0080FF. Multiple series: use distinct colors. Fill: 20% opacity,⚡ Excellent (optimized),✓ Clear line patterns for colorblind users. Add pattern overlays.,"Chart.js, Recharts, ApexCharts",Hover + Zoom +2,Compare Categories,"compare, categories, bar, comparison, ranking",Bar Chart (Horizontal or Vertical),"Column Chart, Grouped Bar",Each bar: distinct color. Category: grouped same color. Sorted: descending order,⚡ Excellent,✓ Easy to compare. Add value labels on bars for clarity.,"Chart.js, Recharts, D3.js",Hover + Sort +3,Part-to-Whole,"part-to-whole, pie, donut, percentage, proportion, share",Pie Chart or Donut,"Stacked Bar, Treemap",Colors: 5-6 max. Contrasting palette. Large slices first. Use labels.,⚡ Good (limit 6 slices),⚠ Hard for accessibility. Better: Stacked bar with legend. Avoid pie if >5 items.,"Chart.js, Recharts, D3.js",Hover + Drill +4,Correlation/Distribution,"correlation, distribution, scatter, relationship, pattern",Scatter Plot or Bubble Chart,"Heat Map, Matrix",Color axis: gradient (blue-red). Size: relative. Opacity: 0.6-0.8 to show density,⚠ Moderate (many points),⚠ Provide data table alternative. Use pattern + color distinction.,"D3.js, Plotly, Recharts",Hover + Brush +5,Heatmap/Intensity,"heatmap, heat-map, intensity, density, matrix",Heat Map or Choropleth,"Grid Heat Map, Bubble Heat",Gradient: Cool (blue) to Hot (red). Scale: clear legend. Divergent for ±data,⚡ Excellent (color CSS),⚠ Colorblind: Use pattern overlay. Provide numerical legend.,"D3.js, Plotly, ApexCharts",Hover + Zoom +6,Geographic Data,"geographic, map, location, region, geo, spatial","Choropleth Map, Bubble Map",Geographic Heat Map,Regional: single color gradient or categorized colors. Legend: clear scale,⚠ Moderate (rendering),⚠ Include text labels for regions. Provide data table alternative.,"D3.js, Mapbox, Leaflet",Pan + Zoom + Drill +7,Funnel/Flow,funnel/flow,"Funnel Chart, Sankey",Waterfall (for flows),Stages: gradient (starting color → ending color). Show conversion %,⚡ Good,✓ Clear stage labels + percentages. Good for accessibility if labeled.,"D3.js, Recharts, Custom SVG",Hover + Drill +8,Performance vs Target,performance-vs-target,Gauge Chart or Bullet Chart,"Dial, Thermometer",Performance: Red→Yellow→Green gradient. Target: marker line. Threshold colors,⚡ Good,✓ Add numerical value + percentage label beside gauge.,"D3.js, ApexCharts, Custom SVG",Hover +9,Time-Series Forecast,time-series-forecast,Line with Confidence Band,Ribbon Chart,Actual: solid line #0080FF. Forecast: dashed #FF9500. Band: light shading,⚡ Good,✓ Clearly distinguish actual vs forecast. Add legend.,"Chart.js, ApexCharts, Plotly",Hover + Toggle +10,Anomaly Detection,anomaly-detection,Line Chart with Highlights,Scatter with Alert,Normal: blue #0080FF. Anomaly: red #FF0000 circle/square marker + alert,⚡ Good,✓ Circle/marker for anomalies. Add text alert annotation.,"D3.js, Plotly, ApexCharts",Hover + Alert +11,Hierarchical/Nested Data,hierarchical/nested-data,Treemap,"Sunburst, Nested Donut, Icicle",Parent: distinct hues. Children: lighter shades. White borders 2-3px.,⚠ Moderate,⚠ Poor - provide table alternative. Label large areas.,"D3.js, Recharts, ApexCharts",Hover + Drilldown +12,Flow/Process Data,flow/process-data,Sankey Diagram,"Alluvial, Chord Diagram",Gradient from source to target. Opacity 0.4-0.6 for flows.,⚠ Moderate,⚠ Poor - provide flow table alternative.,"D3.js (d3-sankey), Plotly",Hover + Drilldown +13,Cumulative Changes,cumulative-changes,Waterfall Chart,"Stacked Bar, Cascade",Increases: #4CAF50. Decreases: #F44336. Start: #2196F3. End: #0D47A1.,⚡ Good,✓ Good - clear directional colors with labels.,"ApexCharts, Highcharts, Plotly",Hover +14,Multi-Variable Comparison,multi-variable-comparison,Radar/Spider Chart,"Parallel Coordinates, Grouped Bar",Single: #0080FF 20% fill. Multiple: distinct colors per dataset.,⚡ Good,⚠ Moderate - limit 5-8 axes. Add data table.,"Chart.js, Recharts, ApexCharts",Hover + Toggle +15,Stock/Trading OHLC,stock/trading-ohlc,Candlestick Chart,"OHLC Bar, Heikin-Ashi",Bullish: #26A69A. Bearish: #EF5350. Volume: 40% opacity below.,⚡ Good,⚠ Moderate - provide OHLC data table.,"Lightweight Charts (TradingView), ApexCharts",Real-time + Hover + Zoom +16,Relationship/Connection Data,relationship/connection-data,Network Graph,"Hierarchical Tree, Adjacency Matrix",Node types: categorical colors. Edges: #90A4AE 60% opacity.,❌ Poor (500+ nodes struggles),❌ Very Poor - provide adjacency list alternative.,"D3.js (d3-force), Vis.js, Cytoscape.js",Drilldown + Hover + Drag +17,Distribution/Statistical,distribution/statistical,Box Plot,"Violin Plot, Beeswarm",Box: #BBDEFB. Border: #1976D2. Median: #D32F2F. Outliers: #F44336.,⚡ Excellent,"✓ Good - include stats table (min, Q1, median, Q3, max).","Plotly, D3.js, Chart.js (plugin)",Hover +18,Performance vs Target (Compact),performance-vs-target-(compact),Bullet Chart,"Gauge, Progress Bar","Ranges: #FFCDD2, #FFF9C4, #C8E6C9. Performance: #1976D2. Target: black 3px.",⚡ Excellent,✓ Excellent - compact with clear values.,"D3.js, Plotly, Custom SVG",Hover +19,Proportional/Percentage,proportional/percentage,Waffle Chart,"Pictogram, Stacked Bar 100%",10x10 grid. 3-5 categories max. 2-3px spacing between squares.,⚡ Good,✓ Good - better than pie for accessibility.,"D3.js, React-Waffle, Custom CSS Grid",Hover +20,Hierarchical Proportional,hierarchical-proportional,Sunburst Chart,"Treemap, Icicle, Circle Packing",Center to outer: darker to lighter. 15-20% lighter per level.,⚠ Moderate,⚠ Poor - provide hierarchy table alternative.,"D3.js (d3-hierarchy), Recharts, ApexCharts",Drilldown + Hover +21,Root Cause Analysis,"root cause, decomposition, tree, hierarchy, drill-down, ai-split",Decomposition Tree,"Decision Tree, Flow Chart",Nodes: #2563EB (Primary) vs #EF4444 (Negative impact). Connectors: Neutral grey.,⚠ Moderate (calculation heavy),✓ clear hierarchy. Allow keyboard navigation for nodes.,"Power BI (native), React-Flow, Custom D3.js",Drill + Expand +22,3D Spatial Data,"3d, spatial, immersive, terrain, molecular, volumetric",3D Scatter/Surface Plot,"Volumetric Rendering, Point Cloud",Depth cues: lighting/shading. Z-axis: color gradient (cool to warm).,❌ Heavy (WebGL required),❌ Poor - requires alternative 2D view or data table.,"Three.js, Deck.gl, Plotly 3D",Rotate + Zoom + VR +23,Real-Time Streaming,"streaming, real-time, ticker, live, velocity, pulse",Streaming Area Chart,"Ticker Tape, Moving Gauge",Current: Bright Pulse (#00FF00). History: Fading opacity. Grid: Dark.,⚡ Optimized (canvas/webgl),⚠ Flashing elements - provide pause button. High contrast.,"Smoothed D3.js, CanvasJS, SciChart",Real-time + Pause +24,Sentiment/Emotion,"sentiment, emotion, nlp, opinion, feeling",Word Cloud with Sentiment,"Sentiment Arc, Radar Chart",Positive: #22C55E. Negative: #EF4444. Neutral: #94A3B8. Size = Frequency.,⚡ Good,⚠ Word clouds poor for screen readers. Use list view.,"D3-cloud, Highcharts, Nivo",Hover + Filter +25,Process Mining,"process, mining, variants, path, bottleneck, log",Process Map / Graph,"Directed Acyclic Graph (DAG), Petri Net",Happy path: #10B981 (Thick). Deviations: #F59E0B (Thin). Bottlenecks: #EF4444.,⚠ Moderate to Heavy,⚠ Complex graphs hard to navigate. Provide path summary.,"React-Flow, Cytoscape.js, Recharts",Drag + Node-Click \ No newline at end of file diff --git a/.shared/ui-ux-pro-max/data/colors.csv b/.shared/ui-ux-pro-max/data/colors.csv new file mode 100644 index 0000000..77feb8b --- /dev/null +++ b/.shared/ui-ux-pro-max/data/colors.csv @@ -0,0 +1,97 @@ +No,Product Type,Keywords,Primary (Hex),Secondary (Hex),CTA (Hex),Background (Hex),Text (Hex),Border (Hex),Notes +1,SaaS (General),"saas, general",#2563EB,#3B82F6,#F97316,#F8FAFC,#1E293B,#E2E8F0,Trust blue + accent contrast +2,Micro SaaS,"micro, saas",#2563EB,#3B82F6,#F97316,#F8FAFC,#1E293B,#E2E8F0,Vibrant primary + white space +3,E-commerce,commerce,#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand primary + success green +4,E-commerce Luxury,"commerce, luxury",#1C1917,#44403C,#CA8A04,#FAFAF9,#0C0A09,#D6D3D1,Premium colors + minimal accent +5,Service Landing Page,"service, landing, page",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand primary + trust colors +6,B2B Service,"b2b, service",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Professional blue + neutral grey +7,Financial Dashboard,"financial, dashboard",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark bg + red/green alerts + trust blue +8,Analytics Dashboard,"analytics, dashboard",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Cool→Hot gradients + neutral grey +9,Healthcare App,"healthcare, app",#0891B2,#22D3EE,#059669,#ECFEFF,#164E63,#A5F3FC,Calm blue + health green + trust +10,Educational App,"educational, app",#4F46E5,#818CF8,#F97316,#EEF2FF,#1E1B4B,#C7D2FE,Playful colors + clear hierarchy +11,Creative Agency,"creative, agency",#EC4899,#F472B6,#06B6D4,#FDF2F8,#831843,#FBCFE8,Bold primaries + artistic freedom +12,Portfolio/Personal,"portfolio, personal",#18181B,#3F3F46,#2563EB,#FAFAFA,#09090B,#E4E4E7,Brand primary + artistic interpretation +13,Gaming,gaming,#7C3AED,#A78BFA,#F43F5E,#0F0F23,#E2E8F0,#4C1D95,Vibrant + neon + immersive colors +14,Government/Public Service,"government, public, service",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Professional blue + high contrast +15,Fintech/Crypto,"fintech, crypto",#F59E0B,#FBBF24,#8B5CF6,#0F172A,#F8FAFC,#334155,Dark tech colors + trust + vibrant accents +16,Social Media App,"social, media, app",#2563EB,#60A5FA,#F43F5E,#F8FAFC,#1E293B,#DBEAFE,Vibrant + engagement colors +17,Productivity Tool,"productivity, tool",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Clear hierarchy + functional colors +18,Design System/Component Library,"design, system, component, library",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Clear hierarchy + code-like structure +19,AI/Chatbot Platform,"chatbot, platform",#7C3AED,#A78BFA,#06B6D4,#FAF5FF,#1E1B4B,#DDD6FE,Neutral + AI Purple (#6366F1) +20,NFT/Web3 Platform,"nft, web3, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark + Neon + Gold (#FFD700) +21,Creator Economy Platform,"creator, economy, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Vibrant + Brand colors +22,Sustainability/ESG Platform,"sustainability, esg, platform",#7C3AED,#A78BFA,#06B6D4,#FAF5FF,#1E1B4B,#DDD6FE,Green (#228B22) + Earth tones +23,Remote Work/Collaboration Tool,"remote, work, collaboration, tool",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Calm Blue + Neutral grey +24,Mental Health App,"mental, health, app",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Calm Pastels + Trust colors +25,Pet Tech App,"pet, tech, app",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Playful + Warm colors +26,Smart Home/IoT Dashboard,"smart, home, iot, dashboard",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark + Status indicator colors +27,EV/Charging Ecosystem,"charging, ecosystem",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Electric Blue (#009CD1) + Green +28,Subscription Box Service,"subscription, box, service",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand + Excitement colors +29,Podcast Platform,"podcast, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark + Audio waveform accents +30,Dating App,"dating, app",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Warm + Romantic (Pink/Red gradients) +31,Micro-Credentials/Badges Platform,"micro, credentials, badges, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Trust Blue + Gold (#FFD700) +32,Knowledge Base/Documentation,"knowledge, base, documentation",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Clean hierarchy + minimal color +33,Hyperlocal Services,"hyperlocal, services",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Location markers + Trust colors +34,Beauty/Spa/Wellness Service,"beauty, spa, wellness, service",#10B981,#34D399,#8B5CF6,#ECFDF5,#064E3B,#A7F3D0,Soft pastels (Pink #FFB6C1 Sage #90EE90) + Cream + Gold accents +35,Luxury/Premium Brand,"luxury, premium, brand",#1C1917,#44403C,#CA8A04,#FAFAF9,#0C0A09,#D6D3D1,Black + Gold (#FFD700) + White + Minimal accent +36,Restaurant/Food Service,"restaurant, food, service",#DC2626,#F87171,#CA8A04,#FEF2F2,#450A0A,#FECACA,Warm colors (Orange Red Brown) + appetizing imagery +37,Fitness/Gym App,"fitness, gym, app",#DC2626,#F87171,#16A34A,#FEF2F2,#1F2937,#FECACA,Energetic (Orange #FF6B35 Electric Blue) + Dark bg +38,Real Estate/Property,"real, estate, property",#0F766E,#14B8A6,#0369A1,#F0FDFA,#134E4A,#99F6E4,Trust Blue (#0077B6) + Gold accents + White +39,Travel/Tourism Agency,"travel, tourism, agency",#EC4899,#F472B6,#06B6D4,#FDF2F8,#831843,#FBCFE8,Vibrant destination colors + Sky Blue + Warm accents +40,Hotel/Hospitality,"hotel, hospitality",#1E3A8A,#3B82F6,#CA8A04,#F8FAFC,#1E40AF,#BFDBFE,Warm neutrals + Gold (#D4AF37) + Brand accent +41,Wedding/Event Planning,"wedding, event, planning",#7C3AED,#A78BFA,#F97316,#FAF5FF,#4C1D95,#DDD6FE,Soft Pink (#FFD6E0) + Gold + Cream + Sage +42,Legal Services,"legal, services",#1E3A8A,#1E40AF,#B45309,#F8FAFC,#0F172A,#CBD5E1,Navy Blue (#1E3A5F) + Gold + White +43,Insurance Platform,"insurance, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Trust Blue (#0066CC) + Green (security) + Neutral +44,Banking/Traditional Finance,"banking, traditional, finance",#0F766E,#14B8A6,#0369A1,#F0FDFA,#134E4A,#99F6E4,Navy (#0A1628) + Trust Blue + Gold accents +45,Online Course/E-learning,"online, course, learning",#0D9488,#2DD4BF,#EA580C,#F0FDFA,#134E4A,#5EEAD4,Vibrant learning colors + Progress green +46,Non-profit/Charity,"non, profit, charity",#0891B2,#22D3EE,#F97316,#ECFEFF,#164E63,#A5F3FC,Cause-related colors + Trust + Warm +47,Music Streaming,"music, streaming",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark (#121212) + Vibrant accents + Album art colors +48,Video Streaming/OTT,"video, streaming, ott",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark bg + Content poster colors + Brand accent +49,Job Board/Recruitment,"job, board, recruitment",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Professional Blue + Success Green + Neutral +50,Marketplace (P2P),"marketplace, p2p",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Trust colors + Category colors + Success green +51,Logistics/Delivery,"logistics, delivery",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Blue (#2563EB) + Orange (tracking) + Green (delivered) +52,Agriculture/Farm Tech,"agriculture, farm, tech",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Earth Green (#4A7C23) + Brown + Sky Blue +53,Construction/Architecture,"construction, architecture",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Grey (#4A4A4A) + Orange (safety) + Blueprint Blue +54,Automotive/Car Dealership,"automotive, car, dealership",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand colors + Metallic accents + Dark/Light +55,Photography Studio,"photography, studio",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Black + White + Minimal accent +56,Coworking Space,"coworking, space",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Energetic colors + Wood tones + Brand accent +57,Cleaning Service,"cleaning, service",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Fresh Blue (#00B4D8) + Clean White + Green +58,Home Services (Plumber/Electrician),"home, services, plumber, electrician",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Trust Blue + Safety Orange + Professional grey +59,Childcare/Daycare,"childcare, daycare",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Playful pastels + Safe colors + Warm accents +60,Senior Care/Elderly,"senior, care, elderly",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Calm Blue + Warm neutrals + Large text +61,Medical Clinic,"medical, clinic",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Medical Blue (#0077B6) + Trust White + Calm Green +62,Pharmacy/Drug Store,"pharmacy, drug, store",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Pharmacy Green + Trust Blue + Clean White +63,Dental Practice,"dental, practice",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Fresh Blue + White + Smile Yellow accent +64,Veterinary Clinic,"veterinary, clinic",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Caring Blue + Pet-friendly colors + Warm accents +65,Florist/Plant Shop,"florist, plant, shop",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Natural Green + Floral pinks/purples + Earth tones +66,Bakery/Cafe,"bakery, cafe",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Warm Brown + Cream + Appetizing accents +67,Coffee Shop,"coffee, shop",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Coffee Brown (#6F4E37) + Cream + Warm accents +68,Brewery/Winery,"brewery, winery",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Deep amber/burgundy + Gold + Craft aesthetic +69,Airline,airline,#7C3AED,#A78BFA,#06B6D4,#FAF5FF,#1E1B4B,#DDD6FE,Sky Blue + Brand colors + Trust accents +70,News/Media Platform,"news, media, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand colors + High contrast + Category colors +71,Magazine/Blog,"magazine, blog",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Editorial colors + Brand primary + Clean white +72,Freelancer Platform,"freelancer, platform",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Professional Blue + Success Green + Neutral +73,Consulting Firm,"consulting, firm",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Navy + Gold + Professional grey +74,Marketing Agency,"marketing, agency",#EC4899,#F472B6,#06B6D4,#FDF2F8,#831843,#FBCFE8,Bold brand colors + Creative freedom +75,Event Management,"event, management",#7C3AED,#A78BFA,#F97316,#FAF5FF,#4C1D95,#DDD6FE,Event theme colors + Excitement accents +76,Conference/Webinar Platform,"conference, webinar, platform",#0F172A,#334155,#0369A1,#F8FAFC,#020617,#E2E8F0,Professional Blue + Video accent + Brand +77,Membership/Community,"membership, community",#7C3AED,#A78BFA,#F97316,#FAF5FF,#4C1D95,#DDD6FE,Community brand colors + Engagement accents +78,Newsletter Platform,"newsletter, platform",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Brand primary + Clean white + CTA accent +79,Digital Products/Downloads,"digital, products, downloads",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Product category colors + Brand + Success green +80,Church/Religious Organization,"church, religious, organization",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Warm Gold + Deep Purple/Blue + White +81,Sports Team/Club,"sports, team, club",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Team colors + Energetic accents +82,Museum/Gallery,"museum, gallery",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Art-appropriate neutrals + Exhibition accents +83,Theater/Cinema,"theater, cinema",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Dark + Spotlight accents + Gold +84,Language Learning App,"language, learning, app",#0D9488,#2DD4BF,#EA580C,#F0FDFA,#134E4A,#5EEAD4,Playful colors + Progress indicators + Country flags +85,Coding Bootcamp,"coding, bootcamp",#3B82F6,#60A5FA,#F97316,#F8FAFC,#1E293B,#E2E8F0,Code editor colors + Brand + Success green +86,Cybersecurity Platform,"cybersecurity, security, cyber, hacker",#00FF41,#0D0D0D,#00FF41,#000000,#E0E0E0,#1F1F1F,Matrix Green + Deep Black + Terminal feel +87,Developer Tool / IDE,"developer, tool, ide, code, dev",#3B82F6,#1E293B,#2563EB,#0F172A,#F1F5F9,#334155,Dark syntax theme colors + Blue focus +88,Biotech / Life Sciences,"biotech, science, biology, medical",#0EA5E9,#0284C7,#10B981,#F8FAFC,#0F172A,#E2E8F0,Sterile White + DNA Blue + Life Green +89,Space Tech / Aerospace,"space, aerospace, tech, futuristic",#FFFFFF,#94A3B8,#3B82F6,#0B0B10,#F8FAFC,#1E293B,Deep Space Black + Star White + Metallic +90,Architecture / Interior,"architecture, interior, design, luxury",#171717,#404040,#D4AF37,#FFFFFF,#171717,#E5E5E5,Monochrome + Gold Accent + High Imagery +91,Quantum Computing,"quantum, qubit, tech",#00FFFF,#7B61FF,#FF00FF,#050510,#E0E0FF,#333344,Interference patterns + Neon + Deep Dark +92,Biohacking / Longevity,"bio, health, science",#FF4D4D,#4D94FF,#00E676,#F5F5F7,#1C1C1E,#E5E5EA,Biological red/blue + Clinical white +93,Autonomous Systems,"drone, robot, fleet",#00FF41,#008F11,#FF3333,#0D1117,#E6EDF3,#30363D,Terminal Green + Tactical Dark +94,Generative AI Art,"art, gen-ai, creative",#111111,#333333,#FFFFFF,#FAFAFA,#000000,#E5E5E5,Canvas Neutral + High Contrast +95,Spatial / Vision OS,"spatial, glass, vision",#FFFFFF,#E5E5E5,#007AFF,#888888,#000000,#FFFFFF,Glass opacity 20% + System Blue +96,Climate Tech,"climate, green, energy",#2E8B57,#87CEEB,#FFD700,#F0FFF4,#1A3320,#C6E6C6,Nature Green + Solar Yellow + Air Blue \ No newline at end of file diff --git a/.shared/ui-ux-pro-max/data/landing.csv b/.shared/ui-ux-pro-max/data/landing.csv new file mode 100644 index 0000000..7ad96bc --- /dev/null +++ b/.shared/ui-ux-pro-max/data/landing.csv @@ -0,0 +1,31 @@ +No,Pattern Name,Keywords,Section Order,Primary CTA Placement,Color Strategy,Recommended Effects,Conversion Optimization +1,Hero + Features + CTA,"hero, hero-centric, features, feature-rich, cta, call-to-action","1. Hero with headline/image, 2. Value prop, 3. Key features (3-5), 4. CTA section, 5. Footer",Hero (sticky) + Bottom,Hero: Brand primary or vibrant. Features: Card bg #FAFAFA. CTA: Contrasting accent color,"Hero parallax, feature card hover lift, CTA glow on hover",Deep CTA placement. Use contrasting color (at least 7:1 contrast ratio). Sticky navbar CTA. +2,Hero + Testimonials + CTA,"hero, testimonials, social-proof, trust, reviews, cta","1. Hero, 2. Problem statement, 3. Solution overview, 4. Testimonials carousel, 5. CTA",Hero (sticky) + Post-testimonials,"Hero: Brand color. Testimonials: Light bg #F5F5F5. Quotes: Italic, muted color #666. CTA: Vibrant","Testimonial carousel slide animations, quote marks animations, avatar fade-in",Social proof before CTA. Use 3-5 testimonials. Include photo + name + role. CTA after social proof. +3,Product Demo + Features,"demo, product-demo, features, showcase, interactive","1. Hero, 2. Product video/mockup (center), 3. Feature breakdown per section, 4. Comparison (optional), 5. CTA",Video center + CTA right/bottom,Video surround: Brand color overlay. Features: Icon color #0080FF. Text: Dark #222,"Video play button pulse, feature scroll reveals, demo interaction highlights",Embedded product demo increases engagement. Use interactive mockup if possible. Auto-play video muted. +4,Minimal Single Column,"minimal, simple, direct, single-column, clean","1. Hero headline, 2. Short description, 3. Benefit bullets (3 max), 4. CTA, 5. Footer","Center, large CTA button",Minimalist: Brand + white #FFFFFF + accent. Buttons: High contrast 7:1+. Text: Black/Dark grey,Minimal hover effects. Smooth scroll. CTA scale on hover (subtle),Single CTA focus. Large typography. Lots of whitespace. No nav clutter. Mobile-first. +5,Funnel (3-Step Conversion),"funnel, conversion, steps, wizard, onboarding","1. Hero, 2. Step 1 (problem), 3. Step 2 (solution), 4. Step 3 (action), 5. CTA progression",Each step: mini-CTA. Final: main CTA,"Step colors: 1 (Red/Problem), 2 (Orange/Process), 3 (Green/Solution). CTA: Brand color","Step number animations, progress bar fill, step transitions smooth scroll",Progressive disclosure. Show only essential info per step. Use progress indicators. Multiple CTAs. +6,Comparison Table + CTA,"comparison, table, compare, versus, cta","1. Hero, 2. Problem intro, 3. Comparison table (product vs competitors), 4. Pricing (optional), 5. CTA",Table: Right column. CTA: Below table,Table: Alternating rows (white/light grey). Your product: Highlight #FFFACD (light yellow) or green. Text: Dark,"Table row hover highlight, price toggle animations, feature checkmark animations",Use comparison to show unique value. Highlight your product row. Include 'free trial' in pricing row. +7,Lead Magnet + Form,"lead, form, signup, capture, email, magnet","1. Hero (benefit headline), 2. Lead magnet preview (ebook cover, checklist, etc), 3. Form (minimal fields), 4. CTA submit",Form CTA: Submit button,Lead magnet: Professional design. Form: Clean white bg. Inputs: Light border #CCCCCC. CTA: Brand color,"Form focus state animations, input validation animations, success confirmation animation",Form fields ≤ 3 for best conversion. Offer valuable lead magnet preview. Show form submission progress. +8,Pricing Page + CTA,"pricing, plans, tiers, comparison, cta","1. Hero (pricing headline), 2. Price comparison cards, 3. Feature comparison table, 4. FAQ section, 5. Final CTA",Each card: CTA button. Sticky CTA in nav,"Free: Grey, Starter: Blue, Pro: Green/Gold, Enterprise: Dark. Cards: 1px border, shadow","Price toggle animation (monthly/yearly), card comparison highlight, FAQ accordion open/close",Recommend starter plan (pre-select/highlight). Show annual discount (20-30%). Use FAQs to address concerns. +9,Video-First Hero,"video, hero, media, visual, engaging","1. Hero with video background, 2. Key features overlay, 3. Benefits section, 4. CTA",Overlay on video (center/bottom) + Bottom section,Dark overlay 60% on video. Brand accent for CTA. White text on dark.,"Video autoplay muted, parallax scroll, text fade-in on scroll",86% higher engagement with video. Add captions for accessibility. Compress video for performance. +10,Scroll-Triggered Storytelling,"storytelling, scroll, narrative, story, immersive","1. Intro hook, 2. Chapter 1 (problem), 3. Chapter 2 (journey), 4. Chapter 3 (solution), 5. Climax CTA",End of each chapter (mini) + Final climax CTA,Progressive reveal. Each chapter has distinct color. Building intensity.,"ScrollTrigger animations, parallax layers, progressive disclosure, chapter transitions",Narrative increases time-on-page 3x. Use progress indicator. Mobile: simplify animations. +11,AI Personalization Landing,"ai, personalization, smart, recommendation, dynamic","1. Dynamic hero (personalized), 2. Relevant features, 3. Tailored testimonials, 4. Smart CTA",Context-aware placement based on user segment,Adaptive based on user data. A/B test color variations per segment.,"Dynamic content swap, fade transitions, personalized product recommendations",20%+ conversion with personalization. Requires analytics integration. Fallback for new users. +12,Waitlist/Coming Soon,"waitlist, coming-soon, launch, early-access, notify","1. Hero with countdown, 2. Product teaser/preview, 3. Email capture form, 4. Social proof (waitlist count)",Email form prominent (above fold) + Sticky form on scroll,Anticipation: Dark + accent highlights. Countdown in brand color. Urgency indicators.,"Countdown timer animation, email validation feedback, success confetti, social share buttons",Scarcity + exclusivity. Show waitlist count. Early access benefits. Referral program. +13,Comparison Table Focus,"comparison, table, versus, compare, features","1. Hero (problem statement), 2. Comparison matrix (you vs competitors), 3. Feature deep-dive, 4. Winner CTA",After comparison table (highlighted row) + Bottom,Your product column highlighted (accent bg or green). Competitors neutral. Checkmarks green.,"Table row hover highlight, feature checkmark animations, sticky comparison header",Show value vs competitors. 35% higher conversion. Be factual. Include pricing if favorable. +14,Pricing-Focused Landing,"pricing, price, cost, plans, subscription","1. Hero (value proposition), 2. Pricing cards (3 tiers), 3. Feature comparison, 4. FAQ, 5. Final CTA",Each pricing card + Sticky CTA in nav + Bottom,Popular plan highlighted (brand color border/bg). Free: grey. Enterprise: dark/premium.,"Price toggle monthly/annual animation, card hover lift, FAQ accordion smooth open",Annual discount 20-30%. Recommend mid-tier (most popular badge). Address objections in FAQ. +15,App Store Style Landing,"app, mobile, download, store, install","1. Hero with device mockup, 2. Screenshots carousel, 3. Features with icons, 4. Reviews/ratings, 5. Download CTAs",Download buttons prominent (App Store + Play Store) throughout,Dark/light matching app store feel. Star ratings in gold. Screenshots with device frames.,"Device mockup rotations, screenshot slider, star rating animations, download button pulse",Show real screenshots. Include ratings (4.5+ stars). QR code for mobile. Platform-specific CTAs. +16,FAQ/Documentation Landing,"faq, documentation, help, support, questions","1. Hero with search bar, 2. Popular categories, 3. FAQ accordion, 4. Contact/support CTA",Search bar prominent + Contact CTA for unresolved questions,"Clean, high readability. Minimal color. Category icons in brand color. Success green for resolved.","Search autocomplete, smooth accordion open/close, category hover, helpful feedback buttons",Reduce support tickets. Track search analytics. Show related articles. Contact escalation path. +17,Immersive/Interactive Experience,"immersive, interactive, experience, 3d, animation","1. Full-screen interactive element, 2. Guided product tour, 3. Key benefits revealed, 4. CTA after completion",After interaction complete + Skip option for impatient users,Immersive experience colors. Dark background for focus. Highlight interactive elements.,"WebGL, 3D interactions, gamification elements, progress indicators, reward animations",40% higher engagement. Performance trade-off. Provide skip option. Mobile fallback essential. +18,Event/Conference Landing,"event, conference, meetup, registration, schedule","1. Hero (date/location/countdown), 2. Speakers grid, 3. Agenda/schedule, 4. Sponsors, 5. Register CTA",Register CTA sticky + After speakers + Bottom,Urgency colors (countdown). Event branding. Speaker cards professional. Sponsor logos neutral.,"Countdown timer, speaker hover cards with bio, agenda tabs, early bird countdown",Early bird pricing with deadline. Social proof (past attendees). Speaker credibility. Multi-ticket discounts. +19,Product Review/Ratings Focused,"reviews, ratings, testimonials, social-proof, stars","1. Hero (product + aggregate rating), 2. Rating breakdown, 3. Individual reviews, 4. Buy/CTA",After reviews summary + Buy button alongside reviews,Trust colors. Star ratings gold. Verified badge green. Review sentiment colors.,"Star fill animations, review filtering, helpful vote interactions, photo lightbox",User-generated content builds trust. Show verified purchases. Filter by rating. Respond to negative reviews. +20,Community/Forum Landing,"community, forum, social, members, discussion","1. Hero (community value prop), 2. Popular topics/categories, 3. Active members showcase, 4. Join CTA",Join button prominent + After member showcase,"Warm, welcoming. Member photos add humanity. Topic badges in brand colors. Activity indicators green.","Member avatars animation, activity feed live updates, topic hover previews, join success celebration","Show active community (member count, posts today). Highlight benefits. Preview content. Easy onboarding." +21,Before-After Transformation,"before-after, transformation, results, comparison","1. Hero (problem state), 2. Transformation slider/comparison, 3. How it works, 4. Results CTA",After transformation reveal + Bottom,Contrast: muted/grey (before) vs vibrant/colorful (after). Success green for results.,"Slider comparison interaction, before/after reveal animations, result counters, testimonial videos",Visual proof of value. 45% higher conversion. Real results. Specific metrics. Guarantee offer. +22,Marketplace / Directory,"marketplace, directory, search, listing","1. Hero (Search focused), 2. Categories, 3. Featured Listings, 4. Trust/Safety, 5. CTA (Become a host/seller)",Hero Search Bar + Navbar 'List your item',Search: High contrast. Categories: Visual icons. Trust: Blue/Green.,"Search autocomplete animation, map hover pins, card carousel","Search bar is the CTA. Reduce friction to search. Popular searches suggestions." +23,Newsletter / Content First,"newsletter, content, writer, blog, subscribe","1. Hero (Value Prop + Form), 2. Recent Issues/Archives, 3. Social Proof (Subscriber count), 4. About Author",Hero inline form + Sticky header form,Minimalist. Paper-like background. Text focus. Accent color for Subscribe.,"Text highlight animations, typewriter effect, subtle fade-in","Single field form (Email only). Show 'Join X,000 readers'. Read sample link." +24,Webinar Registration,"webinar, registration, event, training, live","1. Hero (Topic + Timer + Form), 2. What you'll learn, 3. Speaker Bio, 4. Urgency/Bonuses, 5. Form (again)",Hero (Right side form) + Bottom anchor,Urgency: Red/Orange. Professional: Blue/Navy. Form: High contrast white.,"Countdown timer, speaker avatar float, urgent ticker","Limited seats logic. 'Live' indicator. Auto-fill timezone." +25,Enterprise Gateway,"enterprise, corporate, gateway, solutions, portal","1. Hero (Video/Mission), 2. Solutions by Industry, 3. Solutions by Role, 4. Client Logos, 5. Contact Sales",Contact Sales (Primary) + Login (Secondary),Corporate: Navy/Grey. High integrity. Conservative accents.,"Slow video background, logo carousel, tab switching for industries","Path selection (I am a...). Mega menu navigation. Trust signals prominent." +26,Portfolio Grid,"portfolio, grid, showcase, gallery, masonry","1. Hero (Name/Role), 2. Project Grid (Masonry), 3. About/Philosophy, 4. Contact",Project Card Hover + Footer Contact,Neutral background (let work shine). Text: Black/White. Accent: Minimal.,"Image lazy load reveal, hover overlay info, lightbox view","Visuals first. Filter by category. Fast loading essential." +27,Horizontal Scroll Journey,"horizontal, scroll, journey, gallery, storytelling, panoramic","1. Intro (Vertical), 2. The Journey (Horizontal Track), 3. Detail Reveal, 4. Vertical Footer","Floating Sticky CTA or End of Horizontal Track","Continuous palette transition. Chapter colors. Progress bar #000000.","Scroll-jacking (careful), parallax layers, horizontal slide, progress indicator","Immersive product discovery. High engagement. Keep navigation visible." +28,Bento Grid Showcase,"bento, grid, features, modular, apple-style, showcase","1. Hero, 2. Bento Grid (Key Features), 3. Detail Cards, 4. Tech Specs, 5. CTA","Floating Action Button or Bottom of Grid","Card backgrounds: #F5F5F7 or Glass. Icons: Vibrant brand colors. Text: Dark.","Hover card scale (1.02), video inside cards, tilt effect, staggered reveal","Scannable value props. High information density without clutter. Mobile stack." +29,Interactive 3D Configurator,"3d, configurator, customizer, interactive, product","1. Hero (Configurator), 2. Feature Highlight (synced), 3. Price/Specs, 4. Purchase","Inside Configurator UI + Sticky Bottom Bar","Neutral studio background. Product: Realistic materials. UI: Minimal overlay.","Real-time rendering, material swap animation, camera rotate/zoom, light reflection","Increases ownership feeling. 360 view reduces return rates. Direct add-to-cart." +30,AI-Driven Dynamic Landing,"ai, dynamic, personalized, adaptive, generative","1. Prompt/Input Hero, 2. Generated Result Preview, 3. How it Works, 4. Value Prop","Input Field (Hero) + 'Try it' Buttons","Adaptive to user input. Dark mode for compute feel. Neon accents.","Typing text effects, shimmering generation loaders, morphing layouts","Immediate value demonstration. 'Show, don't tell'. Low friction start." \ No newline at end of file diff --git a/.shared/ui-ux-pro-max/data/products.csv b/.shared/ui-ux-pro-max/data/products.csv new file mode 100644 index 0000000..6ff9ba4 --- /dev/null +++ b/.shared/ui-ux-pro-max/data/products.csv @@ -0,0 +1,97 @@ +No,Product Type,Keywords,Primary Style Recommendation,Secondary Styles,Landing Page Pattern,Dashboard Style (if applicable),Color Palette Focus,Key Considerations +1,SaaS (General),"app, b2b, cloud, general, saas, software, subscription",Glassmorphism + Flat Design,"Soft UI Evolution, Minimalism",Hero + Features + CTA,Data-Dense + Real-Time Monitoring,Trust blue + accent contrast,Balance modern feel with clarity. Focus on CTAs. +2,Micro SaaS,"app, b2b, cloud, indie, micro, micro-saas, niche, saas, small, software, solo, subscription",Flat Design + Vibrant & Block,"Motion-Driven, Micro-interactions",Minimal & Direct + Demo,Executive Dashboard,Vibrant primary + white space,"Keep simple, show product quickly. Speed is key." +3,E-commerce,"buy, commerce, e, ecommerce, products, retail, sell, shop, store",Vibrant & Block-based,"Aurora UI, Motion-Driven",Feature-Rich Showcase,Sales Intelligence Dashboard,Brand primary + success green,Engagement & conversions. High visual hierarchy. +4,E-commerce Luxury,"buy, commerce, e, ecommerce, elegant, exclusive, high-end, luxury, premium, products, retail, sell, shop, store",Liquid Glass + Glassmorphism,"3D & Hyperrealism, Aurora UI",Feature-Rich Showcase,Sales Intelligence Dashboard,Premium colors + minimal accent,Elegance & sophistication. Premium materials. +5,Service Landing Page,"appointment, booking, consultation, conversion, landing, marketing, page, service",Hero-Centric + Trust & Authority,"Social Proof-Focused, Storytelling",Hero-Centric Design,N/A - Analytics for conversions,Brand primary + trust colors,Social proof essential. Show expertise. +6,B2B Service,"appointment, b, b2b, booking, business, consultation, corporate, enterprise, service",Trust & Authority + Minimal,"Feature-Rich, Conversion-Optimized",Feature-Rich Showcase,Sales Intelligence Dashboard,Professional blue + neutral grey,Credibility essential. Clear ROI messaging. +7,Financial Dashboard,"admin, analytics, dashboard, data, financial, panel",Dark Mode (OLED) + Data-Dense,"Minimalism, Accessible & Ethical",N/A - Dashboard focused,Financial Dashboard,Dark bg + red/green alerts + trust blue,"High contrast, real-time updates, accuracy paramount." +8,Analytics Dashboard,"admin, analytics, dashboard, data, panel",Data-Dense + Heat Map & Heatmap,"Minimalism, Dark Mode (OLED)",N/A - Analytics focused,Drill-Down Analytics + Comparative,Cool→Hot gradients + neutral grey,Clarity > aesthetics. Color-coded data priority. +9,Healthcare App,"app, clinic, health, healthcare, medical, patient",Neumorphism + Accessible & Ethical,"Soft UI Evolution, Claymorphism (for patients)",Social Proof-Focused,User Behavior Analytics,Calm blue + health green + trust,Accessibility mandatory. Calming aesthetic. +10,Educational App,"app, course, education, educational, learning, school, training",Claymorphism + Micro-interactions,"Vibrant & Block-based, Flat Design",Storytelling-Driven,User Behavior Analytics,Playful colors + clear hierarchy,Engagement & ease of use. Age-appropriate design. +11,Creative Agency,"agency, creative, design, marketing, studio",Brutalism + Motion-Driven,"Retro-Futurism, Storytelling-Driven",Storytelling-Driven,N/A - Portfolio focused,Bold primaries + artistic freedom,Differentiation key. Wow-factor necessary. +12,Portfolio/Personal,"creative, personal, portfolio, projects, showcase, work",Motion-Driven + Minimalism,"Brutalism, Aurora UI",Storytelling-Driven,N/A - Personal branding,Brand primary + artistic interpretation,Showcase work. Personality shine through. +13,Gaming,"entertainment, esports, game, gaming, play",3D & Hyperrealism + Retro-Futurism,"Motion-Driven, Vibrant & Block",Feature-Rich Showcase,N/A - Game focused,Vibrant + neon + immersive colors,Immersion priority. Performance critical. +14,Government/Public Service,"appointment, booking, consultation, government, public, service",Accessible & Ethical + Minimalism,"Flat Design, Inclusive Design",Minimal & Direct,Executive Dashboard,Professional blue + high contrast,WCAG AAA mandatory. Trust paramount. +15,Fintech/Crypto,"banking, blockchain, crypto, defi, finance, fintech, money, nft, payment, web3",Glassmorphism + Dark Mode (OLED),"Retro-Futurism, Motion-Driven",Conversion-Optimized,Real-Time Monitoring + Predictive,Dark tech colors + trust + vibrant accents,Security perception. Real-time data critical. +16,Social Media App,"app, community, content, entertainment, media, network, sharing, social, streaming, users, video",Vibrant & Block-based + Motion-Driven,"Aurora UI, Micro-interactions",Feature-Rich Showcase,User Behavior Analytics,Vibrant + engagement colors,Engagement & retention. Addictive design ethics. +17,Productivity Tool,"collaboration, productivity, project, task, tool, workflow",Flat Design + Micro-interactions,"Minimalism, Soft UI Evolution",Interactive Product Demo,Drill-Down Analytics,Clear hierarchy + functional colors,Ease of use. Speed & efficiency focus. +18,Design System/Component Library,"component, design, library, system",Minimalism + Accessible & Ethical,"Flat Design, Zero Interface",Feature-Rich Showcase,N/A - Dev focused,Clear hierarchy + code-like structure,Consistency. Developer-first approach. +19,AI/Chatbot Platform,"ai, artificial-intelligence, automation, chatbot, machine-learning, ml, platform",AI-Native UI + Minimalism,"Zero Interface, Glassmorphism",Interactive Product Demo,AI/ML Analytics Dashboard,Neutral + AI Purple (#6366F1),Conversational UI. Streaming text. Context awareness. Minimal chrome. +20,NFT/Web3 Platform,"nft, platform, web",Cyberpunk UI + Glassmorphism,"Aurora UI, 3D & Hyperrealism",Feature-Rich Showcase,Crypto/Blockchain Dashboard,Dark + Neon + Gold (#FFD700),Wallet integration. Transaction feedback. Gas fees display. Dark mode essential. +21,Creator Economy Platform,"creator, economy, platform",Vibrant & Block-based + Bento Box Grid,"Motion-Driven, Aurora UI",Social Proof-Focused,User Behavior Analytics,Vibrant + Brand colors,Creator profiles. Monetization display. Engagement metrics. Social proof. +22,Sustainability/ESG Platform,"ai, artificial-intelligence, automation, esg, machine-learning, ml, platform, sustainability",Organic Biophilic + Minimalism,"Accessible & Ethical, Flat Design",Trust & Authority,Energy/Utilities Dashboard,Green (#228B22) + Earth tones,Carbon footprint visuals. Progress indicators. Certification badges. Eco-friendly imagery. +23,Remote Work/Collaboration Tool,"collaboration, remote, tool, work",Soft UI Evolution + Minimalism,"Glassmorphism, Micro-interactions",Feature-Rich Showcase,Drill-Down Analytics,Calm Blue + Neutral grey,Real-time collaboration. Status indicators. Video integration. Notification management. +24,Mental Health App,"app, health, mental",Neumorphism + Accessible & Ethical,"Claymorphism, Soft UI Evolution",Social Proof-Focused,Healthcare Analytics,Calm Pastels + Trust colors,Calming aesthetics. Privacy-first. Crisis resources. Progress tracking. Accessibility mandatory. +25,Pet Tech App,"app, pet, tech",Claymorphism + Vibrant & Block-based,"Micro-interactions, Flat Design",Storytelling-Driven,User Behavior Analytics,Playful + Warm colors,Pet profiles. Health tracking. Playful UI. Photo galleries. Vet integration. +26,Smart Home/IoT Dashboard,"admin, analytics, dashboard, data, home, iot, panel, smart",Glassmorphism + Dark Mode (OLED),"Minimalism, AI-Native UI",Interactive Product Demo,Real-Time Monitoring,Dark + Status indicator colors,Device status. Real-time controls. Energy monitoring. Automation rules. Quick actions. +27,EV/Charging Ecosystem,"charging, ecosystem, ev",Minimalism + Aurora UI,"Glassmorphism, Organic Biophilic",Hero-Centric Design,Energy/Utilities Dashboard,Electric Blue (#009CD1) + Green,Charging station maps. Range estimation. Cost calculation. Environmental impact. +28,Subscription Box Service,"appointment, booking, box, consultation, membership, plan, recurring, service, subscription",Vibrant & Block-based + Motion-Driven,"Claymorphism, Aurora UI",Feature-Rich Showcase,E-commerce Analytics,Brand + Excitement colors,Unboxing experience. Personalization quiz. Subscription management. Product reveals. +29,Podcast Platform,"platform, podcast",Dark Mode (OLED) + Minimalism,"Motion-Driven, Vibrant & Block-based",Storytelling-Driven,Media/Entertainment Dashboard,Dark + Audio waveform accents,Audio player UX. Episode discovery. Creator tools. Analytics for podcasters. +30,Dating App,"app, dating",Vibrant & Block-based + Motion-Driven,"Aurora UI, Glassmorphism",Social Proof-Focused,User Behavior Analytics,Warm + Romantic (Pink/Red gradients),Profile cards. Swipe interactions. Match animations. Safety features. Video chat. +31,Micro-Credentials/Badges Platform,"badges, credentials, micro, platform",Minimalism + Flat Design,"Accessible & Ethical, Swiss Modernism 2.0",Trust & Authority,Education Dashboard,Trust Blue + Gold (#FFD700),Credential verification. Badge display. Progress tracking. Issuer trust. LinkedIn integration. +32,Knowledge Base/Documentation,"base, documentation, knowledge",Minimalism + Accessible & Ethical,"Swiss Modernism 2.0, Flat Design",FAQ/Documentation,N/A - Documentation focused,Clean hierarchy + minimal color,Search-first. Clear navigation. Code highlighting. Version switching. Feedback system. +33,Hyperlocal Services,"appointment, booking, consultation, hyperlocal, service, services",Minimalism + Vibrant & Block-based,"Micro-interactions, Flat Design",Conversion-Optimized,Drill-Down Analytics + Map,Location markers + Trust colors,Map integration. Service categories. Provider profiles. Booking system. Reviews. +34,Beauty/Spa/Wellness Service,"appointment, beauty, booking, consultation, service, spa, wellness",Soft UI Evolution + Neumorphism,"Glassmorphism, Minimalism",Hero-Centric Design + Social Proof,User Behavior Analytics,Soft pastels (Pink #FFB6C1 Sage #90EE90) + Cream + Gold accents,Calming aesthetic. Booking system. Service menu. Before/after gallery. Testimonials. Relaxing imagery. +35,Luxury/Premium Brand,"brand, elegant, exclusive, high-end, luxury, premium",Liquid Glass + Glassmorphism,"Minimalism, 3D & Hyperrealism",Storytelling-Driven + Feature-Rich,Sales Intelligence Dashboard,Black + Gold (#FFD700) + White + Minimal accent,Elegance paramount. Premium imagery. Storytelling. High-quality visuals. Exclusive feel. +36,Restaurant/Food Service,"appointment, booking, consultation, delivery, food, menu, order, restaurant, service",Vibrant & Block-based + Motion-Driven,"Claymorphism, Flat Design",Hero-Centric Design + Conversion,N/A - Booking focused,Warm colors (Orange Red Brown) + appetizing imagery,Menu display. Online ordering. Reservation system. Food photography. Location/hours prominent. +37,Fitness/Gym App,"app, exercise, fitness, gym, health, workout",Vibrant & Block-based + Dark Mode (OLED),"Motion-Driven, Neumorphism",Feature-Rich Showcase,User Behavior Analytics,Energetic (Orange #FF6B35 Electric Blue) + Dark bg,Progress tracking. Workout plans. Community features. Achievements. Motivational design. +38,Real Estate/Property,"buy, estate, housing, property, real, real-estate, rent",Glassmorphism + Minimalism,"Motion-Driven, 3D & Hyperrealism",Hero-Centric Design + Feature-Rich,Sales Intelligence Dashboard,Trust Blue (#0077B6) + Gold accents + White,Property listings. Virtual tours. Map integration. Agent profiles. Mortgage calculator. High-quality imagery. +39,Travel/Tourism Agency,"agency, booking, creative, design, flight, hotel, marketing, studio, tourism, travel, vacation",Aurora UI + Motion-Driven,"Vibrant & Block-based, Glassmorphism",Storytelling-Driven + Hero-Centric,Booking Analytics,Vibrant destination colors + Sky Blue + Warm accents,Destination showcase. Booking system. Itinerary builder. Reviews. Inspiration galleries. Mobile-first. +40,Hotel/Hospitality,"hospitality, hotel",Liquid Glass + Minimalism,"Glassmorphism, Soft UI Evolution",Hero-Centric Design + Social Proof,Revenue Management Dashboard,Warm neutrals + Gold (#D4AF37) + Brand accent,Room booking. Amenities showcase. Location maps. Guest reviews. Seasonal pricing. Luxury imagery. +41,Wedding/Event Planning,"conference, event, meetup, planning, registration, ticket, wedding",Soft UI Evolution + Aurora UI,"Glassmorphism, Motion-Driven",Storytelling-Driven + Social Proof,N/A - Planning focused,Soft Pink (#FFD6E0) + Gold + Cream + Sage,Portfolio gallery. Vendor directory. Planning tools. Timeline. Budget tracker. Romantic aesthetic. +42,Legal Services,"appointment, attorney, booking, compliance, consultation, contract, law, legal, service, services",Trust & Authority + Minimalism,"Accessible & Ethical, Swiss Modernism 2.0",Trust & Authority + Minimal,Case Management Dashboard,Navy Blue (#1E3A5F) + Gold + White,Credibility paramount. Practice areas. Attorney profiles. Case results. Contact forms. Professional imagery. +43,Insurance Platform,"insurance, platform",Trust & Authority + Flat Design,"Accessible & Ethical, Minimalism",Conversion-Optimized + Trust,Claims Analytics Dashboard,Trust Blue (#0066CC) + Green (security) + Neutral,Quote calculator. Policy comparison. Claims process. Trust signals. Clear pricing. Security badges. +44,Banking/Traditional Finance,"banking, finance, traditional",Minimalism + Accessible & Ethical,"Trust & Authority, Dark Mode (OLED)",Trust & Authority + Feature-Rich,Financial Dashboard,Navy (#0A1628) + Trust Blue + Gold accents,Security-first. Account overview. Transaction history. Mobile banking. Accessibility critical. Trust paramount. +45,Online Course/E-learning,"course, e, learning, online",Claymorphism + Vibrant & Block-based,"Motion-Driven, Flat Design",Feature-Rich Showcase + Social Proof,Education Dashboard,Vibrant learning colors + Progress green,Course catalog. Progress tracking. Video player. Quizzes. Certificates. Community forums. Gamification. +46,Non-profit/Charity,"charity, non, profit",Accessible & Ethical + Organic Biophilic,"Minimalism, Storytelling-Driven",Storytelling-Driven + Trust,Donation Analytics Dashboard,Cause-related colors + Trust + Warm,Impact stories. Donation flow. Transparency reports. Volunteer signup. Event calendar. Emotional connection. +47,Music Streaming,"music, streaming",Dark Mode (OLED) + Vibrant & Block-based,"Motion-Driven, Aurora UI",Feature-Rich Showcase,Media/Entertainment Dashboard,Dark (#121212) + Vibrant accents + Album art colors,Audio player. Playlist management. Artist pages. Personalization. Social features. Waveform visualizations. +48,Video Streaming/OTT,"ott, streaming, video",Dark Mode (OLED) + Motion-Driven,"Glassmorphism, Vibrant & Block-based",Hero-Centric Design + Feature-Rich,Media/Entertainment Dashboard,Dark bg + Content poster colors + Brand accent,Video player. Content discovery. Watchlist. Continue watching. Personalized recommendations. Thumbnail-heavy. +49,Job Board/Recruitment,"board, job, recruitment",Flat Design + Minimalism,"Vibrant & Block-based, Accessible & Ethical",Conversion-Optimized + Feature-Rich,HR Analytics Dashboard,Professional Blue + Success Green + Neutral,Job listings. Search/filter. Company profiles. Application tracking. Resume upload. Salary insights. +50,Marketplace (P2P),"buyers, listings, marketplace, p, platform, sellers",Vibrant & Block-based + Flat Design,"Micro-interactions, Trust & Authority",Feature-Rich Showcase + Social Proof,E-commerce Analytics,Trust colors + Category colors + Success green,Seller/buyer profiles. Listings. Reviews/ratings. Secure payment. Messaging. Search/filter. Trust badges. +51,Logistics/Delivery,"delivery, logistics",Minimalism + Flat Design,"Dark Mode (OLED), Micro-interactions",Feature-Rich Showcase + Conversion,Real-Time Monitoring + Route Analytics,Blue (#2563EB) + Orange (tracking) + Green (delivered),Real-time tracking. Delivery scheduling. Route optimization. Driver management. Status updates. Map integration. +52,Agriculture/Farm Tech,"agriculture, farm, tech",Organic Biophilic + Flat Design,"Minimalism, Accessible & Ethical",Feature-Rich Showcase + Trust,IoT Sensor Dashboard,Earth Green (#4A7C23) + Brown + Sky Blue,Crop monitoring. Weather data. IoT sensors. Yield tracking. Market prices. Sustainable imagery. +53,Construction/Architecture,"architecture, construction",Minimalism + 3D & Hyperrealism,"Brutalism, Swiss Modernism 2.0",Hero-Centric Design + Feature-Rich,Project Management Dashboard,Grey (#4A4A4A) + Orange (safety) + Blueprint Blue,Project portfolio. 3D renders. Timeline. Material specs. Team collaboration. Blueprint aesthetic. +54,Automotive/Car Dealership,"automotive, car, dealership",Motion-Driven + 3D & Hyperrealism,"Dark Mode (OLED), Glassmorphism",Hero-Centric Design + Feature-Rich,Sales Intelligence Dashboard,Brand colors + Metallic accents + Dark/Light,Vehicle showcase. 360° views. Comparison tools. Financing calculator. Test drive booking. High-quality imagery. +55,Photography Studio,"photography, studio",Motion-Driven + Minimalism,"Aurora UI, Glassmorphism",Storytelling-Driven + Hero-Centric,N/A - Portfolio focused,Black + White + Minimal accent,Portfolio gallery. Before/after. Service packages. Booking system. Client galleries. Full-bleed imagery. +56,Coworking Space,"coworking, space",Vibrant & Block-based + Glassmorphism,"Minimalism, Motion-Driven",Hero-Centric Design + Feature-Rich,Occupancy Dashboard,Energetic colors + Wood tones + Brand accent,Space tour. Membership plans. Booking system. Amenities. Community events. Virtual tour. +57,Cleaning Service,"appointment, booking, cleaning, consultation, service",Soft UI Evolution + Flat Design,"Minimalism, Micro-interactions",Conversion-Optimized + Trust,Service Analytics,Fresh Blue (#00B4D8) + Clean White + Green,Service packages. Booking system. Price calculator. Before/after gallery. Reviews. Trust badges. +58,Home Services (Plumber/Electrician),"appointment, booking, consultation, electrician, home, plumber, service, services",Flat Design + Trust & Authority,"Minimalism, Accessible & Ethical",Conversion-Optimized + Trust,Service Analytics,Trust Blue + Safety Orange + Professional grey,Service list. Emergency contact. Booking. Price transparency. Certifications. Local trust signals. +59,Childcare/Daycare,"childcare, daycare",Claymorphism + Vibrant & Block-based,"Soft UI Evolution, Accessible & Ethical",Social Proof-Focused + Trust,Parent Dashboard,Playful pastels + Safe colors + Warm accents,Programs. Staff profiles. Safety certifications. Parent portal. Activity updates. Cheerful imagery. +60,Senior Care/Elderly,"care, elderly, senior",Accessible & Ethical + Soft UI Evolution,"Minimalism, Neumorphism",Trust & Authority + Social Proof,Healthcare Analytics,Calm Blue + Warm neutrals + Large text,Care services. Staff qualifications. Facility tour. Family portal. Large touch targets. High contrast. Accessibility-first. +61,Medical Clinic,"clinic, medical",Accessible & Ethical + Minimalism,"Neumorphism, Trust & Authority",Trust & Authority + Conversion,Healthcare Analytics,Medical Blue (#0077B6) + Trust White + Calm Green,Services. Doctor profiles. Online booking. Patient portal. Insurance info. HIPAA compliant. Trust signals. +62,Pharmacy/Drug Store,"drug, pharmacy, store",Flat Design + Accessible & Ethical,"Minimalism, Trust & Authority",Conversion-Optimized + Trust,Inventory Dashboard,Pharmacy Green + Trust Blue + Clean White,Product catalog. Prescription upload. Refill reminders. Health info. Store locator. Safety certifications. +63,Dental Practice,"dental, practice",Soft UI Evolution + Minimalism,"Accessible & Ethical, Trust & Authority",Social Proof-Focused + Conversion,Patient Analytics,Fresh Blue + White + Smile Yellow accent,Services. Dentist profiles. Before/after. Online booking. Insurance. Patient testimonials. Friendly imagery. +64,Veterinary Clinic,"clinic, veterinary",Claymorphism + Accessible & Ethical,"Soft UI Evolution, Flat Design",Social Proof-Focused + Trust,Pet Health Dashboard,Caring Blue + Pet-friendly colors + Warm accents,Pet services. Vet profiles. Online booking. Pet portal. Emergency info. Friendly animal imagery. +65,Florist/Plant Shop,"florist, plant, shop",Organic Biophilic + Vibrant & Block-based,"Aurora UI, Motion-Driven",Hero-Centric Design + Conversion,E-commerce Analytics,Natural Green + Floral pinks/purples + Earth tones,Product catalog. Occasion categories. Delivery scheduling. Care guides. Seasonal collections. Beautiful imagery. +66,Bakery/Cafe,"bakery, cafe",Vibrant & Block-based + Soft UI Evolution,"Claymorphism, Motion-Driven",Hero-Centric Design + Conversion,N/A - Order focused,Warm Brown + Cream + Appetizing accents,Menu display. Online ordering. Location/hours. Catering. Seasonal specials. Appetizing photography. +67,Coffee Shop,"coffee, shop",Minimalism + Organic Biophilic,"Soft UI Evolution, Flat Design",Hero-Centric Design + Conversion,N/A - Order focused,Coffee Brown (#6F4E37) + Cream + Warm accents,Menu. Online ordering. Loyalty program. Location. Story/origin. Cozy aesthetic. +68,Brewery/Winery,"brewery, winery",Motion-Driven + Storytelling-Driven,"Dark Mode (OLED), Organic Biophilic",Storytelling-Driven + Hero-Centric,N/A - E-commerce focused,Deep amber/burgundy + Gold + Craft aesthetic,Product showcase. Story/heritage. Tasting notes. Events. Club membership. Artisanal imagery. +69,Airline,"ai, airline, artificial-intelligence, automation, machine-learning, ml",Minimalism + Glassmorphism,"Motion-Driven, Accessible & Ethical",Conversion-Optimized + Feature-Rich,Operations Dashboard,Sky Blue + Brand colors + Trust accents,Flight search. Booking. Check-in. Boarding pass. Loyalty program. Route maps. Mobile-first. +70,News/Media Platform,"content, entertainment, media, news, platform, streaming, video",Minimalism + Flat Design,"Dark Mode (OLED), Accessible & Ethical",Hero-Centric Design + Feature-Rich,Media Analytics Dashboard,Brand colors + High contrast + Category colors,Article layout. Breaking news. Categories. Search. Subscription. Mobile reading. Fast loading. +71,Magazine/Blog,"articles, blog, content, magazine, posts, writing",Swiss Modernism 2.0 + Motion-Driven,"Minimalism, Aurora UI",Storytelling-Driven + Hero-Centric,Content Analytics,Editorial colors + Brand primary + Clean white,Article showcase. Category navigation. Author profiles. Newsletter signup. Related content. Typography-focused. +72,Freelancer Platform,"freelancer, platform",Flat Design + Minimalism,"Vibrant & Block-based, Micro-interactions",Feature-Rich Showcase + Conversion,Marketplace Analytics,Professional Blue + Success Green + Neutral,Profile creation. Portfolio. Skill matching. Messaging. Payment. Reviews. Project management. +73,Consulting Firm,"consulting, firm",Trust & Authority + Minimalism,"Swiss Modernism 2.0, Accessible & Ethical",Trust & Authority + Feature-Rich,N/A - Lead generation,Navy + Gold + Professional grey,Service areas. Case studies. Team profiles. Thought leadership. Contact. Professional credibility. +74,Marketing Agency,"agency, creative, design, marketing, studio",Brutalism + Motion-Driven,"Vibrant & Block-based, Aurora UI",Storytelling-Driven + Feature-Rich,Campaign Analytics,Bold brand colors + Creative freedom,Portfolio. Case studies. Services. Team. Creative showcase. Results-focused. Bold aesthetic. +75,Event Management,"conference, event, management, meetup, registration, ticket",Vibrant & Block-based + Motion-Driven,"Glassmorphism, Aurora UI",Hero-Centric Design + Feature-Rich,Event Analytics,Event theme colors + Excitement accents,Event showcase. Registration. Agenda. Speakers. Sponsors. Ticket sales. Countdown timer. +76,Conference/Webinar Platform,"conference, platform, webinar",Glassmorphism + Minimalism,"Motion-Driven, Flat Design",Feature-Rich Showcase + Conversion,Attendee Analytics,Professional Blue + Video accent + Brand,Registration. Agenda. Speaker profiles. Live stream. Networking. Recording access. Virtual event features. +77,Membership/Community,"community, membership",Vibrant & Block-based + Soft UI Evolution,"Bento Box Grid, Micro-interactions",Social Proof-Focused + Conversion,Community Analytics,Community brand colors + Engagement accents,Member benefits. Pricing tiers. Community showcase. Events. Member directory. Exclusive content. +78,Newsletter Platform,"newsletter, platform",Minimalism + Flat Design,"Swiss Modernism 2.0, Accessible & Ethical",Minimal & Direct + Conversion,Email Analytics,Brand primary + Clean white + CTA accent,Subscribe form. Archive. About. Social proof. Sample content. Simple conversion. +79,Digital Products/Downloads,"digital, downloads, products",Vibrant & Block-based + Motion-Driven,"Glassmorphism, Bento Box Grid",Feature-Rich Showcase + Conversion,E-commerce Analytics,Product category colors + Brand + Success green,Product showcase. Preview. Pricing. Instant delivery. License management. Customer reviews. +80,Church/Religious Organization,"church, organization, religious",Accessible & Ethical + Soft UI Evolution,"Minimalism, Trust & Authority",Hero-Centric Design + Social Proof,N/A - Community focused,Warm Gold + Deep Purple/Blue + White,Service times. Events. Sermons. Community. Giving. Location. Welcoming imagery. +81,Sports Team/Club,"club, sports, team",Vibrant & Block-based + Motion-Driven,"Dark Mode (OLED), 3D & Hyperrealism",Hero-Centric Design + Feature-Rich,Performance Analytics,Team colors + Energetic accents,Schedule. Roster. News. Tickets. Merchandise. Fan engagement. Action imagery. +82,Museum/Gallery,"gallery, museum",Minimalism + Motion-Driven,"Swiss Modernism 2.0, 3D & Hyperrealism",Storytelling-Driven + Feature-Rich,Visitor Analytics,Art-appropriate neutrals + Exhibition accents,Exhibitions. Collections. Tickets. Events. Virtual tours. Educational content. Art-focused design. +83,Theater/Cinema,"cinema, theater",Dark Mode (OLED) + Motion-Driven,"Vibrant & Block-based, Glassmorphism",Hero-Centric Design + Conversion,Booking Analytics,Dark + Spotlight accents + Gold,Showtimes. Seat selection. Trailers. Coming soon. Membership. Dramatic imagery. +84,Language Learning App,"app, language, learning",Claymorphism + Vibrant & Block-based,"Micro-interactions, Flat Design",Feature-Rich Showcase + Social Proof,Learning Analytics,Playful colors + Progress indicators + Country flags,Lesson structure. Progress tracking. Gamification. Speaking practice. Community. Achievement badges. +85,Coding Bootcamp,"bootcamp, coding",Dark Mode (OLED) + Minimalism,"Cyberpunk UI, Flat Design",Feature-Rich Showcase + Social Proof,Student Analytics,Code editor colors + Brand + Success green,Curriculum. Projects. Career outcomes. Alumni. Pricing. Application. Terminal aesthetic. +86,Cybersecurity Platform,"cyber, security, platform",Cyberpunk UI + Dark Mode (OLED),"Neubrutalism, Minimal & Direct",Trust & Authority + Real-Time,Real-Time Monitoring + Heat Map,Matrix Green + Deep Black + Terminal feel,Data density. Threat visualization. Dark mode default. +87,Developer Tool / IDE,"dev, developer, tool, ide",Dark Mode (OLED) + Minimalism,"Flat Design, Bento Box Grid",Minimal & Direct + Documentation,Real-Time Monitor + Terminal,Dark syntax theme colors + Blue focus,Keyboard shortcuts. Syntax highlighting. Fast performance. +88,Biotech / Life Sciences,"biotech, biology, science",Glassmorphism + Clean Science,"Minimalism, Organic Biophilic",Storytelling-Driven + Research,Data-Dense + Predictive,Sterile White + DNA Blue + Life Green,Data accuracy. Cleanliness. Complex data viz. +89,Space Tech / Aerospace,"aerospace, space, tech",Holographic / HUD + Dark Mode,"Glassmorphism, 3D & Hyperrealism",Immersive Experience + Hero,Real-Time Monitoring + 3D,Deep Space Black + Star White + Metallic,High-tech feel. Precision. Telemetry data. +90,Architecture / Interior,"architecture, design, interior",Exaggerated Minimalism + High Imagery,"Swiss Modernism 2.0, Parallax",Portfolio Grid + Visuals,Project Management + Gallery,Monochrome + Gold Accent + High Imagery,High-res images. Typography. Space. +91,Quantum Computing Interface,"quantum, computing, physics, qubit, future, science",Holographic / HUD + Dark Mode,"Glassmorphism, Spatial UI",Immersive/Interactive Experience,3D Spatial Data + Real-Time Monitor,Quantum Blue #00FFFF + Deep Black + Interference patterns,Visualize complexity. Qubit states. Probability clouds. High-tech trust. +92,Biohacking / Longevity App,"biohacking, health, longevity, tracking, wellness, science",Biomimetic / Organic 2.0,"Minimalism, Dark Mode (OLED)",Data-Dense + Storytelling,Real-Time Monitor + Biological Data,Cellular Pink/Red + DNA Blue + Clean White,Personal data privacy. Scientific credibility. Biological visualizations. +93,Autonomous Drone Fleet Manager,"drone, autonomous, fleet, aerial, logistics, robotics",HUD / Sci-Fi FUI,"Real-Time Monitor, Spatial UI",Real-Time Monitor,Geographic + Real-Time,Tactical Green #00FF00 + Alert Red + Map Dark,Real-time telemetry. 3D spatial awareness. Latency indicators. Safety alerts. +94,Generative Art Platform,"art, generative, ai, creative, platform, gallery",Minimalism (Frame) + Gen Z Chaos,"Masonry Grid, Dark Mode",Bento Grid Showcase,Gallery / Portfolio,Neutral #F5F5F5 (Canvas) + User Content,Content is king. Fast loading. Creator attribution. Minting flow. +95,Spatial Computing OS / App,"spatial, vr, ar, vision, os, immersive, mixed-reality",Spatial UI (VisionOS),"Glassmorphism, 3D & Hyperrealism",Immersive/Interactive Experience,Spatial Dashboard,Frosted Glass + System Colors + Depth,Gaze/Pinch interaction. Depth hierarchy. Environment awareness. +96,Sustainable Energy / Climate Tech,"climate, energy, sustainable, green, tech, carbon",Organic Biophilic + E-Ink / Paper,"Data-Dense, Swiss Modernism",Interactive Demo + Data,Energy/Utilities Dashboard,Earth Green + Sky Blue + Solar Yellow,Data transparency. Impact visualization. Low-carbon web design. \ No newline at end of file diff --git a/.shared/ui-ux-pro-max/data/prompts.csv b/.shared/ui-ux-pro-max/data/prompts.csv new file mode 100644 index 0000000..3d045bd --- /dev/null +++ b/.shared/ui-ux-pro-max/data/prompts.csv @@ -0,0 +1,24 @@ +STT,Style Category,AI Prompt Keywords (Copy-Paste Ready),CSS/Technical Keywords,Implementation Checklist,Design System Variables +1,Minimalism & Swiss Style,"Design a minimalist landing page. Use: white space, geometric layouts, sans-serif fonts, high contrast, grid-based structure, essential elements only. Avoid shadows and gradients. Focus on clarity and functionality.","display: grid, gap: 2rem, font-family: sans-serif, color: #000 or #FFF, max-width: 1200px, clean borders, no box-shadow unless necessary","☐ Grid-based layout 12-16 columns, ☐ Typography hierarchy clear, ☐ No unnecessary decorations, ☐ WCAG AAA contrast verified, ☐ Mobile responsive grid","--spacing: 2rem, --border-radius: 0px, --font-weight: 400-700, --shadow: none, --accent-color: single primary only" +2,Neumorphism,"Create a neumorphic UI with soft 3D effects. Use light pastels, rounded corners (12-16px), subtle soft shadows (multiple layers), no hard lines, monochromatic color scheme with light/dark variations. Embossed/debossed effect on interactive elements.","border-radius: 12-16px, box-shadow: -5px -5px 15px rgba(0,0,0,0.1), 5px 5px 15px rgba(255,255,255,0.8), background: linear-gradient(145deg, color1, color2), transform: scale on press","☐ Rounded corners 12-16px consistent, ☐ Multiple shadow layers (2-3), ☐ Pastel color verified, ☐ Monochromatic palette checked, ☐ Press animation smooth 150ms","--border-radius: 14px, --shadow-soft-1: -5px -5px 15px, --shadow-soft-2: 5px 5px 15px, --color-light: #F5F5F5, --color-primary: single pastel" +3,Glassmorphism,"Design a glassmorphic interface with frosted glass effect. Use backdrop blur (10-20px), translucent overlays (rgba 10-30% opacity), vibrant background colors, subtle borders, light source reflection, layered depth. Perfect for modern overlays and cards.","backdrop-filter: blur(15px), background: rgba(255, 255, 255, 0.15), border: 1px solid rgba(255,255,255,0.2), -webkit-backdrop-filter: blur(15px), z-index layering for depth","☐ Backdrop-filter blur 10-20px, ☐ Translucent white 15-30% opacity, ☐ Subtle border 1px light, ☐ Vibrant background verified, ☐ Text contrast 4.5:1 checked","--blur-amount: 15px, --glass-opacity: 0.15, --border-color: rgba(255,255,255,0.2), --background: vibrant color, --text-color: light/dark based on BG" +4,Brutalism,"Create a brutalist design with raw, unpolished, stark aesthetic. Use pure primary colors (red, blue, yellow), black & white, no smooth transitions (instant), sharp corners, bold large typography, visible grid lines, default system fonts, intentional 'broken' design elements.","border-radius: 0px, transition: none or 0s, font-family: system-ui or monospace, font-weight: 700+, border: visible 2-4px, colors: #FF0000, #0000FF, #FFFF00, #000000, #FFFFFF","☐ No border-radius (0px), ☐ No transitions (instant), ☐ Bold typography (700+), ☐ Pure primary colors used, ☐ Visible grid/borders, ☐ Asymmetric layout intentional","--border-radius: 0px, --transition-duration: 0s, --font-weight: 700-900, --colors: primary only, --border-style: visible, --grid-visible: true" +5,3D & Hyperrealism,"Build an immersive 3D interface using realistic textures, 3D models (Three.js/Babylon.js), complex shadows, realistic lighting, parallax scrolling (3-5 layers), physics-based motion. Include skeuomorphic elements with tactile detail.","transform: translate3d, perspective: 1000px, WebGL canvas, Three.js/Babylon.js library, box-shadow: complex multi-layer, background: complex gradients, filter: drop-shadow()","☐ WebGL/Three.js integrated, ☐ 3D models loaded, ☐ Parallax 3-5 layers, ☐ Realistic lighting verified, ☐ Complex shadows rendered, ☐ Physics animation smooth 300-400ms","--perspective: 1000px, --parallax-layers: 5, --lighting-intensity: realistic, --shadow-depth: 20-40%, --animation-duration: 300-400ms" +6,Vibrant & Block-based,"Design an energetic, vibrant interface with bold block layouts, geometric shapes, high color contrast, large typography (32px+), animated background patterns, duotone effects. Perfect for startups and youth-focused apps. Use 4-6 contrasting colors from complementary/triadic schemes.","display: flex/grid with large gaps (48px+), font-size: 32px+, background: animated patterns (CSS), color: neon/vibrant colors, animation: continuous pattern movement","☐ Block layout with 48px+ gaps, ☐ Large typography 32px+, ☐ 4-6 vibrant colors max, ☐ Animated patterns active, ☐ Scroll-snap enabled, ☐ High contrast verified (7:1+)","--block-gap: 48px, --typography-size: 32px+, --color-palette: 4-6 vibrant colors, --animation: continuous pattern, --contrast-ratio: 7:1+" +7,Dark Mode (OLED),"Create an OLED-optimized dark interface with deep black (#000000), dark grey (#121212), midnight blue accents. Use minimal glow effects, vibrant neon accents (green, blue, gold, purple), high contrast text. Optimize for eye comfort and OLED power saving.","background: #000000 or #121212, color: #FFFFFF or #E0E0E0, text-shadow: 0 0 10px neon-color (sparingly), filter: brightness(0.8) if needed, color-scheme: dark","☐ Deep black #000000 or #121212, ☐ Vibrant neon accents used, ☐ Text contrast 7:1+, ☐ Minimal glow effects, ☐ OLED power optimization, ☐ No white (#FFFFFF) background","--bg-black: #000000, --bg-dark-grey: #121212, --text-primary: #FFFFFF, --accent-neon: neon colors, --glow-effect: minimal, --oled-optimized: true" +8,Accessible & Ethical,"Design with WCAG AAA compliance. Include: high contrast (7:1+), large text (16px+), keyboard navigation, screen reader compatibility, focus states visible (3-4px ring), semantic HTML, ARIA labels, skip links, reduced motion support (prefers-reduced-motion), 44x44px touch targets.","color-contrast: 7:1+, font-size: 16px+, outline: 3-4px on :focus-visible, aria-label, role attributes, @media (prefers-reduced-motion), touch-target: 44x44px, cursor: pointer","☐ WCAG AAA verified, ☐ 7:1+ contrast checked, ☐ Keyboard navigation tested, ☐ Screen reader tested, ☐ Focus visible 3-4px, ☐ Semantic HTML used, ☐ Touch targets 44x44px","--contrast-ratio: 7:1, --font-size-min: 16px, --focus-ring: 3-4px, --touch-target: 44x44px, --wcag-level: AAA, --keyboard-accessible: true, --sr-tested: true" +9,Claymorphism,"Design a playful, toy-like interface with soft 3D, chunky elements, bubbly aesthetic, rounded edges (16-24px), thick borders (3-4px), double shadows (inner + outer), pastel colors, smooth animations. Perfect for children's apps and creative tools.","border-radius: 16-24px, border: 3-4px solid, box-shadow: inset -2px -2px 8px, 4px 4px 8px, background: pastel-gradient, animation: soft bounce (cubic-bezier 0.34, 1.56)","☐ Border-radius 16-24px, ☐ Thick borders 3-4px, ☐ Double shadows (inner+outer), ☐ Pastel colors used, ☐ Soft bounce animations, ☐ Playful interactions","--border-radius: 20px, --border-width: 3-4px, --shadow-inner: inset -2px -2px 8px, --shadow-outer: 4px 4px 8px, --color-palette: pastels, --animation: bounce" +10,Aurora UI,"Create a vibrant gradient interface inspired by Northern Lights with mesh gradients, smooth color blends, flowing animations. Use complementary color pairs (blue-orange, purple-yellow), flowing background gradients, subtle continuous animations (8-12s loops), iridescent effects.","background: conic-gradient or radial-gradient with multiple stops, animation: @keyframes gradient (8-12s), background-size: 200% 200%, filter: saturate(1.2), blend-mode: screen or multiply","☐ Mesh/flowing gradients applied, ☐ 8-12s animation loop, ☐ Complementary colors used, ☐ Smooth color transitions, ☐ Iridescent effect subtle, ☐ Text contrast verified","--gradient-colors: complementary pairs, --animation-duration: 8-12s, --blend-mode: screen, --color-saturation: 1.2, --effect: iridescent, --loop-smooth: true" +11,Retro-Futurism,"Build a retro-futuristic (cyberpunk/vaporwave) interface with neon colors (blue, pink, cyan), deep black background, 80s aesthetic, CRT scanlines, glitch effects, neon glow text/borders, monospace fonts, geometric patterns. Use neon text-shadow and animated glitch effects.","color: neon colors (#0080FF, #FF006E, #00FFFF), text-shadow: 0 0 10px neon, background: #000 or #1A1A2E, font-family: monospace, animation: glitch (skew+offset), filter: hue-rotate","☐ Neon colors used, ☐ CRT scanlines effect, ☐ Glitch animations active, ☐ Monospace font, ☐ Deep black background, ☐ Glow effects applied, ☐ 80s patterns present","--neon-colors: #0080FF #FF006E #00FFFF, --background: #000000, --font-family: monospace, --effect: glitch+glow, --scanline-opacity: 0.3, --crt-effect: true" +12,Flat Design,"Create a flat, 2D interface with bold colors, no shadows/gradients, clean lines, simple geometric shapes, icon-heavy, typography-focused, minimal ornamentation. Use 4-6 solid, bright colors in a limited palette with high saturation.","box-shadow: none, background: solid color, border-radius: 0-4px, color: solid (no gradients), fill: solid, stroke: 1-2px, font: bold sans-serif, icons: simplified SVG","☐ No shadows/gradients, ☐ 4-6 solid colors max, ☐ Clean lines consistent, ☐ Simple shapes used, ☐ Icon-heavy layout, ☐ High saturation colors, ☐ Fast loading verified","--shadow: none, --color-palette: 4-6 solid, --border-radius: 2px, --gradient: none, --icons: simplified SVG, --animation: minimal 150-200ms" +13,Skeuomorphism,"Design a realistic, textured interface with 3D depth, real-world metaphors (leather, wood, metal), complex gradients (8-12 stops), realistic shadows, grain/texture overlays, tactile press animations. Perfect for premium/luxury products.","background: complex gradient (8-12 stops), box-shadow: realistic multi-layer, background-image: texture overlay (noise, grain), filter: drop-shadow, transform: scale on press (300-500ms)","☐ Realistic textures applied, ☐ Complex gradients 8-12 stops, ☐ Multi-layer shadows, ☐ Texture overlays present, ☐ Tactile animations smooth, ☐ Depth effect pronounced","--gradient-stops: 8-12, --texture-overlay: noise+grain, --shadow-layers: 3+, --animation-duration: 300-500ms, --depth-effect: pronounced, --tactile: true" +14,Liquid Glass,"Create a premium liquid glass effect with morphing shapes, flowing animations, chromatic aberration, iridescent gradients, smooth 400-600ms transitions. Use SVG morphing for shape changes, dynamic blur, smooth color transitions creating a fluid, premium feel.","animation: morphing SVG paths (400-600ms), backdrop-filter: blur + saturate, filter: hue-rotate + brightness, blend-mode: screen, background: iridescent gradient","☐ Morphing animations 400-600ms, ☐ Chromatic aberration applied, ☐ Dynamic blur active, ☐ Iridescent gradients, ☐ Smooth color transitions, ☐ Premium feel achieved","--morph-duration: 400-600ms, --blur-amount: 15px, --chromatic-aberration: true, --iridescent: true, --blend-mode: screen, --smooth-transitions: true" +15,Motion-Driven,"Build an animation-heavy interface with scroll-triggered animations, microinteractions, parallax scrolling (3-5 layers), smooth transitions (300-400ms), entrance animations, page transitions. Use Intersection Observer for scroll effects, transform for performance, GPU acceleration.","animation: @keyframes scroll-reveal, transform: translateY/X, Intersection Observer API, will-change: transform, scroll-behavior: smooth, animation-duration: 300-400ms","☐ Scroll animations active, ☐ Parallax 3-5 layers, ☐ Entrance animations smooth, ☐ Page transitions fluid, ☐ GPU accelerated, ☐ Prefers-reduced-motion respected","--animation-duration: 300-400ms, --parallax-layers: 5, --scroll-behavior: smooth, --gpu-accelerated: true, --entrance-animation: true, --page-transition: smooth" +16,Micro-interactions,"Design with delightful micro-interactions: small 50-100ms animations, gesture-based responses, tactile feedback, loading spinners, success/error states, subtle hover effects, haptic feedback triggers for mobile. Focus on responsive, contextual interactions.","animation: short 50-100ms, transition: hover states, @media (hover: hover) for desktop, :active for press, haptic-feedback CSS/API, loading animation smooth loop","☐ Micro-animations 50-100ms, ☐ Gesture-responsive, ☐ Tactile feedback visual/haptic, ☐ Loading spinners smooth, ☐ Success/error states clear, ☐ Hover effects subtle","--micro-animation-duration: 50-100ms, --gesture-responsive: true, --haptic-feedback: true, --loading-animation: smooth, --state-feedback: success+error" +17,Inclusive Design,"Design for universal accessibility: high contrast (7:1+), large text (16px+), keyboard-only navigation, screen reader optimization, WCAG AAA compliance, symbol-based color indicators (not color-only), haptic feedback, voice interaction support, reduced motion options.","aria-* attributes complete, role attributes semantic, focus-visible: 3-4px ring, color-contrast: 7:1+, @media (prefers-reduced-motion), alt text on all images, form labels properly associated","☐ WCAG AAA verified, ☐ 7:1+ contrast all text, ☐ Keyboard accessible (Tab/Enter), ☐ Screen reader tested, ☐ Focus visible 3-4px, ☐ No color-only indicators, ☐ Haptic fallback","--contrast-ratio: 7:1, --font-size: 16px+, --keyboard-accessible: true, --sr-compatible: true, --wcag-level: AAA, --color-symbols: true, --haptic: enabled" +18,Zero Interface,"Create a voice-first, gesture-based, AI-driven interface with minimal visible UI, progressive disclosure, voice recognition UI, gesture detection, AI predictions, smart suggestions, context-aware actions. Hide controls until needed.","voice-commands: Web Speech API, gesture-detection: touch events, AI-predictions: hidden by default (reveal on hover), progressive-disclosure: show on demand, minimal UI visible","☐ Voice commands responsive, ☐ Gesture detection active, ☐ AI predictions hidden/revealed, ☐ Progressive disclosure working, ☐ Minimal visible UI, ☐ Smart suggestions contextual","--voice-ui: enabled, --gesture-detection: active, --ai-predictions: smart, --progressive-disclosure: true, --visible-ui: minimal, --context-aware: true" +19,Soft UI Evolution,"Design evolved neumorphism with improved contrast (WCAG AA+), modern aesthetics, subtle depth, accessibility focus. Use soft shadows (softer than flat but clearer than pure neumorphism), better color hierarchy, improved focus states, modern 200-300ms animations.","box-shadow: softer multi-layer (0 2px 4px), background: improved contrast pastels, border-radius: 8-12px, animation: 200-300ms smooth, outline: 2-3px on focus, contrast: 4.5:1+","☐ Improved contrast AA/AAA, ☐ Soft shadows modern, ☐ Border-radius 8-12px, ☐ Animations 200-300ms, ☐ Focus states visible, ☐ Color hierarchy clear","--shadow-soft: modern blend, --border-radius: 10px, --animation-duration: 200-300ms, --contrast-ratio: 4.5:1+, --color-hierarchy: improved, --wcag-level: AA+" +20,Bento Grids,"Design a Bento Grid layout. Use: modular grid system, rounded corners (16-24px), different card sizes (1x1, 2x1, 2x2), card-based hierarchy, soft backgrounds (#F5F5F7), subtle borders, content-first, Apple-style aesthetic.","display: grid, grid-template-columns: repeat(auto-fit, minmax(...)), gap: 1rem, border-radius: 20px, background: #FFF, box-shadow: subtle","☐ Grid layout (CSS Grid), ☐ Rounded corners 16-24px, ☐ Varied card spans, ☐ Content fits card size, ☐ Responsive re-flow, ☐ Apple-like aesthetic","--grid-gap: 20px, --card-radius: 24px, --card-bg: #FFFFFF, --page-bg: #F5F5F7, --shadow: soft" +21,Neubrutalism,"Design a neubrutalist interface. Use: high contrast, hard black borders (3px+), bright pop colors, no blur, sharp or slightly rounded corners, bold typography, hard shadows (offset 4px 4px), raw aesthetic but functional.","border: 3px solid black, box-shadow: 5px 5px 0px black, colors: #FFDB58 #FF6B6B #4ECDC4, font-weight: 700, no gradients","☐ Hard borders (2-4px), ☐ Hard offset shadows, ☐ High saturation colors, ☐ Bold typography, ☐ No blurs/gradients, ☐ Distinctive 'ugly-cute' look","--border-width: 3px, --shadow-offset: 4px, --shadow-color: #000, --colors: high saturation, --font: bold sans" +22,HUD / Sci-Fi FUI,"Design a futuristic HUD (Heads Up Display) or FUI. Use: thin lines (1px), neon cyan/blue on black, technical markers, decorative brackets, data visualization, monospaced tech fonts, glowing elements, transparency.","border: 1px solid rgba(0,255,255,0.5), color: #00FFFF, background: transparent or rgba(0,0,0,0.8), font-family: monospace, text-shadow: 0 0 5px cyan","☐ Fine lines 1px, ☐ Neon glow text/borders, ☐ Monospaced font, ☐ Dark/Transparent BG, ☐ Decorative tech markers, ☐ Holographic feel","--hud-color: #00FFFF, --bg-color: rgba(0,10,20,0.9), --line-width: 1px, --glow: 0 0 5px, --font: monospace" +23,Pixel Art,"Design a pixel art inspired interface. Use: pixelated fonts, 8-bit or 16-bit aesthetic, sharp edges (image-rendering: pixelated), limited color palette, blocky UI elements, retro gaming feel.","font-family: 'Press Start 2P', image-rendering: pixelated, box-shadow: 4px 0 0 #000 (pixel border), no anti-aliasing","☐ Pixelated fonts loaded, ☐ Images sharp (no blur), ☐ CSS box-shadow for pixel borders, ☐ Retro palette, ☐ Blocky layout","--pixel-size: 4px, --font: pixel font, --border-style: pixel-shadow, --anti-alias: none" diff --git a/.shared/ui-ux-pro-max/data/stacks/flutter.csv b/.shared/ui-ux-pro-max/data/stacks/flutter.csv new file mode 100644 index 0000000..b8dfd0d --- /dev/null +++ b/.shared/ui-ux-pro-max/data/stacks/flutter.csv @@ -0,0 +1,53 @@ +No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL +1,Widgets,Use StatelessWidget when possible,Immutable widgets are simpler,StatelessWidget for static UI,StatefulWidget for everything,class MyWidget extends StatelessWidget,class MyWidget extends StatefulWidget (static),Medium,https://api.flutter.dev/flutter/widgets/StatelessWidget-class.html +2,Widgets,Keep widgets small,Single responsibility principle,Extract widgets into smaller pieces,Large build methods,Column(children: [Header() Content()]),500+ line build method,Medium, +3,Widgets,Use const constructors,Compile-time constants for performance,const MyWidget() when possible,Non-const for static widgets,const Text('Hello'),Text('Hello') for literals,High,https://dart.dev/guides/language/language-tour#constant-constructors +4,Widgets,Prefer composition over inheritance,Combine widgets using children,Compose widgets,Extend widget classes,Container(child: MyContent()),class MyContainer extends Container,Medium, +5,State,Use setState correctly,Minimal state in StatefulWidget,setState for UI state changes,setState for business logic,setState(() { _counter++; }),Complex logic in setState,Medium,https://api.flutter.dev/flutter/widgets/State/setState.html +6,State,Avoid setState in build,Never call setState during build,setState in callbacks only,setState in build method,onPressed: () => setState(() {}),build() { setState(); },High, +7,State,Use state management for complex apps,Provider Riverpod BLoC,State management for shared state,setState for global state,Provider.of(context),Global setState calls,Medium, +8,State,Prefer Riverpod or Provider,Recommended state solutions,Riverpod for new projects,InheritedWidget manually,ref.watch(myProvider),Custom InheritedWidget,Medium,https://riverpod.dev/ +9,State,Dispose resources,Clean up controllers and subscriptions,dispose() for cleanup,Memory leaks from subscriptions,@override void dispose() { controller.dispose(); },No dispose implementation,High, +10,Layout,Use Column and Row,Basic layout widgets,Column Row for linear layouts,Stack for simple layouts,"Column(children: [Text(), Button()])",Stack for vertical list,Medium,https://api.flutter.dev/flutter/widgets/Column-class.html +11,Layout,Use Expanded and Flexible,Control flex behavior,Expanded to fill space,Fixed sizes in flex containers,Expanded(child: Container()),Container(width: 200) in Row,Medium, +12,Layout,Use SizedBox for spacing,Consistent spacing,SizedBox for gaps,Container for spacing only,SizedBox(height: 16),Container(height: 16),Low, +13,Layout,Use LayoutBuilder for responsive,Respond to constraints,LayoutBuilder for adaptive layouts,Fixed sizes for responsive,LayoutBuilder(builder: (context constraints) {}),Container(width: 375),Medium,https://api.flutter.dev/flutter/widgets/LayoutBuilder-class.html +14,Layout,Avoid deep nesting,Keep widget tree shallow,Extract deeply nested widgets,10+ levels of nesting,Extract widget to method or class,Column(Row(Column(Row(...)))),Medium, +15,Lists,Use ListView.builder,Lazy list building,ListView.builder for long lists,ListView with children for large lists,"ListView.builder(itemCount: 100, itemBuilder: ...)",ListView(children: items.map(...).toList()),High,https://api.flutter.dev/flutter/widgets/ListView-class.html +16,Lists,Provide itemExtent when known,Skip measurement,itemExtent for fixed height items,No itemExtent for uniform lists,ListView.builder(itemExtent: 50),ListView.builder without itemExtent,Medium, +17,Lists,Use keys for stateful items,Preserve widget state,Key for stateful list items,No key for dynamic lists,ListTile(key: ValueKey(item.id)),ListTile without key,High, +18,Lists,Use SliverList for custom scroll,Custom scroll effects,CustomScrollView with Slivers,Nested ListViews,CustomScrollView(slivers: [SliverList()]),ListView inside ListView,Medium,https://api.flutter.dev/flutter/widgets/SliverList-class.html +19,Navigation,Use Navigator 2.0 or GoRouter,Declarative routing,go_router for navigation,Navigator.push for complex apps,GoRouter(routes: [...]),Navigator.push everywhere,Medium,https://pub.dev/packages/go_router +20,Navigation,Use named routes,Organized navigation,Named routes for clarity,Anonymous routes,Navigator.pushNamed(context '/home'),Navigator.push(context MaterialPageRoute()),Low, +21,Navigation,Handle back button (PopScope),Android back behavior and predictive back (Android 14+),Use PopScope widget (WillPopScope is deprecated),Use WillPopScope,"PopScope(canPop: false, onPopInvoked: (didPop) => ...)",WillPopScope(onWillPop: ...),High,https://api.flutter.dev/flutter/widgets/PopScope-class.html +22,Navigation,Pass typed arguments,Type-safe route arguments,Typed route arguments,Dynamic arguments,MyRoute(id: '123'),arguments: {'id': '123'},Medium, +23,Async,Use FutureBuilder,Async UI building,FutureBuilder for async data,setState for async,FutureBuilder(future: fetchData()),fetchData().then((d) => setState()),Medium,https://api.flutter.dev/flutter/widgets/FutureBuilder-class.html +24,Async,Use StreamBuilder,Stream UI building,StreamBuilder for streams,Manual stream subscription,StreamBuilder(stream: myStream),stream.listen in initState,Medium,https://api.flutter.dev/flutter/widgets/StreamBuilder-class.html +25,Async,Handle loading and error states,Complete async UI states,ConnectionState checks,Only success state,if (snapshot.connectionState == ConnectionState.waiting),No loading indicator,High, +26,Async,Cancel subscriptions,Clean up stream subscriptions,Cancel in dispose,Memory leaks,subscription.cancel() in dispose,No subscription cleanup,High, +27,Theming,Use ThemeData,Consistent theming,ThemeData for app theme,Hardcoded colors,Theme.of(context).primaryColor,Color(0xFF123456) everywhere,Medium,https://api.flutter.dev/flutter/material/ThemeData-class.html +28,Theming,Use ColorScheme,Material 3 color system,ColorScheme for colors,Individual color properties,colorScheme: ColorScheme.fromSeed(),primaryColor: Colors.blue,Medium, +29,Theming,Access theme via context,Dynamic theme access,Theme.of(context),Static theme reference,Theme.of(context).textTheme.bodyLarge,TextStyle(fontSize: 16),Medium, +30,Theming,Support dark mode,Respect system theme,darkTheme in MaterialApp,Light theme only,"MaterialApp(theme: light, darkTheme: dark)",MaterialApp(theme: light),Medium, +31,Animation,Use implicit animations,Simple animations,AnimatedContainer AnimatedOpacity,Explicit for simple transitions,AnimatedContainer(duration: Duration()),AnimationController for fade,Low,https://api.flutter.dev/flutter/widgets/AnimatedContainer-class.html +32,Animation,Use AnimationController for complex,Fine-grained control,AnimationController with Ticker,Implicit for complex sequences,AnimationController(vsync: this),AnimatedContainer for staggered,Medium, +33,Animation,Dispose AnimationControllers,Clean up animation resources,dispose() for controllers,Memory leaks,controller.dispose() in dispose,No controller disposal,High, +34,Animation,Use Hero for transitions,Shared element transitions,Hero for navigation animations,Manual shared element,Hero(tag: 'image' child: Image()),Custom shared element animation,Low,https://api.flutter.dev/flutter/widgets/Hero-class.html +35,Forms,Use Form widget,Form validation,Form with GlobalKey,Individual validation,Form(key: _formKey child: ...),TextField without Form,Medium,https://api.flutter.dev/flutter/widgets/Form-class.html +36,Forms,Use TextEditingController,Control text input,Controller for text fields,onChanged for all text,final controller = TextEditingController(),onChanged: (v) => setState(),Medium, +37,Forms,Validate on submit,Form validation flow,_formKey.currentState!.validate(),Skip validation,if (_formKey.currentState!.validate()),Submit without validation,High, +38,Forms,Dispose controllers,Clean up text controllers,dispose() for controllers,Memory leaks,controller.dispose() in dispose,No controller disposal,High, +39,Performance,Use const widgets,Reduce rebuilds,const for static widgets,No const for literals,const Icon(Icons.add),Icon(Icons.add),High, +40,Performance,Avoid rebuilding entire tree,Minimal rebuild scope,Isolate changing widgets,setState on parent,Consumer only around changing widget,setState on root widget,High, +41,Performance,Use RepaintBoundary,Isolate repaints,RepaintBoundary for animations,Full screen repaints,RepaintBoundary(child: AnimatedWidget()),Animation without boundary,Medium,https://api.flutter.dev/flutter/widgets/RepaintBoundary-class.html +42,Performance,Profile with DevTools,Measure before optimizing,Flutter DevTools profiling,Guess at performance,DevTools performance tab,Optimize without measuring,Medium,https://docs.flutter.dev/tools/devtools +43,Accessibility,Use Semantics widget,Screen reader support,Semantics for accessibility,Missing accessibility info,Semantics(label: 'Submit button'),GestureDetector without semantics,High,https://api.flutter.dev/flutter/widgets/Semantics-class.html +44,Accessibility,Support large fonts,MediaQuery text scaling,MediaQuery.textScaleFactor,Fixed font sizes,style: Theme.of(context).textTheme,TextStyle(fontSize: 14),High, +45,Accessibility,Test with screen readers,TalkBack and VoiceOver,Test accessibility regularly,Skip accessibility testing,Regular TalkBack testing,No screen reader testing,High, +46,Testing,Use widget tests,Test widget behavior,WidgetTester for UI tests,Unit tests only,testWidgets('...' (tester) async {}),Only test() for UI,Medium,https://docs.flutter.dev/testing +47,Testing,Use integration tests,Full app testing,integration_test package,Manual testing only,IntegrationTestWidgetsFlutterBinding,Manual E2E testing,Medium, +48,Testing,Mock dependencies,Isolate tests,Mockito or mocktail,Real dependencies in tests,when(mock.method()).thenReturn(),Real API calls in tests,Medium, +49,Platform,Use Platform checks,Platform-specific code,Platform.isIOS Platform.isAndroid,Same code for all platforms,if (Platform.isIOS) {},Hardcoded iOS behavior,Medium, +50,Platform,Use kIsWeb for web,Web platform detection,kIsWeb for web checks,Platform for web,if (kIsWeb) {},Platform.isWeb (doesn't exist),Medium, +51,Packages,Use pub.dev packages,Community packages,Popular maintained packages,Custom implementations,cached_network_image,Custom image cache,Medium,https://pub.dev/ +52,Packages,Check package quality,Quality before adding,Pub points and popularity,Any package without review,100+ pub points,Unmaintained packages,Medium, diff --git a/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv b/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv new file mode 100644 index 0000000..51ff57a --- /dev/null +++ b/.shared/ui-ux-pro-max/data/stacks/html-tailwind.csv @@ -0,0 +1,56 @@ +No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL +1,Animation,Use Tailwind animate utilities,Built-in animations are optimized and respect reduced-motion,Use animate-pulse animate-spin animate-ping,Custom @keyframes for simple effects,animate-pulse,@keyframes pulse {...},Medium,https://tailwindcss.com/docs/animation +2,Animation,Limit bounce animations,Continuous bounce is distracting and causes motion sickness,Use animate-bounce sparingly on CTAs only,Multiple bounce animations on page,Single CTA with animate-bounce,5+ elements with animate-bounce,High, +3,Animation,Transition duration,Use appropriate transition speeds for UI feedback,duration-150 to duration-300 for UI,duration-1000 or longer for UI elements,transition-all duration-200,transition-all duration-1000,Medium,https://tailwindcss.com/docs/transition-duration +4,Animation,Hover transitions,Add smooth transitions on hover state changes,Add transition class with hover states,Instant hover changes without transition,hover:bg-gray-100 transition-colors,hover:bg-gray-100 (no transition),Low, +5,Z-Index,Use Tailwind z-* scale,Consistent stacking context with predefined scale,z-0 z-10 z-20 z-30 z-40 z-50,Arbitrary z-index values,z-50 for modals,z-[9999],Medium,https://tailwindcss.com/docs/z-index +6,Z-Index,Fixed elements z-index,Fixed navigation and modals need explicit z-index,z-50 for nav z-40 for dropdowns,Relying on DOM order for stacking,fixed top-0 z-50,fixed top-0 (no z-index),High, +7,Z-Index,Negative z-index for backgrounds,Use negative z-index for decorative backgrounds,z-[-1] for background elements,Positive z-index for backgrounds,-z-10 for decorative,z-10 for background,Low, +8,Layout,Container max-width,Limit content width for readability,max-w-7xl mx-auto for main content,Full-width content on large screens,max-w-7xl mx-auto px-4,w-full (no max-width),Medium,https://tailwindcss.com/docs/container +9,Layout,Responsive padding,Adjust padding for different screen sizes,px-4 md:px-6 lg:px-8,Same padding all sizes,px-4 sm:px-6 lg:px-8,px-8 (same all sizes),Medium, +10,Layout,Grid gaps,Use consistent gap utilities for spacing,gap-4 gap-6 gap-8,Margins on individual items,grid gap-6,grid with mb-4 on each item,Medium,https://tailwindcss.com/docs/gap +11,Layout,Flexbox alignment,Use flex utilities for alignment,items-center justify-between,Multiple nested wrappers,flex items-center justify-between,Nested divs for alignment,Low, +12,Images,Aspect ratio,Maintain consistent image aspect ratios,aspect-video aspect-square,No aspect ratio on containers,aspect-video rounded-lg,No aspect control,Medium,https://tailwindcss.com/docs/aspect-ratio +13,Images,Object fit,Control image scaling within containers,object-cover object-contain,Stretched distorted images,object-cover w-full h-full,No object-fit,Medium,https://tailwindcss.com/docs/object-fit +14,Images,Lazy loading,Defer loading of off-screen images,loading='lazy' on images,All images eager load,, without lazy,High, +15,Images,Responsive images,Serve appropriate image sizes,srcset and sizes attributes,Same large image all devices,srcset with multiple sizes,4000px image everywhere,High, +16,Typography,Prose plugin,Use @tailwindcss/typography for rich text,prose prose-lg for article content,Custom styles for markdown,prose prose-lg max-w-none,Custom text styling,Medium,https://tailwindcss.com/docs/typography-plugin +17,Typography,Line height,Use appropriate line height for readability,leading-relaxed for body text,Default tight line height,leading-relaxed (1.625),leading-none or leading-tight,Medium,https://tailwindcss.com/docs/line-height +18,Typography,Font size scale,Use consistent text size scale,text-sm text-base text-lg text-xl,Arbitrary font sizes,text-lg,text-[17px],Low,https://tailwindcss.com/docs/font-size +19,Typography,Text truncation,Handle long text gracefully,truncate or line-clamp-*,Overflow breaking layout,line-clamp-2,No overflow handling,Medium,https://tailwindcss.com/docs/text-overflow +20,Colors,Opacity utilities,Use color opacity utilities,bg-black/50 text-white/80,Separate opacity class,bg-black/50,bg-black opacity-50,Low,https://tailwindcss.com/docs/background-color +21,Colors,Dark mode,Support dark mode with dark: prefix,dark:bg-gray-900 dark:text-white,No dark mode support,dark:bg-gray-900,Only light theme,Medium,https://tailwindcss.com/docs/dark-mode +22,Colors,Semantic colors,Use semantic color naming in config,primary secondary danger success,Generic color names in components,bg-primary,bg-blue-500 everywhere,Medium, +23,Spacing,Consistent spacing scale,Use Tailwind spacing scale consistently,p-4 m-6 gap-8,Arbitrary pixel values,p-4 (1rem),p-[15px],Low,https://tailwindcss.com/docs/customizing-spacing +24,Spacing,Negative margins,Use sparingly for overlapping effects,-mt-4 for overlapping elements,Negative margins for layout fixing,-mt-8 for card overlap,-m-2 to fix spacing issues,Medium, +25,Spacing,Space between,Use space-y-* for vertical lists,space-y-4 on flex/grid column,Margin on each child,space-y-4,Each child has mb-4,Low,https://tailwindcss.com/docs/space +26,Forms,Focus states,Always show focus indicators,focus:ring-2 focus:ring-blue-500,Remove focus outline,focus:ring-2 focus:ring-offset-2,focus:outline-none (no replacement),High, +27,Forms,Input sizing,Consistent input dimensions,h-10 px-3 for inputs,Inconsistent input heights,h-10 w-full px-3,Various heights per input,Medium, +28,Forms,Disabled states,Clear disabled styling,disabled:opacity-50 disabled:cursor-not-allowed,No disabled indication,disabled:opacity-50,Same style as enabled,Medium, +29,Forms,Placeholder styling,Style placeholder text appropriately,placeholder:text-gray-400,Dark placeholder text,placeholder:text-gray-400,Default dark placeholder,Low, +30,Responsive,Mobile-first approach,Start with mobile styles and add breakpoints,Default mobile + md: lg: xl:,Desktop-first approach,text-sm md:text-base,text-base max-md:text-sm,Medium,https://tailwindcss.com/docs/responsive-design +31,Responsive,Breakpoint testing,Test at standard breakpoints,320 375 768 1024 1280 1536,Only test on development device,Test all breakpoints,Single device testing,High, +32,Responsive,Hidden/shown utilities,Control visibility per breakpoint,hidden md:block,Different content per breakpoint,hidden md:flex,Separate mobile/desktop components,Low,https://tailwindcss.com/docs/display +33,Buttons,Button sizing,Consistent button dimensions,px-4 py-2 or px-6 py-3,Inconsistent button sizes,px-4 py-2 text-sm,Various padding per button,Medium, +34,Buttons,Touch targets,Minimum 44px touch target on mobile,min-h-[44px] on mobile,Small buttons on mobile,min-h-[44px] min-w-[44px],h-8 w-8 on mobile,High, +35,Buttons,Loading states,Show loading feedback,disabled + spinner icon,Clickable during loading,,Button without loading state,High, +36,Buttons,Icon buttons,Accessible icon-only buttons,aria-label on icon buttons,Icon button without label,,,High, +37,Cards,Card structure,Consistent card styling,rounded-lg shadow-md p-6,Inconsistent card styles,rounded-2xl shadow-lg p-6,Mixed card styling,Low, +38,Cards,Card hover states,Interactive cards should have hover feedback,hover:shadow-lg transition-shadow,No hover on clickable cards,hover:shadow-xl transition-shadow,Static cards that are clickable,Medium, +39,Cards,Card spacing,Consistent internal card spacing,space-y-4 for card content,Inconsistent internal spacing,space-y-4 or p-6,Mixed mb-2 mb-4 mb-6,Low, +40,Accessibility,Screen reader text,Provide context for screen readers,sr-only for hidden labels,Missing context for icons,Close menu,No label for icon button,High,https://tailwindcss.com/docs/screen-readers +41,Accessibility,Focus visible,Show focus only for keyboard users,focus-visible:ring-2,Focus on all interactions,focus-visible:ring-2,focus:ring-2 (shows on click too),Medium, +42,Accessibility,Reduced motion,Respect user motion preferences,motion-reduce:animate-none,Ignore motion preferences,motion-reduce:transition-none,No reduced motion support,High,https://tailwindcss.com/docs/hover-focus-and-other-states#prefers-reduced-motion +43,Performance,Configure content paths,Tailwind needs to know where classes are used,Use 'content' array in config,Use deprecated 'purge' option (v2),"content: ['./src/**/*.{js,ts,jsx,tsx}']",purge: [...],High,https://tailwindcss.com/docs/content-configuration +44,Performance,JIT mode,Use JIT for faster builds and smaller bundles,JIT enabled (default in v3),Full CSS in development,Tailwind v3 defaults,Tailwind v2 without JIT,Medium, +45,Performance,Avoid @apply bloat,Use @apply sparingly,Direct utilities in HTML,Heavy @apply usage,class='px-4 py-2 rounded',@apply px-4 py-2 rounded;,Low,https://tailwindcss.com/docs/reusing-styles +46,Plugins,Official plugins,Use official Tailwind plugins,@tailwindcss/forms typography aspect-ratio,Custom implementations,@tailwindcss/forms,Custom form reset CSS,Medium,https://tailwindcss.com/docs/plugins +47,Plugins,Custom utilities,Create utilities for repeated patterns,Custom utility in config,Repeated arbitrary values,Custom shadow utility,"shadow-[0_4px_20px_rgba(0,0,0,0.1)] everywhere",Medium, +48,Layout,Container Queries,Use @container for component-based responsiveness,Use @container and @lg: etc.,Media queries for component internals,@container @lg:grid-cols-2,@media (min-width: ...) inside component,Medium,https://github.com/tailwindlabs/tailwindcss-container-queries +49,Interactivity,Group and Peer,Style based on parent/sibling state,group-hover peer-checked,JS for simple state interactions,group-hover:text-blue-500,onMouseEnter={() => setHover(true)},Low,https://tailwindcss.com/docs/hover-focus-and-other-states#styling-based-on-parent-state +50,Customization,Arbitrary Values,Use [] for one-off values,w-[350px] for specific needs,Creating config for single use,top-[117px] (if strictly needed),style={{ top: '117px' }},Low,https://tailwindcss.com/docs/adding-custom-styles#using-arbitrary-values +51,Colors,Theme color variables,Define colors in Tailwind theme and use directly,bg-primary text-success border-cta,bg-[var(--color-primary)] text-[var(--color-success)],bg-primary,bg-[var(--color-primary)],Medium,https://tailwindcss.com/docs/customizing-colors +52,Colors,Use bg-linear-to-* for gradients,Tailwind v4 uses bg-linear-to-* syntax for gradients,bg-linear-to-r bg-linear-to-b,bg-gradient-to-* (deprecated in v4),bg-linear-to-r from-blue-500 to-purple-500,bg-gradient-to-r from-blue-500 to-purple-500,Medium,https://tailwindcss.com/docs/background-image +53,Layout,Use shrink-0 shorthand,Shorter class name for flex-shrink-0,shrink-0 shrink,flex-shrink-0 flex-shrink,shrink-0,flex-shrink-0,Low,https://tailwindcss.com/docs/flex-shrink +54,Layout,Use size-* for square dimensions,Single utility for equal width and height,size-4 size-8 size-12,Separate h-* w-* for squares,size-6,h-6 w-6,Low,https://tailwindcss.com/docs/size +55,Images,SVG explicit dimensions,Add width/height attributes to SVGs to prevent layout shift before CSS loads,,SVG without explicit dimensions,,,High, diff --git a/.shared/ui-ux-pro-max/data/stacks/nextjs.csv b/.shared/ui-ux-pro-max/data/stacks/nextjs.csv new file mode 100644 index 0000000..8762161 --- /dev/null +++ b/.shared/ui-ux-pro-max/data/stacks/nextjs.csv @@ -0,0 +1,53 @@ +No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL +1,Routing,Use App Router for new projects,App Router is the recommended approach in Next.js 14+,app/ directory with page.tsx,pages/ for new projects,app/dashboard/page.tsx,pages/dashboard.tsx,Medium,https://nextjs.org/docs/app +2,Routing,Use file-based routing,Create routes by adding files in app directory,page.tsx for routes layout.tsx for layouts,Manual route configuration,app/blog/[slug]/page.tsx,Custom router setup,Medium,https://nextjs.org/docs/app/building-your-application/routing +3,Routing,Colocate related files,Keep components styles tests with their routes,Component files alongside page.tsx,Separate components folder,app/dashboard/_components/,components/dashboard/,Low, +4,Routing,Use route groups for organization,Group routes without affecting URL,Parentheses for route groups,Nested folders affecting URL,(marketing)/about/page.tsx,marketing/about/page.tsx,Low,https://nextjs.org/docs/app/building-your-application/routing/route-groups +5,Routing,Handle loading states,Use loading.tsx for route loading UI,loading.tsx alongside page.tsx,Manual loading state management,app/dashboard/loading.tsx,useState for loading in page,Medium,https://nextjs.org/docs/app/building-your-application/routing/loading-ui-and-streaming +6,Routing,Handle errors with error.tsx,Catch errors at route level,error.tsx with reset function,try/catch in every component,app/dashboard/error.tsx,try/catch in page component,High,https://nextjs.org/docs/app/building-your-application/routing/error-handling +7,Rendering,Use Server Components by default,Server Components reduce client JS bundle,Keep components server by default,Add 'use client' unnecessarily,export default function Page(),('use client') for static content,High,https://nextjs.org/docs/app/building-your-application/rendering/server-components +8,Rendering,Mark Client Components explicitly,'use client' for interactive components,Add 'use client' only when needed,Server Component with hooks/events,('use client') for onClick useState,No directive with useState,High,https://nextjs.org/docs/app/building-your-application/rendering/client-components +9,Rendering,Push Client Components down,Keep Client Components as leaf nodes,Client wrapper for interactive parts only,Mark page as Client Component, in Server Page,('use client') on page.tsx,High, +10,Rendering,Use streaming for better UX,Stream content with Suspense boundaries,Suspense for slow data fetches,Wait for all data before render,,await allData then render,Medium,https://nextjs.org/docs/app/building-your-application/routing/loading-ui-and-streaming +11,Rendering,Choose correct rendering strategy,SSG for static SSR for dynamic ISR for semi-static,generateStaticParams for known paths,SSR for static content,export const revalidate = 3600,fetch without cache config,Medium, +12,DataFetching,Fetch data in Server Components,Fetch directly in async Server Components,async function Page() { const data = await fetch() },useEffect for initial data,const data = await fetch(url),useEffect(() => fetch(url)),High,https://nextjs.org/docs/app/building-your-application/data-fetching +13,DataFetching,Configure caching explicitly (Next.js 15+),Next.js 15 changed defaults to uncached for fetch,Explicitly set cache: 'force-cache' for static data,Assume default is cached (it's not in Next.js 15),fetch(url { cache: 'force-cache' }),fetch(url) // Uncached in v15,High,https://nextjs.org/docs/app/building-your-application/upgrading/version-15 +14,DataFetching,Deduplicate fetch requests,React and Next.js dedupe same requests,Same fetch call in multiple components,Manual request deduplication,Multiple components fetch same URL,Custom cache layer,Low, +15,DataFetching,Use Server Actions for mutations,Server Actions for form submissions,action={serverAction} in forms,API route for every mutation,
,
,Medium,https://nextjs.org/docs/app/building-your-application/data-fetching/server-actions-and-mutations +16,DataFetching,Revalidate data appropriately,Use revalidatePath/revalidateTag after mutations,Revalidate after Server Action,'use client' with manual refetch,revalidatePath('/posts'),router.refresh() everywhere,Medium,https://nextjs.org/docs/app/building-your-application/caching#revalidating +17,Images,Use next/image for optimization,Automatic image optimization and lazy loading, component for all images,
tags directly,{},,High,https://nextjs.org/docs/app/building-your-application/optimizing/images +18,Images,Provide width and height,Prevent layout shift with dimensions,width and height props or fill,Missing dimensions,,,High, +19,Images,Use fill for responsive images,Fill container with object-fit,fill prop with relative parent,Fixed dimensions for responsive,"",,Medium, +20,Images,Configure remote image domains,Whitelist external image sources,remotePatterns in next.config.js,Allow all domains,remotePatterns: [{ hostname: 'cdn.example.com' }],domains: ['*'],High,https://nextjs.org/docs/app/api-reference/components/image#remotepatterns +21,Images,Use priority for LCP images,Mark above-fold images as priority,priority prop on hero images,All images with priority,, on every image,Medium, +22,Fonts,Use next/font for fonts,Self-hosted fonts with zero layout shift,next/font/google or next/font/local,External font links,import { Inter } from 'next/font/google',"",Medium,https://nextjs.org/docs/app/building-your-application/optimizing/fonts +23,Fonts,Apply font to layout,Set font in root layout for consistency,className on body in layout.tsx,Font in individual pages,,Each page imports font,Low, +24,Fonts,Use variable fonts,Variable fonts reduce bundle size,Single variable font file,Multiple font weights as files,Inter({ subsets: ['latin'] }),Inter_400 Inter_500 Inter_700,Low, +25,Metadata,Use generateMetadata for dynamic,Generate metadata based on params,export async function generateMetadata(),Hardcoded metadata everywhere,generateMetadata({ params }),export const metadata = {},Medium,https://nextjs.org/docs/app/building-your-application/optimizing/metadata +26,Metadata,Include OpenGraph images,Add OG images for social sharing,opengraph-image.tsx or og property,Missing social preview images,opengraph: { images: ['/og.png'] },No OG configuration,Medium, +27,Metadata,Use metadata API,Export metadata object for static metadata,export const metadata = {},Manual head tags,export const metadata = { title: 'Page' },Page,Medium, +28,API,Use Route Handlers for APIs,app/api routes for API endpoints,app/api/users/route.ts,pages/api for new projects,export async function GET(request),export default function handler,Medium,https://nextjs.org/docs/app/building-your-application/routing/route-handlers +29,API,Return proper Response objects,Use NextResponse for API responses,NextResponse.json() for JSON,Plain objects or res.json(),return NextResponse.json({ data }),return { data },Medium, +30,API,Handle HTTP methods explicitly,Export named functions for methods,Export GET POST PUT DELETE,Single handler for all methods,export async function POST(),switch(req.method),Low, +31,API,Validate request body,Validate input before processing,Zod or similar for validation,Trust client input,const body = schema.parse(await req.json()),const body = await req.json(),High, +32,Middleware,Use middleware for auth,Protect routes with middleware.ts,middleware.ts at root,Auth check in every page,export function middleware(request),if (!session) redirect in page,Medium,https://nextjs.org/docs/app/building-your-application/routing/middleware +33,Middleware,Match specific paths,Configure middleware matcher,config.matcher for specific routes,Run middleware on all routes,matcher: ['/dashboard/:path*'],No matcher config,Medium, +34,Middleware,Keep middleware edge-compatible,Middleware runs on Edge runtime,Edge-compatible code only,Node.js APIs in middleware,Edge-compatible auth check,fs.readFile in middleware,High, +35,Environment,Use NEXT_PUBLIC prefix,Client-accessible env vars need prefix,NEXT_PUBLIC_ for client vars,Server vars exposed to client,NEXT_PUBLIC_API_URL,API_SECRET in client code,High,https://nextjs.org/docs/app/building-your-application/configuring/environment-variables +36,Environment,Validate env vars,Check required env vars exist,Validate on startup,Undefined env at runtime,if (!process.env.DATABASE_URL) throw,process.env.DATABASE_URL (might be undefined),High, +37,Environment,Use .env.local for secrets,Local env file for development secrets,.env.local gitignored,Secrets in .env committed,.env.local with secrets,.env with DATABASE_PASSWORD,High, +38,Performance,Analyze bundle size,Use @next/bundle-analyzer,Bundle analyzer in dev,Ship large bundles blindly,ANALYZE=true npm run build,No bundle analysis,Medium,https://nextjs.org/docs/app/building-your-application/optimizing/bundle-analyzer +39,Performance,Use dynamic imports,Code split with next/dynamic,dynamic() for heavy components,Import everything statically,const Chart = dynamic(() => import('./Chart')),import Chart from './Chart',Medium,https://nextjs.org/docs/app/building-your-application/optimizing/lazy-loading +40,Performance,Avoid layout shifts,Reserve space for dynamic content,Skeleton loaders aspect ratios,Content popping in,"",No placeholder for async content,High, +41,Performance,Use Partial Prerendering,Combine static and dynamic in one route,Static shell with Suspense holes,Full dynamic or static pages,Static header + dynamic content,Entire page SSR,Low,https://nextjs.org/docs/app/building-your-application/rendering/partial-prerendering +42,Link,Use next/link for navigation,Client-side navigation with prefetching," for internal links", for internal navigation,"About","About",High,https://nextjs.org/docs/app/api-reference/components/link +43,Link,Prefetch strategically,Control prefetching behavior,prefetch={false} for low-priority,Prefetch all links,,Default prefetch on every link,Low, +44,Link,Use scroll option appropriately,Control scroll behavior on navigation,scroll={false} for tabs pagination,Always scroll to top,,Manual scroll management,Low, +45,Config,Use next.config.js correctly,Configure Next.js behavior,Proper config options,Deprecated or wrong options,images: { remotePatterns: [] },images: { domains: [] },Medium,https://nextjs.org/docs/app/api-reference/next-config-js +46,Config,Enable strict mode,Catch potential issues early,reactStrictMode: true,Strict mode disabled,reactStrictMode: true,reactStrictMode: false,Medium, +47,Config,Configure redirects and rewrites,Use config for URL management,redirects() rewrites() in config,Manual redirect handling,redirects: async () => [...],res.redirect in pages,Medium,https://nextjs.org/docs/app/api-reference/next-config-js/redirects +48,Deployment,Use Vercel for easiest deploy,Vercel optimized for Next.js,Deploy to Vercel,Self-host without knowledge,vercel deploy,Complex Docker setup for simple app,Low,https://nextjs.org/docs/app/building-your-application/deploying +49,Deployment,Configure output for self-hosting,Set output option for deployment target,output: 'standalone' for Docker,Default output for containers,output: 'standalone',No output config for Docker,Medium,https://nextjs.org/docs/app/building-your-application/deploying#self-hosting +50,Security,Sanitize user input,Never trust user input,Escape sanitize validate all input,Direct interpolation of user data,DOMPurify.sanitize(userInput),dangerouslySetInnerHTML={{ __html: userInput }},High, +51,Security,Use CSP headers,Content Security Policy for XSS protection,Configure CSP in next.config.js,No security headers,headers() with CSP,No CSP configuration,High,https://nextjs.org/docs/app/building-your-application/configuring/content-security-policy +52,Security,Validate Server Action input,Server Actions are public endpoints,Validate and authorize in Server Action,Trust Server Action input,Auth check + validation in action,Direct database call without check,High, diff --git a/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv b/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv new file mode 100644 index 0000000..7146e84 --- /dev/null +++ b/.shared/ui-ux-pro-max/data/stacks/nuxt-ui.csv @@ -0,0 +1,51 @@ +No,Category,Guideline,Description,Do,Don't,Code Good,Code Bad,Severity,Docs URL +1,Installation,Add Nuxt UI module,Install and configure Nuxt UI in your Nuxt project,pnpm add @nuxt/ui and add to modules,Manual component imports,"modules: ['@nuxt/ui']","import { UButton } from '@nuxt/ui'",High,https://ui.nuxt.com/docs/getting-started/installation/nuxt +2,Installation,Import Tailwind and Nuxt UI CSS,Required CSS imports in main.css file,@import tailwindcss and @import @nuxt/ui,Skip CSS imports,"@import ""tailwindcss""; @import ""@nuxt/ui"";",No CSS imports,High,https://ui.nuxt.com/docs/getting-started/installation/nuxt +3,Installation,Wrap app with UApp component,UApp provides global configs for Toast Tooltip and overlays, wrapper in app.vue,Skip UApp wrapper,, without wrapper,High,https://ui.nuxt.com/docs/components/app +4,Components,Use U prefix for components,All Nuxt UI components use U prefix by default,UButton UInput UModal,Button Input Modal,Click,,Medium,https://ui.nuxt.com/docs/getting-started/installation/nuxt +5,Components,Use semantic color props,Use semantic colors like primary secondary error,color="primary" color="error",Hardcoded colors,"","",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system +6,Components,Use variant prop for styling,Nuxt UI provides solid outline soft subtle ghost link variants,variant="soft" variant="outline",Custom button classes,"","",Medium,https://ui.nuxt.com/docs/components/button +7,Components,Use size prop consistently,Components support xs sm md lg xl sizes,size="sm" size="lg",Arbitrary sizing classes,"","",Low,https://ui.nuxt.com/docs/components/button +8,Icons,Use icon prop with Iconify format,Nuxt UI supports Iconify icons via icon prop,icon="lucide:home" icon="heroicons:user",i-lucide-home format,"","",Medium,https://ui.nuxt.com/docs/getting-started/integrations/icons/nuxt +9,Icons,Use leadingIcon and trailingIcon,Position icons with dedicated props for clarity,leadingIcon="lucide:plus" trailingIcon="lucide:arrow-right",Manual icon positioning,"","Add",Low,https://ui.nuxt.com/docs/components/button +10,Theming,Configure colors in app.config.ts,Runtime color configuration without restart,ui.colors.primary in app.config.ts,Hardcoded colors in components,"defineAppConfig({ ui: { colors: { primary: 'blue' } } })","",High,https://ui.nuxt.com/docs/getting-started/theme/design-system +11,Theming,Use @theme directive for custom colors,Define design tokens in CSS with Tailwind @theme,@theme { --color-brand-500: #xxx },Inline color definitions,@theme { --color-brand-500: #ef4444; },:style="{ color: '#ef4444' }",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system +12,Theming,Extend semantic colors in nuxt.config,Register new colors like tertiary in theme.colors,theme.colors array in ui config,Use undefined colors,"ui: { theme: { colors: ['primary', 'tertiary'] } }"," without config",Medium,https://ui.nuxt.com/docs/getting-started/theme/design-system +13,Forms,Use UForm with schema validation,UForm supports Zod Yup Joi Valibot schemas,:schema prop with validation schema,Manual form validation,"",Manual @blur validation,High,https://ui.nuxt.com/docs/components/form +14,Forms,Use UFormField for field wrapper,Provides label error message and validation display,UFormField with name prop,Manual error handling,"",
error
,Medium,https://ui.nuxt.com/docs/components/form-field +15,Forms,Handle form submit with @submit,UForm emits submit event with validated data,@submit handler on UForm,@click on submit button,"","",Medium,https://ui.nuxt.com/docs/components/form +16,Forms,Use validateOn prop for validation timing,Control when validation triggers (blur change input),validateOn="['blur']" for performance,Always validate on input,""," (validates on every keystroke)",Low,https://ui.nuxt.com/docs/components/form +17,Overlays,Use v-model:open for overlay control,Modal Slideover Drawer use v-model:open,v-model:open for controlled state,Manual show/hide logic,"",,Medium,https://ui.nuxt.com/docs/components/modal +18,Overlays,Use useOverlay composable for programmatic overlays,Open overlays programmatically without template refs,useOverlay().open(MyModal),Template ref and manual control,"const overlay = useOverlay(); overlay.open(MyModal, { props })","const modal = ref(); modal.value.open()",Medium,https://ui.nuxt.com/docs/components/modal +19,Overlays,Use title and description props,Built-in header support for overlays,title="Confirm" description="Are you sure?",Manual header content,"","",Low,https://ui.nuxt.com/docs/components/modal +20,Dashboard,Use UDashboardSidebar for navigation,Provides collapsible resizable sidebar with mobile support,UDashboardSidebar with header default footer slots,Custom sidebar implementation,,