All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
- revert #602 due to issues with test and server side rendering
- feat: color prop can accept rgb colors #586
- fix: multiple hash loader with different color renders as the same color #602
- fix: moon loader wobble if size is not divisible by 7 #603
- bugfix: Remove Animation Fill Mode from CircleLoader to fix SSR mismatch style error. #558
- bugfix: fix PacmanLoader container height/width to adjust with size prop
- Improve formatting of example code to include
data-testid
prop
- Improve README to include additional available props via span tag
- bugfix: fix server side render issue on
HashLoader
- bugfix: Fix PuffLoader initial rendering issue
- remove next version badge until needed
- update homepage in package.json
- Rewrite each loader from the ground up using functional components.
- Replaced
@emotion
with vanilla javascript and inline style to reduce component size by 75%. This project now have 0 dependencies, while continuing to support server side rendering. - Added support for custom props such as
aria-label
- renamed
css
prop tocssOverride
to avoid type conflicts with css-in-js libraries.
- bugfix: fix style warnings on ClipLoader and CircleLoader
- bugfix: fix GridLoader rendering issue
- BREAKING CHANGE:
css
prop has been renamed tocssOverride
to avoid type conflicts with css-in-js libraries such as emotion and styled-components
- bugfix: Fix
document is not defined
when rendering server side
- update
.npmignore
to ignorestories
folder, yarn error log
- bugfix: Update
tsconfig.json
to ignorestories
folder. This caused the outputted files to not be in the root directory and breaking the imports.
- bugfix: Properly assign important tag to
GridLoader
width prop.
- bugfix: Update
GridLoader
height/width withimportant
tag to prevent overwrites from outside css.
- Feature: Add support for custom props in all loaders.
- Feature: Removed
@emotion/react
as a dependency. - Feature: Update
RiseLoader
rise amount of usesize
prop instead of hardcoded as 30px.
- Feature: Add support for custom props in BarLoader
- Added react testing library
- added basic tests for BarLoader
- bugfix: add
display: inherit
on barloader to fix issue where nothing shows up on page.
- Rewrite BarLoader as functional component. Use vanilla javascript to inject keyframes, and removing emotion from the component.
- Feature: output commonjs, es module, and umd file types.
- Feature: add support for react 18 #464
- reverted devDepencies react back to v17 until tests can be migrated away from enzyme. #471
- migrate from circle-ci to github actions for lint/jest
- Feature: add support for react 18 #464
- Update pragma to
/** @jsxImportSource @emotion/react */
to fix issue with the new jsx runtime. - update all dependencies to latest version and rebuild demo site
- Feature: output commonjs, es module, and umd file types.
- Feature: added
speedMultiplier
prop to allow controlling the speed of animations.
- No changes, just promoting to beta
- Update readme to include speed multiplier prop
- Implemented
speedMultiplier
props to all loaders - Added feature flag to demo site. adding a url param
speed-multiplier=true
will enable to input
- Refactored all the tests using shared specs to reduce maintenance cost.
- Removed unnecessary type in
colors.ts
to let typescript infer.
- Implement
speedMultipler
prop toPulseLoader
. This is done to test the API for a single loader before adding to the rest.
- Clean up
BarLoader
by marking the props usingRequired
utility to avoid having to dowidth || Loader.defaultProps.width
.
- Implement
speedMultipler
prop toBarLoader
. This is done to test the API for a single loader before adding to the rest.
- Update readme usage section to use
@emotion
for.babelrc
plugins
- updated emotion to v11. PR #329
- bugfix: Fixed MoonLoader display issue #342
- Add
.eslintrc.*
to.npmignore
to reduce packge size.
- bugfix: Reverted
type:module
change inpackage.json
due to issue #336. This is causing aMust use import to load ES Module
error.
Note: this release has a critical issue and was deprecated. Please update to 0.10.3 or higher.
- bugfix: the tsconfig compiler option was not overriding properly, so the outputted files are es2015 (with import syntax) vs commonjs (with require syntax. This could cause similar issues like #74.
Note: this release has a critical issue and was deprecated. Please update to 0.10.3 or higher.
- Update README using react hooks. Move react class example under a summary tag.
Note: this release has a critical issue and was deprecated. Please update to 0.10.3 or higher.
- update
div
tospan
to fix<div> cannot appear as a descendant of <p>
per #159. PR #325 - Using lodash-es as a reference, added
type: module
topackage.json
as an attempt to implement tree shaking via PR #327. - replaced tslint with eslint, and npm with yarn.
- Update
.npmignore
to ignore the.cjs
files so they are not included in the published build. - Add
.yarn
and.yarnrc
to.npmignore
.
Old:
npm notice version: 0.10.0-beta.2
npm notice package size: 1.2 MB
npm notice unpacked size: 5.3 MB
npm notice total files: 69
New:
npm notice version: 0.10.0-beta.3
npm notice package size: 21.3 kB
npm notice unpacked size: 167.1 kB
npm notice total files: 65
- Using lodash-es as a reference, added
type: module
topackage.json
as an attempt to fix tree shaking via PR #327. - Renamed relevant
.js
files to.cjs
so they are treated as CommonJs. Otherwise we get errors likeReferenceError: module is not defined
when running certain commands, likeyarn
.
- No changes here. Upgrading alpha to beta.
- add
react ^17.0.0
andreact-dom ^17.0.0
into peerDependencies to fix #321 - update
div
tospan
to fix<div> cannot appear as a descendant of <p>
per #159. PR #325 - removed
Keyframes
typing to allow for inferring PR #326 - another round of update for all devDependencies to the latest version except for
react-color
,react
,react-dom
, and@motion/core
. These 4 packages have caused issues during the update and will save them for another time.
- add
sideEffects
property topackage.json
to fix tree shaking
- updated all dependencies to the latest version.
- switched from using npm to yarn
- deprecated ts-lint in favor of eslint
- updated how loaders are exported to support tree shaking
- Added a new loader:
PuffLoader
. Thanks to @dsaw via PR #200 - Update docs site with new loader
- Security: Bump acorn from 5.7.3 to 5.7.4 due to
Regular Expression Denial of Service
. Details here
- Add
box-sizing: content-box;
to MoonLoader. See PR for more details.
- clean up README example: removed unrecommended import, removed comment out size prop, and bolded text for size prop being string and number
- Added a new loader:
ClockLoader
- No other functionality changes
- Fix default value table in README to alphabetize correctly
- update README demo site url
- run
npm audit fix
to fix vulnerability inserialslize-javascript
package - update README to showcase number and string input for size prop
- BREAKING CHANGE: all unit props have been removed to simplify the component API. See change log for
0.7.0-alpha.1
for more details
- Update readme to include yarn installation
- clean up readme. break up prop section with individual prop headers
- update default value for
css
prop on README to be""
instead of{}
- add list of available color words that the
color
prop accepts - run prettier to format readme
- bugfix: Fix issue #140. The margin prop on
FadeLoader
does what we expect it to do, expand the spacing between the lines
- bugfix: Fix issue #139. The margin prop on
RotateLoader
does what we expect it to do, expand the spacing between the dots - updated webpack config to split up npm files to avoid brower having to reload them on each change
- BREAKING CHANGE: all unit props are deprecated, including
sizeUnit
,heightUnit
,widthUnit
, andradiusUnit
. Thesize
,height
,width
, andradius
props now acceptsnumber
andstring
- If value is number, default to
px
- If value is string with valid css unit, return the input value
- If value is string with invalid css unit, output warning console log and default to
px
- If value is number, default to
margin
prop now work the same way as other length props. Can acceptnumber
andstring
css
prop default is now""
. No functionality change here
- bugfix: Fix issue 109 where
Math.random
is stubbed out in theGridLoader
component instead in the tests, causingMath.random
to not work properly ifGridLoader
is used
- Offical release for the TypeScript rewrite!
- Major changes:
- Add support for types for individual loader imports
- Add support for using basic color name as props instead of only color hashes
- Reduced total package size from around 850kb to 135gb
- Fix
main
key value inpackage.json
to point to the correctindex.js
- Removed
prop-types
andrecompose
from dependencies - Added tests to get to 100% code coverage
- updated
devDependencies
to latest versions
- Removed
recompose
from the list of dependencies. We currently wants the component to update for all prop changes, so theonlyUpdateForKeys
was passed in all the props anyways, so it wasn't doing much
- bugfix: Fix issue where
PacmanLoader
top
css property does not respect thesizeUnit
prop. It was hardcoded to bepx
instead of usingsizeUnit
prop - update javascript bundle files for demo site
- updated rgba conversion function to handle basic colors. Now supports these basically colors
- maroon, red, orange, yellow, olive, green, purple, fuchsia, lime, teal, aqua, blue, navy, black, gray, silver, white
- update readme to include
radius
andradiusUnit
prop description - update all the tests to use default variables
- add the following to
.npmignore
to further reduce package size
tslint.json
jest.config.js
CODEOWNERS
CODE_OF_CONDUCT.md
CONTRIBUTING.md
CHANGELOG.md
Old:
npm notice version: 0.6.0-alpha.6
npm notice package size: 19.8 kB
npm notice unpacked size: 138.5 kB
New:
npm notice version: 0.6.0-alpha.7
npm notice package size: 16.7 kB
npm notice unpacked size: 132.1 kB
- add
src
folder tonpmignore
. Previous version wasn't ruthless enough in saving data
Old:
npm notice version: 0.6.0-alpha.5
npm notice package size: 26.1 kB
npm notice unpacked size: 191.2 kB
New:
npm notice version: 0.6.0-alpha.6
npm notice package size: 19.8 kB
npm notice unpacked size: 138.5 kB
- update
npmignore
to include__tests__
,.github
,.circleci
,coverage
. This helped to reduce package size. Help to save some data
Old:
npm notice version: 0.6.0-alpha.4
npm notice package size: 85.6 kB
npm notice unpacked size: 850.4 kB
New:
npm notice version: 0.6.0-alpha.5
npm notice package size: 26.1 kB
npm notice unpacked size: 191.2 kB
- bugfix: update
package.json
main
value fromdist/index.js
toindex.js
to fix codeSandbox import issue - bugfix: add missing
transform
key to the25%
keyframe in RiseLoader. It was just25% {translateY(-${riseAmount}px)}
before. Now it is corrected - add tests for all the loaders. Fixed up a few tests using default variables, namely the first 3 letters in the alphabet
- fix missing
"
from.babelrc
in readme per PR #77 - add tests for
ClipLoader
,DotLoader
,FadeLoader
,GridLoader
,HashLoader
, andMoonLoader
- bugfix: update
tsconfig.json
module
property tocommonjs
instead ofesnext
. This caused import errors as seen in issue 74 - added tests for
BarLoader
,BeatLoader
,BounceLoader
,CircleLoader
, andClimbingBoxLoader
- This is a complete rewrite of the package. 100% of the code is now in TypeScript. This will show inidividual type definitions for each loader
prop-types
has been removed as a dependency. This is now handled by typings- set up
ts-lint
andprettier
to help ensure code consistency
Note: this release has a critical issue and was deprecated. Please use <= 0.5.12 or > 0.6.0.
- fix readme props table formatting. It got a little messy for some reason
- fix version glitch. No code changes here
- this version should be 0.5.10, but internet issues causesa weird version glitch. Update to 0.5.12 so everything matches
- update readme to include explanation of css prop can be string as well as css function from @emotion/core
- bugfix: Fix issue 61 where css overrides are not applied properly. Updated how the override workings using emotion composition
- bugfix: Fix issue 66 where destructuring import no longer works. Updated how components are exported, changed from
export default
toexport const
- update README.md
.babelrc
example to use@babel/<name>
syntax in accordance to latest babel packages
- big update for outdated devDependencies. This version should not affect any existing functionalities.
- removed eslint related packages. Will be moving to use
tslint
as part of the typescript conversion. - updated babel plus plugins/presets to latest versions
- updated
index.js
import frommodule.exports = {...}
toexport default {...}
- webpack changes
- added development configuration for easier debugging
- add
html-webpack-plugin
to inject the script tags toindex.html
- removed eslint related packages. Will be moving to use
- bugfix: update
CommonProps
interfacecss
prop to usedPrecompiledCss
andstring
. Update PropTypes helper to be able to accept bothPrecompiledCss
andstring
. This is to fix the validation error for thecss
prop
- refactored proptypes into helper functions. No functionality change here, just some cleanups
- bugfix: update default value for
css
prop to{}
instead of""
to fix console error
- bugfix: change
css
proptype toPropTypes.shape({ ... })
instead ofPropTypes.string
to fix console error. - Fix a few console warnings on the demo site
- Update demo page link to
https://www.react-spinners.com
- Update emotion package to emotion 10
- Breaking change: replaced
className
prop withcss
prop to match Emotion 10
- update
package.json
to include wider range of version forrecompose
- add
loaders
andspinners
keyword to package.json
- update how
onlyUpdateForKeys
is imported fromrecompose
. Reduced import cost from26kb
to19kb
- update README
.babelrc
to useenv
preset
- fix README example import to using correct loader
- add default value for unit props to README
- update readme to include unit props for each loader
- fix single loader import
- add
className
toindex.d.ts
- update readme to include single loader import
- Remove second import method from readme. Add deprecation warning to 0.4.0
Note: this release has a critical issue and was deprecated. Please update to 0.4.1 or higher.
- Add
className
prop to loaders - Deprecated
loaderStyle
prop for loaders to follow Emotion module standard
Note: this release was deprecated through removing loaderStyle
prop. Please update to 0.4.1 or higher.
- Add
loaderStyle
prop to loaders to allow more customized loader
- bugfix: fixed rendering issue for FadeLoader, SyncLoader, RotateLoader, and MoonLoader
- Moved
babel-plugin-emotion
to devDependencies and updates to 9.1.0
- Added
unit
props to each loader to allow%
units on css - bugfix: fixed string concatenation on some loaders that prevented the correct rendering
- bugfix: add missing
px
forborder-radius
inScaleLoader
styling - add
minor
andmajor
versioning scripts topackage.json
- add
ISSUE_TEMPLATE.md
andPULL_REQUEST_TEMPLATE.MD
- removed codesponsers from readme
- updated devDendencies to latest stable versions
- removed unused npm scripts from
package.json
- minor linting fixes after update
- add
^16.0.0
toreact
andreact-dom
peerDependencies
- bugfix: change
borderRadius
toborder-radius
inRingLoader
so the browser will recognize the css
- bugfix: moved
prop-types
to from devDependencies to dependencies. This fixes thePackage not found
error for projects that do not includeprop-types
as a dependency
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- add TypeScript typings
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- bugfix: moved
emotion
from devDependency to dependency. This fixed thePackage not found
error
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- update
emotion
package version from7.2.0
to8.0.6
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- update dependencies versions
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- fixed some typo in readme
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- updated readme
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- bugfix: fixed
PulseLoader
size default prop to be the correct type
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- bugfix: moved
recompose
from devDependency to dependency - update author field in
package.json
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- update margin column in readme proptype table
- update contributors list in
package.json
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- update readme to include note about
react-emotion
plugin for babel - fixed circleci badge to go to circle ci instead of npm
- removed flow from test script
Note: this release has a critical issue and was deprecated. Please update to 0.2.1 or higher.
- removed
domkit
as a dependency and replaced it withemotion
. This package now officially supports `Server Side Rendering