flexible-3d-carousel
Version:
flexible-3d-carousel React component
6 lines • 10.9 kB
JavaScript
/*!
* flexible-3d-carousel v0.0.0-development - https://www.lotteryjs.com
* MIT Licensed
*/
!function(root,factory){"object"==typeof exports&&"object"==typeof module?module.exports=factory(require("react")):"function"==typeof define&&define.amd?define(["react"],factory):"object"==typeof exports?exports.flexible3dCarousel=factory(require("react")):root.flexible3dCarousel=factory(root.React)}("undefined"!=typeof self?self:this,function(__WEBPACK_EXTERNAL_MODULE_3__){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module["default"]}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=0)}([function(module,exports,__webpack_require__){__webpack_require__(1),module.exports=__webpack_require__(4)},function(module,exports,__webpack_require__){"use strict";module.exports=__webpack_require__(2)},function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,React=(e=__webpack_require__(3))&&"object"==typeof e&&"default"in e?e["default"]:e,classCallCheck=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},possibleConstructorReturn=function(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},AppContainer=function(e){function t(){return classCallCheck(this,t),possibleConstructorReturn(this,e.apply(this,arguments))}return function(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)}(t,e),t.prototype.render=function(){return React.Children.only(this.props.children)},t}(React.Component);exports.AppContainer=AppContainer,exports.hot=function(){return function(e){return e}},exports.areComponentsEqual=function(e,t){return e===t},exports.setConfig=function(){}},function(module,exports){module.exports=__WEBPACK_EXTERNAL_MODULE_3__},function(module,exports,__webpack_require__){"use strict";var __assign=this&&this.__assign||Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++)for(var p in s=arguments[i])Object.prototype.hasOwnProperty.call(s,p)&&(t[p]=s[p]);return t};exports.__esModule=!0;var animation_1=__webpack_require__(5),Core=function(){function Core(options){this.percentageW=0,this.percentageTopH=0,this.options=__assign({},Core.defaultOptions,options),this.initalProps(),this.render(),this.initalOperation()}return Core.prototype.play=function(){this.options.autoPlay=!0},Core.prototype.stop=function(){this.options.autoPlay=!1},Core.prototype.render=function(rotation){for(var styles=this.calcStyles(rotation),i=0,count=styles.length;i<count;i++){var style=styles[i];styles[i]={left:"number"==typeof style.left&&100*style.left+"%",top:"number"==typeof style.top&&100*style.top+"%",width:"number"==typeof style.width&&100*style.width+"%",height:"number"==typeof style.height&&100*style.height+"%",zIndex:styles[i].zIndex}}this.options.render(styles)},Core.prototype.initalProps=function(){var _a=this.options,width=_a.width,height=_a.height,count=_a.count,percentageW=_a.percentageW;this.percentageW=percentageW,this.percentageTopH=height/width,this.originX=.5,this.originY=.5,this.radiusX=.5,this.radiusY=.5,this.rotation=Math.PI/2,this.spacing=2*Math.PI/count,this.animation=new animation_1["default"](this)},Core.prototype.initalOperation=function(){this.animation.init()},Core.prototype.calcStyles=function(rotation){for(var rot=rotation||this.rotation,styles=[],_a=this.options,count=_a.count,spacingScale=(1-_a.farScale)/2,i=0;i<count;i++){var x=Math.cos(rot)*this.radiusX,y=Math.sin(rot)*this.radiusY,scale=y/this.radiusY*spacingScale+1-spacingScale,width=this.percentageW*scale;styles.push({left:this.originX+x-width/2,top:this.originY+y,width:width,height:this.percentageTopH,zIndex:Math.abs(Math.ceil(100*width))}),rot+=this.spacing}return styles},Core.defaultOptions={fps:60,count:8,width:222,height:323,percentageW:.25,farScale:.5,speed:.03,autoPlay:!0,autoPlayDelay:2,render:function(){}},Core}();exports["default"]=Core},function(module,exports,__webpack_require__){"use strict";exports.__esModule=!0;var raf=__webpack_require__(6),Animation=function(){function Animation(core){this.core=core,this.rotation=this.core.rotation,this.destRotation=this.rotation}return Animation.prototype.init=function(){var _this=this,startTime=(new Date).getTime(),drawFrame=function(){((new Date).getTime()-startTime)/1e3>=_this.core.options.autoPlayDelay&&_this.core.options.autoPlay&&(_this.destRotation+=_this.core.spacing),_this.rotation<=_this.destRotation&&(_this.rotation+=_this.core.options.speed,startTime=(new Date).getTime()),_this.core.render(_this.rotation),_this.rotation>=2*Math.PI+_this.core.rotation&&(_this.rotation=_this.core.rotation,_this.destRotation=_this.rotation),raf(drawFrame)};drawFrame()},Animation}();exports["default"]=Animation},function(module,exports,__webpack_require__){(function(global){for(var now=__webpack_require__(8),root="undefined"==typeof window?global:window,vendors=["moz","webkit"],suffix="AnimationFrame",raf=root["request"+suffix],caf=root["cancel"+suffix]||root["cancelRequest"+suffix],i=0;!raf&&i<vendors.length;i++)raf=root[vendors[i]+"Request"+suffix],caf=root[vendors[i]+"Cancel"+suffix]||root[vendors[i]+"CancelRequest"+suffix];if(!raf||!caf){var last=0,id=0,queue=[];raf=function(callback){if(0===queue.length){var _now=now(),next=Math.max(0,1e3/60-(_now-last));last=next+_now,setTimeout(function(){var cp=queue.slice(0);queue.length=0;for(var i=0;i<cp.length;i++)if(!cp[i].cancelled)try{cp[i].callback(last)}catch(e){setTimeout(function(){throw e},0)}},Math.round(next))}return queue.push({handle:++id,callback:callback,cancelled:!1}),id},caf=function(handle){for(var i=0;i<queue.length;i++)queue[i].handle===handle&&(queue[i].cancelled=!0)}}module.exports=function(fn){return raf.call(root,fn)},module.exports.cancel=function(){caf.apply(root,arguments)},module.exports.polyfill=function(object){object||(object=root),object.requestAnimationFrame=raf,object.cancelAnimationFrame=caf}}).call(exports,__webpack_require__(7))},function(module,exports){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"==typeof window&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){(function(process){(function(){var getNanoSeconds,hrtime,loadTime,moduleLoadTime,nodeLoadTime,upTime;"undefined"!=typeof performance&&null!==performance&&performance.now?module.exports=function(){return performance.now()}:void 0!==process&&null!==process&&process.hrtime?(module.exports=function(){return(getNanoSeconds()-nodeLoadTime)/1e6},hrtime=process.hrtime,moduleLoadTime=(getNanoSeconds=function(){var hr;return 1e9*(hr=hrtime())[0]+hr[1]})(),upTime=1e9*process.uptime(),nodeLoadTime=moduleLoadTime-upTime):Date.now?(module.exports=function(){return Date.now()-loadTime},loadTime=Date.now()):(module.exports=function(){return(new Date).getTime()-loadTime},loadTime=(new Date).getTime())}).call(this)}).call(exports,__webpack_require__(9))},function(module,exports){var cachedSetTimeout,cachedClearTimeout,process=module.exports={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(fun){if(cachedSetTimeout===setTimeout)return setTimeout(fun,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,setTimeout(fun,0);try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}!function(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&¤tQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var timeout=runTimeout(cleanUpNextTick);draining=!0;for(var len=queue.length;len;){for(currentQueue=queue,queue=[];++queueIndex<len;)currentQueue&¤tQueue[queueIndex].run();queueIndex=-1,len=queue.length}currentQueue=null,draining=!1,function(marker){if(cachedClearTimeout===clearTimeout)return clearTimeout(marker);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(marker);try{cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}(timeout)}}function Item(fun,array){this.fun=fun,this.array=array}function noop(){}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1)for(var i=1;i<arguments.length;i++)args[i-1]=arguments[i];queue.push(new Item(fun,args)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title="browser",process.browser=!0,process.env={},process.argv=[],process.version="",process.versions={},process.on=noop,process.addListener=noop,process.once=noop,process.off=noop,process.removeListener=noop,process.removeAllListeners=noop,process.emit=noop,process.prependListener=noop,process.prependOnceListener=noop,process.listeners=function(name){return[]},process.binding=function(name){throw new Error("process.binding is not supported")},process.cwd=function(){return"/"},process.chdir=function(dir){throw new Error("process.chdir is not supported")},process.umask=function(){return 0}}])["default"]});
//# sourceMappingURL=flexible-3d-carousel.min.js.map