UNPKG

react-composite-events

Version:

A collection of higher-order components (HOCs) to easily create composite events in React components

3 lines (2 loc) 2.29 kB
!function(e,t){if("function"==typeof define&&define.amd)define(["exports","react","./utils"],t);else if("undefined"!=typeof exports)t(exports,require("react"),require("./utils"));else{var r={exports:{}};t(r.exports,e.React,e.utils),e.RCE_compose=r.exports}}(this,function(e,t,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=babelHelpers.interopRequireDefault(t),l=function(e,t){var r=babelHelpers.extends({},e);return delete r[t],r},i=function(e,t){return(e||[]).reduce(function(e,r){return babelHelpers.extends({},e,babelHelpers.defineProperty({},r,t.bind(null,r)))},{})},a=function(e){return e>0};e.default=function(e){var o=e.eventPropName,u=e.triggerEvent,s=e.defaultDuration,c=void 0===s?0:s,p=e.cancelEvent,f=e.shouldResetTimerOnRetrigger,d=void 0===f||f,v=e.beforeHandle,b=void 0===v?function(){return!0}:v,_=Array.isArray(u)?u:[u],m=void 0;return p&&(m=Array.isArray(p)?p:[p]),function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,u=c,s="";a(c)&&a(e)&&(u=e,s="-"+e);var p=""+o+s;return function(e){var c,f,v=(0,r.getDisplayName)(e);return f=c=function(t){function r(){var e,t,n,l;babelHelpers.classCallCheck(this,r);for(var i=arguments.length,o=Array(i),s=0;s<i;s++)o[s]=arguments[s];return t=n=babelHelpers.possibleConstructorReturn(this,(e=r.__proto__||Object.getPrototypeOf(r)).call.apply(e,[this].concat(o))),n._delayTimeout=null,n._callSpecificHandler=function(e,t){var r=n.props[e];r&&r(t)},n._clearTimeout=function(){n._delayTimeout=clearTimeout(n._delayTimeout)},n._callCompositeEvent=function(e){var t=n.props[p];b(t,e)&&t(e)},n._handleTriggerEvent=function(e,t){var r=n.props[p];n._callSpecificHandler(e,t),r&&(a(u)?(!1!==d&&n._clearTimeout(),n._delayTimeout||(n._delayTimeout=setTimeout(function(){return n._callCompositeEvent(t)},u))):n._callCompositeEvent(t))},n._handleCancelEvent=function(e,t){n._callSpecificHandler(e,t),n._clearTimeout()},l=t,babelHelpers.possibleConstructorReturn(n,l)}return babelHelpers.inherits(r,t),babelHelpers.createClass(r,[{key:"render",value:function(){var t=l(this.props,p),r=i(_,this._handleTriggerEvent),a=i(m,this._handleCancelEvent);return n.default.createElement(e,babelHelpers.extends({},t,r,a))}}]),r}(t.Component),c.displayName=v+"-"+o+s,f}}}}); //# sourceMappingURL=compose.min.js.map