diff --git a/.babelrc b/.babelrc index c1a3533..ce78ecf 100644 --- a/.babelrc +++ b/.babelrc @@ -13,7 +13,6 @@ "react" ], "plugins": [ - "add-module-exports", "transform-class-properties", "transform-object-rest-spread" ] diff --git a/.eslintrc b/.eslintrc index 41121e2..477ee1d 100644 --- a/.eslintrc +++ b/.eslintrc @@ -12,11 +12,12 @@ "import/no-unresolved": "off", "import/extensions": "off", "react/jsx-filename-extension": "off", - "react/prefer-stateless-function": ["error", {"ignorePureComponents": true}], + "react/prefer-stateless-function": ["error", { "ignorePureComponents": true }], "react/jsx-tag-spacing": "off", "react/forbid-prop-types": "off", "react/no-array-index-key": "off", - "jsx-a11y/no-static-element-interactions": "off" + "jsx-a11y/no-static-element-interactions": "off", + "react/no-unused-prop-types": "off" }, "globals": { "jQuery": false, diff --git a/dist/react-progress-bar-plus.css b/dist/react-progress-bar-plus.css index df276ea..ad66107 100644 --- a/dist/react-progress-bar-plus.css +++ b/dist/react-progress-bar-plus.css @@ -1 +1,81 @@ -@-webkit-keyframes react-progress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes react-progress-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.react-progress-bar{position:fixed;top:0;left:0;width:100%;visibility:visible;opacity:1;-webkit-transition:all .4s;transition:all .4s;z-index:9999}.react-progress-bar.react-progress-bar-on-top{height:100%}.react-progress-bar.react-progress-bar-hide{opacity:0;visibility:hidden;z-index:-10}.react-progress-bar-percent{height:2px;background:#29d;-webkit-box-shadow:0 0 10px #29d,0 0 5px #29d;box-shadow:0 0 10px #29d,0 0 5px #29d;-webkit-transition:all .2s ease;transition:all .2s ease}.react-progress-bar-spinner{display:block;position:fixed;top:15px}.react-progress-bar-spinner-left{left:15px;right:auto}.react-progress-bar-spinner-right{left:auto;right:15px}.react-progress-bar-spinner-icon{width:18px;height:18px;-webkit-box-sizing:border-box;box-sizing:border-box;border:2px solid transparent;border-top-color:#29d;border-left-color:#29d;border-radius:50%;-webkit-animation:react-progress-spinner .4s linear infinite;animation:react-progress-spinner .4s linear infinite} \ No newline at end of file +@-webkit-keyframes react-progress-spinner { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +@keyframes react-progress-spinner { + 0% { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); + } + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} + +.react-progress-bar { + position: fixed; + top: 0; + left: 0; + width: 100%; + visibility: visible; + opacity: 1; + -webkit-transition: all 400ms; + transition: all 400ms; + z-index: 9999; +} + +.react-progress-bar.react-progress-bar-on-top { + height: 100%; +} + +.react-progress-bar.react-progress-bar-hide { + opacity: 0; + visibility: hidden; + z-index: -10; +} + +.react-progress-bar-percent { + height: 2px; + background: #29D; + -webkit-box-shadow: 0 0 10px #29D, 0 0 5px #29D; + box-shadow: 0 0 10px #29D, 0 0 5px #29D; + -webkit-transition: all 200ms ease; + transition: all 200ms ease; +} + +.react-progress-bar-spinner { + display: block; + position: fixed; + top: 15px; +} + +.react-progress-bar-spinner-left { + left: 15px; + right: auto; +} + +.react-progress-bar-spinner-right { + left: auto; + right: 15px; +} + +.react-progress-bar-spinner-icon { + width: 18px; + height: 18px; + -webkit-box-sizing: border-box; + box-sizing: border-box; + border: solid 2px transparent; + border-top-color: #29d; + border-left-color: #29d; + border-radius: 50%; + -webkit-animation: react-progress-spinner 400ms linear infinite; + animation: react-progress-spinner 400ms linear infinite; +} diff --git a/dist/react-progress-bar-plus.js b/dist/react-progress-bar-plus.js index 46b5376..62d21de 100644 --- a/dist/react-progress-bar-plus.js +++ b/dist/react-progress-bar-plus.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("prop-types"),require("react")):"function"==typeof define&&define.amd?define(["prop-types","react"],t):"object"==typeof exports?exports.ReactProgressBarPlus=t(require("prop-types"),require("react")):e.ReactProgressBarPlus=t(e.PropTypes,e.React)}(this,function(e,t){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=1)}([function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var c=function(){function e(e,t){for(var r=0;r=0&&r<99&&(n.interval=setInterval(n.increment,o)),r>=100?n.setState({percent:99.9},function(){n.timeout=setTimeout(function(){n.setState({percent:-1})},400)}):n.setState({percent:r})},o=r,u(n,o)}return i(t,e),c(t,[{key:"render",value:function(){var e=this.props,t=e.onTop,r=e.spinner,n=this.props.className,a=this.state.percent;n=(0,m.default)("react-progress-bar",n,{"react-progress-bar-on-top":t,"react-progress-bar-hide":a<0||a>=100});var u={width:(a<0?0:a)+"%"},i=(0,m.default)("react-progress-bar-spinner",o({},"react-progress-bar-spinner-"+r,r));return p.default.createElement("div",{className:n},p.default.createElement("div",{className:"react-progress-bar-percent",style:u}),r?p.default.createElement("div",{className:i},p.default.createElement("div",{className:"react-progress-bar-spinner-icon"})):null)}}]),t}(p.default.Component);v.propTypes={className:f.default.string,percent:f.default.number.isRequired,onTop:f.default.bool,autoIncrement:f.default.bool,intervalTime:f.default.number,spinner:f.default.oneOf([!1,"left","right"])},v.defaultProps={className:"",percent:-1,onTop:!1,autoIncrement:!1,intervalTime:200,spinner:"left"},t.default=v,e.exports=t.default},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),o=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=o.default,e.exports=t.default},function(e,t,r){var n,o;!function(){"use strict";function r(){for(var e=[],t=0;t=0&&r<99&&(n.interval=setInterval(n.increment,o)),r>=100?n.setState({percent:99.9},function(){n.timeout=setTimeout(function(){n.setState({percent:-1})},400)}):n.setState({percent:r})},o=r,u(n,o)}return i(t,e),c(t,[{key:"render",value:function(){var e=this.props,t=e.onTop,r=e.spinner,n=this.props.className,a=this.state.percent;n=(0,m.default)("react-progress-bar",n,{"react-progress-bar-on-top":t,"react-progress-bar-hide":a<0||a>=100});var u={width:(a<0?0:a)+"%"},i=(0,m.default)("react-progress-bar-spinner",o({},"react-progress-bar-spinner-"+r,r));return p.default.createElement("div",{className:n},p.default.createElement("div",{className:"react-progress-bar-percent",style:u}),r?p.default.createElement("div",{className:i},p.default.createElement("div",{className:"react-progress-bar-spinner-icon"})):null)}}]),t}(p.default.Component);v.propTypes={className:f.default.string,percent:f.default.number.isRequired,onTop:f.default.bool,autoIncrement:f.default.bool,intervalTime:f.default.number,spinner:f.default.oneOf([!1,"left","right"])},v.defaultProps={className:"",percent:-1,onTop:!1,autoIncrement:!1,intervalTime:200,spinner:"left"},t.default=v},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(0),o=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=o.default},function(e,t,r){var n,o;!function(){"use strict";function r(){for(var e=[],t=0;t