# Only support regexp, testing against each relative file path
# based on the echart base directory. And the pattern should
# match the relative path completely.

node_modules
.*\.git
.*\.github
.*\.editorconfig
.*\.gitignore
.*\.jshintrc
.*\.jshintrc-dist
.*\.npmignore
.*\.ratignore
.*\.headerignore
.*\.DS_Store
.*\.idea
.*rat\.iml
__MAC_OS
.*README.md
.*MANIFEST\.txt
.env
.eslintrc
.eslintignore
.prettierrc
.stylelintrc
.vscode/*
config-overrides.js
NOTICE
KEYS
LICENSE
LICENSE-.+
licenses
map/js
map/json
benchmark/dep/*
test/ut/lib
test/data$
test/lib/esl\.js
test/lib/perlin\.js
test/lib/countup\.js
.*jquery\.min\.js
.*rollup\.browser\.js
.*configure
.+\.json
.+\.map
.+\.gexf
.+\.jar
.+\.bin
.+\.csv
.+\.png
.+\.PNG
.+\.jpg
.+\.JPG
.+\.jpeg
.+\.JPEG
.+\.gif
.+\.GIF
.+\.class
types
lib
esm
dist
