├── .editorconfig ├── .github ├── dependabot.yml └── workflows │ ├── build.yml │ ├── format.yml │ ├── lint.yml │ ├── publish.yml │ ├── test.yml │ └── upload-assets.yml ├── .gitignore ├── .nvmrc ├── .nycrc.yml ├── .prettierignore ├── CODEOWNERS ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── package.json ├── renovate.json ├── rollup.config.js ├── src ├── assert.ts ├── filter.ts ├── filters.ts ├── functions.ts ├── index.ts └── rules.ts ├── test ├── .eslintrc.yml ├── filter.spec.ts ├── filters.spec.ts ├── fixtures │ ├── filters │ │ └── spotify.json │ └── functions │ │ ├── album-artist-from-artist.json │ │ ├── decode-html-entities.json │ │ ├── fix-track-suffix.json │ │ ├── fix-various-artists.json │ │ ├── normalize-feature.json │ │ ├── remove-additional-artists.json │ │ ├── remove-clean-explicit.json │ │ ├── remove-feature.json │ │ ├── remove-live.json │ │ ├── remove-parody.json │ │ ├── remove-reissue.json │ │ ├── remove-remastered.json │ │ ├── remove-version.json │ │ ├── remove-zero-width.json │ │ ├── replace-nbsp.json │ │ ├── replace-smart-quotes.json │ │ └── youtube.json ├── functions.spec.ts ├── helper │ ├── dummy-function.ts │ ├── load-fixture-file.ts │ ├── test-filter.ts │ ├── test-function.ts │ └── validate-fixtures.ts ├── matcher │ └── filter-matcher.ts └── setup-mocha.ts ├── tsconfig.build.json └── tsconfig.json /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/build.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/build.yml -------------------------------------------------------------------------------- /.github/workflows/format.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/format.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.github/workflows/upload-assets.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.github/workflows/upload-assets.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.gitignore -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | 22.19.0 2 | -------------------------------------------------------------------------------- /.nycrc.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.nycrc.yml -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/.prettierignore -------------------------------------------------------------------------------- /CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @web-scrobbler/metadata-filter-team 2 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/README.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/package.json -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/renovate.json -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/rollup.config.js -------------------------------------------------------------------------------- /src/assert.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/assert.ts -------------------------------------------------------------------------------- /src/filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/filter.ts -------------------------------------------------------------------------------- /src/filters.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/filters.ts -------------------------------------------------------------------------------- /src/functions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/functions.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/rules.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/src/rules.ts -------------------------------------------------------------------------------- /test/.eslintrc.yml: -------------------------------------------------------------------------------- 1 | env: 2 | mocha: true 3 | -------------------------------------------------------------------------------- /test/filter.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/filter.spec.ts -------------------------------------------------------------------------------- /test/filters.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/filters.spec.ts -------------------------------------------------------------------------------- /test/fixtures/filters/spotify.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/filters/spotify.json -------------------------------------------------------------------------------- /test/fixtures/functions/album-artist-from-artist.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/album-artist-from-artist.json -------------------------------------------------------------------------------- /test/fixtures/functions/decode-html-entities.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/decode-html-entities.json -------------------------------------------------------------------------------- /test/fixtures/functions/fix-track-suffix.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/fix-track-suffix.json -------------------------------------------------------------------------------- /test/fixtures/functions/fix-various-artists.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/fix-various-artists.json -------------------------------------------------------------------------------- /test/fixtures/functions/normalize-feature.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/normalize-feature.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-additional-artists.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-additional-artists.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-clean-explicit.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-clean-explicit.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-feature.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-feature.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-live.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-live.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-parody.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-parody.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-reissue.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-reissue.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-remastered.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-remastered.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-version.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-version.json -------------------------------------------------------------------------------- /test/fixtures/functions/remove-zero-width.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/remove-zero-width.json -------------------------------------------------------------------------------- /test/fixtures/functions/replace-nbsp.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/replace-nbsp.json -------------------------------------------------------------------------------- /test/fixtures/functions/replace-smart-quotes.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/replace-smart-quotes.json -------------------------------------------------------------------------------- /test/fixtures/functions/youtube.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/fixtures/functions/youtube.json -------------------------------------------------------------------------------- /test/functions.spec.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/functions.spec.ts -------------------------------------------------------------------------------- /test/helper/dummy-function.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/helper/dummy-function.ts -------------------------------------------------------------------------------- /test/helper/load-fixture-file.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/helper/load-fixture-file.ts -------------------------------------------------------------------------------- /test/helper/test-filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/helper/test-filter.ts -------------------------------------------------------------------------------- /test/helper/test-function.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/helper/test-function.ts -------------------------------------------------------------------------------- /test/helper/validate-fixtures.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/helper/validate-fixtures.ts -------------------------------------------------------------------------------- /test/matcher/filter-matcher.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/matcher/filter-matcher.ts -------------------------------------------------------------------------------- /test/setup-mocha.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/test/setup-mocha.ts -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/web-scrobbler/metadata-filter/HEAD/tsconfig.json --------------------------------------------------------------------------------