redwood-nprogress
Version:
Theme aware NProgress component to use in RedwoodJS apps using Emotion or ThemeUI.
3 lines (2 loc) • 1.67 kB
JavaScript
;function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var r=require("react"),o=e(r),n=e(require("nprogress")),t=require("@emotion/core"),s=require("@redwoodjs/router"),i=function(e){var i=e.color,p=e.withSpinner,a=e.options;r.useEffect((function(){a&&n.configure(a)}),[a]);var d=s.usePageLoadingContext().loading;return r.useEffect((function(){return d?n.start():n.done(),function(){n.done()}}),[d]),o.createElement(t.Global,{styles:function(e){var r,o=(null==e||null===(r=e.colors)||void 0===r?void 0:r[i])||i;return{"#nprogress":{pointerEvents:"none"},"#nprogress .bar":{background:o,position:"fixed",zIndex:1031,top:0,left:0,width:"100%",height:"2px"},"#nprogress .peg":{display:"block",position:"absolute",right:"0px",width:"100px",height:"100%",boxShadow:"0 0 10px "+o+", 0 0 5px "+o,opacity:1,transform:"rotate(3deg) translate(0px, -4px)"},"#nprogress .spinner":{display:p?"block":"none",position:"fixed",zIndex:1031,top:"15px",right:"15px"},"#nprogress .spinner-icon":{width:"18px",height:"18px",boxSizing:"border-box",border:"solid 2px transparent",borderTopColor:o,borderLeftColor:o,borderRadius:"50%",animation:"nprogress-spinner 400ms linear infinite"},".nprogress-custom-parent":{overflow:"hidden",position:"relative"},".nprogress-custom-parent #nprogress .spinner":{position:"absolute"},".nprogress-custom-parent #nprogress .bar":{position:"absolute"},"@keyframes nprogress-spinner":{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}}}})};i.defaultProps={color:"primary"},exports.default=i;
//# sourceMappingURL=redwood-nprogress.cjs.production.min.js.map