# Set default behavior: normalize line endings to LF on checkin AND checkout.
# Biome's lineEnding is "lf"; without `eol=lf`, Windows runners check out CRLF
# and biome fails CI.
* text=auto eol=lf

# Explicitly declare LF text files (redundant with eol=lf above but documents intent).
*.ts text eol=lf
*.js text eol=lf
*.json text eol=lf
*.md text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.astro text eol=lf
*.css text eol=lf
*.scss text eol=lf
*.html text eol=lf
*.xml text eol=lf
*.svg text eol=lf
*.txt text eol=lf

# Declare files that will always have CRLF line endings on checkout
*.ps1 text eol=crlf

# Declare files that will always have LF line endings on checkout
*.sh text eol=lf

# Denote all files that are truly binary and should not be modified
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.mov binary
*.mp4 binary
*.mp3 binary
*.flv binary
*.fla binary
*.swf binary
*.gz binary
*.zip binary
*.7z binary
*.ttf binary
*.eot binary
*.woff binary
*.woff2 binary
*.pyc binary
*.pdf binary
*.ez binary
*.bz2 binary
*.swp binary
*.image binary
*.tgz binary
*.tar binary
*.jar binary
*.war binary
*.ear binary
*.class binary
*.so binary
*.dll binary
*.exe binary
