* Add prettier as a dependency
* Add format command and configure prettier
I opted for single quotes to be in line with other simple-icons projects
I ignore the data file because changing its formatting is quite a bit of
trouble for all open PRs.
* Run prettier
* Replace all functions by arrow functions
* Move prettier configuration to config file
Move it to a file so editors (and other software) can pick up on the
configuration. I went with .js because (a) it allows for comments and
(2) it seems most of the config files are in JavaScript already.
* Add prettier --check when running npm run lint (This adds it to the CI as well)
* Add husky and format changes before committing
* Use object destructuring for imports consistently
* Add shebang and fileoverview to jsonlint.js
* Test if icons have "guidelines" when they should
... and don't when they shouldn't.
* Update paht test in icons.test.js
* Improve test names and test conditions
* Test if icons have a "license" when they should
... and don't when they shouldn't.
* Test value of guidelines
Co-authored-by: Álvaro Mondéjar <mondejar1994@gmail.com>
* Test if SPDX license URL is a URL indeed
Using the same regular expression as we use for URLs in the JSON data
(see .jsonschema.json#url).
* Accept icon rather than title in `iconToSlug`
This removes the need in (most of the) calls to this function to
seperately check if there is a custom slug already defined for the icon.
* Rename `titleToSlug` to `getIconSlug`
* Revert unnecessary style change
* Update function documentation
* Keep `titleToSlug` and add `getIconSlug` helper
Unfortunately `this` is not available because we're using arrow syntax
for these functions, but refering to `titleToSlug` through
`module.exports` works fine as well.
* Fix parameter name in `getIconSlug` docs
- Rename `titleToFilename` to `titleToSlug`
- Fix indentation where necessary
- Use quotes internally consistently (to reduce the diff size, unfortunately this is the opposite quote from what we use in other projects)
- Update comments & documentation
- Construct file paths
And more...
* Add URL friendy/slug/file name as property to package icon objects
* Test new property
* Build index from template
* Add .get function to index.js export
* Test new .get function in index.js export
* Use Uglify-JS to minify the code in the package's index.js
* Update API in README.md
* Renaem test using "slug" instead of "name"
* Add URL friendy/slug/file name as property to package icon objects
* Test new property
* Add 'name' property to examples in README
* Rename "name" property to "slug"
* Update prepublish script to add path to generated .js files
* Test generated path values
* Fix Furry Network icon
The Furry Network icon used to have "e"s in the path, however the
official SVG definition does not specify the E command.
source: https://www.w3schools.com/graphics/svg_path.asp
* Implement basic test for the NPM package
Just an initial test suite that checks if all promised imports actually
exist. The testing framework Jest was chosen because of it ease of setup
and use.
* Implement exhaustive tests of properties for each icon