import os
from pathlib import Path


USER_HOME = Path.home()


BASE_PERSIST_PATH = os.path.join(
    os.environ.get("XDG_CACHE_HOME", Path.joinpath(USER_HOME, ".cache")), "clara"
)


WILDCARDS = (
    # Python
    "*.py",
    # Markdown
    "*.md",
    "*.mdx",
    # reStructuredText
    "*.rst",
    # C
    "*.c",
    "*.h",
    # C++
    "*.cpp",
    "*.hpp",
    "*.cc",
    "*.hh",
    # C#
    "*.cs",
    # Java
    "*.java",
    # JavaScript
    "*.js",
    # TypeScript
    "*.ts",
    # Ruby
    "*.rb",
    # PHP
    "*.php",
    # Swift
    "*.swift",
    # Objective-C
    "*.m",
    "*.mm",
    "*.h",
    # Kotlin
    "*.kt",
    # Scala
    "*.scala",
    # Lua
    "*.lua",
    # Go
    "*.go",
    # Rust
    "*.rs",
    # Dart
    "*.dart",
    # Haskell
    "*.hs",
    # Shell
    "*.sh",
    "*.bash",
    # Perl
    "*.pl",
    "*.pm",
    # R
    "*.r",
    # MATLAB
    "*.m",
    # Groovy
    "*.groovy",
    # Julia
    "*.jl",
    # Elixir
    "*.ex",
    "*.exs",
    # Elm
    "*.elm",
    # Erlang
    "*.erl",
    "*.hrl",
    # F#
    "*.fs",
    "*.fsx",
    # SQL
    "*.sql",
    # XML
    "*.xml",
    # HTML
    "*.html",
    "*.htm",
    # CSS
    "*.css",
    # SASS/SCSS
    "*.scss",
    "*.sass",
    # LESS
    "*.less",
    # JSON
    # "*.json",
    # YAML
    # "*.yml",
    # "*.yaml",
    # TOML
    # "*.toml",
    # INI
    # "*.ini",
    # Properties
    # "*.properties",
    # Dockerfile
    "Dockerfile",
    # Makefile
    # "Makefile",
    # Gradle
    # "*.gradle",
    # CMake
    # "CMakeLists.txt",
    # "*.cmake",
    # Vagrantfile
    # "Vagrantfile",
    # Gitignore
    # ".gitignore",
    # README
    "README",
)
