from setuptools import setup, find_packages

from transpilex.config.package import PACKAGE_NAME, PACKAGE_VERSION, PACKAGE_DESCRIPTION, PACKAGE_AUTHOR, \
    PACKAGE_AUTHOR_EMAIL, PACKAGE_LICENSE

setup(
    name=PACKAGE_NAME,
    version=PACKAGE_VERSION,
    description=PACKAGE_DESCRIPTION,
    author=PACKAGE_AUTHOR,
    author_email=PACKAGE_AUTHOR_EMAIL,
    packages=find_packages(),
    package_data={
        'transpilex': [
            'patterns/import_patterns.json',
            'patterns/variable_patterns.json',
            'templates/node-app.js',
            'templates/php-tw-vite.config.js'
        ],
    },
    include_package_data=True,
    install_requires=[
        'arrow==1.4.0',
        'beautifulsoup4==4.14.2',
        'binaryornot==0.4.4',
        'bs4==0.0.2',
        'certifi==2025.10.5',
        'chardet==5.2.0',
        'charset-normalizer==3.4.4',
        'click==8.3.0',
        'colorama==0.4.6',
        'cookiecutter==2.6.0',
        'docutils==0.22.3',
        'id==1.5.0',
        'idna==3.11',
        'jaraco.classes==3.4.0',
        'jaraco.context==6.0.1',
        'jaraco.functools==4.3.0',
        'Jinja2==3.1.6',
        'keyring==25.7.0',
        'markdown-it-py==4.0.0',
        'MarkupSafe==3.0.3',
        'mdurl==0.1.2',
        'more-itertools==10.8.0',
        'nh3==0.3.2',
        'packaging==25.0',
        'prompt_toolkit==3.0.52',
        'Pygments==2.19.2',
        'python-dateutil==2.9.0.post0',
        'python-slugify==8.0.4',
        'pywin32-ctypes==0.2.3',
        'PyYAML==6.0.3',
        'questionary==2.1.1',
        'readme_renderer==44.0',
        'requests==2.32.5',
        'requests-toolbelt==1.0.0',
        'rfc3986==2.0.0',
        'rich==14.2.0',
        'setuptools==80.9.0',
        'six==1.17.0',
        'soupsieve==2.8',
        'text-unidecode==1.3',
        'twine==6.2.0',
        'typing_extensions==4.15.0',
        'tzdata==2025.2',
        'urllib3==2.5.0',
        'wcwidth==0.2.14',
        'wheel==0.45.1',
    ],
    entry_points={
        'console_scripts': [
            'transpile=transpilex.main:main',
        ],
    },
    license=PACKAGE_LICENSE,
)
