{"version":3,"sources":["jsdelivr-header.js","/npm/dcml-react-iscroll@0.0.0-beta6/dist/react-iscroll.js"],"names":[],"mappings":"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","file":"/npm/dcml-react-iscroll@0.0.0-beta6/dist/react-iscroll.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/dcml-react-iscroll@0.0.0-beta6/dist/react-iscroll.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _reactDom = require('react-dom');\n\nvar _reactDom2 = _interopRequireDefault(_reactDom);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar PropTypes = _react2.default.PropTypes;\n\n// Events available on iScroll instance\n// [`iscroll event name`, `react component event name`]\n\nvar availableEvents = [['beforeScrollStart', \"onBeforeScrollStart\"], ['scrollCancel', \"onScrollCancel\"], ['scrollStart', \"onScrollStart\"], ['scroll', \"onScroll\"], ['scrollEnd', \"onScrollEnd\"], ['flick', \"onFlick\"], ['zoomStart', \"onZoomStart\"], ['zoomEnd', \"onZoomEnd\"]];\n\n// Generate propTypes with event function validating\nvar propTypes = {\n  defer: _react2.default.PropTypes.oneOfType([_react2.default.PropTypes.bool, _react2.default.PropTypes.number]),\n  options: PropTypes.object,\n  iscroll: function iscroll(props, propName, componentName) {\n    var iscroll = props[propName];\n    var proto = iscroll && iscroll.prototype;\n\n    if (!iscroll || !proto || !proto.version || !proto.scrollTo) {\n      return new Error(componentName + \": iscroll not passed to component props.\");\n    } else {\n      if (!/^5\\..*/.test(proto.version)) {\n        console.warn(componentName + \": different version than 5.x.y of iscroll is loaded. Some features won't work properly.\");\n      }\n\n      if (props.options && props.options.zoom && !proto.zoom) {\n        console.warn(componentName + \": options.zoom is set, but iscroll-zoom version is not loaded. This feature won't works properly.\");\n      }\n    }\n  },\n  onRefresh: PropTypes.func\n};\n\nfor (var i = 0; i < availableEvents.length; i++) {\n  propTypes[availableEvents[i][1]] = PropTypes.func;\n}\n\nvar ReactIScroll = function (_React$Component) {\n  _inherits(ReactIScroll, _React$Component);\n\n  function ReactIScroll(props) {\n    _classCallCheck(this, ReactIScroll);\n\n    var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(ReactIScroll).call(this, props));\n\n    _this._queuedCallbacks = [];\n    _this._iScrollBindedEvents = {};\n    return _this;\n  }\n\n  _createClass(ReactIScroll, [{\n    key: 'componentDidMount',\n    value: function componentDidMount() {\n      this._initializeIScroll();\n    }\n  }, {\n    key: 'componentWillUnmount',\n    value: function componentWillUnmount() {\n      this._teardownIScroll();\n    }\n  }, {\n    key: 'componentDidUpdate',\n    value: function componentDidUpdate(prevProps) {\n      this._updateIScrollEvents(prevProps, this.props);\n      this.refresh();\n    }\n\n    // There is no state, we can compare only props.\n\n  }, {\n    key: 'shouldComponentUpdate',\n    value: function shouldComponentUpdate(nextProps) {\n      return true;\n    }\n  }, {\n    key: 'getIScroll',\n    value: function getIScroll() {\n      return this._iScrollInstance;\n    }\n  }, {\n    key: 'getIScrollInstance',\n    value: function getIScrollInstance() {\n      console.warn(\"Function 'getIScrollInstance' is deprecated. Instead use 'getIScroll'\");\n      return this._iScrollInstance;\n    }\n  }, {\n    key: 'withIScroll',\n    value: function withIScroll(waitForInit, callback) {\n      if (!callback && typeof waitForInit == \"function\") {\n        callback = waitForInit;\n      }\n\n      if (this.getIScroll()) {\n        callback(this.getIScroll());\n      } else if (waitForInit === true) {\n        this._queuedCallbacks.push(callback);\n      }\n    }\n  }, {\n    key: 'refresh',\n    value: function refresh() {\n      this.withIScroll(function (iScroll) {\n        return iScroll.refresh();\n      });\n    }\n  }, {\n    key: '_runInitializeIScroll',\n    value: function _runInitializeIScroll() {\n      var _this2 = this;\n\n      var _props = this.props;\n      var iScroll = _props.iscroll;\n      var options = _props.options;\n\n      // Create iScroll instance with given options\n\n      var iScrollInstance = new iScroll(_reactDom2.default.findDOMNode(this), options);\n      this._iScrollInstance = iScrollInstance;\n\n      // TODO there should be new event 'onInitialize'\n      this._triggerRefreshEvent();\n\n      // Patch iscroll instance .refresh() function to trigger our onRefresh event\n      var origRefresh = iScrollInstance.refresh;\n\n      iScrollInstance.refresh = function () {\n        origRefresh.apply(iScrollInstance);\n        _this2._triggerRefreshEvent();\n      };\n\n      // Bind iScroll events\n      this._bindIScrollEvents();\n\n      this._callQueuedCallbacks();\n    }\n  }, {\n    key: '_initializeIScroll',\n    value: function _initializeIScroll() {\n      var _this3 = this;\n\n      var defer = this.props.defer;\n\n      if (defer === false) {\n        this._runInitializeIScroll();\n      } else {\n        setTimeout(function () {\n          return _this3._runInitializeIScroll();\n        }, defer);\n      }\n    }\n  }, {\n    key: '_callQueuedCallbacks',\n    value: function _callQueuedCallbacks() {\n      var callbacks = this._queuedCallbacks,\n          len = callbacks.length;\n\n      this._queuedCallbacks = [];\n\n      for (var _i = 0; _i < len; _i++) {\n        callbacks[_i](this.getIScroll());\n      }\n    }\n  }, {\n    key: '_teardownIScroll',\n    value: function _teardownIScroll() {\n      if (this._iScrollInstance) {\n        this._iScrollInstance.destroy();\n        this._iScrollInstance = undefined;\n      }\n    }\n  }, {\n    key: '_bindIScrollEvents',\n    value: function _bindIScrollEvents() {\n      // Bind events on iScroll instance\n      this._iScrollBindedEvents = {};\n      this._updateIScrollEvents({}, this.props);\n    }\n\n    // Iterate through available events and update one by one\n\n  }, {\n    key: '_updateIScrollEvents',\n    value: function _updateIScrollEvents(prevProps, nextProps) {\n      var len = availableEvents.length;\n\n      for (var _i2 = 0; _i2 < len; _i2++) {\n        var _availableEvents$_i = _slicedToArray(availableEvents[_i2], 2);\n\n        var iScrollEventName = _availableEvents$_i[0];\n        var reactEventName = _availableEvents$_i[1];\n\n        this._updateIScrollEvent(iScrollEventName, prevProps[reactEventName], nextProps[reactEventName]);\n      }\n    }\n\n    // Unbind and/or Bind event if it was changed during update\n\n  }, {\n    key: '_updateIScrollEvent',\n    value: function _updateIScrollEvent(iScrollEventName, prevEvent, currentEvent) {\n      var _this4 = this;\n\n      if (prevEvent !== currentEvent) {\n        this.withIScroll(true, function (iScrollInstance) {\n          var currentEvents = _this4._iScrollBindedEvents;\n\n          if (prevEvent) {\n            iScrollInstance.off(iScrollEventName, currentEvents[iScrollEventName]);\n            currentEvents[iScrollEventName] = undefined;\n          }\n\n          if (currentEvent) {\n            var wrappedCallback = function wrappedCallback() {\n              for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n                args[_key] = arguments[_key];\n              }\n\n              currentEvent.apply(undefined, [iScrollInstance].concat(args));\n            };\n\n            iScrollInstance.on(iScrollEventName, wrappedCallback);\n            currentEvents[iScrollEventName] = wrappedCallback;\n          }\n        });\n      }\n    }\n  }, {\n    key: '_triggerRefreshEvent',\n    value: function _triggerRefreshEvent() {\n      var onRefresh = this.props.onRefresh;\n\n      if (onRefresh) {\n        this.withIScroll(function (iScrollInstance) {\n          return onRefresh(iScrollInstance);\n        });\n      }\n    }\n  }, {\n    key: 'render',\n    value: function render() {\n      return _react2.default.createElement(\n        'div',\n        { className: this.props.className, style: this.props.style },\n        _react2.default.createElement(\n          'div',\n          { style: this.props.scrollerStyle },\n          this.props.children\n        )\n      );\n    }\n  }]);\n\n  return ReactIScroll;\n}(_react2.default.Component);\n\nReactIScroll.displayName = 'ReactIScroll';\nReactIScroll.propTypes = propTypes;\nReactIScroll.defaultProps = {\n  defer: 0,\n  options: {},\n  style: {\n    position: \"relative\",\n    height: \"100%\",\n    width: \"100%\",\n    overflow: \"hidden\"\n  }\n};\nexports.default = ReactIScroll;"]}