|
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
|
module.exports = factory(require("react"), require("react-dom"));
|
|
|
else if(typeof define === 'function' && define.amd)
|
|
|
define(["react", "react-dom"], factory);
|
|
|
else if(typeof exports === 'object')
|
|
|
exports["rmc-trigger"] = factory(require("react"), require("react-dom"));
|
|
|
else
|
|
|
root["rmc-trigger"] = factory(root["React"], root["ReactDOM"]);
|
|
|
})(this, function(__WEBPACK_EXTERNAL_MODULE_0__, __WEBPACK_EXTERNAL_MODULE_16__) {
|
|
|
return /******/ (function(modules) { // webpackBootstrap
|
|
|
/******/ // The module cache
|
|
|
/******/ var installedModules = {};
|
|
|
/******/
|
|
|
/******/ // The require function
|
|
|
/******/ function __webpack_require__(moduleId) {
|
|
|
/******/
|
|
|
/******/ // Check if module is in cache
|
|
|
/******/ if(installedModules[moduleId]) {
|
|
|
/******/ return installedModules[moduleId].exports;
|
|
|
/******/ }
|
|
|
/******/ // Create a new module (and put it into the cache)
|
|
|
/******/ var module = installedModules[moduleId] = {
|
|
|
/******/ i: moduleId,
|
|
|
/******/ l: false,
|
|
|
/******/ exports: {}
|
|
|
/******/ };
|
|
|
/******/
|
|
|
/******/ // Execute the module function
|
|
|
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
|
|
/******/
|
|
|
/******/ // Flag the module as loaded
|
|
|
/******/ module.l = true;
|
|
|
/******/
|
|
|
/******/ // Return the exports of the module
|
|
|
/******/ return module.exports;
|
|
|
/******/ }
|
|
|
/******/
|
|
|
/******/
|
|
|
/******/ // expose the modules object (__webpack_modules__)
|
|
|
/******/ __webpack_require__.m = modules;
|
|
|
/******/
|
|
|
/******/ // expose the module cache
|
|
|
/******/ __webpack_require__.c = installedModules;
|
|
|
/******/
|
|
|
/******/ // identity function for calling harmony imports with the correct context
|
|
|
/******/ __webpack_require__.i = function(value) { return value; };
|
|
|
/******/
|
|
|
/******/ // define getter function for harmony exports
|
|
|
/******/ __webpack_require__.d = function(exports, name, getter) {
|
|
|
/******/ if(!__webpack_require__.o(exports, name)) {
|
|
|
/******/ Object.defineProperty(exports, name, {
|
|
|
/******/ configurable: false,
|
|
|
/******/ enumerable: true,
|
|
|
/******/ get: getter
|
|
|
/******/ });
|
|
|
/******/ }
|
|
|
/******/ };
|
|
|
/******/
|
|
|
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
|
/******/ __webpack_require__.n = function(module) {
|
|
|
/******/ var getter = module && module.__esModule ?
|
|
|
/******/ function getDefault() { return module['default']; } :
|
|
|
/******/ function getModuleExports() { return module; };
|
|
|
/******/ __webpack_require__.d(getter, 'a', getter);
|
|
|
/******/ return getter;
|
|
|
/******/ };
|
|
|
/******/
|
|
|
/******/ // Object.prototype.hasOwnProperty.call
|
|
|
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
|
|
/******/
|
|
|
/******/ // __webpack_public_path__
|
|
|
/******/ __webpack_require__.p = "";
|
|
|
/******/
|
|
|
/******/ // Load entry module and return exports
|
|
|
/******/ return __webpack_require__(__webpack_require__.s = 134);
|
|
|
/******/ })
|
|
|
/************************************************************************/
|
|
|
/******/ ([
|
|
|
/* 0 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = __WEBPACK_EXTERNAL_MODULE_0__;
|
|
|
|
|
|
/***/ }),
|
|
|
/* 1 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
var core = module.exports = { version: '2.6.1' };
|
|
|
if (typeof __e == 'number') __e = core; // eslint-disable-line no-undef
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 2 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
|
|
|
var global = module.exports = typeof window != 'undefined' && window.Math == Math
|
|
|
? window : typeof self != 'undefined' && self.Math == Math ? self
|
|
|
// eslint-disable-next-line no-new-func
|
|
|
: Function('return this')();
|
|
|
if (typeof __g == 'number') __g = global; // eslint-disable-line no-undef
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 3 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
exports.default = function (instance, Constructor) {
|
|
|
if (!(instance instanceof Constructor)) {
|
|
|
throw new TypeError("Cannot call a class as a function");
|
|
|
}
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 4 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _defineProperty = __webpack_require__(43);
|
|
|
|
|
|
var _defineProperty2 = _interopRequireDefault(_defineProperty);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = 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;
|
|
|
(0, _defineProperty2.default)(target, descriptor.key, descriptor);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return function (Constructor, protoProps, staticProps) {
|
|
|
if (protoProps) defineProperties(Constructor.prototype, protoProps);
|
|
|
if (staticProps) defineProperties(Constructor, staticProps);
|
|
|
return Constructor;
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
/***/ }),
|
|
|
/* 5 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _setPrototypeOf = __webpack_require__(73);
|
|
|
|
|
|
var _setPrototypeOf2 = _interopRequireDefault(_setPrototypeOf);
|
|
|
|
|
|
var _create = __webpack_require__(72);
|
|
|
|
|
|
var _create2 = _interopRequireDefault(_create);
|
|
|
|
|
|
var _typeof2 = __webpack_require__(25);
|
|
|
|
|
|
var _typeof3 = _interopRequireDefault(_typeof2);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = function (subClass, superClass) {
|
|
|
if (typeof superClass !== "function" && superClass !== null) {
|
|
|
throw new TypeError("Super expression must either be null or a function, not " + (typeof superClass === "undefined" ? "undefined" : (0, _typeof3.default)(superClass)));
|
|
|
}
|
|
|
|
|
|
subClass.prototype = (0, _create2.default)(superClass && superClass.prototype, {
|
|
|
constructor: {
|
|
|
value: subClass,
|
|
|
enumerable: false,
|
|
|
writable: true,
|
|
|
configurable: true
|
|
|
}
|
|
|
});
|
|
|
if (superClass) _setPrototypeOf2.default ? (0, _setPrototypeOf2.default)(subClass, superClass) : subClass.__proto__ = superClass;
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 6 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _typeof2 = __webpack_require__(25);
|
|
|
|
|
|
var _typeof3 = _interopRequireDefault(_typeof2);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = function (self, call) {
|
|
|
if (!self) {
|
|
|
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
|
|
|
}
|
|
|
|
|
|
return call && ((typeof call === "undefined" ? "undefined" : (0, _typeof3.default)(call)) === "object" || typeof call === "function") ? call : self;
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 7 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// Thank's IE8 for his funny defineProperty
|
|
|
module.exports = !__webpack_require__(19)(function () {
|
|
|
return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;
|
|
|
});
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 8 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
var hasOwnProperty = {}.hasOwnProperty;
|
|
|
module.exports = function (it, key) {
|
|
|
return hasOwnProperty.call(it, key);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 9 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var anObject = __webpack_require__(18);
|
|
|
var IE8_DOM_DEFINE = __webpack_require__(48);
|
|
|
var toPrimitive = __webpack_require__(35);
|
|
|
var dP = Object.defineProperty;
|
|
|
|
|
|
exports.f = __webpack_require__(7) ? Object.defineProperty : function defineProperty(O, P, Attributes) {
|
|
|
anObject(O);
|
|
|
P = toPrimitive(P, true);
|
|
|
anObject(Attributes);
|
|
|
if (IE8_DOM_DEFINE) try {
|
|
|
return dP(O, P, Attributes);
|
|
|
} catch (e) { /* empty */ }
|
|
|
if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');
|
|
|
if ('value' in Attributes) O[P] = Attributes.value;
|
|
|
return O;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 10 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__propertyUtils__ = __webpack_require__(121);
|
|
|
var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
|
|
|
|
|
|
|
|
|
|
|
var RE_NUM = /[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source;
|
|
|
|
|
|
var getComputedStyleX = void 0;
|
|
|
|
|
|
// https://stackoverflow.com/a/3485654/3040605
|
|
|
function forceRelayout(elem) {
|
|
|
var originalStyle = elem.style.display;
|
|
|
elem.style.display = 'none';
|
|
|
elem.offsetHeight; // eslint-disable-line
|
|
|
elem.style.display = originalStyle;
|
|
|
}
|
|
|
|
|
|
function css(el, name, v) {
|
|
|
var value = v;
|
|
|
if ((typeof name === 'undefined' ? 'undefined' : _typeof(name)) === 'object') {
|
|
|
for (var i in name) {
|
|
|
if (name.hasOwnProperty(i)) {
|
|
|
css(el, i, name[i]);
|
|
|
}
|
|
|
}
|
|
|
return undefined;
|
|
|
}
|
|
|
if (typeof value !== 'undefined') {
|
|
|
if (typeof value === 'number') {
|
|
|
value = value + 'px';
|
|
|
}
|
|
|
el.style[name] = value;
|
|
|
return undefined;
|
|
|
}
|
|
|
return getComputedStyleX(el, name);
|
|
|
}
|
|
|
|
|
|
function getClientPosition(elem) {
|
|
|
var box = void 0;
|
|
|
var x = void 0;
|
|
|
var y = void 0;
|
|
|
var doc = elem.ownerDocument;
|
|
|
var body = doc.body;
|
|
|
var docElem = doc && doc.documentElement;
|
|
|
// 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式
|
|
|
box = elem.getBoundingClientRect();
|
|
|
|
|
|
// 注:jQuery 还考虑减去 docElem.clientLeft/clientTop
|
|
|
// 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确
|
|
|
// 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin
|
|
|
|
|
|
x = box.left;
|
|
|
y = box.top;
|
|
|
|
|
|
// In IE, most of the time, 2 extra pixels are added to the top and left
|
|
|
// due to the implicit 2-pixel inset border. In IE6/7 quirks mode and
|
|
|
// IE6 standards mode, this border can be overridden by setting the
|
|
|
// document element's border to zero -- thus, we cannot rely on the
|
|
|
// offset always being 2 pixels.
|
|
|
|
|
|
// In quirks mode, the offset can be determined by querying the body's
|
|
|
// clientLeft/clientTop, but in standards mode, it is found by querying
|
|
|
// the document element's clientLeft/clientTop. Since we already called
|
|
|
// getClientBoundingRect we have already forced a reflow, so it is not
|
|
|
// too expensive just to query them all.
|
|
|
|
|
|
// ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的
|
|
|
// 窗口边框标准是设 documentElement ,quirks 时设置 body
|
|
|
// 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去
|
|
|
// 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置
|
|
|
// 标准 ie 下 docElem.clientTop 就是 border-top
|
|
|
// ie7 html 即窗口边框改变不了。永远为 2
|
|
|
// 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0
|
|
|
|
|
|
x -= docElem.clientLeft || body.clientLeft || 0;
|
|
|
y -= docElem.clientTop || body.clientTop || 0;
|
|
|
|
|
|
return {
|
|
|
left: x,
|
|
|
top: y
|
|
|
};
|
|
|
}
|
|
|
|
|
|
function getScroll(w, top) {
|
|
|
var ret = w['page' + (top ? 'Y' : 'X') + 'Offset'];
|
|
|
var method = 'scroll' + (top ? 'Top' : 'Left');
|
|
|
if (typeof ret !== 'number') {
|
|
|
var d = w.document;
|
|
|
// ie6,7,8 standard mode
|
|
|
ret = d.documentElement[method];
|
|
|
if (typeof ret !== 'number') {
|
|
|
// quirks mode
|
|
|
ret = d.body[method];
|
|
|
}
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function getScrollLeft(w) {
|
|
|
return getScroll(w);
|
|
|
}
|
|
|
|
|
|
function getScrollTop(w) {
|
|
|
return getScroll(w, true);
|
|
|
}
|
|
|
|
|
|
function getOffset(el) {
|
|
|
var pos = getClientPosition(el);
|
|
|
var doc = el.ownerDocument;
|
|
|
var w = doc.defaultView || doc.parentWindow;
|
|
|
pos.left += getScrollLeft(w);
|
|
|
pos.top += getScrollTop(w);
|
|
|
return pos;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* A crude way of determining if an object is a window
|
|
|
* @member util
|
|
|
*/
|
|
|
function isWindow(obj) {
|
|
|
// must use == for ie8
|
|
|
/* eslint eqeqeq:0 */
|
|
|
return obj !== null && obj !== undefined && obj == obj.window;
|
|
|
}
|
|
|
|
|
|
function getDocument(node) {
|
|
|
if (isWindow(node)) {
|
|
|
return node.document;
|
|
|
}
|
|
|
if (node.nodeType === 9) {
|
|
|
return node;
|
|
|
}
|
|
|
return node.ownerDocument;
|
|
|
}
|
|
|
|
|
|
function _getComputedStyle(elem, name, cs) {
|
|
|
var computedStyle = cs;
|
|
|
var val = '';
|
|
|
var d = getDocument(elem);
|
|
|
computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);
|
|
|
|
|
|
// https://github.com/kissyteam/kissy/issues/61
|
|
|
if (computedStyle) {
|
|
|
val = computedStyle.getPropertyValue(name) || computedStyle[name];
|
|
|
}
|
|
|
|
|
|
return val;
|
|
|
}
|
|
|
|
|
|
var _RE_NUM_NO_PX = new RegExp('^(' + RE_NUM + ')(?!px)[a-z%]+$', 'i');
|
|
|
var RE_POS = /^(top|right|bottom|left)$/;
|
|
|
var CURRENT_STYLE = 'currentStyle';
|
|
|
var RUNTIME_STYLE = 'runtimeStyle';
|
|
|
var LEFT = 'left';
|
|
|
var PX = 'px';
|
|
|
|
|
|
function _getComputedStyleIE(elem, name) {
|
|
|
// currentStyle maybe null
|
|
|
// http://msdn.microsoft.com/en-us/library/ms535231.aspx
|
|
|
var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];
|
|
|
|
|
|
// 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值
|
|
|
// 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19
|
|
|
// 在 ie 下不对,需要直接用 offset 方式
|
|
|
// borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了
|
|
|
|
|
|
// From the awesome hack by Dean Edwards
|
|
|
// http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291
|
|
|
// If we're not dealing with a regular pixel number
|
|
|
// but a number that has a weird ending, we need to convert it to pixels
|
|
|
// exclude left right for relativity
|
|
|
if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {
|
|
|
// Remember the original values
|
|
|
var style = elem.style;
|
|
|
var left = style[LEFT];
|
|
|
var rsLeft = elem[RUNTIME_STYLE][LEFT];
|
|
|
|
|
|
// prevent flashing of content
|
|
|
elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];
|
|
|
|
|
|
// Put in the new values to get a computed value out
|
|
|
style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;
|
|
|
ret = style.pixelLeft + PX;
|
|
|
|
|
|
// Revert the changed values
|
|
|
style[LEFT] = left;
|
|
|
|
|
|
elem[RUNTIME_STYLE][LEFT] = rsLeft;
|
|
|
}
|
|
|
return ret === '' ? 'auto' : ret;
|
|
|
}
|
|
|
|
|
|
if (typeof window !== 'undefined') {
|
|
|
getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;
|
|
|
}
|
|
|
|
|
|
function getOffsetDirection(dir, option) {
|
|
|
if (dir === 'left') {
|
|
|
return option.useCssRight ? 'right' : dir;
|
|
|
}
|
|
|
return option.useCssBottom ? 'bottom' : dir;
|
|
|
}
|
|
|
|
|
|
function oppositeOffsetDirection(dir) {
|
|
|
if (dir === 'left') {
|
|
|
return 'right';
|
|
|
} else if (dir === 'right') {
|
|
|
return 'left';
|
|
|
} else if (dir === 'top') {
|
|
|
return 'bottom';
|
|
|
} else if (dir === 'bottom') {
|
|
|
return 'top';
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// 设置 elem 相对 elem.ownerDocument 的坐标
|
|
|
function setLeftTop(elem, offset, option) {
|
|
|
// set position first, in-case top/left are set even on static elem
|
|
|
if (css(elem, 'position') === 'static') {
|
|
|
elem.style.position = 'relative';
|
|
|
}
|
|
|
var presetH = -999;
|
|
|
var presetV = -999;
|
|
|
var horizontalProperty = getOffsetDirection('left', option);
|
|
|
var verticalProperty = getOffsetDirection('top', option);
|
|
|
var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);
|
|
|
var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);
|
|
|
|
|
|
if (horizontalProperty !== 'left') {
|
|
|
presetH = 999;
|
|
|
}
|
|
|
|
|
|
if (verticalProperty !== 'top') {
|
|
|
presetV = 999;
|
|
|
}
|
|
|
var originalTransition = '';
|
|
|
var originalOffset = getOffset(elem);
|
|
|
if ('left' in offset || 'top' in offset) {
|
|
|
originalTransition = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["a" /* getTransitionProperty */])(elem) || '';
|
|
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["b" /* setTransitionProperty */])(elem, 'none');
|
|
|
}
|
|
|
if ('left' in offset) {
|
|
|
elem.style[oppositeHorizontalProperty] = '';
|
|
|
elem.style[horizontalProperty] = presetH + 'px';
|
|
|
}
|
|
|
if ('top' in offset) {
|
|
|
elem.style[oppositeVerticalProperty] = '';
|
|
|
elem.style[verticalProperty] = presetV + 'px';
|
|
|
}
|
|
|
// force relayout
|
|
|
forceRelayout(elem);
|
|
|
var old = getOffset(elem);
|
|
|
var originalStyle = {};
|
|
|
for (var key in offset) {
|
|
|
if (offset.hasOwnProperty(key)) {
|
|
|
var dir = getOffsetDirection(key, option);
|
|
|
var preset = key === 'left' ? presetH : presetV;
|
|
|
var off = originalOffset[key] - old[key];
|
|
|
if (dir === key) {
|
|
|
originalStyle[dir] = preset + off;
|
|
|
} else {
|
|
|
originalStyle[dir] = preset - off;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
css(elem, originalStyle);
|
|
|
// force relayout
|
|
|
forceRelayout(elem);
|
|
|
if ('left' in offset || 'top' in offset) {
|
|
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["b" /* setTransitionProperty */])(elem, originalTransition);
|
|
|
}
|
|
|
var ret = {};
|
|
|
for (var _key in offset) {
|
|
|
if (offset.hasOwnProperty(_key)) {
|
|
|
var _dir = getOffsetDirection(_key, option);
|
|
|
var _off = offset[_key] - originalOffset[_key];
|
|
|
if (_key === _dir) {
|
|
|
ret[_dir] = originalStyle[_dir] + _off;
|
|
|
} else {
|
|
|
ret[_dir] = originalStyle[_dir] - _off;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
css(elem, ret);
|
|
|
}
|
|
|
|
|
|
function setTransform(elem, offset) {
|
|
|
var originalOffset = getOffset(elem);
|
|
|
var originalXY = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["c" /* getTransformXY */])(elem);
|
|
|
var resultXY = { x: originalXY.x, y: originalXY.y };
|
|
|
if ('left' in offset) {
|
|
|
resultXY.x = originalXY.x + offset.left - originalOffset.left;
|
|
|
}
|
|
|
if ('top' in offset) {
|
|
|
resultXY.y = originalXY.y + offset.top - originalOffset.top;
|
|
|
}
|
|
|
__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["d" /* setTransformXY */])(elem, resultXY);
|
|
|
}
|
|
|
|
|
|
function setOffset(elem, offset, option) {
|
|
|
if (option.ignoreShake) {
|
|
|
var oriOffset = getOffset(elem);
|
|
|
|
|
|
var oLeft = oriOffset.left.toFixed(0);
|
|
|
var oTop = oriOffset.top.toFixed(0);
|
|
|
var tLeft = offset.left.toFixed(0);
|
|
|
var tTop = offset.top.toFixed(0);
|
|
|
|
|
|
if (oLeft === tLeft && oTop === tTop) {
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (option.useCssRight || option.useCssBottom) {
|
|
|
setLeftTop(elem, offset, option);
|
|
|
} else if (option.useCssTransform && __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__propertyUtils__["e" /* getTransformName */])() in document.body.style) {
|
|
|
setTransform(elem, offset, option);
|
|
|
} else {
|
|
|
setLeftTop(elem, offset, option);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function each(arr, fn) {
|
|
|
for (var i = 0; i < arr.length; i++) {
|
|
|
fn(arr[i]);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function isBorderBoxFn(elem) {
|
|
|
return getComputedStyleX(elem, 'boxSizing') === 'border-box';
|
|
|
}
|
|
|
|
|
|
var BOX_MODELS = ['margin', 'border', 'padding'];
|
|
|
var CONTENT_INDEX = -1;
|
|
|
var PADDING_INDEX = 2;
|
|
|
var BORDER_INDEX = 1;
|
|
|
var MARGIN_INDEX = 0;
|
|
|
|
|
|
function swap(elem, options, callback) {
|
|
|
var old = {};
|
|
|
var style = elem.style;
|
|
|
var name = void 0;
|
|
|
|
|
|
// Remember the old values, and insert the new ones
|
|
|
for (name in options) {
|
|
|
if (options.hasOwnProperty(name)) {
|
|
|
old[name] = style[name];
|
|
|
style[name] = options[name];
|
|
|
}
|
|
|
}
|
|
|
|
|
|
callback.call(elem);
|
|
|
|
|
|
// Revert the old values
|
|
|
for (name in options) {
|
|
|
if (options.hasOwnProperty(name)) {
|
|
|
style[name] = old[name];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function getPBMWidth(elem, props, which) {
|
|
|
var value = 0;
|
|
|
var prop = void 0;
|
|
|
var j = void 0;
|
|
|
var i = void 0;
|
|
|
for (j = 0; j < props.length; j++) {
|
|
|
prop = props[j];
|
|
|
if (prop) {
|
|
|
for (i = 0; i < which.length; i++) {
|
|
|
var cssProp = void 0;
|
|
|
if (prop === 'border') {
|
|
|
cssProp = '' + prop + which[i] + 'Width';
|
|
|
} else {
|
|
|
cssProp = prop + which[i];
|
|
|
}
|
|
|
value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return value;
|
|
|
}
|
|
|
|
|
|
var domUtils = {};
|
|
|
|
|
|
each(['Width', 'Height'], function (name) {
|
|
|
domUtils['doc' + name] = function (refWin) {
|
|
|
var d = refWin.document;
|
|
|
return Math.max(
|
|
|
// firefox chrome documentElement.scrollHeight< body.scrollHeight
|
|
|
// ie standard mode : documentElement.scrollHeight> body.scrollHeight
|
|
|
d.documentElement['scroll' + name],
|
|
|
// quirks : documentElement.scrollHeight 最大等于可视窗口多一点?
|
|
|
d.body['scroll' + name], domUtils['viewport' + name](d));
|
|
|
};
|
|
|
|
|
|
domUtils['viewport' + name] = function (win) {
|
|
|
// pc browser includes scrollbar in window.innerWidth
|
|
|
var prop = 'client' + name;
|
|
|
var doc = win.document;
|
|
|
var body = doc.body;
|
|
|
var documentElement = doc.documentElement;
|
|
|
var documentElementProp = documentElement[prop];
|
|
|
// 标准模式取 documentElement
|
|
|
// backcompat 取 body
|
|
|
return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;
|
|
|
};
|
|
|
});
|
|
|
|
|
|
/*
|
|
|
得到元素的大小信息
|
|
|
@param elem
|
|
|
@param name
|
|
|
@param {String} [extra] 'padding' : (css width) + padding
|
|
|
'border' : (css width) + padding + border
|
|
|
'margin' : (css width) + padding + border + margin
|
|
|
*/
|
|
|
function getWH(elem, name, ex) {
|
|
|
var extra = ex;
|
|
|
if (isWindow(elem)) {
|
|
|
return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);
|
|
|
} else if (elem.nodeType === 9) {
|
|
|
return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);
|
|
|
}
|
|
|
var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];
|
|
|
var borderBoxValue = name === 'width' ? elem.getBoundingClientRect().width : elem.getBoundingClientRect().height;
|
|
|
var computedStyle = getComputedStyleX(elem);
|
|
|
var isBorderBox = isBorderBoxFn(elem, computedStyle);
|
|
|
var cssBoxValue = 0;
|
|
|
if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {
|
|
|
borderBoxValue = undefined;
|
|
|
// Fall back to computed then un computed css if necessary
|
|
|
cssBoxValue = getComputedStyleX(elem, name);
|
|
|
if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {
|
|
|
cssBoxValue = elem.style[name] || 0;
|
|
|
}
|
|
|
// Normalize '', auto, and prepare for extra
|
|
|
cssBoxValue = parseFloat(cssBoxValue) || 0;
|
|
|
}
|
|
|
if (extra === undefined) {
|
|
|
extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;
|
|
|
}
|
|
|
var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;
|
|
|
var val = borderBoxValue || cssBoxValue;
|
|
|
if (extra === CONTENT_INDEX) {
|
|
|
if (borderBoxValueOrIsBorderBox) {
|
|
|
return val - getPBMWidth(elem, ['border', 'padding'], which, computedStyle);
|
|
|
}
|
|
|
return cssBoxValue;
|
|
|
} else if (borderBoxValueOrIsBorderBox) {
|
|
|
if (extra === BORDER_INDEX) {
|
|
|
return val;
|
|
|
}
|
|
|
return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which, computedStyle) : getPBMWidth(elem, ['margin'], which, computedStyle));
|
|
|
}
|
|
|
return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which, computedStyle);
|
|
|
}
|
|
|
|
|
|
var cssShow = {
|
|
|
position: 'absolute',
|
|
|
visibility: 'hidden',
|
|
|
display: 'block'
|
|
|
};
|
|
|
|
|
|
// fix #119 : https://github.com/kissyteam/kissy/issues/119
|
|
|
function getWHIgnoreDisplay() {
|
|
|
for (var _len = arguments.length, args = Array(_len), _key2 = 0; _key2 < _len; _key2++) {
|
|
|
args[_key2] = arguments[_key2];
|
|
|
}
|
|
|
|
|
|
var val = void 0;
|
|
|
var elem = args[0];
|
|
|
// in case elem is window
|
|
|
// elem.offsetWidth === undefined
|
|
|
if (elem.offsetWidth !== 0) {
|
|
|
val = getWH.apply(undefined, args);
|
|
|
} else {
|
|
|
swap(elem, cssShow, function () {
|
|
|
val = getWH.apply(undefined, args);
|
|
|
});
|
|
|
}
|
|
|
return val;
|
|
|
}
|
|
|
|
|
|
each(['width', 'height'], function (name) {
|
|
|
var first = name.charAt(0).toUpperCase() + name.slice(1);
|
|
|
domUtils['outer' + first] = function (el, includeMargin) {
|
|
|
return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);
|
|
|
};
|
|
|
var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];
|
|
|
|
|
|
domUtils[name] = function (elem, v) {
|
|
|
var val = v;
|
|
|
if (val !== undefined) {
|
|
|
if (elem) {
|
|
|
var computedStyle = getComputedStyleX(elem);
|
|
|
var isBorderBox = isBorderBoxFn(elem);
|
|
|
if (isBorderBox) {
|
|
|
val += getPBMWidth(elem, ['padding', 'border'], which, computedStyle);
|
|
|
}
|
|
|
return css(elem, name, val);
|
|
|
}
|
|
|
return undefined;
|
|
|
}
|
|
|
return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);
|
|
|
};
|
|
|
});
|
|
|
|
|
|
function mix(to, from) {
|
|
|
for (var i in from) {
|
|
|
if (from.hasOwnProperty(i)) {
|
|
|
to[i] = from[i];
|
|
|
}
|
|
|
}
|
|
|
return to;
|
|
|
}
|
|
|
|
|
|
var utils = {
|
|
|
getWindow: function getWindow(node) {
|
|
|
if (node && node.document && node.setTimeout) {
|
|
|
return node;
|
|
|
}
|
|
|
var doc = node.ownerDocument || node;
|
|
|
return doc.defaultView || doc.parentWindow;
|
|
|
},
|
|
|
|
|
|
getDocument: getDocument,
|
|
|
offset: function offset(el, value, option) {
|
|
|
if (typeof value !== 'undefined') {
|
|
|
setOffset(el, value, option || {});
|
|
|
} else {
|
|
|
return getOffset(el);
|
|
|
}
|
|
|
},
|
|
|
|
|
|
isWindow: isWindow,
|
|
|
each: each,
|
|
|
css: css,
|
|
|
clone: function clone(obj) {
|
|
|
var i = void 0;
|
|
|
var ret = {};
|
|
|
for (i in obj) {
|
|
|
if (obj.hasOwnProperty(i)) {
|
|
|
ret[i] = obj[i];
|
|
|
}
|
|
|
}
|
|
|
var overflow = obj.overflow;
|
|
|
if (overflow) {
|
|
|
for (i in obj) {
|
|
|
if (obj.hasOwnProperty(i)) {
|
|
|
ret.overflow[i] = obj.overflow[i];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return ret;
|
|
|
},
|
|
|
|
|
|
mix: mix,
|
|
|
getWindowScrollLeft: function getWindowScrollLeft(w) {
|
|
|
return getScrollLeft(w);
|
|
|
},
|
|
|
getWindowScrollTop: function getWindowScrollTop(w) {
|
|
|
return getScrollTop(w);
|
|
|
},
|
|
|
merge: function merge() {
|
|
|
var ret = {};
|
|
|
|
|
|
for (var _len2 = arguments.length, args = Array(_len2), _key3 = 0; _key3 < _len2; _key3++) {
|
|
|
args[_key3] = arguments[_key3];
|
|
|
}
|
|
|
|
|
|
for (var i = 0; i < args.length; i++) {
|
|
|
utils.mix(ret, args[i]);
|
|
|
}
|
|
|
return ret;
|
|
|
},
|
|
|
|
|
|
viewportWidth: 0,
|
|
|
viewportHeight: 0
|
|
|
};
|
|
|
|
|
|
mix(utils, domUtils);
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (utils);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 11 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var global = __webpack_require__(2);
|
|
|
var core = __webpack_require__(1);
|
|
|
var ctx = __webpack_require__(46);
|
|
|
var hide = __webpack_require__(12);
|
|
|
var has = __webpack_require__(8);
|
|
|
var PROTOTYPE = 'prototype';
|
|
|
|
|
|
var $export = function (type, name, source) {
|
|
|
var IS_FORCED = type & $export.F;
|
|
|
var IS_GLOBAL = type & $export.G;
|
|
|
var IS_STATIC = type & $export.S;
|
|
|
var IS_PROTO = type & $export.P;
|
|
|
var IS_BIND = type & $export.B;
|
|
|
var IS_WRAP = type & $export.W;
|
|
|
var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});
|
|
|
var expProto = exports[PROTOTYPE];
|
|
|
var target = IS_GLOBAL ? global : IS_STATIC ? global[name] : (global[name] || {})[PROTOTYPE];
|
|
|
var key, own, out;
|
|
|
if (IS_GLOBAL) source = name;
|
|
|
for (key in source) {
|
|
|
// contains in native
|
|
|
own = !IS_FORCED && target && target[key] !== undefined;
|
|
|
if (own && has(exports, key)) continue;
|
|
|
// export native or passed
|
|
|
out = own ? target[key] : source[key];
|
|
|
// prevent global pollution for namespaces
|
|
|
exports[key] = IS_GLOBAL && typeof target[key] != 'function' ? source[key]
|
|
|
// bind timers to global for call from export context
|
|
|
: IS_BIND && own ? ctx(out, global)
|
|
|
// wrap global constructors for prevent change them in library
|
|
|
: IS_WRAP && target[key] == out ? (function (C) {
|
|
|
var F = function (a, b, c) {
|
|
|
if (this instanceof C) {
|
|
|
switch (arguments.length) {
|
|
|
case 0: return new C();
|
|
|
case 1: return new C(a);
|
|
|
case 2: return new C(a, b);
|
|
|
} return new C(a, b, c);
|
|
|
} return C.apply(this, arguments);
|
|
|
};
|
|
|
F[PROTOTYPE] = C[PROTOTYPE];
|
|
|
return F;
|
|
|
// make static versions for prototype methods
|
|
|
})(out) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;
|
|
|
// export proto methods to core.%CONSTRUCTOR%.methods.%NAME%
|
|
|
if (IS_PROTO) {
|
|
|
(exports.virtual || (exports.virtual = {}))[key] = out;
|
|
|
// export proto methods to core.%CONSTRUCTOR%.prototype.%NAME%
|
|
|
if (type & $export.R && expProto && !expProto[key]) hide(expProto, key, out);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
// type bitmap
|
|
|
$export.F = 1; // forced
|
|
|
$export.G = 2; // global
|
|
|
$export.S = 4; // static
|
|
|
$export.P = 8; // proto
|
|
|
$export.B = 16; // bind
|
|
|
$export.W = 32; // wrap
|
|
|
$export.U = 64; // safe
|
|
|
$export.R = 128; // real proto method for `library`
|
|
|
module.exports = $export;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 12 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var dP = __webpack_require__(9);
|
|
|
var createDesc = __webpack_require__(23);
|
|
|
module.exports = __webpack_require__(7) ? function (object, key, value) {
|
|
|
return dP.f(object, key, createDesc(1, value));
|
|
|
} : function (object, key, value) {
|
|
|
object[key] = value;
|
|
|
return object;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 13 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function (it) {
|
|
|
return typeof it === 'object' ? it !== null : typeof it === 'function';
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 14 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// to indexed object, toObject with fallback for non-array-like ES3 strings
|
|
|
var IObject = __webpack_require__(49);
|
|
|
var defined = __webpack_require__(26);
|
|
|
module.exports = function (it) {
|
|
|
return IObject(defined(it));
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 15 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var store = __webpack_require__(33)('wks');
|
|
|
var uid = __webpack_require__(24);
|
|
|
var Symbol = __webpack_require__(2).Symbol;
|
|
|
var USE_SYMBOL = typeof Symbol == 'function';
|
|
|
|
|
|
var $exports = module.exports = function (name) {
|
|
|
return store[name] || (store[name] =
|
|
|
USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));
|
|
|
};
|
|
|
|
|
|
$exports.store = store;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 16 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = __WEBPACK_EXTERNAL_MODULE_16__;
|
|
|
|
|
|
/***/ }),
|
|
|
/* 17 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _assign = __webpack_require__(71);
|
|
|
|
|
|
var _assign2 = _interopRequireDefault(_assign);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = _assign2.default || function (target) {
|
|
|
for (var i = 1; i < arguments.length; i++) {
|
|
|
var source = arguments[i];
|
|
|
|
|
|
for (var key in source) {
|
|
|
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
|
target[key] = source[key];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return target;
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 18 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var isObject = __webpack_require__(13);
|
|
|
module.exports = function (it) {
|
|
|
if (!isObject(it)) throw TypeError(it + ' is not an object!');
|
|
|
return it;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 19 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function (exec) {
|
|
|
try {
|
|
|
return !!exec();
|
|
|
} catch (e) {
|
|
|
return true;
|
|
|
}
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 20 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = true;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 21 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.2.14 / 15.2.3.14 Object.keys(O)
|
|
|
var $keys = __webpack_require__(53);
|
|
|
var enumBugKeys = __webpack_require__(27);
|
|
|
|
|
|
module.exports = Object.keys || function keys(O) {
|
|
|
return $keys(O, enumBugKeys);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 22 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
exports.f = {}.propertyIsEnumerable;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 23 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function (bitmap, value) {
|
|
|
return {
|
|
|
enumerable: !(bitmap & 1),
|
|
|
configurable: !(bitmap & 2),
|
|
|
writable: !(bitmap & 4),
|
|
|
value: value
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 24 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
var id = 0;
|
|
|
var px = Math.random();
|
|
|
module.exports = function (key) {
|
|
|
return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 25 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _iterator = __webpack_require__(75);
|
|
|
|
|
|
var _iterator2 = _interopRequireDefault(_iterator);
|
|
|
|
|
|
var _symbol = __webpack_require__(74);
|
|
|
|
|
|
var _symbol2 = _interopRequireDefault(_symbol);
|
|
|
|
|
|
var _typeof = typeof _symbol2.default === "function" && typeof _iterator2.default === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj; };
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = typeof _symbol2.default === "function" && _typeof(_iterator2.default) === "symbol" ? function (obj) {
|
|
|
return typeof obj === "undefined" ? "undefined" : _typeof(obj);
|
|
|
} : function (obj) {
|
|
|
return obj && typeof _symbol2.default === "function" && obj.constructor === _symbol2.default && obj !== _symbol2.default.prototype ? "symbol" : typeof obj === "undefined" ? "undefined" : _typeof(obj);
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 26 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// 7.2.1 RequireObjectCoercible(argument)
|
|
|
module.exports = function (it) {
|
|
|
if (it == undefined) throw TypeError("Can't call method on " + it);
|
|
|
return it;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 27 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// IE 8- don't enum bug keys
|
|
|
module.exports = (
|
|
|
'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'
|
|
|
).split(',');
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 28 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = {};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 29 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
|
|
|
var anObject = __webpack_require__(18);
|
|
|
var dPs = __webpack_require__(94);
|
|
|
var enumBugKeys = __webpack_require__(27);
|
|
|
var IE_PROTO = __webpack_require__(32)('IE_PROTO');
|
|
|
var Empty = function () { /* empty */ };
|
|
|
var PROTOTYPE = 'prototype';
|
|
|
|
|
|
// Create object with fake `null` prototype: use iframe Object with cleared prototype
|
|
|
var createDict = function () {
|
|
|
// Thrash, waste and sodomy: IE GC bug
|
|
|
var iframe = __webpack_require__(47)('iframe');
|
|
|
var i = enumBugKeys.length;
|
|
|
var lt = '<';
|
|
|
var gt = '>';
|
|
|
var iframeDocument;
|
|
|
iframe.style.display = 'none';
|
|
|
__webpack_require__(88).appendChild(iframe);
|
|
|
iframe.src = 'javascript:'; // eslint-disable-line no-script-url
|
|
|
// createDict = iframe.contentWindow.Object;
|
|
|
// html.removeChild(iframe);
|
|
|
iframeDocument = iframe.contentWindow.document;
|
|
|
iframeDocument.open();
|
|
|
iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);
|
|
|
iframeDocument.close();
|
|
|
createDict = iframeDocument.F;
|
|
|
while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];
|
|
|
return createDict();
|
|
|
};
|
|
|
|
|
|
module.exports = Object.create || function create(O, Properties) {
|
|
|
var result;
|
|
|
if (O !== null) {
|
|
|
Empty[PROTOTYPE] = anObject(O);
|
|
|
result = new Empty();
|
|
|
Empty[PROTOTYPE] = null;
|
|
|
// add "__proto__" for Object.getPrototypeOf polyfill
|
|
|
result[IE_PROTO] = O;
|
|
|
} else result = createDict();
|
|
|
return Properties === undefined ? result : dPs(result, Properties);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 30 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
exports.f = Object.getOwnPropertySymbols;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 31 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var def = __webpack_require__(9).f;
|
|
|
var has = __webpack_require__(8);
|
|
|
var TAG = __webpack_require__(15)('toStringTag');
|
|
|
|
|
|
module.exports = function (it, tag, stat) {
|
|
|
if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 32 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var shared = __webpack_require__(33)('keys');
|
|
|
var uid = __webpack_require__(24);
|
|
|
module.exports = function (key) {
|
|
|
return shared[key] || (shared[key] = uid(key));
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 33 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var core = __webpack_require__(1);
|
|
|
var global = __webpack_require__(2);
|
|
|
var SHARED = '__core-js_shared__';
|
|
|
var store = global[SHARED] || (global[SHARED] = {});
|
|
|
|
|
|
(module.exports = function (key, value) {
|
|
|
return store[key] || (store[key] = value !== undefined ? value : {});
|
|
|
})('versions', []).push({
|
|
|
version: core.version,
|
|
|
mode: __webpack_require__(20) ? 'pure' : 'global',
|
|
|
copyright: '© 2018 Denis Pushkarev (zloirock.ru)'
|
|
|
});
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 34 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// 7.1.4 ToInteger
|
|
|
var ceil = Math.ceil;
|
|
|
var floor = Math.floor;
|
|
|
module.exports = function (it) {
|
|
|
return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 35 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 7.1.1 ToPrimitive(input [, PreferredType])
|
|
|
var isObject = __webpack_require__(13);
|
|
|
// instead of the ES6 spec version, we didn't implement @@toPrimitive case
|
|
|
// and the second argument - flag - preferred type is a string
|
|
|
module.exports = function (it, S) {
|
|
|
if (!isObject(it)) return it;
|
|
|
var fn, val;
|
|
|
if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
|
|
if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;
|
|
|
if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;
|
|
|
throw TypeError("Can't convert object to primitive value");
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 36 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var global = __webpack_require__(2);
|
|
|
var core = __webpack_require__(1);
|
|
|
var LIBRARY = __webpack_require__(20);
|
|
|
var wksExt = __webpack_require__(37);
|
|
|
var defineProperty = __webpack_require__(9).f;
|
|
|
module.exports = function (name) {
|
|
|
var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});
|
|
|
if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 37 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
exports.f = __webpack_require__(15);
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 38 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// shim for using process in browser
|
|
|
var process = module.exports = {};
|
|
|
|
|
|
// cached from whatever global is present so that test runners that stub it
|
|
|
// don't break things. But we need to wrap it in a try catch in case it is
|
|
|
// wrapped in strict mode code which doesn't define any globals. It's inside a
|
|
|
// function because try/catches deoptimize in certain engines.
|
|
|
|
|
|
var cachedSetTimeout;
|
|
|
var cachedClearTimeout;
|
|
|
|
|
|
function defaultSetTimout() {
|
|
|
throw new Error('setTimeout has not been defined');
|
|
|
}
|
|
|
function defaultClearTimeout () {
|
|
|
throw new Error('clearTimeout has not been defined');
|
|
|
}
|
|
|
(function () {
|
|
|
try {
|
|
|
if (typeof setTimeout === 'function') {
|
|
|
cachedSetTimeout = setTimeout;
|
|
|
} else {
|
|
|
cachedSetTimeout = defaultSetTimout;
|
|
|
}
|
|
|
} catch (e) {
|
|
|
cachedSetTimeout = defaultSetTimout;
|
|
|
}
|
|
|
try {
|
|
|
if (typeof clearTimeout === 'function') {
|
|
|
cachedClearTimeout = clearTimeout;
|
|
|
} else {
|
|
|
cachedClearTimeout = defaultClearTimeout;
|
|
|
}
|
|
|
} catch (e) {
|
|
|
cachedClearTimeout = defaultClearTimeout;
|
|
|
}
|
|
|
} ())
|
|
|
function runTimeout(fun) {
|
|
|
if (cachedSetTimeout === setTimeout) {
|
|
|
//normal enviroments in sane situations
|
|
|
return setTimeout(fun, 0);
|
|
|
}
|
|
|
// if setTimeout wasn't available but was latter defined
|
|
|
if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
|
|
|
cachedSetTimeout = setTimeout;
|
|
|
return setTimeout(fun, 0);
|
|
|
}
|
|
|
try {
|
|
|
// when when somebody has screwed with setTimeout but no I.E. maddness
|
|
|
return cachedSetTimeout(fun, 0);
|
|
|
} catch(e){
|
|
|
try {
|
|
|
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
|
|
|
return cachedSetTimeout.call(null, fun, 0);
|
|
|
} catch(e){
|
|
|
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
|
|
|
return cachedSetTimeout.call(this, fun, 0);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|
|
|
function runClearTimeout(marker) {
|
|
|
if (cachedClearTimeout === clearTimeout) {
|
|
|
//normal enviroments in sane situations
|
|
|
return clearTimeout(marker);
|
|
|
}
|
|
|
// if clearTimeout wasn't available but was latter defined
|
|
|
if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
|
|
|
cachedClearTimeout = clearTimeout;
|
|
|
return clearTimeout(marker);
|
|
|
}
|
|
|
try {
|
|
|
// when when somebody has screwed with setTimeout but no I.E. maddness
|
|
|
return cachedClearTimeout(marker);
|
|
|
} catch (e){
|
|
|
try {
|
|
|
// When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
|
|
|
return cachedClearTimeout.call(null, marker);
|
|
|
} catch (e){
|
|
|
// same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
|
|
|
// Some versions of I.E. have different rules for clearTimeout vs setTimeout
|
|
|
return cachedClearTimeout.call(this, marker);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
var queue = [];
|
|
|
var draining = false;
|
|
|
var currentQueue;
|
|
|
var queueIndex = -1;
|
|
|
|
|
|
function cleanUpNextTick() {
|
|
|
if (!draining || !currentQueue) {
|
|
|
return;
|
|
|
}
|
|
|
draining = false;
|
|
|
if (currentQueue.length) {
|
|
|
queue = currentQueue.concat(queue);
|
|
|
} else {
|
|
|
queueIndex = -1;
|
|
|
}
|
|
|
if (queue.length) {
|
|
|
drainQueue();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function drainQueue() {
|
|
|
if (draining) {
|
|
|
return;
|
|
|
}
|
|
|
var timeout = runTimeout(cleanUpNextTick);
|
|
|
draining = true;
|
|
|
|
|
|
var len = queue.length;
|
|
|
while(len) {
|
|
|
currentQueue = queue;
|
|
|
queue = [];
|
|
|
while (++queueIndex < len) {
|
|
|
if (currentQueue) {
|
|
|
currentQueue[queueIndex].run();
|
|
|
}
|
|
|
}
|
|
|
queueIndex = -1;
|
|
|
len = queue.length;
|
|
|
}
|
|
|
currentQueue = null;
|
|
|
draining = false;
|
|
|
runClearTimeout(timeout);
|
|
|
}
|
|
|
|
|
|
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));
|
|
|
if (queue.length === 1 && !draining) {
|
|
|
runTimeout(drainQueue);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
// v8 likes predictible objects
|
|
|
function Item(fun, array) {
|
|
|
this.fun = fun;
|
|
|
this.array = array;
|
|
|
}
|
|
|
Item.prototype.run = function () {
|
|
|
this.fun.apply(null, this.array);
|
|
|
};
|
|
|
process.title = 'browser';
|
|
|
process.browser = true;
|
|
|
process.env = {};
|
|
|
process.argv = [];
|
|
|
process.version = ''; // empty string to avoid regexp issues
|
|
|
process.versions = {};
|
|
|
|
|
|
function noop() {}
|
|
|
|
|
|
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; };
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 39 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/**
|
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
|
*
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
|
|
|
|
|
|
module.exports = ReactPropTypesSecret;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 40 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
Object.defineProperty(exports, '__esModule', {
|
|
|
value: true
|
|
|
});
|
|
|
exports['default'] = addEventListener;
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
|
|
|
|
|
|
var _EventObject = __webpack_require__(66);
|
|
|
|
|
|
var _EventObject2 = _interopRequireDefault(_EventObject);
|
|
|
|
|
|
function addEventListener(target, eventType, callback, option) {
|
|
|
function wrapCallback(e) {
|
|
|
var ne = new _EventObject2['default'](e);
|
|
|
callback.call(target, ne);
|
|
|
}
|
|
|
|
|
|
if (target.addEventListener) {
|
|
|
var _ret = (function () {
|
|
|
var useCapture = false;
|
|
|
if (typeof option === 'object') {
|
|
|
useCapture = option.capture || false;
|
|
|
} else if (typeof option === 'boolean') {
|
|
|
useCapture = option;
|
|
|
}
|
|
|
|
|
|
target.addEventListener(eventType, wrapCallback, option || false);
|
|
|
|
|
|
return {
|
|
|
v: {
|
|
|
remove: function remove() {
|
|
|
target.removeEventListener(eventType, wrapCallback, useCapture);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
})();
|
|
|
|
|
|
if (typeof _ret === 'object') return _ret.v;
|
|
|
} else if (target.attachEvent) {
|
|
|
target.attachEvent('on' + eventType, wrapCallback);
|
|
|
return {
|
|
|
remove: function remove() {
|
|
|
target.detachEvent('on' + eventType, wrapCallback);
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
}
|
|
|
|
|
|
module.exports = exports['default'];
|
|
|
|
|
|
/***/ }),
|
|
|
/* 41 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var __rest = this && this.__rest || function (s, e) {
|
|
|
var t = {};
|
|
|
for (var p in s) {
|
|
|
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
|
}if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
|
if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]];
|
|
|
}return t;
|
|
|
};
|
|
|
|
|
|
|
|
|
var LazyRenderBox = function (_Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(LazyRenderBox, _Component);
|
|
|
|
|
|
function LazyRenderBox() {
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, LazyRenderBox);
|
|
|
|
|
|
return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, (LazyRenderBox.__proto__ || Object.getPrototypeOf(LazyRenderBox)).apply(this, arguments));
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(LazyRenderBox, [{
|
|
|
key: "shouldComponentUpdate",
|
|
|
value: function shouldComponentUpdate(nextProps) {
|
|
|
return nextProps.hiddenClassName || nextProps.visible;
|
|
|
}
|
|
|
}, {
|
|
|
key: "render",
|
|
|
value: function render() {
|
|
|
var _a = this.props,
|
|
|
hiddenClassName = _a.hiddenClassName,
|
|
|
visible = _a.visible,
|
|
|
props = __rest(_a, ["hiddenClassName", "visible"]);
|
|
|
if (hiddenClassName || __WEBPACK_IMPORTED_MODULE_4_react___default.a.Children.count(props.children) > 1) {
|
|
|
if (!visible && hiddenClassName) {
|
|
|
props.className += " " + hiddenClassName;
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement("div", props);
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_4_react___default.a.Children.only(props.children);
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return LazyRenderBox;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_4_react__["Component"]);
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (LazyRenderBox);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 42 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = getAlignFromPlacement;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["b"] = getPopupClassNameFromAlign;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["c"] = saveRef;
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(17);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
|
|
|
|
function isPointsEq(a1, a2) {
|
|
|
return a1[0] === a2[0] && a1[1] === a2[1];
|
|
|
}
|
|
|
function getAlignFromPlacement(builtinPlacements, placementStr, align) {
|
|
|
var baseAlign = builtinPlacements[placementStr] || {};
|
|
|
return __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, baseAlign, align);
|
|
|
}
|
|
|
function getPopupClassNameFromAlign(builtinPlacements, prefixCls, align) {
|
|
|
var points = align.points;
|
|
|
for (var placement in builtinPlacements) {
|
|
|
if (builtinPlacements.hasOwnProperty(placement)) {
|
|
|
if (isPointsEq(builtinPlacements[placement].points, points)) {
|
|
|
return prefixCls + '-placement-' + placement;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return '';
|
|
|
}
|
|
|
function saveRef(name, component) {
|
|
|
this[name] = component;
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 43 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(80), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 44 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function(arr, obj){
|
|
|
if (arr.indexOf) return arr.indexOf(obj);
|
|
|
for (var i = 0; i < arr.length; ++i) {
|
|
|
if (arr[i] === obj) return i;
|
|
|
}
|
|
|
return -1;
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 45 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
var toString = {}.toString;
|
|
|
|
|
|
module.exports = function (it) {
|
|
|
return toString.call(it).slice(8, -1);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 46 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// optional / simple context binding
|
|
|
var aFunction = __webpack_require__(84);
|
|
|
module.exports = function (fn, that, length) {
|
|
|
aFunction(fn);
|
|
|
if (that === undefined) return fn;
|
|
|
switch (length) {
|
|
|
case 1: return function (a) {
|
|
|
return fn.call(that, a);
|
|
|
};
|
|
|
case 2: return function (a, b) {
|
|
|
return fn.call(that, a, b);
|
|
|
};
|
|
|
case 3: return function (a, b, c) {
|
|
|
return fn.call(that, a, b, c);
|
|
|
};
|
|
|
}
|
|
|
return function (/* ...args */) {
|
|
|
return fn.apply(that, arguments);
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 47 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var isObject = __webpack_require__(13);
|
|
|
var document = __webpack_require__(2).document;
|
|
|
// typeof document.createElement is 'object' in old IE
|
|
|
var is = isObject(document) && isObject(document.createElement);
|
|
|
module.exports = function (it) {
|
|
|
return is ? document.createElement(it) : {};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 48 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = !__webpack_require__(7) && !__webpack_require__(19)(function () {
|
|
|
return Object.defineProperty(__webpack_require__(47)('div'), 'a', { get: function () { return 7; } }).a != 7;
|
|
|
});
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 49 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// fallback for non-array-like ES3 and non-enumerable old V8 strings
|
|
|
var cof = __webpack_require__(45);
|
|
|
// eslint-disable-next-line no-prototype-builtins
|
|
|
module.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {
|
|
|
return cof(it) == 'String' ? it.split('') : Object(it);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 50 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
var LIBRARY = __webpack_require__(20);
|
|
|
var $export = __webpack_require__(11);
|
|
|
var redefine = __webpack_require__(54);
|
|
|
var hide = __webpack_require__(12);
|
|
|
var Iterators = __webpack_require__(28);
|
|
|
var $iterCreate = __webpack_require__(90);
|
|
|
var setToStringTag = __webpack_require__(31);
|
|
|
var getPrototypeOf = __webpack_require__(96);
|
|
|
var ITERATOR = __webpack_require__(15)('iterator');
|
|
|
var BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`
|
|
|
var FF_ITERATOR = '@@iterator';
|
|
|
var KEYS = 'keys';
|
|
|
var VALUES = 'values';
|
|
|
|
|
|
var returnThis = function () { return this; };
|
|
|
|
|
|
module.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {
|
|
|
$iterCreate(Constructor, NAME, next);
|
|
|
var getMethod = function (kind) {
|
|
|
if (!BUGGY && kind in proto) return proto[kind];
|
|
|
switch (kind) {
|
|
|
case KEYS: return function keys() { return new Constructor(this, kind); };
|
|
|
case VALUES: return function values() { return new Constructor(this, kind); };
|
|
|
} return function entries() { return new Constructor(this, kind); };
|
|
|
};
|
|
|
var TAG = NAME + ' Iterator';
|
|
|
var DEF_VALUES = DEFAULT == VALUES;
|
|
|
var VALUES_BUG = false;
|
|
|
var proto = Base.prototype;
|
|
|
var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];
|
|
|
var $default = $native || getMethod(DEFAULT);
|
|
|
var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;
|
|
|
var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;
|
|
|
var methods, key, IteratorPrototype;
|
|
|
// Fix native
|
|
|
if ($anyNative) {
|
|
|
IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));
|
|
|
if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {
|
|
|
// Set @@toStringTag to native iterators
|
|
|
setToStringTag(IteratorPrototype, TAG, true);
|
|
|
// fix for some old engines
|
|
|
if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);
|
|
|
}
|
|
|
}
|
|
|
// fix Array#{values, @@iterator}.name in V8 / FF
|
|
|
if (DEF_VALUES && $native && $native.name !== VALUES) {
|
|
|
VALUES_BUG = true;
|
|
|
$default = function values() { return $native.call(this); };
|
|
|
}
|
|
|
// Define iterator
|
|
|
if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {
|
|
|
hide(proto, ITERATOR, $default);
|
|
|
}
|
|
|
// Plug for library
|
|
|
Iterators[NAME] = $default;
|
|
|
Iterators[TAG] = returnThis;
|
|
|
if (DEFAULT) {
|
|
|
methods = {
|
|
|
values: DEF_VALUES ? $default : getMethod(VALUES),
|
|
|
keys: IS_SET ? $default : getMethod(KEYS),
|
|
|
entries: $entries
|
|
|
};
|
|
|
if (FORCED) for (key in methods) {
|
|
|
if (!(key in proto)) redefine(proto, key, methods[key]);
|
|
|
} else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);
|
|
|
}
|
|
|
return methods;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 51 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var pIE = __webpack_require__(22);
|
|
|
var createDesc = __webpack_require__(23);
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
var toPrimitive = __webpack_require__(35);
|
|
|
var has = __webpack_require__(8);
|
|
|
var IE8_DOM_DEFINE = __webpack_require__(48);
|
|
|
var gOPD = Object.getOwnPropertyDescriptor;
|
|
|
|
|
|
exports.f = __webpack_require__(7) ? gOPD : function getOwnPropertyDescriptor(O, P) {
|
|
|
O = toIObject(O);
|
|
|
P = toPrimitive(P, true);
|
|
|
if (IE8_DOM_DEFINE) try {
|
|
|
return gOPD(O, P);
|
|
|
} catch (e) { /* empty */ }
|
|
|
if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 52 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)
|
|
|
var $keys = __webpack_require__(53);
|
|
|
var hiddenKeys = __webpack_require__(27).concat('length', 'prototype');
|
|
|
|
|
|
exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {
|
|
|
return $keys(O, hiddenKeys);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 53 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var has = __webpack_require__(8);
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
var arrayIndexOf = __webpack_require__(86)(false);
|
|
|
var IE_PROTO = __webpack_require__(32)('IE_PROTO');
|
|
|
|
|
|
module.exports = function (object, names) {
|
|
|
var O = toIObject(object);
|
|
|
var i = 0;
|
|
|
var result = [];
|
|
|
var key;
|
|
|
for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);
|
|
|
// Don't enum bug & hidden keys
|
|
|
while (names.length > i) if (has(O, key = names[i++])) {
|
|
|
~arrayIndexOf(result, key) || result.push(key);
|
|
|
}
|
|
|
return result;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 54 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = __webpack_require__(12);
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 55 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 7.1.13 ToObject(argument)
|
|
|
var defined = __webpack_require__(26);
|
|
|
module.exports = function (it) {
|
|
|
return Object(defined(it));
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 56 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getVisibleRectForElement__ = __webpack_require__(59);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__adjustForViewport__ = __webpack_require__(114);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getRegion__ = __webpack_require__(58);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__getElFuturePos__ = __webpack_require__(118);
|
|
|
/**
|
|
|
* align dom node flexibly
|
|
|
* @author yiminghe@gmail.com
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// http://yiminghe.iteye.com/blog/1124720
|
|
|
|
|
|
function isFailX(elFuturePos, elRegion, visibleRect) {
|
|
|
return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;
|
|
|
}
|
|
|
|
|
|
function isFailY(elFuturePos, elRegion, visibleRect) {
|
|
|
return elFuturePos.top < visibleRect.top || elFuturePos.top + elRegion.height > visibleRect.bottom;
|
|
|
}
|
|
|
|
|
|
function isCompleteFailX(elFuturePos, elRegion, visibleRect) {
|
|
|
return elFuturePos.left > visibleRect.right || elFuturePos.left + elRegion.width < visibleRect.left;
|
|
|
}
|
|
|
|
|
|
function isCompleteFailY(elFuturePos, elRegion, visibleRect) {
|
|
|
return elFuturePos.top > visibleRect.bottom || elFuturePos.top + elRegion.height < visibleRect.top;
|
|
|
}
|
|
|
|
|
|
function flip(points, reg, map) {
|
|
|
var ret = [];
|
|
|
__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].each(points, function (p) {
|
|
|
ret.push(p.replace(reg, function (m) {
|
|
|
return map[m];
|
|
|
}));
|
|
|
});
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function flipOffset(offset, index) {
|
|
|
offset[index] = -offset[index];
|
|
|
return offset;
|
|
|
}
|
|
|
|
|
|
function convertOffset(str, offsetLen) {
|
|
|
var n = void 0;
|
|
|
if (/%$/.test(str)) {
|
|
|
n = parseInt(str.substring(0, str.length - 1), 10) / 100 * offsetLen;
|
|
|
} else {
|
|
|
n = parseInt(str, 10);
|
|
|
}
|
|
|
return n || 0;
|
|
|
}
|
|
|
|
|
|
function normalizeOffset(offset, el) {
|
|
|
offset[0] = convertOffset(offset[0], el.width);
|
|
|
offset[1] = convertOffset(offset[1], el.height);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @param el
|
|
|
* @param tgtRegion 参照节点所占的区域: { left, top, width, height }
|
|
|
* @param align
|
|
|
*/
|
|
|
function doAlign(el, tgtRegion, align, isTgtRegionVisible) {
|
|
|
var points = align.points;
|
|
|
var offset = align.offset || [0, 0];
|
|
|
var targetOffset = align.targetOffset || [0, 0];
|
|
|
var overflow = align.overflow;
|
|
|
var source = align.source || el;
|
|
|
offset = [].concat(offset);
|
|
|
targetOffset = [].concat(targetOffset);
|
|
|
overflow = overflow || {};
|
|
|
var newOverflowCfg = {};
|
|
|
var fail = 0;
|
|
|
// 当前节点可以被放置的显示区域
|
|
|
var visibleRect = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__getVisibleRectForElement__["a" /* default */])(source);
|
|
|
// 当前节点所占的区域, left/top/width/height
|
|
|
var elRegion = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__getRegion__["a" /* default */])(source);
|
|
|
// 将 offset 转换成数值,支持百分比
|
|
|
normalizeOffset(offset, elRegion);
|
|
|
normalizeOffset(targetOffset, tgtRegion);
|
|
|
// 当前节点将要被放置的位置
|
|
|
var elFuturePos = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__getElFuturePos__["a" /* default */])(elRegion, tgtRegion, points, offset, targetOffset);
|
|
|
// 当前节点将要所处的区域
|
|
|
var newElRegion = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].merge(elRegion, elFuturePos);
|
|
|
|
|
|
// 如果可视区域不能完全放置当前节点时允许调整
|
|
|
if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTgtRegionVisible) {
|
|
|
if (overflow.adjustX) {
|
|
|
// 如果横向不能放下
|
|
|
if (isFailX(elFuturePos, elRegion, visibleRect)) {
|
|
|
// 对齐位置反下
|
|
|
var newPoints = flip(points, /[lr]/ig, {
|
|
|
l: 'r',
|
|
|
r: 'l'
|
|
|
});
|
|
|
// 偏移量也反下
|
|
|
var newOffset = flipOffset(offset, 0);
|
|
|
var newTargetOffset = flipOffset(targetOffset, 0);
|
|
|
var newElFuturePos = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__getElFuturePos__["a" /* default */])(elRegion, tgtRegion, newPoints, newOffset, newTargetOffset);
|
|
|
|
|
|
if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {
|
|
|
fail = 1;
|
|
|
points = newPoints;
|
|
|
offset = newOffset;
|
|
|
targetOffset = newTargetOffset;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (overflow.adjustY) {
|
|
|
// 如果纵向不能放下
|
|
|
if (isFailY(elFuturePos, elRegion, visibleRect)) {
|
|
|
// 对齐位置反下
|
|
|
var _newPoints = flip(points, /[tb]/ig, {
|
|
|
t: 'b',
|
|
|
b: 't'
|
|
|
});
|
|
|
// 偏移量也反下
|
|
|
var _newOffset = flipOffset(offset, 1);
|
|
|
var _newTargetOffset = flipOffset(targetOffset, 1);
|
|
|
var _newElFuturePos = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__getElFuturePos__["a" /* default */])(elRegion, tgtRegion, _newPoints, _newOffset, _newTargetOffset);
|
|
|
|
|
|
if (!isCompleteFailY(_newElFuturePos, elRegion, visibleRect)) {
|
|
|
fail = 1;
|
|
|
points = _newPoints;
|
|
|
offset = _newOffset;
|
|
|
targetOffset = _newTargetOffset;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// 如果失败,重新计算当前节点将要被放置的位置
|
|
|
if (fail) {
|
|
|
elFuturePos = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__getElFuturePos__["a" /* default */])(elRegion, tgtRegion, points, offset, targetOffset);
|
|
|
__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].mix(newElRegion, elFuturePos);
|
|
|
}
|
|
|
var isStillFailX = isFailX(elFuturePos, elRegion, visibleRect);
|
|
|
var isStillFailY = isFailY(elFuturePos, elRegion, visibleRect);
|
|
|
// 检查反下后的位置是否可以放下了,如果仍然放不下:
|
|
|
// 1. 复原修改过的定位参数
|
|
|
if (isStillFailX || isStillFailY) {
|
|
|
points = align.points;
|
|
|
offset = align.offset || [0, 0];
|
|
|
targetOffset = align.targetOffset || [0, 0];
|
|
|
}
|
|
|
// 2. 只有指定了可以调整当前方向才调整
|
|
|
newOverflowCfg.adjustX = overflow.adjustX && isStillFailX;
|
|
|
newOverflowCfg.adjustY = overflow.adjustY && isStillFailY;
|
|
|
|
|
|
// 确实要调整,甚至可能会调整高度宽度
|
|
|
if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {
|
|
|
newElRegion = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__adjustForViewport__["a" /* default */])(elFuturePos, elRegion, visibleRect, newOverflowCfg);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// need judge to in case set fixed with in css on height auto element
|
|
|
if (newElRegion.width !== elRegion.width) {
|
|
|
__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(source, 'width', __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].width(source) + newElRegion.width - elRegion.width);
|
|
|
}
|
|
|
|
|
|
if (newElRegion.height !== elRegion.height) {
|
|
|
__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(source, 'height', __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].height(source) + newElRegion.height - elRegion.height);
|
|
|
}
|
|
|
|
|
|
// https://github.com/kissyteam/kissy/issues/190
|
|
|
// 相对于屏幕位置没变,而 left/top 变了
|
|
|
// 例如 <div 'relative'><el absolute></div>
|
|
|
__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].offset(source, {
|
|
|
left: newElRegion.left,
|
|
|
top: newElRegion.top
|
|
|
}, {
|
|
|
useCssRight: align.useCssRight,
|
|
|
useCssBottom: align.useCssBottom,
|
|
|
useCssTransform: align.useCssTransform,
|
|
|
ignoreShake: align.ignoreShake
|
|
|
});
|
|
|
|
|
|
return {
|
|
|
points: points,
|
|
|
offset: offset,
|
|
|
targetOffset: targetOffset,
|
|
|
overflow: newOverflowCfg
|
|
|
};
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (doAlign);
|
|
|
/**
|
|
|
* 2012-04-26 yiminghe@gmail.com
|
|
|
* - 优化智能对齐算法
|
|
|
* - 慎用 resizeXX
|
|
|
*
|
|
|
* 2011-07-13 yiminghe@gmail.com note:
|
|
|
* - 增加智能对齐,以及大小调整选项
|
|
|
**/
|
|
|
|
|
|
/***/ }),
|
|
|
/* 57 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 得到会导致元素显示不全的祖先元素
|
|
|
*/
|
|
|
|
|
|
function getOffsetParent(element) {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].isWindow(element) || element.nodeType === 9) {
|
|
|
return null;
|
|
|
}
|
|
|
// ie 这个也不是完全可行
|
|
|
/*
|
|
|
<div style="width: 50px;height: 100px;overflow: hidden">
|
|
|
<div style="width: 50px;height: 100px;position: relative;" id="d6">
|
|
|
元素 6 高 100px 宽 50px<br/>
|
|
|
</div>
|
|
|
</div>
|
|
|
*/
|
|
|
// element.offsetParent does the right thing in ie7 and below. Return parent with layout!
|
|
|
// In other browsers it only includes elements with position absolute, relative or
|
|
|
// fixed, not elements with overflow set to auto or scroll.
|
|
|
// if (UA.ie && ieMode < 8) {
|
|
|
// return element.offsetParent;
|
|
|
// }
|
|
|
// 统一的 offsetParent 方法
|
|
|
var doc = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getDocument(element);
|
|
|
var body = doc.body;
|
|
|
var parent = void 0;
|
|
|
var positionStyle = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(element, 'position');
|
|
|
var skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';
|
|
|
|
|
|
if (!skipStatic) {
|
|
|
return element.nodeName.toLowerCase() === 'html' ? null : element.parentNode;
|
|
|
}
|
|
|
|
|
|
for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {
|
|
|
positionStyle = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(parent, 'position');
|
|
|
if (positionStyle !== 'static') {
|
|
|
return parent;
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (getOffsetParent);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 58 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
|
|
|
|
|
|
function getRegion(node) {
|
|
|
var offset = void 0;
|
|
|
var w = void 0;
|
|
|
var h = void 0;
|
|
|
if (!__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].isWindow(node) && node.nodeType !== 9) {
|
|
|
offset = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].offset(node);
|
|
|
w = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].outerWidth(node);
|
|
|
h = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].outerHeight(node);
|
|
|
} else {
|
|
|
var win = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindow(node);
|
|
|
offset = {
|
|
|
left: __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollLeft(win),
|
|
|
top: __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollTop(win)
|
|
|
};
|
|
|
w = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportWidth(win);
|
|
|
h = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportHeight(win);
|
|
|
}
|
|
|
offset.width = w;
|
|
|
offset.height = h;
|
|
|
return offset;
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (getRegion);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 59 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getOffsetParent__ = __webpack_require__(57);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__isAncestorFixed__ = __webpack_require__(120);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* 获得元素的显示部分的区域
|
|
|
*/
|
|
|
function getVisibleRectForElement(element) {
|
|
|
var visibleRect = {
|
|
|
left: 0,
|
|
|
right: Infinity,
|
|
|
top: 0,
|
|
|
bottom: Infinity
|
|
|
};
|
|
|
var el = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__getOffsetParent__["a" /* default */])(element);
|
|
|
var doc = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getDocument(element);
|
|
|
var win = doc.defaultView || doc.parentWindow;
|
|
|
var body = doc.body;
|
|
|
var documentElement = doc.documentElement;
|
|
|
|
|
|
// Determine the size of the visible rect by climbing the dom accounting for
|
|
|
// all scrollable containers.
|
|
|
while (el) {
|
|
|
// clientWidth is zero for inline block elements in ie.
|
|
|
if ((navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&
|
|
|
// body may have overflow set on it, yet we still get the entire
|
|
|
// viewport. In some browsers, el.offsetParent may be
|
|
|
// document.documentElement, so check for that too.
|
|
|
el !== body && el !== documentElement && __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(el, 'overflow') !== 'visible') {
|
|
|
var pos = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].offset(el);
|
|
|
// add border
|
|
|
pos.left += el.clientLeft;
|
|
|
pos.top += el.clientTop;
|
|
|
visibleRect.top = Math.max(visibleRect.top, pos.top);
|
|
|
visibleRect.right = Math.min(visibleRect.right,
|
|
|
// consider area without scrollBar
|
|
|
pos.left + el.clientWidth);
|
|
|
visibleRect.bottom = Math.min(visibleRect.bottom, pos.top + el.clientHeight);
|
|
|
visibleRect.left = Math.max(visibleRect.left, pos.left);
|
|
|
} else if (el === body || el === documentElement) {
|
|
|
break;
|
|
|
}
|
|
|
el = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__getOffsetParent__["a" /* default */])(el);
|
|
|
}
|
|
|
|
|
|
// Set element position to fixed
|
|
|
// make sure absolute element itself don't affect it's visible area
|
|
|
// https://github.com/ant-design/ant-design/issues/7601
|
|
|
var originalPosition = null;
|
|
|
if (!__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].isWindow(element) && element.nodeType !== 9) {
|
|
|
originalPosition = element.style.position;
|
|
|
var position = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(element, 'position');
|
|
|
if (position === 'absolute') {
|
|
|
element.style.position = 'fixed';
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var scrollX = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollLeft(win);
|
|
|
var scrollY = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollTop(win);
|
|
|
var viewportWidth = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportWidth(win);
|
|
|
var viewportHeight = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportHeight(win);
|
|
|
var documentWidth = documentElement.scrollWidth;
|
|
|
var documentHeight = documentElement.scrollHeight;
|
|
|
|
|
|
// Reset element position after calculate the visible area
|
|
|
if (element.style) {
|
|
|
element.style.position = originalPosition;
|
|
|
}
|
|
|
|
|
|
if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__isAncestorFixed__["a" /* default */])(element)) {
|
|
|
// Clip by viewport's size.
|
|
|
visibleRect.left = Math.max(visibleRect.left, scrollX);
|
|
|
visibleRect.top = Math.max(visibleRect.top, scrollY);
|
|
|
visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);
|
|
|
visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);
|
|
|
} else {
|
|
|
// Clip by document's size.
|
|
|
var maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);
|
|
|
visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);
|
|
|
|
|
|
var maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);
|
|
|
visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);
|
|
|
}
|
|
|
|
|
|
return visibleRect.top >= 0 && visibleRect.left >= 0 && visibleRect.bottom > visibleRect.top && visibleRect.right > visibleRect.left ? visibleRect : null;
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (getVisibleRectForElement);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 60 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/*
|
|
|
object-assign
|
|
|
(c) Sindre Sorhus
|
|
|
@license MIT
|
|
|
*/
|
|
|
|
|
|
|
|
|
/* eslint-disable no-unused-vars */
|
|
|
var getOwnPropertySymbols = Object.getOwnPropertySymbols;
|
|
|
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
|
var propIsEnumerable = Object.prototype.propertyIsEnumerable;
|
|
|
|
|
|
function toObject(val) {
|
|
|
if (val === null || val === undefined) {
|
|
|
throw new TypeError('Object.assign cannot be called with null or undefined');
|
|
|
}
|
|
|
|
|
|
return Object(val);
|
|
|
}
|
|
|
|
|
|
function shouldUseNative() {
|
|
|
try {
|
|
|
if (!Object.assign) {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
// Detect buggy property enumeration order in older V8 versions.
|
|
|
|
|
|
// https://bugs.chromium.org/p/v8/issues/detail?id=4118
|
|
|
var test1 = new String('abc'); // eslint-disable-line no-new-wrappers
|
|
|
test1[5] = 'de';
|
|
|
if (Object.getOwnPropertyNames(test1)[0] === '5') {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
// https://bugs.chromium.org/p/v8/issues/detail?id=3056
|
|
|
var test2 = {};
|
|
|
for (var i = 0; i < 10; i++) {
|
|
|
test2['_' + String.fromCharCode(i)] = i;
|
|
|
}
|
|
|
var order2 = Object.getOwnPropertyNames(test2).map(function (n) {
|
|
|
return test2[n];
|
|
|
});
|
|
|
if (order2.join('') !== '0123456789') {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
// https://bugs.chromium.org/p/v8/issues/detail?id=3056
|
|
|
var test3 = {};
|
|
|
'abcdefghijklmnopqrst'.split('').forEach(function (letter) {
|
|
|
test3[letter] = letter;
|
|
|
});
|
|
|
if (Object.keys(Object.assign({}, test3)).join('') !==
|
|
|
'abcdefghijklmnopqrst') {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
return true;
|
|
|
} catch (err) {
|
|
|
// We don't expect any of the above to throw, but better to be safe.
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
module.exports = shouldUseNative() ? Object.assign : function (target, source) {
|
|
|
var from;
|
|
|
var to = toObject(target);
|
|
|
var symbols;
|
|
|
|
|
|
for (var s = 1; s < arguments.length; s++) {
|
|
|
from = Object(arguments[s]);
|
|
|
|
|
|
for (var key in from) {
|
|
|
if (hasOwnProperty.call(from, key)) {
|
|
|
to[key] = from[key];
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (getOwnPropertySymbols) {
|
|
|
symbols = getOwnPropertySymbols(from);
|
|
|
for (var i = 0; i < symbols.length; i++) {
|
|
|
if (propIsEnumerable.call(from, symbols[i])) {
|
|
|
to[symbols[i]] = from[symbols[i]];
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return to;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 61 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
/* WEBPACK VAR INJECTION */(function(process) {/**
|
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
|
*
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
*/
|
|
|
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
var REACT_ELEMENT_TYPE = (typeof Symbol === 'function' &&
|
|
|
Symbol.for &&
|
|
|
Symbol.for('react.element')) ||
|
|
|
0xeac7;
|
|
|
|
|
|
var isValidElement = function(object) {
|
|
|
return typeof object === 'object' &&
|
|
|
object !== null &&
|
|
|
object.$$typeof === REACT_ELEMENT_TYPE;
|
|
|
};
|
|
|
|
|
|
// By explicitly using `prop-types` you are opting into new development behavior.
|
|
|
// http://fb.me/prop-types-in-prod
|
|
|
var throwOnDirectAccess = true;
|
|
|
module.exports = __webpack_require__(124)(isValidElement, throwOnDirectAccess);
|
|
|
} else {
|
|
|
// By explicitly using `prop-types` you are opting into new production behavior.
|
|
|
// http://fb.me/prop-types-in-prod
|
|
|
module.exports = __webpack_require__(123)();
|
|
|
}
|
|
|
|
|
|
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(38)))
|
|
|
|
|
|
/***/ }),
|
|
|
/* 62 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
var util = {
|
|
|
isAppearSupported: function isAppearSupported(props) {
|
|
|
return props.transitionName && props.transitionAppear || props.animation.appear;
|
|
|
},
|
|
|
isEnterSupported: function isEnterSupported(props) {
|
|
|
return props.transitionName && props.transitionEnter || props.animation.enter;
|
|
|
},
|
|
|
isLeaveSupported: function isLeaveSupported(props) {
|
|
|
return props.transitionName && props.transitionLeave || props.animation.leave;
|
|
|
},
|
|
|
allowAppearCallback: function allowAppearCallback(props) {
|
|
|
return props.transitionAppear || props.animation.appear;
|
|
|
},
|
|
|
allowEnterCallback: function allowEnterCallback(props) {
|
|
|
return props.transitionEnter || props.animation.enter;
|
|
|
},
|
|
|
allowLeaveCallback: function allowLeaveCallback(props) {
|
|
|
return props.transitionLeave || props.animation.leave;
|
|
|
}
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (util);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 63 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__src___ = __webpack_require__(70);
|
|
|
// export this package's api
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["default"] = (__WEBPACK_IMPORTED_MODULE_0__src___["a" /* default */]);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 64 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
// removed by extract-text-webpack-plugin
|
|
|
|
|
|
/***/ }),
|
|
|
/* 65 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/**
|
|
|
* @ignore
|
|
|
* base event object for custom and dom event.
|
|
|
* @author yiminghe@gmail.com
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
|
value: true
|
|
|
});
|
|
|
function returnFalse() {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
function returnTrue() {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
function EventBaseObject() {
|
|
|
this.timeStamp = Date.now();
|
|
|
this.target = undefined;
|
|
|
this.currentTarget = undefined;
|
|
|
}
|
|
|
|
|
|
EventBaseObject.prototype = {
|
|
|
isEventObject: 1,
|
|
|
|
|
|
constructor: EventBaseObject,
|
|
|
|
|
|
isDefaultPrevented: returnFalse,
|
|
|
|
|
|
isPropagationStopped: returnFalse,
|
|
|
|
|
|
isImmediatePropagationStopped: returnFalse,
|
|
|
|
|
|
preventDefault: function preventDefault() {
|
|
|
this.isDefaultPrevented = returnTrue;
|
|
|
},
|
|
|
|
|
|
stopPropagation: function stopPropagation() {
|
|
|
this.isPropagationStopped = returnTrue;
|
|
|
},
|
|
|
|
|
|
stopImmediatePropagation: function stopImmediatePropagation() {
|
|
|
this.isImmediatePropagationStopped = returnTrue;
|
|
|
// fixed 1.2
|
|
|
// call stopPropagation implicitly
|
|
|
this.stopPropagation();
|
|
|
},
|
|
|
|
|
|
halt: function halt(immediate) {
|
|
|
if (immediate) {
|
|
|
this.stopImmediatePropagation();
|
|
|
} else {
|
|
|
this.stopPropagation();
|
|
|
}
|
|
|
this.preventDefault();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
exports["default"] = EventBaseObject;
|
|
|
module.exports = exports["default"];
|
|
|
|
|
|
/***/ }),
|
|
|
/* 66 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/**
|
|
|
* @ignore
|
|
|
* event object for dom
|
|
|
* @author yiminghe@gmail.com
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
Object.defineProperty(exports, '__esModule', {
|
|
|
value: true
|
|
|
});
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
|
|
|
|
|
|
var _EventBaseObject = __webpack_require__(65);
|
|
|
|
|
|
var _EventBaseObject2 = _interopRequireDefault(_EventBaseObject);
|
|
|
|
|
|
var _objectAssign = __webpack_require__(60);
|
|
|
|
|
|
var _objectAssign2 = _interopRequireDefault(_objectAssign);
|
|
|
|
|
|
var TRUE = true;
|
|
|
var FALSE = false;
|
|
|
var commonProps = ['altKey', 'bubbles', 'cancelable', 'ctrlKey', 'currentTarget', 'eventPhase', 'metaKey', 'shiftKey', 'target', 'timeStamp', 'view', 'type'];
|
|
|
|
|
|
function isNullOrUndefined(w) {
|
|
|
return w === null || w === undefined;
|
|
|
}
|
|
|
|
|
|
var eventNormalizers = [{
|
|
|
reg: /^key/,
|
|
|
props: ['char', 'charCode', 'key', 'keyCode', 'which'],
|
|
|
fix: function fix(event, nativeEvent) {
|
|
|
if (isNullOrUndefined(event.which)) {
|
|
|
event.which = !isNullOrUndefined(nativeEvent.charCode) ? nativeEvent.charCode : nativeEvent.keyCode;
|
|
|
}
|
|
|
|
|
|
// add metaKey to non-Mac browsers (use ctrl for PC 's and Meta for Macs)
|
|
|
if (event.metaKey === undefined) {
|
|
|
event.metaKey = event.ctrlKey;
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
reg: /^touch/,
|
|
|
props: ['touches', 'changedTouches', 'targetTouches']
|
|
|
}, {
|
|
|
reg: /^hashchange$/,
|
|
|
props: ['newURL', 'oldURL']
|
|
|
}, {
|
|
|
reg: /^gesturechange$/i,
|
|
|
props: ['rotation', 'scale']
|
|
|
}, {
|
|
|
reg: /^(mousewheel|DOMMouseScroll)$/,
|
|
|
props: [],
|
|
|
fix: function fix(event, nativeEvent) {
|
|
|
var deltaX = undefined;
|
|
|
var deltaY = undefined;
|
|
|
var delta = undefined;
|
|
|
var wheelDelta = nativeEvent.wheelDelta;
|
|
|
var axis = nativeEvent.axis;
|
|
|
var wheelDeltaY = nativeEvent.wheelDeltaY;
|
|
|
var wheelDeltaX = nativeEvent.wheelDeltaX;
|
|
|
var detail = nativeEvent.detail;
|
|
|
|
|
|
// ie/webkit
|
|
|
if (wheelDelta) {
|
|
|
delta = wheelDelta / 120;
|
|
|
}
|
|
|
|
|
|
// gecko
|
|
|
if (detail) {
|
|
|
// press control e.detail == 1 else e.detail == 3
|
|
|
delta = 0 - (detail % 3 === 0 ? detail / 3 : detail);
|
|
|
}
|
|
|
|
|
|
// Gecko
|
|
|
if (axis !== undefined) {
|
|
|
if (axis === event.HORIZONTAL_AXIS) {
|
|
|
deltaY = 0;
|
|
|
deltaX = 0 - delta;
|
|
|
} else if (axis === event.VERTICAL_AXIS) {
|
|
|
deltaX = 0;
|
|
|
deltaY = delta;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// Webkit
|
|
|
if (wheelDeltaY !== undefined) {
|
|
|
deltaY = wheelDeltaY / 120;
|
|
|
}
|
|
|
if (wheelDeltaX !== undefined) {
|
|
|
deltaX = -1 * wheelDeltaX / 120;
|
|
|
}
|
|
|
|
|
|
// 默认 deltaY (ie)
|
|
|
if (!deltaX && !deltaY) {
|
|
|
deltaY = delta;
|
|
|
}
|
|
|
|
|
|
if (deltaX !== undefined) {
|
|
|
/**
|
|
|
* deltaX of mousewheel event
|
|
|
* @property deltaX
|
|
|
* @member Event.DomEvent.Object
|
|
|
*/
|
|
|
event.deltaX = deltaX;
|
|
|
}
|
|
|
|
|
|
if (deltaY !== undefined) {
|
|
|
/**
|
|
|
* deltaY of mousewheel event
|
|
|
* @property deltaY
|
|
|
* @member Event.DomEvent.Object
|
|
|
*/
|
|
|
event.deltaY = deltaY;
|
|
|
}
|
|
|
|
|
|
if (delta !== undefined) {
|
|
|
/**
|
|
|
* delta of mousewheel event
|
|
|
* @property delta
|
|
|
* @member Event.DomEvent.Object
|
|
|
*/
|
|
|
event.delta = delta;
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
reg: /^mouse|contextmenu|click|mspointer|(^DOMMouseScroll$)/i,
|
|
|
props: ['buttons', 'clientX', 'clientY', 'button', 'offsetX', 'relatedTarget', 'which', 'fromElement', 'toElement', 'offsetY', 'pageX', 'pageY', 'screenX', 'screenY'],
|
|
|
fix: function fix(event, nativeEvent) {
|
|
|
var eventDoc = undefined;
|
|
|
var doc = undefined;
|
|
|
var body = undefined;
|
|
|
var target = event.target;
|
|
|
var button = nativeEvent.button;
|
|
|
|
|
|
// Calculate pageX/Y if missing and clientX/Y available
|
|
|
if (target && isNullOrUndefined(event.pageX) && !isNullOrUndefined(nativeEvent.clientX)) {
|
|
|
eventDoc = target.ownerDocument || document;
|
|
|
doc = eventDoc.documentElement;
|
|
|
body = eventDoc.body;
|
|
|
event.pageX = nativeEvent.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
|
|
|
event.pageY = nativeEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);
|
|
|
}
|
|
|
|
|
|
// which for click: 1 === left; 2 === middle; 3 === right
|
|
|
// do not use button
|
|
|
if (!event.which && button !== undefined) {
|
|
|
if (button & 1) {
|
|
|
event.which = 1;
|
|
|
} else if (button & 2) {
|
|
|
event.which = 3;
|
|
|
} else if (button & 4) {
|
|
|
event.which = 2;
|
|
|
} else {
|
|
|
event.which = 0;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// add relatedTarget, if necessary
|
|
|
if (!event.relatedTarget && event.fromElement) {
|
|
|
event.relatedTarget = event.fromElement === target ? event.toElement : event.fromElement;
|
|
|
}
|
|
|
|
|
|
return event;
|
|
|
}
|
|
|
}];
|
|
|
|
|
|
function retTrue() {
|
|
|
return TRUE;
|
|
|
}
|
|
|
|
|
|
function retFalse() {
|
|
|
return FALSE;
|
|
|
}
|
|
|
|
|
|
function DomEventObject(nativeEvent) {
|
|
|
var type = nativeEvent.type;
|
|
|
|
|
|
var isNative = typeof nativeEvent.stopPropagation === 'function' || typeof nativeEvent.cancelBubble === 'boolean';
|
|
|
|
|
|
_EventBaseObject2['default'].call(this);
|
|
|
|
|
|
this.nativeEvent = nativeEvent;
|
|
|
|
|
|
// in case dom event has been mark as default prevented by lower dom node
|
|
|
var isDefaultPrevented = retFalse;
|
|
|
if ('defaultPrevented' in nativeEvent) {
|
|
|
isDefaultPrevented = nativeEvent.defaultPrevented ? retTrue : retFalse;
|
|
|
} else if ('getPreventDefault' in nativeEvent) {
|
|
|
// https://bugzilla.mozilla.org/show_bug.cgi?id=691151
|
|
|
isDefaultPrevented = nativeEvent.getPreventDefault() ? retTrue : retFalse;
|
|
|
} else if ('returnValue' in nativeEvent) {
|
|
|
isDefaultPrevented = nativeEvent.returnValue === FALSE ? retTrue : retFalse;
|
|
|
}
|
|
|
|
|
|
this.isDefaultPrevented = isDefaultPrevented;
|
|
|
|
|
|
var fixFns = [];
|
|
|
var fixFn = undefined;
|
|
|
var l = undefined;
|
|
|
var prop = undefined;
|
|
|
var props = commonProps.concat();
|
|
|
|
|
|
eventNormalizers.forEach(function (normalizer) {
|
|
|
if (type.match(normalizer.reg)) {
|
|
|
props = props.concat(normalizer.props);
|
|
|
if (normalizer.fix) {
|
|
|
fixFns.push(normalizer.fix);
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
|
|
|
l = props.length;
|
|
|
|
|
|
// clone properties of the original event object
|
|
|
while (l) {
|
|
|
prop = props[--l];
|
|
|
this[prop] = nativeEvent[prop];
|
|
|
}
|
|
|
|
|
|
// fix target property, if necessary
|
|
|
if (!this.target && isNative) {
|
|
|
this.target = nativeEvent.srcElement || document; // srcElement might not be defined either
|
|
|
}
|
|
|
|
|
|
// check if target is a text node (safari)
|
|
|
if (this.target && this.target.nodeType === 3) {
|
|
|
this.target = this.target.parentNode;
|
|
|
}
|
|
|
|
|
|
l = fixFns.length;
|
|
|
|
|
|
while (l) {
|
|
|
fixFn = fixFns[--l];
|
|
|
fixFn(this, nativeEvent);
|
|
|
}
|
|
|
|
|
|
this.timeStamp = nativeEvent.timeStamp || Date.now();
|
|
|
}
|
|
|
|
|
|
var EventBaseObjectProto = _EventBaseObject2['default'].prototype;
|
|
|
|
|
|
(0, _objectAssign2['default'])(DomEventObject.prototype, EventBaseObjectProto, {
|
|
|
constructor: DomEventObject,
|
|
|
|
|
|
preventDefault: function preventDefault() {
|
|
|
var e = this.nativeEvent;
|
|
|
|
|
|
// if preventDefault exists run it on the original event
|
|
|
if (e.preventDefault) {
|
|
|
e.preventDefault();
|
|
|
} else {
|
|
|
// otherwise set the returnValue property of the original event to FALSE (IE)
|
|
|
e.returnValue = FALSE;
|
|
|
}
|
|
|
|
|
|
EventBaseObjectProto.preventDefault.call(this);
|
|
|
},
|
|
|
|
|
|
stopPropagation: function stopPropagation() {
|
|
|
var e = this.nativeEvent;
|
|
|
|
|
|
// if stopPropagation exists run it on the original event
|
|
|
if (e.stopPropagation) {
|
|
|
e.stopPropagation();
|
|
|
} else {
|
|
|
// otherwise set the cancelBubble property of the original event to TRUE (IE)
|
|
|
e.cancelBubble = TRUE;
|
|
|
}
|
|
|
|
|
|
EventBaseObjectProto.stopPropagation.call(this);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
exports['default'] = DomEventObject;
|
|
|
module.exports = exports['default'];
|
|
|
|
|
|
/***/ }),
|
|
|
/* 67 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(17);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom__ = __webpack_require__(16);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_dom__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_rmc_align__ = __webpack_require__(132);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_rc_animate__ = __webpack_require__(125);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__PopupInner__ = __webpack_require__(68);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__LazyRenderBox__ = __webpack_require__(41);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__utils__ = __webpack_require__(42);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Popup = function (_Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Popup, _Component);
|
|
|
|
|
|
function Popup(props) {
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Popup);
|
|
|
|
|
|
var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, (Popup.__proto__ || Object.getPrototypeOf(Popup)).call(this, props));
|
|
|
|
|
|
_this.onAlign = function (popupDomNode, align) {
|
|
|
var props = _this.props;
|
|
|
var currentAlignClassName = props.getClassNameFromAlign(align);
|
|
|
// FIX: https://github.com/react-component/trigger/issues/56
|
|
|
// FIX: https://github.com/react-component/tooltip/issues/79
|
|
|
if (_this.currentAlignClassName !== currentAlignClassName) {
|
|
|
_this.currentAlignClassName = currentAlignClassName;
|
|
|
popupDomNode.className = _this.getClassName(currentAlignClassName);
|
|
|
}
|
|
|
props.onAlign(popupDomNode, align);
|
|
|
};
|
|
|
_this.getTarget = function () {
|
|
|
return _this.props.getRootDomNode();
|
|
|
};
|
|
|
_this.savePopupRef = __WEBPACK_IMPORTED_MODULE_11__utils__["c" /* saveRef */].bind(_this, 'popupInstance');
|
|
|
_this.saveAlignRef = __WEBPACK_IMPORTED_MODULE_11__utils__["c" /* saveRef */].bind(_this, 'alignInstance');
|
|
|
return _this;
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default()(Popup, [{
|
|
|
key: 'componentDidMount',
|
|
|
value: function componentDidMount() {
|
|
|
this.rootNode = this.getPopupDomNode();
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getPopupDomNode',
|
|
|
value: function getPopupDomNode() {
|
|
|
return __WEBPACK_IMPORTED_MODULE_6_react_dom___default.a.findDOMNode(this.popupInstance);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getMaskTransitionName',
|
|
|
value: function getMaskTransitionName() {
|
|
|
var props = this.props;
|
|
|
var transitionName = props.maskTransitionName;
|
|
|
var animation = props.maskAnimation;
|
|
|
if (!transitionName && animation) {
|
|
|
transitionName = props.prefixCls + '-' + animation;
|
|
|
}
|
|
|
return transitionName;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getTransitionName',
|
|
|
value: function getTransitionName() {
|
|
|
var props = this.props;
|
|
|
var transitionName = props.transitionName;
|
|
|
if (!transitionName && props.animation) {
|
|
|
transitionName = props.prefixCls + '-' + props.animation;
|
|
|
}
|
|
|
return transitionName;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getClassName',
|
|
|
value: function getClassName(currentAlignClassName) {
|
|
|
return this.props.prefixCls + ' ' + this.props.className + ' ' + currentAlignClassName;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getPopupElement',
|
|
|
value: function getPopupElement() {
|
|
|
var savePopupRef = this.savePopupRef,
|
|
|
props = this.props;
|
|
|
var align = props.align,
|
|
|
style = props.style,
|
|
|
visible = props.visible,
|
|
|
prefixCls = props.prefixCls,
|
|
|
destroyPopupOnHide = props.destroyPopupOnHide;
|
|
|
|
|
|
var className = this.getClassName(this.currentAlignClassName || props.getClassNameFromAlign(align));
|
|
|
var hiddenClassName = prefixCls + '-hidden';
|
|
|
if (!visible) {
|
|
|
this.currentAlignClassName = null;
|
|
|
}
|
|
|
var newStyle = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, style, this.getZIndexStyle());
|
|
|
var popupInnerProps = {
|
|
|
className: className,
|
|
|
prefixCls: prefixCls,
|
|
|
ref: savePopupRef,
|
|
|
style: newStyle
|
|
|
};
|
|
|
if (destroyPopupOnHide) {
|
|
|
return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_8_rc_animate__["a" /* default */],
|
|
|
{ component: '', exclusive: true, transitionAppear: true, onAnimateLeave: props.onAnimateLeave, transitionName: this.getTransitionName() },
|
|
|
visible ? __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_7_rmc_align__["a" /* default */],
|
|
|
{ target: this.getTarget, key: 'popup', ref: this.saveAlignRef, monitorWindowResize: true, align: align, onAlign: this.onAlign },
|
|
|
__WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_9__PopupInner__["a" /* default */],
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ visible: true }, popupInnerProps),
|
|
|
props.children
|
|
|
)
|
|
|
) : null
|
|
|
);
|
|
|
}
|
|
|
var alignOtherProps = {
|
|
|
xVisible: visible
|
|
|
};
|
|
|
return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_8_rc_animate__["a" /* default */],
|
|
|
{ component: '', exclusive: true, transitionAppear: true, transitionName: this.getTransitionName(), onAnimateLeave: props.onAnimateLeave, showProp: 'xVisible' },
|
|
|
__WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_7_rmc_align__["a" /* default */],
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ target: this.getTarget, key: 'popup', ref: this.saveAlignRef, monitorWindowResize: true }, alignOtherProps, { childrenProps: { visible: 'xVisible' }, disabled: !visible, align: align, onAlign: this.onAlign }),
|
|
|
__WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_9__PopupInner__["a" /* default */],
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ hiddenClassName: hiddenClassName }, popupInnerProps),
|
|
|
props.children
|
|
|
)
|
|
|
)
|
|
|
);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getZIndexStyle',
|
|
|
value: function getZIndexStyle() {
|
|
|
var style = {};
|
|
|
var props = this.props;
|
|
|
if (props.zIndex !== undefined) {
|
|
|
style.zIndex = props.zIndex;
|
|
|
}
|
|
|
return style;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getMaskElement',
|
|
|
value: function getMaskElement() {
|
|
|
var props = this.props;
|
|
|
var maskElement = void 0;
|
|
|
if (props.mask) {
|
|
|
var maskTransition = this.getMaskTransitionName();
|
|
|
maskElement = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_10__LazyRenderBox__["a" /* default */], { style: this.getZIndexStyle(), key: 'mask', className: props.prefixCls + '-mask', hiddenClassName: props.prefixCls + '-mask-hidden', visible: props.visible });
|
|
|
if (maskTransition) {
|
|
|
maskElement = __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_8_rc_animate__["a" /* default */],
|
|
|
{ key: 'mask', showProp: 'visible', transitionAppear: true, component: '', transitionName: maskTransition },
|
|
|
maskElement
|
|
|
);
|
|
|
}
|
|
|
}
|
|
|
return maskElement;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
'div',
|
|
|
null,
|
|
|
this.getMaskElement(),
|
|
|
this.getPopupElement()
|
|
|
);
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return Popup;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_5_react__["Component"]);
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (Popup);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 68 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__LazyRenderBox__ = __webpack_require__(41);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var PopupInner = function (_Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(PopupInner, _Component);
|
|
|
|
|
|
function PopupInner() {
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, PopupInner);
|
|
|
|
|
|
return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, (PopupInner.__proto__ || Object.getPrototypeOf(PopupInner)).apply(this, arguments));
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(PopupInner, [{
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
var props = this.props;
|
|
|
var className = props.className;
|
|
|
if (!props.visible) {
|
|
|
className += ' ' + props.hiddenClassName;
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(
|
|
|
'div',
|
|
|
{ className: className, style: props.style },
|
|
|
__WEBPACK_IMPORTED_MODULE_4_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_5__LazyRenderBox__["a" /* default */],
|
|
|
{ className: props.prefixCls + '-content', visible: props.visible },
|
|
|
props.children
|
|
|
)
|
|
|
);
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return PopupInner;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_4_react__["Component"]);
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (PopupInner);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 69 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(17);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom__ = __webpack_require__(16);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react_dom__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_rc_util_lib_Dom_contains__ = __webpack_require__(130);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_rc_util_lib_Dom_contains___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_rc_util_lib_Dom_contains__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_rc_util_lib_Dom_addEventListener__ = __webpack_require__(129);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8_rc_util_lib_Dom_addEventListener___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_8_rc_util_lib_Dom_addEventListener__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__Popup__ = __webpack_require__(67);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__utils__ = __webpack_require__(42);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var IS_REACT_16 = !!__WEBPACK_IMPORTED_MODULE_5_react___default.a.createPortal;
|
|
|
function noop() {}
|
|
|
function returnEmptyString() {
|
|
|
return '';
|
|
|
}
|
|
|
function returnDocument() {
|
|
|
return window.document;
|
|
|
}
|
|
|
|
|
|
var Trigger = function (_React$Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(Trigger, _React$Component);
|
|
|
|
|
|
function Trigger() {
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, Trigger);
|
|
|
|
|
|
var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, (Trigger.__proto__ || Object.getPrototypeOf(Trigger)).apply(this, arguments));
|
|
|
|
|
|
_this.onDocumentClick = function (event) {
|
|
|
if (_this.props.mask && !_this.props.maskClosable) {
|
|
|
return;
|
|
|
}
|
|
|
var target = event.target;
|
|
|
var root = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(_this);
|
|
|
var popupNode = _this.getPopupDomNode();
|
|
|
if (!__WEBPACK_IMPORTED_MODULE_7_rc_util_lib_Dom_contains___default()(root, target) && !__WEBPACK_IMPORTED_MODULE_7_rc_util_lib_Dom_contains___default()(popupNode, target)) {
|
|
|
_this.close();
|
|
|
}
|
|
|
};
|
|
|
_this.getPopupAlign = function () {
|
|
|
var props = _this.props;
|
|
|
var popupPlacement = props.popupPlacement,
|
|
|
popupAlign = props.popupAlign,
|
|
|
builtinPlacements = props.builtinPlacements;
|
|
|
|
|
|
if (popupPlacement && builtinPlacements) {
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_10__utils__["a" /* getAlignFromPlacement */])(builtinPlacements, popupPlacement, popupAlign);
|
|
|
}
|
|
|
return popupAlign;
|
|
|
};
|
|
|
_this.getRootDomNode = function () {
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(_this);
|
|
|
};
|
|
|
_this.getPopupClassNameFromAlign = function (align) {
|
|
|
var className = [];
|
|
|
var props = _this.props;
|
|
|
var popupPlacement = props.popupPlacement,
|
|
|
builtinPlacements = props.builtinPlacements,
|
|
|
prefixCls = props.prefixCls;
|
|
|
|
|
|
if (popupPlacement && builtinPlacements) {
|
|
|
className.push(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_10__utils__["b" /* getPopupClassNameFromAlign */])(builtinPlacements, prefixCls, align));
|
|
|
}
|
|
|
if (props.getPopupClassNameFromAlign) {
|
|
|
className.push(props.getPopupClassNameFromAlign(align));
|
|
|
}
|
|
|
return className.join(' ');
|
|
|
};
|
|
|
_this.close = function () {
|
|
|
if (_this.props.onClose) {
|
|
|
_this.props.onClose();
|
|
|
}
|
|
|
};
|
|
|
_this.onAnimateLeave = function () {
|
|
|
if (_this.props.destroyPopupOnHide) {
|
|
|
var container = _this._container;
|
|
|
if (container) {
|
|
|
__WEBPACK_IMPORTED_MODULE_6_react_dom___default.a.unmountComponentAtNode(container);
|
|
|
container.parentNode.removeChild(container);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
_this.removeContainer = function () {
|
|
|
var container = document.querySelector('#' + _this.props.prefixCls + '-container');
|
|
|
if (container) {
|
|
|
__WEBPACK_IMPORTED_MODULE_6_react_dom___default.a.unmountComponentAtNode(container);
|
|
|
container.parentNode.removeChild(container);
|
|
|
}
|
|
|
};
|
|
|
return _this;
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default()(Trigger, [{
|
|
|
key: 'componentDidMount',
|
|
|
value: function componentDidMount() {
|
|
|
if (this.props.visible) {
|
|
|
this.componentDidUpdate();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillUnmount',
|
|
|
value: function componentWillUnmount() {
|
|
|
if (this.props.visible) {
|
|
|
if (!IS_REACT_16) {
|
|
|
this.renderDialog(false);
|
|
|
}
|
|
|
}
|
|
|
this.clearOutsideHandler();
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentDidUpdate',
|
|
|
value: function componentDidUpdate() {
|
|
|
var _this2 = this;
|
|
|
|
|
|
if (!IS_REACT_16) {
|
|
|
this.renderDialog(this.props.visible);
|
|
|
}
|
|
|
if (this.props.visible) {
|
|
|
// always hide on mobile
|
|
|
if (!this.touchOutsideHandler) {
|
|
|
// add setTimeout for preact
|
|
|
// prevent in here before setTimeout callback
|
|
|
this.touchOutsideHandler = setTimeout(function () {
|
|
|
var currentDocument = _this2.props.getDocument();
|
|
|
_this2.touchOutsideHandler = __WEBPACK_IMPORTED_MODULE_8_rc_util_lib_Dom_addEventListener___default()(currentDocument, 'touchend', _this2.onDocumentClick);
|
|
|
});
|
|
|
}
|
|
|
return;
|
|
|
}
|
|
|
this.clearOutsideHandler();
|
|
|
}
|
|
|
}, {
|
|
|
key: 'clearOutsideHandler',
|
|
|
value: function clearOutsideHandler() {
|
|
|
if (this.touchOutsideHandler) {
|
|
|
if (this.touchOutsideHandler.remove) {
|
|
|
this.touchOutsideHandler.remove();
|
|
|
}
|
|
|
this.touchOutsideHandler = null;
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getPopupDomNode',
|
|
|
value: function getPopupDomNode() {
|
|
|
// for test
|
|
|
if (this._component && this._component.getPopupDomNode) {
|
|
|
return this._component.getPopupDomNode();
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'saveRef',
|
|
|
value: function saveRef(el, visible) {
|
|
|
this.popupRef = el;
|
|
|
this._component = el;
|
|
|
this.props.afterPopupVisibleChange(visible);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getComponent',
|
|
|
value: function getComponent(visible) {
|
|
|
var _this3 = this;
|
|
|
|
|
|
var props = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({}, this.props);
|
|
|
['visible', 'onAnimateLeave'].forEach(function (key) {
|
|
|
if (props.hasOwnProperty(key)) {
|
|
|
delete props[key];
|
|
|
}
|
|
|
});
|
|
|
return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_9__Popup__["a" /* default */],
|
|
|
{ key: 'popup', ref: function ref(el) {
|
|
|
return _this3.saveRef(el, visible);
|
|
|
}, prefixCls: props.prefixCls, destroyPopupOnHide: props.destroyPopupOnHide, visible: visible, className: props.popupClassName, align: this.getPopupAlign(), onAlign: props.onPopupAlign, animation: props.popupAnimation, getClassNameFromAlign: this.getPopupClassNameFromAlign, getRootDomNode: this.getRootDomNode, style: props.popupStyle, mask: props.mask, zIndex: props.zIndex, transitionName: props.popupTransitionName, maskAnimation: props.maskAnimation, maskTransitionName: props.maskTransitionName, onAnimateLeave: this.onAnimateLeave },
|
|
|
typeof props.popup === 'function' ? props.popup() : props.popup
|
|
|
);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'getContainer',
|
|
|
value: function getContainer() {
|
|
|
if (!this._container) {
|
|
|
var props = this.props;
|
|
|
var popupContainer = document.createElement('div');
|
|
|
// Make sure default popup container will never cause scrollbar appearing
|
|
|
// https://github.com/react-component/trigger/issues/41
|
|
|
popupContainer.style.position = 'absolute';
|
|
|
popupContainer.style.top = '0';
|
|
|
popupContainer.style.left = '0';
|
|
|
popupContainer.style.width = '100%';
|
|
|
var mountNode = props.getPopupContainer ? props.getPopupContainer(__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_6_react_dom__["findDOMNode"])(this)) : props.getDocument().body;
|
|
|
mountNode.appendChild(popupContainer);
|
|
|
this._container = popupContainer;
|
|
|
}
|
|
|
return this._container;
|
|
|
}
|
|
|
}, {
|
|
|
key: 'renderDialog',
|
|
|
value: function renderDialog(visible) {
|
|
|
__WEBPACK_IMPORTED_MODULE_6_react_dom___default.a.unstable_renderSubtreeIntoContainer(this, this.getComponent(visible), this.getContainer());
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
var props = this.props;
|
|
|
var children = props.children;
|
|
|
var child = __WEBPACK_IMPORTED_MODULE_5_react___default.a.Children.only(children);
|
|
|
var newChildProps = {
|
|
|
onClick: this.props.onTargetClick,
|
|
|
key: 'trigger'
|
|
|
};
|
|
|
var trigger = __WEBPACK_IMPORTED_MODULE_5_react___default.a.cloneElement(child, newChildProps);
|
|
|
if (!IS_REACT_16) {
|
|
|
return trigger;
|
|
|
}
|
|
|
var portal = void 0;
|
|
|
// prevent unmounting after it's rendered
|
|
|
if (props.visible || this._component) {
|
|
|
portal = __WEBPACK_IMPORTED_MODULE_6_react_dom___default.a.createPortal(this.getComponent(props.visible), this.getContainer());
|
|
|
}
|
|
|
return [trigger, portal];
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return Trigger;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component);
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (Trigger);
|
|
|
|
|
|
Trigger.defaultProps = {
|
|
|
prefixCls: 'rc-trigger-popup',
|
|
|
getPopupClassNameFromAlign: returnEmptyString,
|
|
|
getDocument: returnDocument,
|
|
|
onPopupVisibleChange: noop,
|
|
|
afterPopupVisibleChange: noop,
|
|
|
onPopupAlign: noop,
|
|
|
popupClassName: '',
|
|
|
popupStyle: {},
|
|
|
destroyPopupOnHide: false,
|
|
|
popupAlign: {},
|
|
|
defaultPopupVisible: false,
|
|
|
mask: false,
|
|
|
maskClosable: true
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 70 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(17);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__Trigger__ = __webpack_require__(69);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function noop() {}
|
|
|
function returnEmptyString() {
|
|
|
return '';
|
|
|
}
|
|
|
function returnDocument() {
|
|
|
return window.document;
|
|
|
}
|
|
|
|
|
|
var TriggerWrap = function (_React$Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_inherits___default()(TriggerWrap, _React$Component);
|
|
|
|
|
|
function TriggerWrap(props) {
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_classCallCheck___default()(this, TriggerWrap);
|
|
|
|
|
|
var _this = __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_possibleConstructorReturn___default()(this, (TriggerWrap.__proto__ || Object.getPrototypeOf(TriggerWrap)).call(this, props));
|
|
|
|
|
|
_this.onTargetClick = function () {
|
|
|
_this.setPopupVisible(!_this.state.popupVisible);
|
|
|
};
|
|
|
_this.onClose = function () {
|
|
|
_this.setPopupVisible(false);
|
|
|
};
|
|
|
var popupVisible = void 0;
|
|
|
if ('popupVisible' in props) {
|
|
|
popupVisible = !!props.popupVisible;
|
|
|
} else {
|
|
|
popupVisible = !!props.defaultPopupVisible;
|
|
|
}
|
|
|
_this.state = {
|
|
|
popupVisible: popupVisible
|
|
|
};
|
|
|
return _this;
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_createClass___default()(TriggerWrap, [{
|
|
|
key: 'componentWillReceiveProps',
|
|
|
value: function componentWillReceiveProps(nextProps) {
|
|
|
if (nextProps.visible !== undefined) {
|
|
|
this.setPopupVisible(nextProps.visible);
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'setPopupVisible',
|
|
|
value: function setPopupVisible(visible) {
|
|
|
if (this.state.popupVisible !== visible) {
|
|
|
this.setState({
|
|
|
popupVisible: visible
|
|
|
});
|
|
|
this.props.onPopupVisibleChange(visible);
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
var _this2 = this;
|
|
|
|
|
|
return __WEBPACK_IMPORTED_MODULE_5_react___default.a.createElement(__WEBPACK_IMPORTED_MODULE_6__Trigger__["a" /* default */], __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({ ref: function ref(el) {
|
|
|
return _this2.triggerRef = el;
|
|
|
} }, this.props, { visible: this.state.popupVisible, onTargetClick: this.onTargetClick, onClose: this.onClose }));
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return TriggerWrap;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_5_react___default.a.Component);
|
|
|
|
|
|
TriggerWrap.displayName = 'TriggerWrap';
|
|
|
TriggerWrap.defaultProps = {
|
|
|
prefixCls: 'rc-trigger-popup',
|
|
|
getPopupClassNameFromAlign: returnEmptyString,
|
|
|
getDocument: returnDocument,
|
|
|
onPopupVisibleChange: noop,
|
|
|
afterPopupVisibleChange: noop,
|
|
|
onPopupAlign: noop,
|
|
|
popupClassName: '',
|
|
|
popupStyle: {},
|
|
|
destroyPopupOnHide: false,
|
|
|
popupAlign: {},
|
|
|
defaultPopupVisible: false,
|
|
|
mask: false,
|
|
|
maskClosable: true
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (TriggerWrap);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 71 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(78), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 72 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(79), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 73 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(81), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 74 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(82), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 75 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
module.exports = { "default": __webpack_require__(83), __esModule: true };
|
|
|
|
|
|
/***/ }),
|
|
|
/* 76 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
exports.__esModule = true;
|
|
|
|
|
|
var _defineProperty = __webpack_require__(43);
|
|
|
|
|
|
var _defineProperty2 = _interopRequireDefault(_defineProperty);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
|
|
exports.default = function (obj, key, value) {
|
|
|
if (key in obj) {
|
|
|
(0, _defineProperty2.default)(obj, key, {
|
|
|
value: value,
|
|
|
enumerable: true,
|
|
|
configurable: true,
|
|
|
writable: true
|
|
|
});
|
|
|
} else {
|
|
|
obj[key] = value;
|
|
|
}
|
|
|
|
|
|
return obj;
|
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
/* 77 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
/**
|
|
|
* Module dependencies.
|
|
|
*/
|
|
|
|
|
|
try {
|
|
|
var index = __webpack_require__(44);
|
|
|
} catch (err) {
|
|
|
var index = __webpack_require__(44);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* Whitespace regexp.
|
|
|
*/
|
|
|
|
|
|
var re = /\s+/;
|
|
|
|
|
|
/**
|
|
|
* toString reference.
|
|
|
*/
|
|
|
|
|
|
var toString = Object.prototype.toString;
|
|
|
|
|
|
/**
|
|
|
* Wrap `el` in a `ClassList`.
|
|
|
*
|
|
|
* @param {Element} el
|
|
|
* @return {ClassList}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
module.exports = function(el){
|
|
|
return new ClassList(el);
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Initialize a new ClassList for `el`.
|
|
|
*
|
|
|
* @param {Element} el
|
|
|
* @api private
|
|
|
*/
|
|
|
|
|
|
function ClassList(el) {
|
|
|
if (!el || !el.nodeType) {
|
|
|
throw new Error('A DOM element reference is required');
|
|
|
}
|
|
|
this.el = el;
|
|
|
this.list = el.classList;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* Add class `name` if not already present.
|
|
|
*
|
|
|
* @param {String} name
|
|
|
* @return {ClassList}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.add = function(name){
|
|
|
// classList
|
|
|
if (this.list) {
|
|
|
this.list.add(name);
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
// fallback
|
|
|
var arr = this.array();
|
|
|
var i = index(arr, name);
|
|
|
if (!~i) arr.push(name);
|
|
|
this.el.className = arr.join(' ');
|
|
|
return this;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Remove class `name` when present, or
|
|
|
* pass a regular expression to remove
|
|
|
* any which match.
|
|
|
*
|
|
|
* @param {String|RegExp} name
|
|
|
* @return {ClassList}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.remove = function(name){
|
|
|
if ('[object RegExp]' == toString.call(name)) {
|
|
|
return this.removeMatching(name);
|
|
|
}
|
|
|
|
|
|
// classList
|
|
|
if (this.list) {
|
|
|
this.list.remove(name);
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
// fallback
|
|
|
var arr = this.array();
|
|
|
var i = index(arr, name);
|
|
|
if (~i) arr.splice(i, 1);
|
|
|
this.el.className = arr.join(' ');
|
|
|
return this;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Remove all classes matching `re`.
|
|
|
*
|
|
|
* @param {RegExp} re
|
|
|
* @return {ClassList}
|
|
|
* @api private
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.removeMatching = function(re){
|
|
|
var arr = this.array();
|
|
|
for (var i = 0; i < arr.length; i++) {
|
|
|
if (re.test(arr[i])) {
|
|
|
this.remove(arr[i]);
|
|
|
}
|
|
|
}
|
|
|
return this;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Toggle class `name`, can force state via `force`.
|
|
|
*
|
|
|
* For browsers that support classList, but do not support `force` yet,
|
|
|
* the mistake will be detected and corrected.
|
|
|
*
|
|
|
* @param {String} name
|
|
|
* @param {Boolean} force
|
|
|
* @return {ClassList}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.toggle = function(name, force){
|
|
|
// classList
|
|
|
if (this.list) {
|
|
|
if ("undefined" !== typeof force) {
|
|
|
if (force !== this.list.toggle(name, force)) {
|
|
|
this.list.toggle(name); // toggle again to correct
|
|
|
}
|
|
|
} else {
|
|
|
this.list.toggle(name);
|
|
|
}
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
// fallback
|
|
|
if ("undefined" !== typeof force) {
|
|
|
if (!force) {
|
|
|
this.remove(name);
|
|
|
} else {
|
|
|
this.add(name);
|
|
|
}
|
|
|
} else {
|
|
|
if (this.has(name)) {
|
|
|
this.remove(name);
|
|
|
} else {
|
|
|
this.add(name);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return this;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Return an array of classes.
|
|
|
*
|
|
|
* @return {Array}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.array = function(){
|
|
|
var className = this.el.getAttribute('class') || '';
|
|
|
var str = className.replace(/^\s+|\s+$/g, '');
|
|
|
var arr = str.split(re);
|
|
|
if ('' === arr[0]) arr.shift();
|
|
|
return arr;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Check if class `name` is present.
|
|
|
*
|
|
|
* @param {String} name
|
|
|
* @return {ClassList}
|
|
|
* @api public
|
|
|
*/
|
|
|
|
|
|
ClassList.prototype.has =
|
|
|
ClassList.prototype.contains = function(name){
|
|
|
return this.list
|
|
|
? this.list.contains(name)
|
|
|
: !! ~index(this.array(), name);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 78 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(102);
|
|
|
module.exports = __webpack_require__(1).Object.assign;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 79 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(103);
|
|
|
var $Object = __webpack_require__(1).Object;
|
|
|
module.exports = function create(P, D) {
|
|
|
return $Object.create(P, D);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 80 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(104);
|
|
|
var $Object = __webpack_require__(1).Object;
|
|
|
module.exports = function defineProperty(it, key, desc) {
|
|
|
return $Object.defineProperty(it, key, desc);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 81 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(105);
|
|
|
module.exports = __webpack_require__(1).Object.setPrototypeOf;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 82 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(108);
|
|
|
__webpack_require__(106);
|
|
|
__webpack_require__(109);
|
|
|
__webpack_require__(110);
|
|
|
module.exports = __webpack_require__(1).Symbol;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 83 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(107);
|
|
|
__webpack_require__(111);
|
|
|
module.exports = __webpack_require__(37).f('iterator');
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 84 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function (it) {
|
|
|
if (typeof it != 'function') throw TypeError(it + ' is not a function!');
|
|
|
return it;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 85 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function () { /* empty */ };
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 86 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// false -> Array#indexOf
|
|
|
// true -> Array#includes
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
var toLength = __webpack_require__(100);
|
|
|
var toAbsoluteIndex = __webpack_require__(99);
|
|
|
module.exports = function (IS_INCLUDES) {
|
|
|
return function ($this, el, fromIndex) {
|
|
|
var O = toIObject($this);
|
|
|
var length = toLength(O.length);
|
|
|
var index = toAbsoluteIndex(fromIndex, length);
|
|
|
var value;
|
|
|
// Array#includes uses SameValueZero equality algorithm
|
|
|
// eslint-disable-next-line no-self-compare
|
|
|
if (IS_INCLUDES && el != el) while (length > index) {
|
|
|
value = O[index++];
|
|
|
// eslint-disable-next-line no-self-compare
|
|
|
if (value != value) return true;
|
|
|
// Array#indexOf ignores holes, Array#includes - not
|
|
|
} else for (;length > index; index++) if (IS_INCLUDES || index in O) {
|
|
|
if (O[index] === el) return IS_INCLUDES || index || 0;
|
|
|
} return !IS_INCLUDES && -1;
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 87 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// all enumerable object keys, includes symbols
|
|
|
var getKeys = __webpack_require__(21);
|
|
|
var gOPS = __webpack_require__(30);
|
|
|
var pIE = __webpack_require__(22);
|
|
|
module.exports = function (it) {
|
|
|
var result = getKeys(it);
|
|
|
var getSymbols = gOPS.f;
|
|
|
if (getSymbols) {
|
|
|
var symbols = getSymbols(it);
|
|
|
var isEnum = pIE.f;
|
|
|
var i = 0;
|
|
|
var key;
|
|
|
while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);
|
|
|
} return result;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 88 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var document = __webpack_require__(2).document;
|
|
|
module.exports = document && document.documentElement;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 89 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 7.2.2 IsArray(argument)
|
|
|
var cof = __webpack_require__(45);
|
|
|
module.exports = Array.isArray || function isArray(arg) {
|
|
|
return cof(arg) == 'Array';
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 90 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
var create = __webpack_require__(29);
|
|
|
var descriptor = __webpack_require__(23);
|
|
|
var setToStringTag = __webpack_require__(31);
|
|
|
var IteratorPrototype = {};
|
|
|
|
|
|
// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()
|
|
|
__webpack_require__(12)(IteratorPrototype, __webpack_require__(15)('iterator'), function () { return this; });
|
|
|
|
|
|
module.exports = function (Constructor, NAME, next) {
|
|
|
Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });
|
|
|
setToStringTag(Constructor, NAME + ' Iterator');
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 91 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
module.exports = function (done, value) {
|
|
|
return { value: value, done: !!done };
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 92 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var META = __webpack_require__(24)('meta');
|
|
|
var isObject = __webpack_require__(13);
|
|
|
var has = __webpack_require__(8);
|
|
|
var setDesc = __webpack_require__(9).f;
|
|
|
var id = 0;
|
|
|
var isExtensible = Object.isExtensible || function () {
|
|
|
return true;
|
|
|
};
|
|
|
var FREEZE = !__webpack_require__(19)(function () {
|
|
|
return isExtensible(Object.preventExtensions({}));
|
|
|
});
|
|
|
var setMeta = function (it) {
|
|
|
setDesc(it, META, { value: {
|
|
|
i: 'O' + ++id, // object ID
|
|
|
w: {} // weak collections IDs
|
|
|
} });
|
|
|
};
|
|
|
var fastKey = function (it, create) {
|
|
|
// return primitive with prefix
|
|
|
if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;
|
|
|
if (!has(it, META)) {
|
|
|
// can't set metadata to uncaught frozen object
|
|
|
if (!isExtensible(it)) return 'F';
|
|
|
// not necessary to add metadata
|
|
|
if (!create) return 'E';
|
|
|
// add missing metadata
|
|
|
setMeta(it);
|
|
|
// return object ID
|
|
|
} return it[META].i;
|
|
|
};
|
|
|
var getWeak = function (it, create) {
|
|
|
if (!has(it, META)) {
|
|
|
// can't set metadata to uncaught frozen object
|
|
|
if (!isExtensible(it)) return true;
|
|
|
// not necessary to add metadata
|
|
|
if (!create) return false;
|
|
|
// add missing metadata
|
|
|
setMeta(it);
|
|
|
// return hash weak collections IDs
|
|
|
} return it[META].w;
|
|
|
};
|
|
|
// add metadata on freeze-family methods calling
|
|
|
var onFreeze = function (it) {
|
|
|
if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);
|
|
|
return it;
|
|
|
};
|
|
|
var meta = module.exports = {
|
|
|
KEY: META,
|
|
|
NEED: false,
|
|
|
fastKey: fastKey,
|
|
|
getWeak: getWeak,
|
|
|
onFreeze: onFreeze
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 93 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// 19.1.2.1 Object.assign(target, source, ...)
|
|
|
var getKeys = __webpack_require__(21);
|
|
|
var gOPS = __webpack_require__(30);
|
|
|
var pIE = __webpack_require__(22);
|
|
|
var toObject = __webpack_require__(55);
|
|
|
var IObject = __webpack_require__(49);
|
|
|
var $assign = Object.assign;
|
|
|
|
|
|
// should work with symbols and should have deterministic property order (V8 bug)
|
|
|
module.exports = !$assign || __webpack_require__(19)(function () {
|
|
|
var A = {};
|
|
|
var B = {};
|
|
|
// eslint-disable-next-line no-undef
|
|
|
var S = Symbol();
|
|
|
var K = 'abcdefghijklmnopqrst';
|
|
|
A[S] = 7;
|
|
|
K.split('').forEach(function (k) { B[k] = k; });
|
|
|
return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;
|
|
|
}) ? function assign(target, source) { // eslint-disable-line no-unused-vars
|
|
|
var T = toObject(target);
|
|
|
var aLen = arguments.length;
|
|
|
var index = 1;
|
|
|
var getSymbols = gOPS.f;
|
|
|
var isEnum = pIE.f;
|
|
|
while (aLen > index) {
|
|
|
var S = IObject(arguments[index++]);
|
|
|
var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);
|
|
|
var length = keys.length;
|
|
|
var j = 0;
|
|
|
var key;
|
|
|
while (length > j) if (isEnum.call(S, key = keys[j++])) T[key] = S[key];
|
|
|
} return T;
|
|
|
} : $assign;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 94 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var dP = __webpack_require__(9);
|
|
|
var anObject = __webpack_require__(18);
|
|
|
var getKeys = __webpack_require__(21);
|
|
|
|
|
|
module.exports = __webpack_require__(7) ? Object.defineProperties : function defineProperties(O, Properties) {
|
|
|
anObject(O);
|
|
|
var keys = getKeys(Properties);
|
|
|
var length = keys.length;
|
|
|
var i = 0;
|
|
|
var P;
|
|
|
while (length > i) dP.f(O, P = keys[i++], Properties[P]);
|
|
|
return O;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 95 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
var gOPN = __webpack_require__(52).f;
|
|
|
var toString = {}.toString;
|
|
|
|
|
|
var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
|
|
|
? Object.getOwnPropertyNames(window) : [];
|
|
|
|
|
|
var getWindowNames = function (it) {
|
|
|
try {
|
|
|
return gOPN(it);
|
|
|
} catch (e) {
|
|
|
return windowNames.slice();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
module.exports.f = function getOwnPropertyNames(it) {
|
|
|
return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 96 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)
|
|
|
var has = __webpack_require__(8);
|
|
|
var toObject = __webpack_require__(55);
|
|
|
var IE_PROTO = __webpack_require__(32)('IE_PROTO');
|
|
|
var ObjectProto = Object.prototype;
|
|
|
|
|
|
module.exports = Object.getPrototypeOf || function (O) {
|
|
|
O = toObject(O);
|
|
|
if (has(O, IE_PROTO)) return O[IE_PROTO];
|
|
|
if (typeof O.constructor == 'function' && O instanceof O.constructor) {
|
|
|
return O.constructor.prototype;
|
|
|
} return O instanceof Object ? ObjectProto : null;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 97 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// Works with __proto__ only. Old v8 can't work with null proto objects.
|
|
|
/* eslint-disable no-proto */
|
|
|
var isObject = __webpack_require__(13);
|
|
|
var anObject = __webpack_require__(18);
|
|
|
var check = function (O, proto) {
|
|
|
anObject(O);
|
|
|
if (!isObject(proto) && proto !== null) throw TypeError(proto + ": can't set as prototype!");
|
|
|
};
|
|
|
module.exports = {
|
|
|
set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line
|
|
|
function (test, buggy, set) {
|
|
|
try {
|
|
|
set = __webpack_require__(46)(Function.call, __webpack_require__(51).f(Object.prototype, '__proto__').set, 2);
|
|
|
set(test, []);
|
|
|
buggy = !(test instanceof Array);
|
|
|
} catch (e) { buggy = true; }
|
|
|
return function setPrototypeOf(O, proto) {
|
|
|
check(O, proto);
|
|
|
if (buggy) O.__proto__ = proto;
|
|
|
else set(O, proto);
|
|
|
return O;
|
|
|
};
|
|
|
}({}, false) : undefined),
|
|
|
check: check
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 98 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var toInteger = __webpack_require__(34);
|
|
|
var defined = __webpack_require__(26);
|
|
|
// true -> String#at
|
|
|
// false -> String#codePointAt
|
|
|
module.exports = function (TO_STRING) {
|
|
|
return function (that, pos) {
|
|
|
var s = String(defined(that));
|
|
|
var i = toInteger(pos);
|
|
|
var l = s.length;
|
|
|
var a, b;
|
|
|
if (i < 0 || i >= l) return TO_STRING ? '' : undefined;
|
|
|
a = s.charCodeAt(i);
|
|
|
return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff
|
|
|
? TO_STRING ? s.charAt(i) : a
|
|
|
: TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 99 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var toInteger = __webpack_require__(34);
|
|
|
var max = Math.max;
|
|
|
var min = Math.min;
|
|
|
module.exports = function (index, length) {
|
|
|
index = toInteger(index);
|
|
|
return index < 0 ? max(index + length, 0) : min(index, length);
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 100 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 7.1.15 ToLength
|
|
|
var toInteger = __webpack_require__(34);
|
|
|
var min = Math.min;
|
|
|
module.exports = function (it) {
|
|
|
return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 101 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
var addToUnscopables = __webpack_require__(85);
|
|
|
var step = __webpack_require__(91);
|
|
|
var Iterators = __webpack_require__(28);
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
|
|
|
// 22.1.3.4 Array.prototype.entries()
|
|
|
// 22.1.3.13 Array.prototype.keys()
|
|
|
// 22.1.3.29 Array.prototype.values()
|
|
|
// 22.1.3.30 Array.prototype[@@iterator]()
|
|
|
module.exports = __webpack_require__(50)(Array, 'Array', function (iterated, kind) {
|
|
|
this._t = toIObject(iterated); // target
|
|
|
this._i = 0; // next index
|
|
|
this._k = kind; // kind
|
|
|
// 22.1.5.2.1 %ArrayIteratorPrototype%.next()
|
|
|
}, function () {
|
|
|
var O = this._t;
|
|
|
var kind = this._k;
|
|
|
var index = this._i++;
|
|
|
if (!O || index >= O.length) {
|
|
|
this._t = undefined;
|
|
|
return step(1);
|
|
|
}
|
|
|
if (kind == 'keys') return step(0, index);
|
|
|
if (kind == 'values') return step(0, O[index]);
|
|
|
return step(0, [index, O[index]]);
|
|
|
}, 'values');
|
|
|
|
|
|
// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)
|
|
|
Iterators.Arguments = Iterators.Array;
|
|
|
|
|
|
addToUnscopables('keys');
|
|
|
addToUnscopables('values');
|
|
|
addToUnscopables('entries');
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 102 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.3.1 Object.assign(target, source)
|
|
|
var $export = __webpack_require__(11);
|
|
|
|
|
|
$export($export.S + $export.F, 'Object', { assign: __webpack_require__(93) });
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 103 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var $export = __webpack_require__(11);
|
|
|
// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])
|
|
|
$export($export.S, 'Object', { create: __webpack_require__(29) });
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 104 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var $export = __webpack_require__(11);
|
|
|
// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)
|
|
|
$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperty: __webpack_require__(9).f });
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 105 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
// 19.1.3.19 Object.setPrototypeOf(O, proto)
|
|
|
var $export = __webpack_require__(11);
|
|
|
$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(97).set });
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 106 */
|
|
|
/***/ (function(module, exports) {
|
|
|
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 107 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
var $at = __webpack_require__(98)(true);
|
|
|
|
|
|
// 21.1.3.27 String.prototype[@@iterator]()
|
|
|
__webpack_require__(50)(String, 'String', function (iterated) {
|
|
|
this._t = String(iterated); // target
|
|
|
this._i = 0; // next index
|
|
|
// 21.1.5.2.1 %StringIteratorPrototype%.next()
|
|
|
}, function () {
|
|
|
var O = this._t;
|
|
|
var index = this._i;
|
|
|
var point;
|
|
|
if (index >= O.length) return { value: undefined, done: true };
|
|
|
point = $at(O, index);
|
|
|
this._i += point.length;
|
|
|
return { value: point, done: false };
|
|
|
});
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 108 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// ECMAScript 6 symbols shim
|
|
|
var global = __webpack_require__(2);
|
|
|
var has = __webpack_require__(8);
|
|
|
var DESCRIPTORS = __webpack_require__(7);
|
|
|
var $export = __webpack_require__(11);
|
|
|
var redefine = __webpack_require__(54);
|
|
|
var META = __webpack_require__(92).KEY;
|
|
|
var $fails = __webpack_require__(19);
|
|
|
var shared = __webpack_require__(33);
|
|
|
var setToStringTag = __webpack_require__(31);
|
|
|
var uid = __webpack_require__(24);
|
|
|
var wks = __webpack_require__(15);
|
|
|
var wksExt = __webpack_require__(37);
|
|
|
var wksDefine = __webpack_require__(36);
|
|
|
var enumKeys = __webpack_require__(87);
|
|
|
var isArray = __webpack_require__(89);
|
|
|
var anObject = __webpack_require__(18);
|
|
|
var isObject = __webpack_require__(13);
|
|
|
var toIObject = __webpack_require__(14);
|
|
|
var toPrimitive = __webpack_require__(35);
|
|
|
var createDesc = __webpack_require__(23);
|
|
|
var _create = __webpack_require__(29);
|
|
|
var gOPNExt = __webpack_require__(95);
|
|
|
var $GOPD = __webpack_require__(51);
|
|
|
var $DP = __webpack_require__(9);
|
|
|
var $keys = __webpack_require__(21);
|
|
|
var gOPD = $GOPD.f;
|
|
|
var dP = $DP.f;
|
|
|
var gOPN = gOPNExt.f;
|
|
|
var $Symbol = global.Symbol;
|
|
|
var $JSON = global.JSON;
|
|
|
var _stringify = $JSON && $JSON.stringify;
|
|
|
var PROTOTYPE = 'prototype';
|
|
|
var HIDDEN = wks('_hidden');
|
|
|
var TO_PRIMITIVE = wks('toPrimitive');
|
|
|
var isEnum = {}.propertyIsEnumerable;
|
|
|
var SymbolRegistry = shared('symbol-registry');
|
|
|
var AllSymbols = shared('symbols');
|
|
|
var OPSymbols = shared('op-symbols');
|
|
|
var ObjectProto = Object[PROTOTYPE];
|
|
|
var USE_NATIVE = typeof $Symbol == 'function';
|
|
|
var QObject = global.QObject;
|
|
|
// Don't use setters in Qt Script, https://github.com/zloirock/core-js/issues/173
|
|
|
var setter = !QObject || !QObject[PROTOTYPE] || !QObject[PROTOTYPE].findChild;
|
|
|
|
|
|
// fallback for old Android, https://code.google.com/p/v8/issues/detail?id=687
|
|
|
var setSymbolDesc = DESCRIPTORS && $fails(function () {
|
|
|
return _create(dP({}, 'a', {
|
|
|
get: function () { return dP(this, 'a', { value: 7 }).a; }
|
|
|
})).a != 7;
|
|
|
}) ? function (it, key, D) {
|
|
|
var protoDesc = gOPD(ObjectProto, key);
|
|
|
if (protoDesc) delete ObjectProto[key];
|
|
|
dP(it, key, D);
|
|
|
if (protoDesc && it !== ObjectProto) dP(ObjectProto, key, protoDesc);
|
|
|
} : dP;
|
|
|
|
|
|
var wrap = function (tag) {
|
|
|
var sym = AllSymbols[tag] = _create($Symbol[PROTOTYPE]);
|
|
|
sym._k = tag;
|
|
|
return sym;
|
|
|
};
|
|
|
|
|
|
var isSymbol = USE_NATIVE && typeof $Symbol.iterator == 'symbol' ? function (it) {
|
|
|
return typeof it == 'symbol';
|
|
|
} : function (it) {
|
|
|
return it instanceof $Symbol;
|
|
|
};
|
|
|
|
|
|
var $defineProperty = function defineProperty(it, key, D) {
|
|
|
if (it === ObjectProto) $defineProperty(OPSymbols, key, D);
|
|
|
anObject(it);
|
|
|
key = toPrimitive(key, true);
|
|
|
anObject(D);
|
|
|
if (has(AllSymbols, key)) {
|
|
|
if (!D.enumerable) {
|
|
|
if (!has(it, HIDDEN)) dP(it, HIDDEN, createDesc(1, {}));
|
|
|
it[HIDDEN][key] = true;
|
|
|
} else {
|
|
|
if (has(it, HIDDEN) && it[HIDDEN][key]) it[HIDDEN][key] = false;
|
|
|
D = _create(D, { enumerable: createDesc(0, false) });
|
|
|
} return setSymbolDesc(it, key, D);
|
|
|
} return dP(it, key, D);
|
|
|
};
|
|
|
var $defineProperties = function defineProperties(it, P) {
|
|
|
anObject(it);
|
|
|
var keys = enumKeys(P = toIObject(P));
|
|
|
var i = 0;
|
|
|
var l = keys.length;
|
|
|
var key;
|
|
|
while (l > i) $defineProperty(it, key = keys[i++], P[key]);
|
|
|
return it;
|
|
|
};
|
|
|
var $create = function create(it, P) {
|
|
|
return P === undefined ? _create(it) : $defineProperties(_create(it), P);
|
|
|
};
|
|
|
var $propertyIsEnumerable = function propertyIsEnumerable(key) {
|
|
|
var E = isEnum.call(this, key = toPrimitive(key, true));
|
|
|
if (this === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return false;
|
|
|
return E || !has(this, key) || !has(AllSymbols, key) || has(this, HIDDEN) && this[HIDDEN][key] ? E : true;
|
|
|
};
|
|
|
var $getOwnPropertyDescriptor = function getOwnPropertyDescriptor(it, key) {
|
|
|
it = toIObject(it);
|
|
|
key = toPrimitive(key, true);
|
|
|
if (it === ObjectProto && has(AllSymbols, key) && !has(OPSymbols, key)) return;
|
|
|
var D = gOPD(it, key);
|
|
|
if (D && has(AllSymbols, key) && !(has(it, HIDDEN) && it[HIDDEN][key])) D.enumerable = true;
|
|
|
return D;
|
|
|
};
|
|
|
var $getOwnPropertyNames = function getOwnPropertyNames(it) {
|
|
|
var names = gOPN(toIObject(it));
|
|
|
var result = [];
|
|
|
var i = 0;
|
|
|
var key;
|
|
|
while (names.length > i) {
|
|
|
if (!has(AllSymbols, key = names[i++]) && key != HIDDEN && key != META) result.push(key);
|
|
|
} return result;
|
|
|
};
|
|
|
var $getOwnPropertySymbols = function getOwnPropertySymbols(it) {
|
|
|
var IS_OP = it === ObjectProto;
|
|
|
var names = gOPN(IS_OP ? OPSymbols : toIObject(it));
|
|
|
var result = [];
|
|
|
var i = 0;
|
|
|
var key;
|
|
|
while (names.length > i) {
|
|
|
if (has(AllSymbols, key = names[i++]) && (IS_OP ? has(ObjectProto, key) : true)) result.push(AllSymbols[key]);
|
|
|
} return result;
|
|
|
};
|
|
|
|
|
|
// 19.4.1.1 Symbol([description])
|
|
|
if (!USE_NATIVE) {
|
|
|
$Symbol = function Symbol() {
|
|
|
if (this instanceof $Symbol) throw TypeError('Symbol is not a constructor!');
|
|
|
var tag = uid(arguments.length > 0 ? arguments[0] : undefined);
|
|
|
var $set = function (value) {
|
|
|
if (this === ObjectProto) $set.call(OPSymbols, value);
|
|
|
if (has(this, HIDDEN) && has(this[HIDDEN], tag)) this[HIDDEN][tag] = false;
|
|
|
setSymbolDesc(this, tag, createDesc(1, value));
|
|
|
};
|
|
|
if (DESCRIPTORS && setter) setSymbolDesc(ObjectProto, tag, { configurable: true, set: $set });
|
|
|
return wrap(tag);
|
|
|
};
|
|
|
redefine($Symbol[PROTOTYPE], 'toString', function toString() {
|
|
|
return this._k;
|
|
|
});
|
|
|
|
|
|
$GOPD.f = $getOwnPropertyDescriptor;
|
|
|
$DP.f = $defineProperty;
|
|
|
__webpack_require__(52).f = gOPNExt.f = $getOwnPropertyNames;
|
|
|
__webpack_require__(22).f = $propertyIsEnumerable;
|
|
|
__webpack_require__(30).f = $getOwnPropertySymbols;
|
|
|
|
|
|
if (DESCRIPTORS && !__webpack_require__(20)) {
|
|
|
redefine(ObjectProto, 'propertyIsEnumerable', $propertyIsEnumerable, true);
|
|
|
}
|
|
|
|
|
|
wksExt.f = function (name) {
|
|
|
return wrap(wks(name));
|
|
|
};
|
|
|
}
|
|
|
|
|
|
$export($export.G + $export.W + $export.F * !USE_NATIVE, { Symbol: $Symbol });
|
|
|
|
|
|
for (var es6Symbols = (
|
|
|
// 19.4.2.2, 19.4.2.3, 19.4.2.4, 19.4.2.6, 19.4.2.8, 19.4.2.9, 19.4.2.10, 19.4.2.11, 19.4.2.12, 19.4.2.13, 19.4.2.14
|
|
|
'hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables'
|
|
|
).split(','), j = 0; es6Symbols.length > j;)wks(es6Symbols[j++]);
|
|
|
|
|
|
for (var wellKnownSymbols = $keys(wks.store), k = 0; wellKnownSymbols.length > k;) wksDefine(wellKnownSymbols[k++]);
|
|
|
|
|
|
$export($export.S + $export.F * !USE_NATIVE, 'Symbol', {
|
|
|
// 19.4.2.1 Symbol.for(key)
|
|
|
'for': function (key) {
|
|
|
return has(SymbolRegistry, key += '')
|
|
|
? SymbolRegistry[key]
|
|
|
: SymbolRegistry[key] = $Symbol(key);
|
|
|
},
|
|
|
// 19.4.2.5 Symbol.keyFor(sym)
|
|
|
keyFor: function keyFor(sym) {
|
|
|
if (!isSymbol(sym)) throw TypeError(sym + ' is not a symbol!');
|
|
|
for (var key in SymbolRegistry) if (SymbolRegistry[key] === sym) return key;
|
|
|
},
|
|
|
useSetter: function () { setter = true; },
|
|
|
useSimple: function () { setter = false; }
|
|
|
});
|
|
|
|
|
|
$export($export.S + $export.F * !USE_NATIVE, 'Object', {
|
|
|
// 19.1.2.2 Object.create(O [, Properties])
|
|
|
create: $create,
|
|
|
// 19.1.2.4 Object.defineProperty(O, P, Attributes)
|
|
|
defineProperty: $defineProperty,
|
|
|
// 19.1.2.3 Object.defineProperties(O, Properties)
|
|
|
defineProperties: $defineProperties,
|
|
|
// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)
|
|
|
getOwnPropertyDescriptor: $getOwnPropertyDescriptor,
|
|
|
// 19.1.2.7 Object.getOwnPropertyNames(O)
|
|
|
getOwnPropertyNames: $getOwnPropertyNames,
|
|
|
// 19.1.2.8 Object.getOwnPropertySymbols(O)
|
|
|
getOwnPropertySymbols: $getOwnPropertySymbols
|
|
|
});
|
|
|
|
|
|
// 24.3.2 JSON.stringify(value [, replacer [, space]])
|
|
|
$JSON && $export($export.S + $export.F * (!USE_NATIVE || $fails(function () {
|
|
|
var S = $Symbol();
|
|
|
// MS Edge converts symbol values to JSON as {}
|
|
|
// WebKit converts symbol values to JSON as null
|
|
|
// V8 throws on boxed symbols
|
|
|
return _stringify([S]) != '[null]' || _stringify({ a: S }) != '{}' || _stringify(Object(S)) != '{}';
|
|
|
})), 'JSON', {
|
|
|
stringify: function stringify(it) {
|
|
|
var args = [it];
|
|
|
var i = 1;
|
|
|
var replacer, $replacer;
|
|
|
while (arguments.length > i) args.push(arguments[i++]);
|
|
|
$replacer = replacer = args[1];
|
|
|
if (!isObject(replacer) && it === undefined || isSymbol(it)) return; // IE8 returns string on undefined
|
|
|
if (!isArray(replacer)) replacer = function (key, value) {
|
|
|
if (typeof $replacer == 'function') value = $replacer.call(this, key, value);
|
|
|
if (!isSymbol(value)) return value;
|
|
|
};
|
|
|
args[1] = replacer;
|
|
|
return _stringify.apply($JSON, args);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
// 19.4.3.4 Symbol.prototype[@@toPrimitive](hint)
|
|
|
$Symbol[PROTOTYPE][TO_PRIMITIVE] || __webpack_require__(12)($Symbol[PROTOTYPE], TO_PRIMITIVE, $Symbol[PROTOTYPE].valueOf);
|
|
|
// 19.4.3.5 Symbol.prototype[@@toStringTag]
|
|
|
setToStringTag($Symbol, 'Symbol');
|
|
|
// 20.2.1.9 Math[@@toStringTag]
|
|
|
setToStringTag(Math, 'Math', true);
|
|
|
// 24.3.3 JSON[@@toStringTag]
|
|
|
setToStringTag(global.JSON, 'JSON', true);
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 109 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(36)('asyncIterator');
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 110 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(36)('observable');
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 111 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(101);
|
|
|
var global = __webpack_require__(2);
|
|
|
var hide = __webpack_require__(12);
|
|
|
var Iterators = __webpack_require__(28);
|
|
|
var TO_STRING_TAG = __webpack_require__(15)('toStringTag');
|
|
|
|
|
|
var DOMIterables = ('CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,' +
|
|
|
'DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,' +
|
|
|
'MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,' +
|
|
|
'SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,' +
|
|
|
'TextTrackList,TouchList').split(',');
|
|
|
|
|
|
for (var i = 0; i < DOMIterables.length; i++) {
|
|
|
var NAME = DOMIterables[i];
|
|
|
var Collection = global[NAME];
|
|
|
var proto = Collection && Collection.prototype;
|
|
|
if (proto && !proto[TO_STRING_TAG]) hide(proto, TO_STRING_TAG, NAME);
|
|
|
Iterators[NAME] = Iterators.Array;
|
|
|
}
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 112 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
var START_EVENT_NAME_MAP = {
|
|
|
transitionstart: {
|
|
|
transition: 'transitionstart',
|
|
|
WebkitTransition: 'webkitTransitionStart',
|
|
|
MozTransition: 'mozTransitionStart',
|
|
|
OTransition: 'oTransitionStart',
|
|
|
msTransition: 'MSTransitionStart'
|
|
|
},
|
|
|
|
|
|
animationstart: {
|
|
|
animation: 'animationstart',
|
|
|
WebkitAnimation: 'webkitAnimationStart',
|
|
|
MozAnimation: 'mozAnimationStart',
|
|
|
OAnimation: 'oAnimationStart',
|
|
|
msAnimation: 'MSAnimationStart'
|
|
|
}
|
|
|
};
|
|
|
|
|
|
var END_EVENT_NAME_MAP = {
|
|
|
transitionend: {
|
|
|
transition: 'transitionend',
|
|
|
WebkitTransition: 'webkitTransitionEnd',
|
|
|
MozTransition: 'mozTransitionEnd',
|
|
|
OTransition: 'oTransitionEnd',
|
|
|
msTransition: 'MSTransitionEnd'
|
|
|
},
|
|
|
|
|
|
animationend: {
|
|
|
animation: 'animationend',
|
|
|
WebkitAnimation: 'webkitAnimationEnd',
|
|
|
MozAnimation: 'mozAnimationEnd',
|
|
|
OAnimation: 'oAnimationEnd',
|
|
|
msAnimation: 'MSAnimationEnd'
|
|
|
}
|
|
|
};
|
|
|
|
|
|
var startEvents = [];
|
|
|
var endEvents = [];
|
|
|
|
|
|
function detectEvents() {
|
|
|
var testEl = document.createElement('div');
|
|
|
var style = testEl.style;
|
|
|
|
|
|
if (!('AnimationEvent' in window)) {
|
|
|
delete START_EVENT_NAME_MAP.animationstart.animation;
|
|
|
delete END_EVENT_NAME_MAP.animationend.animation;
|
|
|
}
|
|
|
|
|
|
if (!('TransitionEvent' in window)) {
|
|
|
delete START_EVENT_NAME_MAP.transitionstart.transition;
|
|
|
delete END_EVENT_NAME_MAP.transitionend.transition;
|
|
|
}
|
|
|
|
|
|
function process(EVENT_NAME_MAP, events) {
|
|
|
for (var baseEventName in EVENT_NAME_MAP) {
|
|
|
if (EVENT_NAME_MAP.hasOwnProperty(baseEventName)) {
|
|
|
var baseEvents = EVENT_NAME_MAP[baseEventName];
|
|
|
for (var styleName in baseEvents) {
|
|
|
if (styleName in style) {
|
|
|
events.push(baseEvents[styleName]);
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
process(START_EVENT_NAME_MAP, startEvents);
|
|
|
process(END_EVENT_NAME_MAP, endEvents);
|
|
|
}
|
|
|
|
|
|
if (typeof window !== 'undefined' && typeof document !== 'undefined') {
|
|
|
detectEvents();
|
|
|
}
|
|
|
|
|
|
function addEventListener(node, eventName, eventListener) {
|
|
|
node.addEventListener(eventName, eventListener, false);
|
|
|
}
|
|
|
|
|
|
function removeEventListener(node, eventName, eventListener) {
|
|
|
node.removeEventListener(eventName, eventListener, false);
|
|
|
}
|
|
|
|
|
|
var TransitionEvents = {
|
|
|
// Start events
|
|
|
startEvents: startEvents,
|
|
|
|
|
|
addStartEventListener: function addStartEventListener(node, eventListener) {
|
|
|
if (startEvents.length === 0) {
|
|
|
window.setTimeout(eventListener, 0);
|
|
|
return;
|
|
|
}
|
|
|
startEvents.forEach(function (startEvent) {
|
|
|
addEventListener(node, startEvent, eventListener);
|
|
|
});
|
|
|
},
|
|
|
removeStartEventListener: function removeStartEventListener(node, eventListener) {
|
|
|
if (startEvents.length === 0) {
|
|
|
return;
|
|
|
}
|
|
|
startEvents.forEach(function (startEvent) {
|
|
|
removeEventListener(node, startEvent, eventListener);
|
|
|
});
|
|
|
},
|
|
|
|
|
|
|
|
|
// End events
|
|
|
endEvents: endEvents,
|
|
|
|
|
|
addEndEventListener: function addEndEventListener(node, eventListener) {
|
|
|
if (endEvents.length === 0) {
|
|
|
window.setTimeout(eventListener, 0);
|
|
|
return;
|
|
|
}
|
|
|
endEvents.forEach(function (endEvent) {
|
|
|
addEventListener(node, endEvent, eventListener);
|
|
|
});
|
|
|
},
|
|
|
removeEndEventListener: function removeEndEventListener(node, eventListener) {
|
|
|
if (endEvents.length === 0) {
|
|
|
return;
|
|
|
}
|
|
|
endEvents.forEach(function (endEvent) {
|
|
|
removeEventListener(node, endEvent, eventListener);
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (TransitionEvents);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 113 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isCssAnimationSupported; });
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof__ = __webpack_require__(25);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__Event__ = __webpack_require__(112);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_component_classes__ = __webpack_require__(77);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_component_classes___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_component_classes__);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var isCssAnimationSupported = __WEBPACK_IMPORTED_MODULE_1__Event__["a" /* default */].endEvents.length !== 0;
|
|
|
var capitalPrefixes = ['Webkit', 'Moz', 'O',
|
|
|
// ms is special .... !
|
|
|
'ms'];
|
|
|
var prefixes = ['-webkit-', '-moz-', '-o-', 'ms-', ''];
|
|
|
|
|
|
function getStyleProperty(node, name) {
|
|
|
// old ff need null, https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle
|
|
|
var style = window.getComputedStyle(node, null);
|
|
|
var ret = '';
|
|
|
for (var i = 0; i < prefixes.length; i++) {
|
|
|
ret = style.getPropertyValue(prefixes[i] + name);
|
|
|
if (ret) {
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function fixBrowserByTimeout(node) {
|
|
|
if (isCssAnimationSupported) {
|
|
|
var transitionDelay = parseFloat(getStyleProperty(node, 'transition-delay')) || 0;
|
|
|
var transitionDuration = parseFloat(getStyleProperty(node, 'transition-duration')) || 0;
|
|
|
var animationDelay = parseFloat(getStyleProperty(node, 'animation-delay')) || 0;
|
|
|
var animationDuration = parseFloat(getStyleProperty(node, 'animation-duration')) || 0;
|
|
|
var time = Math.max(transitionDuration + transitionDelay, animationDuration + animationDelay);
|
|
|
// sometimes, browser bug
|
|
|
node.rcEndAnimTimeout = setTimeout(function () {
|
|
|
node.rcEndAnimTimeout = null;
|
|
|
if (node.rcEndListener) {
|
|
|
node.rcEndListener();
|
|
|
}
|
|
|
}, time * 1000 + 200);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function clearBrowserBugTimeout(node) {
|
|
|
if (node.rcEndAnimTimeout) {
|
|
|
clearTimeout(node.rcEndAnimTimeout);
|
|
|
node.rcEndAnimTimeout = null;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var cssAnimation = function cssAnimation(node, transitionName, endCallback) {
|
|
|
var nameIsObj = (typeof transitionName === 'undefined' ? 'undefined' : __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_typeof___default()(transitionName)) === 'object';
|
|
|
var className = nameIsObj ? transitionName.name : transitionName;
|
|
|
var activeClassName = nameIsObj ? transitionName.active : transitionName + '-active';
|
|
|
var end = endCallback;
|
|
|
var start = void 0;
|
|
|
var active = void 0;
|
|
|
var nodeClasses = __WEBPACK_IMPORTED_MODULE_2_component_classes___default()(node);
|
|
|
|
|
|
if (endCallback && Object.prototype.toString.call(endCallback) === '[object Object]') {
|
|
|
end = endCallback.end;
|
|
|
start = endCallback.start;
|
|
|
active = endCallback.active;
|
|
|
}
|
|
|
|
|
|
if (node.rcEndListener) {
|
|
|
node.rcEndListener();
|
|
|
}
|
|
|
|
|
|
node.rcEndListener = function (e) {
|
|
|
if (e && e.target !== node) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (node.rcAnimTimeout) {
|
|
|
clearTimeout(node.rcAnimTimeout);
|
|
|
node.rcAnimTimeout = null;
|
|
|
}
|
|
|
|
|
|
clearBrowserBugTimeout(node);
|
|
|
|
|
|
nodeClasses.remove(className);
|
|
|
nodeClasses.remove(activeClassName);
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1__Event__["a" /* default */].removeEndEventListener(node, node.rcEndListener);
|
|
|
node.rcEndListener = null;
|
|
|
|
|
|
// Usually this optional end is used for informing an owner of
|
|
|
// a leave animation and telling it to remove the child.
|
|
|
if (end) {
|
|
|
end();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1__Event__["a" /* default */].addEndEventListener(node, node.rcEndListener);
|
|
|
|
|
|
if (start) {
|
|
|
start();
|
|
|
}
|
|
|
nodeClasses.add(className);
|
|
|
|
|
|
node.rcAnimTimeout = setTimeout(function () {
|
|
|
node.rcAnimTimeout = null;
|
|
|
nodeClasses.add(activeClassName);
|
|
|
if (active) {
|
|
|
setTimeout(active, 0);
|
|
|
}
|
|
|
fixBrowserByTimeout(node);
|
|
|
// 30ms for firefox
|
|
|
}, 30);
|
|
|
|
|
|
return {
|
|
|
stop: function stop() {
|
|
|
if (node.rcEndListener) {
|
|
|
node.rcEndListener();
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
};
|
|
|
|
|
|
cssAnimation.style = function (node, style, callback) {
|
|
|
if (node.rcEndListener) {
|
|
|
node.rcEndListener();
|
|
|
}
|
|
|
|
|
|
node.rcEndListener = function (e) {
|
|
|
if (e && e.target !== node) {
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (node.rcAnimTimeout) {
|
|
|
clearTimeout(node.rcAnimTimeout);
|
|
|
node.rcAnimTimeout = null;
|
|
|
}
|
|
|
|
|
|
clearBrowserBugTimeout(node);
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1__Event__["a" /* default */].removeEndEventListener(node, node.rcEndListener);
|
|
|
node.rcEndListener = null;
|
|
|
|
|
|
// Usually this optional callback is used for informing an owner of
|
|
|
// a leave animation and telling it to remove the child.
|
|
|
if (callback) {
|
|
|
callback();
|
|
|
}
|
|
|
};
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1__Event__["a" /* default */].addEndEventListener(node, node.rcEndListener);
|
|
|
|
|
|
node.rcAnimTimeout = setTimeout(function () {
|
|
|
for (var s in style) {
|
|
|
if (style.hasOwnProperty(s)) {
|
|
|
node.style[s] = style[s];
|
|
|
}
|
|
|
}
|
|
|
node.rcAnimTimeout = null;
|
|
|
fixBrowserByTimeout(node);
|
|
|
}, 0);
|
|
|
};
|
|
|
|
|
|
cssAnimation.setTransition = function (node, p, value) {
|
|
|
var property = p;
|
|
|
var v = value;
|
|
|
if (value === undefined) {
|
|
|
v = property;
|
|
|
property = '';
|
|
|
}
|
|
|
property = property || '';
|
|
|
capitalPrefixes.forEach(function (prefix) {
|
|
|
node.style[prefix + 'Transition' + property] = v;
|
|
|
});
|
|
|
};
|
|
|
|
|
|
cssAnimation.isCssAnimationSupported = isCssAnimationSupported;
|
|
|
|
|
|
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["b"] = (cssAnimation);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 114 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
|
|
|
|
|
|
function adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {
|
|
|
var pos = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].clone(elFuturePos);
|
|
|
var size = {
|
|
|
width: elRegion.width,
|
|
|
height: elRegion.height
|
|
|
};
|
|
|
|
|
|
if (overflow.adjustX && pos.left < visibleRect.left) {
|
|
|
pos.left = visibleRect.left;
|
|
|
}
|
|
|
|
|
|
// Left edge inside and right edge outside viewport, try to resize it.
|
|
|
if (overflow.resizeWidth && pos.left >= visibleRect.left && pos.left + size.width > visibleRect.right) {
|
|
|
size.width -= pos.left + size.width - visibleRect.right;
|
|
|
}
|
|
|
|
|
|
// Right edge outside viewport, try to move it.
|
|
|
if (overflow.adjustX && pos.left + size.width > visibleRect.right) {
|
|
|
// 保证左边界和可视区域左边界对齐
|
|
|
pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);
|
|
|
}
|
|
|
|
|
|
// Top edge outside viewport, try to move it.
|
|
|
if (overflow.adjustY && pos.top < visibleRect.top) {
|
|
|
pos.top = visibleRect.top;
|
|
|
}
|
|
|
|
|
|
// Top edge inside and bottom edge outside viewport, try to resize it.
|
|
|
if (overflow.resizeHeight && pos.top >= visibleRect.top && pos.top + size.height > visibleRect.bottom) {
|
|
|
size.height -= pos.top + size.height - visibleRect.bottom;
|
|
|
}
|
|
|
|
|
|
// Bottom edge outside viewport, try to move it.
|
|
|
if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {
|
|
|
// 保证上边界和可视区域上边界对齐
|
|
|
pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);
|
|
|
}
|
|
|
|
|
|
return __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].mix(pos, size);
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (adjustForViewport);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 115 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__align__ = __webpack_require__(56);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__getOffsetParent__ = __webpack_require__(57);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__getVisibleRectForElement__ = __webpack_require__(59);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__getRegion__ = __webpack_require__(58);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function isOutOfVisibleRect(target) {
|
|
|
var visibleRect = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2__getVisibleRectForElement__["a" /* default */])(target);
|
|
|
var targetRegion = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__getRegion__["a" /* default */])(target);
|
|
|
|
|
|
return !visibleRect || targetRegion.left + targetRegion.width <= visibleRect.left || targetRegion.top + targetRegion.height <= visibleRect.top || targetRegion.left >= visibleRect.right || targetRegion.top >= visibleRect.bottom;
|
|
|
}
|
|
|
|
|
|
function alignElement(el, refNode, align) {
|
|
|
var target = align.target || refNode;
|
|
|
var refNodeRegion = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__getRegion__["a" /* default */])(target);
|
|
|
|
|
|
var isTargetNotOutOfVisible = !isOutOfVisibleRect(target);
|
|
|
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__align__["a" /* default */])(el, refNodeRegion, align, isTargetNotOutOfVisible);
|
|
|
}
|
|
|
|
|
|
alignElement.__getOffsetParent = __WEBPACK_IMPORTED_MODULE_1__getOffsetParent__["a" /* default */];
|
|
|
|
|
|
alignElement.__getVisibleRectForElement = __WEBPACK_IMPORTED_MODULE_2__getVisibleRectForElement__["a" /* default */];
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (alignElement);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 116 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__align__ = __webpack_require__(56);
|
|
|
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* `tgtPoint`: { pageX, pageY } or { clientX, clientY }.
|
|
|
* If client position provided, will internal convert to page position.
|
|
|
*/
|
|
|
|
|
|
function alignPoint(el, tgtPoint, align) {
|
|
|
var pageX = void 0;
|
|
|
var pageY = void 0;
|
|
|
|
|
|
var doc = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getDocument(el);
|
|
|
var win = doc.defaultView || doc.parentWindow;
|
|
|
|
|
|
var scrollX = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollLeft(win);
|
|
|
var scrollY = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getWindowScrollTop(win);
|
|
|
var viewportWidth = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportWidth(win);
|
|
|
var viewportHeight = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].viewportHeight(win);
|
|
|
|
|
|
if ('pageX' in tgtPoint) {
|
|
|
pageX = tgtPoint.pageX;
|
|
|
} else {
|
|
|
pageX = scrollX + tgtPoint.clientX;
|
|
|
}
|
|
|
|
|
|
if ('pageY' in tgtPoint) {
|
|
|
pageY = tgtPoint.pageY;
|
|
|
} else {
|
|
|
pageY = scrollY + tgtPoint.clientY;
|
|
|
}
|
|
|
|
|
|
var tgtRegion = {
|
|
|
left: pageX,
|
|
|
top: pageY,
|
|
|
width: 0,
|
|
|
height: 0
|
|
|
};
|
|
|
|
|
|
var pointInView = pageX >= 0 && pageX <= scrollX + viewportWidth && pageY >= 0 && pageY <= scrollY + viewportHeight;
|
|
|
|
|
|
// Provide default target point
|
|
|
var points = [align.points[0], 'cc'];
|
|
|
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__align__["a" /* default */])(el, tgtRegion, _extends({}, align, { points: points }), pointInView);
|
|
|
}
|
|
|
|
|
|
/* unused harmony default export */ var _unused_webpack_default_export = (alignPoint);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 117 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/**
|
|
|
* 获取 node 上的 align 对齐点 相对于页面的坐标
|
|
|
*/
|
|
|
|
|
|
function getAlignOffset(region, align) {
|
|
|
var V = align.charAt(0);
|
|
|
var H = align.charAt(1);
|
|
|
var w = region.width;
|
|
|
var h = region.height;
|
|
|
|
|
|
var x = region.left;
|
|
|
var y = region.top;
|
|
|
|
|
|
if (V === 'c') {
|
|
|
y += h / 2;
|
|
|
} else if (V === 'b') {
|
|
|
y += h;
|
|
|
}
|
|
|
|
|
|
if (H === 'c') {
|
|
|
x += w / 2;
|
|
|
} else if (H === 'r') {
|
|
|
x += w;
|
|
|
}
|
|
|
|
|
|
return {
|
|
|
left: x,
|
|
|
top: y
|
|
|
};
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (getAlignOffset);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 118 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__getAlignOffset__ = __webpack_require__(117);
|
|
|
|
|
|
|
|
|
function getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {
|
|
|
var p1 = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__getAlignOffset__["a" /* default */])(refNodeRegion, points[1]);
|
|
|
var p2 = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__getAlignOffset__["a" /* default */])(elRegion, points[0]);
|
|
|
var diff = [p2.left - p1.left, p2.top - p1.top];
|
|
|
|
|
|
return {
|
|
|
left: elRegion.left - diff[0] + offset[0] - targetOffset[0],
|
|
|
top: elRegion.top - diff[1] + offset[1] - targetOffset[1]
|
|
|
};
|
|
|
}
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (getElFuturePos);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 119 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__align_alignElement__ = __webpack_require__(115);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__align_alignPoint__ = __webpack_require__(116);
|
|
|
/* unused harmony reexport alignElement */
|
|
|
/* unused harmony reexport alignPoint */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0__align_alignElement__["a" /* default */]);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 120 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = isAncestorFixed;
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils__ = __webpack_require__(10);
|
|
|
|
|
|
|
|
|
function isAncestorFixed(element) {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].isWindow(element) || element.nodeType === 9) {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
var doc = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].getDocument(element);
|
|
|
var body = doc.body;
|
|
|
var parent = null;
|
|
|
for (parent = element.parentNode; parent && parent !== body; parent = parent.parentNode) {
|
|
|
var positionStyle = __WEBPACK_IMPORTED_MODULE_0__utils__["a" /* default */].css(parent, 'position');
|
|
|
if (positionStyle === 'fixed') {
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 121 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["e"] = getTransformName;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["b"] = setTransitionProperty;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = getTransitionProperty;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["c"] = getTransformXY;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["d"] = setTransformXY;
|
|
|
var vendorPrefix = void 0;
|
|
|
|
|
|
var jsCssMap = {
|
|
|
Webkit: '-webkit-',
|
|
|
Moz: '-moz-',
|
|
|
// IE did it wrong again ...
|
|
|
ms: '-ms-',
|
|
|
O: '-o-'
|
|
|
};
|
|
|
|
|
|
function getVendorPrefix() {
|
|
|
if (vendorPrefix !== undefined) {
|
|
|
return vendorPrefix;
|
|
|
}
|
|
|
vendorPrefix = '';
|
|
|
var style = document.createElement('p').style;
|
|
|
var testProp = 'Transform';
|
|
|
for (var key in jsCssMap) {
|
|
|
if (key + testProp in style) {
|
|
|
vendorPrefix = key;
|
|
|
}
|
|
|
}
|
|
|
return vendorPrefix;
|
|
|
}
|
|
|
|
|
|
function getTransitionName() {
|
|
|
return getVendorPrefix() ? getVendorPrefix() + 'TransitionProperty' : 'transitionProperty';
|
|
|
}
|
|
|
|
|
|
function getTransformName() {
|
|
|
return getVendorPrefix() ? getVendorPrefix() + 'Transform' : 'transform';
|
|
|
}
|
|
|
|
|
|
function setTransitionProperty(node, value) {
|
|
|
var name = getTransitionName();
|
|
|
if (name) {
|
|
|
node.style[name] = value;
|
|
|
if (name !== 'transitionProperty') {
|
|
|
node.style.transitionProperty = value;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function setTransform(node, value) {
|
|
|
var name = getTransformName();
|
|
|
if (name) {
|
|
|
node.style[name] = value;
|
|
|
if (name !== 'transform') {
|
|
|
node.style.transform = value;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function getTransitionProperty(node) {
|
|
|
return node.style.transitionProperty || node.style[getTransitionName()];
|
|
|
}
|
|
|
|
|
|
function getTransformXY(node) {
|
|
|
var style = window.getComputedStyle(node, null);
|
|
|
var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());
|
|
|
if (transform && transform !== 'none') {
|
|
|
var matrix = transform.replace(/[^0-9\-.,]/g, '').split(',');
|
|
|
return { x: parseFloat(matrix[12] || matrix[4], 0), y: parseFloat(matrix[13] || matrix[5], 0) };
|
|
|
}
|
|
|
return {
|
|
|
x: 0,
|
|
|
y: 0
|
|
|
};
|
|
|
}
|
|
|
|
|
|
var matrix2d = /matrix\((.*)\)/;
|
|
|
var matrix3d = /matrix3d\((.*)\)/;
|
|
|
|
|
|
function setTransformXY(node, xy) {
|
|
|
var style = window.getComputedStyle(node, null);
|
|
|
var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());
|
|
|
if (transform && transform !== 'none') {
|
|
|
var arr = void 0;
|
|
|
var match2d = transform.match(matrix2d);
|
|
|
if (match2d) {
|
|
|
match2d = match2d[1];
|
|
|
arr = match2d.split(',').map(function (item) {
|
|
|
return parseFloat(item, 10);
|
|
|
});
|
|
|
arr[4] = xy.x;
|
|
|
arr[5] = xy.y;
|
|
|
setTransform(node, 'matrix(' + arr.join(',') + ')');
|
|
|
} else {
|
|
|
var match3d = transform.match(matrix3d)[1];
|
|
|
arr = match3d.split(',').map(function (item) {
|
|
|
return parseFloat(item, 10);
|
|
|
});
|
|
|
arr[12] = xy.x;
|
|
|
arr[13] = xy.y;
|
|
|
setTransform(node, 'matrix3d(' + arr.join(',') + ')');
|
|
|
}
|
|
|
} else {
|
|
|
setTransform(node, 'translateX(' + xy.x + 'px) translateY(' + xy.y + 'px) translateZ(0)');
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 122 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* WEBPACK VAR INJECTION */(function(process) {/**
|
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
|
*
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
var printWarning = function() {};
|
|
|
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
var ReactPropTypesSecret = __webpack_require__(39);
|
|
|
var loggedTypeFailures = {};
|
|
|
|
|
|
printWarning = function(text) {
|
|
|
var message = 'Warning: ' + text;
|
|
|
if (typeof console !== 'undefined') {
|
|
|
console.error(message);
|
|
|
}
|
|
|
try {
|
|
|
// --- Welcome to debugging React ---
|
|
|
// This error was thrown as a convenience so that you can use this stack
|
|
|
// to find the callsite that caused this warning to fire.
|
|
|
throw new Error(message);
|
|
|
} catch (x) {}
|
|
|
};
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* Assert that the values match with the type specs.
|
|
|
* Error messages are memorized and will only be shown once.
|
|
|
*
|
|
|
* @param {object} typeSpecs Map of name to a ReactPropType
|
|
|
* @param {object} values Runtime values that need to be type-checked
|
|
|
* @param {string} location e.g. "prop", "context", "child context"
|
|
|
* @param {string} componentName Name of the component for error messages.
|
|
|
* @param {?Function} getStack Returns the component stack.
|
|
|
* @private
|
|
|
*/
|
|
|
function checkPropTypes(typeSpecs, values, location, componentName, getStack) {
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
for (var typeSpecName in typeSpecs) {
|
|
|
if (typeSpecs.hasOwnProperty(typeSpecName)) {
|
|
|
var error;
|
|
|
// Prop type validation may throw. In case they do, we don't want to
|
|
|
// fail the render phase where it didn't fail before. So we log it.
|
|
|
// After these have been cleaned up, we'll let them throw.
|
|
|
try {
|
|
|
// This is intentionally an invariant that gets caught. It's the same
|
|
|
// behavior as without this statement except with a better message.
|
|
|
if (typeof typeSpecs[typeSpecName] !== 'function') {
|
|
|
var err = Error(
|
|
|
(componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +
|
|
|
'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.'
|
|
|
);
|
|
|
err.name = 'Invariant Violation';
|
|
|
throw err;
|
|
|
}
|
|
|
error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);
|
|
|
} catch (ex) {
|
|
|
error = ex;
|
|
|
}
|
|
|
if (error && !(error instanceof Error)) {
|
|
|
printWarning(
|
|
|
(componentName || 'React class') + ': type specification of ' +
|
|
|
location + ' `' + typeSpecName + '` is invalid; the type checker ' +
|
|
|
'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +
|
|
|
'You may have forgotten to pass an argument to the type checker ' +
|
|
|
'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +
|
|
|
'shape all require an argument).'
|
|
|
)
|
|
|
|
|
|
}
|
|
|
if (error instanceof Error && !(error.message in loggedTypeFailures)) {
|
|
|
// Only monitor this failure once because there tends to be a lot of the
|
|
|
// same error.
|
|
|
loggedTypeFailures[error.message] = true;
|
|
|
|
|
|
var stack = getStack ? getStack() : '';
|
|
|
|
|
|
printWarning(
|
|
|
'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')
|
|
|
);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
module.exports = checkPropTypes;
|
|
|
|
|
|
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(38)))
|
|
|
|
|
|
/***/ }),
|
|
|
/* 123 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/**
|
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
|
*
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
var ReactPropTypesSecret = __webpack_require__(39);
|
|
|
|
|
|
function emptyFunction() {}
|
|
|
|
|
|
module.exports = function() {
|
|
|
function shim(props, propName, componentName, location, propFullName, secret) {
|
|
|
if (secret === ReactPropTypesSecret) {
|
|
|
// It is still safe when called from React.
|
|
|
return;
|
|
|
}
|
|
|
var err = new Error(
|
|
|
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
|
|
|
'Use PropTypes.checkPropTypes() to call them. ' +
|
|
|
'Read more at http://fb.me/use-check-prop-types'
|
|
|
);
|
|
|
err.name = 'Invariant Violation';
|
|
|
throw err;
|
|
|
};
|
|
|
shim.isRequired = shim;
|
|
|
function getShim() {
|
|
|
return shim;
|
|
|
};
|
|
|
// Important!
|
|
|
// Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
|
|
|
var ReactPropTypes = {
|
|
|
array: shim,
|
|
|
bool: shim,
|
|
|
func: shim,
|
|
|
number: shim,
|
|
|
object: shim,
|
|
|
string: shim,
|
|
|
symbol: shim,
|
|
|
|
|
|
any: shim,
|
|
|
arrayOf: getShim,
|
|
|
element: shim,
|
|
|
instanceOf: getShim,
|
|
|
node: shim,
|
|
|
objectOf: getShim,
|
|
|
oneOf: getShim,
|
|
|
oneOfType: getShim,
|
|
|
shape: getShim,
|
|
|
exact: getShim
|
|
|
};
|
|
|
|
|
|
ReactPropTypes.checkPropTypes = emptyFunction;
|
|
|
ReactPropTypes.PropTypes = ReactPropTypes;
|
|
|
|
|
|
return ReactPropTypes;
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
/* 124 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* WEBPACK VAR INJECTION */(function(process) {/**
|
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
|
*
|
|
|
* This source code is licensed under the MIT license found in the
|
|
|
* LICENSE file in the root directory of this source tree.
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
|
|
var assign = __webpack_require__(60);
|
|
|
|
|
|
var ReactPropTypesSecret = __webpack_require__(39);
|
|
|
var checkPropTypes = __webpack_require__(122);
|
|
|
|
|
|
var printWarning = function() {};
|
|
|
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
printWarning = function(text) {
|
|
|
var message = 'Warning: ' + text;
|
|
|
if (typeof console !== 'undefined') {
|
|
|
console.error(message);
|
|
|
}
|
|
|
try {
|
|
|
// --- Welcome to debugging React ---
|
|
|
// This error was thrown as a convenience so that you can use this stack
|
|
|
// to find the callsite that caused this warning to fire.
|
|
|
throw new Error(message);
|
|
|
} catch (x) {}
|
|
|
};
|
|
|
}
|
|
|
|
|
|
function emptyFunctionThatReturnsNull() {
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
module.exports = function(isValidElement, throwOnDirectAccess) {
|
|
|
/* global Symbol */
|
|
|
var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;
|
|
|
var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.
|
|
|
|
|
|
/**
|
|
|
* Returns the iterator method function contained on the iterable object.
|
|
|
*
|
|
|
* Be sure to invoke the function with the iterable as context:
|
|
|
*
|
|
|
* var iteratorFn = getIteratorFn(myIterable);
|
|
|
* if (iteratorFn) {
|
|
|
* var iterator = iteratorFn.call(myIterable);
|
|
|
* ...
|
|
|
* }
|
|
|
*
|
|
|
* @param {?object} maybeIterable
|
|
|
* @return {?function}
|
|
|
*/
|
|
|
function getIteratorFn(maybeIterable) {
|
|
|
var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);
|
|
|
if (typeof iteratorFn === 'function') {
|
|
|
return iteratorFn;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* Collection of methods that allow declaration and validation of props that are
|
|
|
* supplied to React components. Example usage:
|
|
|
*
|
|
|
* var Props = require('ReactPropTypes');
|
|
|
* var MyArticle = React.createClass({
|
|
|
* propTypes: {
|
|
|
* // An optional string prop named "description".
|
|
|
* description: Props.string,
|
|
|
*
|
|
|
* // A required enum prop named "category".
|
|
|
* category: Props.oneOf(['News','Photos']).isRequired,
|
|
|
*
|
|
|
* // A prop named "dialog" that requires an instance of Dialog.
|
|
|
* dialog: Props.instanceOf(Dialog).isRequired
|
|
|
* },
|
|
|
* render: function() { ... }
|
|
|
* });
|
|
|
*
|
|
|
* A more formal specification of how these methods are used:
|
|
|
*
|
|
|
* type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)
|
|
|
* decl := ReactPropTypes.{type}(.isRequired)?
|
|
|
*
|
|
|
* Each and every declaration produces a function with the same signature. This
|
|
|
* allows the creation of custom validation functions. For example:
|
|
|
*
|
|
|
* var MyLink = React.createClass({
|
|
|
* propTypes: {
|
|
|
* // An optional string or URI prop named "href".
|
|
|
* href: function(props, propName, componentName) {
|
|
|
* var propValue = props[propName];
|
|
|
* if (propValue != null && typeof propValue !== 'string' &&
|
|
|
* !(propValue instanceof URI)) {
|
|
|
* return new Error(
|
|
|
* 'Expected a string or an URI for ' + propName + ' in ' +
|
|
|
* componentName
|
|
|
* );
|
|
|
* }
|
|
|
* }
|
|
|
* },
|
|
|
* render: function() {...}
|
|
|
* });
|
|
|
*
|
|
|
* @internal
|
|
|
*/
|
|
|
|
|
|
var ANONYMOUS = '<<anonymous>>';
|
|
|
|
|
|
// Important!
|
|
|
// Keep this list in sync with production version in `./factoryWithThrowingShims.js`.
|
|
|
var ReactPropTypes = {
|
|
|
array: createPrimitiveTypeChecker('array'),
|
|
|
bool: createPrimitiveTypeChecker('boolean'),
|
|
|
func: createPrimitiveTypeChecker('function'),
|
|
|
number: createPrimitiveTypeChecker('number'),
|
|
|
object: createPrimitiveTypeChecker('object'),
|
|
|
string: createPrimitiveTypeChecker('string'),
|
|
|
symbol: createPrimitiveTypeChecker('symbol'),
|
|
|
|
|
|
any: createAnyTypeChecker(),
|
|
|
arrayOf: createArrayOfTypeChecker,
|
|
|
element: createElementTypeChecker(),
|
|
|
instanceOf: createInstanceTypeChecker,
|
|
|
node: createNodeChecker(),
|
|
|
objectOf: createObjectOfTypeChecker,
|
|
|
oneOf: createEnumTypeChecker,
|
|
|
oneOfType: createUnionTypeChecker,
|
|
|
shape: createShapeTypeChecker,
|
|
|
exact: createStrictShapeTypeChecker,
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* inlined Object.is polyfill to avoid requiring consumers ship their own
|
|
|
* https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
|
|
|
*/
|
|
|
/*eslint-disable no-self-compare*/
|
|
|
function is(x, y) {
|
|
|
// SameValue algorithm
|
|
|
if (x === y) {
|
|
|
// Steps 1-5, 7-10
|
|
|
// Steps 6.b-6.e: +0 != -0
|
|
|
return x !== 0 || 1 / x === 1 / y;
|
|
|
} else {
|
|
|
// Step 6.a: NaN == NaN
|
|
|
return x !== x && y !== y;
|
|
|
}
|
|
|
}
|
|
|
/*eslint-enable no-self-compare*/
|
|
|
|
|
|
/**
|
|
|
* We use an Error-like object for backward compatibility as people may call
|
|
|
* PropTypes directly and inspect their output. However, we don't use real
|
|
|
* Errors anymore. We don't inspect their stack anyway, and creating them
|
|
|
* is prohibitively expensive if they are created too often, such as what
|
|
|
* happens in oneOfType() for any type before the one that matched.
|
|
|
*/
|
|
|
function PropTypeError(message) {
|
|
|
this.message = message;
|
|
|
this.stack = '';
|
|
|
}
|
|
|
// Make `instanceof Error` still work for returned errors.
|
|
|
PropTypeError.prototype = Error.prototype;
|
|
|
|
|
|
function createChainableTypeChecker(validate) {
|
|
|
if (process.env.NODE_ENV !== 'production') {
|
|
|
var manualPropTypeCallCache = {};
|
|
|
var manualPropTypeWarningCount = 0;
|
|
|
}
|
|
|
function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {
|
|
|
componentName = componentName || ANONYMOUS;
|
|
|
propFullName = propFullName || propName;
|
|
|
|
|
|
if (secret !== ReactPropTypesSecret) {
|
|
|
if (throwOnDirectAccess) {
|
|
|
// New behavior only for users of `prop-types` package
|
|
|
var err = new Error(
|
|
|
'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
|
|
|
'Use `PropTypes.checkPropTypes()` to call them. ' +
|
|
|
'Read more at http://fb.me/use-check-prop-types'
|
|
|
);
|
|
|
err.name = 'Invariant Violation';
|
|
|
throw err;
|
|
|
} else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {
|
|
|
// Old behavior for people using React.PropTypes
|
|
|
var cacheKey = componentName + ':' + propName;
|
|
|
if (
|
|
|
!manualPropTypeCallCache[cacheKey] &&
|
|
|
// Avoid spamming the console because they are often not actionable except for lib authors
|
|
|
manualPropTypeWarningCount < 3
|
|
|
) {
|
|
|
printWarning(
|
|
|
'You are manually calling a React.PropTypes validation ' +
|
|
|
'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +
|
|
|
'and will throw in the standalone `prop-types` package. ' +
|
|
|
'You may be seeing this warning due to a third-party PropTypes ' +
|
|
|
'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'
|
|
|
);
|
|
|
manualPropTypeCallCache[cacheKey] = true;
|
|
|
manualPropTypeWarningCount++;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (props[propName] == null) {
|
|
|
if (isRequired) {
|
|
|
if (props[propName] === null) {
|
|
|
return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));
|
|
|
}
|
|
|
return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));
|
|
|
}
|
|
|
return null;
|
|
|
} else {
|
|
|
return validate(props, propName, componentName, location, propFullName);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var chainedCheckType = checkType.bind(null, false);
|
|
|
chainedCheckType.isRequired = checkType.bind(null, true);
|
|
|
|
|
|
return chainedCheckType;
|
|
|
}
|
|
|
|
|
|
function createPrimitiveTypeChecker(expectedType) {
|
|
|
function validate(props, propName, componentName, location, propFullName, secret) {
|
|
|
var propValue = props[propName];
|
|
|
var propType = getPropType(propValue);
|
|
|
if (propType !== expectedType) {
|
|
|
// `propValue` being instance of, say, date/regexp, pass the 'object'
|
|
|
// check, but we can offer a more precise error message here rather than
|
|
|
// 'of type `object`'.
|
|
|
var preciseType = getPreciseType(propValue);
|
|
|
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'));
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createAnyTypeChecker() {
|
|
|
return createChainableTypeChecker(emptyFunctionThatReturnsNull);
|
|
|
}
|
|
|
|
|
|
function createArrayOfTypeChecker(typeChecker) {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
if (typeof typeChecker !== 'function') {
|
|
|
return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');
|
|
|
}
|
|
|
var propValue = props[propName];
|
|
|
if (!Array.isArray(propValue)) {
|
|
|
var propType = getPropType(propValue);
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));
|
|
|
}
|
|
|
for (var i = 0; i < propValue.length; i++) {
|
|
|
var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);
|
|
|
if (error instanceof Error) {
|
|
|
return error;
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createElementTypeChecker() {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
var propValue = props[propName];
|
|
|
if (!isValidElement(propValue)) {
|
|
|
var propType = getPropType(propValue);
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createInstanceTypeChecker(expectedClass) {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
if (!(props[propName] instanceof expectedClass)) {
|
|
|
var expectedClassName = expectedClass.name || ANONYMOUS;
|
|
|
var actualClassName = getClassName(props[propName]);
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createEnumTypeChecker(expectedValues) {
|
|
|
if (!Array.isArray(expectedValues)) {
|
|
|
process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOf, expected an instance of array.') : void 0;
|
|
|
return emptyFunctionThatReturnsNull;
|
|
|
}
|
|
|
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
var propValue = props[propName];
|
|
|
for (var i = 0; i < expectedValues.length; i++) {
|
|
|
if (is(propValue, expectedValues[i])) {
|
|
|
return null;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
var valuesString = JSON.stringify(expectedValues);
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + propValue + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createObjectOfTypeChecker(typeChecker) {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
if (typeof typeChecker !== 'function') {
|
|
|
return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');
|
|
|
}
|
|
|
var propValue = props[propName];
|
|
|
var propType = getPropType(propValue);
|
|
|
if (propType !== 'object') {
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));
|
|
|
}
|
|
|
for (var key in propValue) {
|
|
|
if (propValue.hasOwnProperty(key)) {
|
|
|
var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
|
|
|
if (error instanceof Error) {
|
|
|
return error;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createUnionTypeChecker(arrayOfTypeCheckers) {
|
|
|
if (!Array.isArray(arrayOfTypeCheckers)) {
|
|
|
process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;
|
|
|
return emptyFunctionThatReturnsNull;
|
|
|
}
|
|
|
|
|
|
for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
|
|
|
var checker = arrayOfTypeCheckers[i];
|
|
|
if (typeof checker !== 'function') {
|
|
|
printWarning(
|
|
|
'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +
|
|
|
'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'
|
|
|
);
|
|
|
return emptyFunctionThatReturnsNull;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
for (var i = 0; i < arrayOfTypeCheckers.length; i++) {
|
|
|
var checker = arrayOfTypeCheckers[i];
|
|
|
if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) {
|
|
|
return null;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`.'));
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createNodeChecker() {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
if (!isNode(props[propName])) {
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createShapeTypeChecker(shapeTypes) {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
var propValue = props[propName];
|
|
|
var propType = getPropType(propValue);
|
|
|
if (propType !== 'object') {
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
|
|
|
}
|
|
|
for (var key in shapeTypes) {
|
|
|
var checker = shapeTypes[key];
|
|
|
if (!checker) {
|
|
|
continue;
|
|
|
}
|
|
|
var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
|
|
|
if (error) {
|
|
|
return error;
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function createStrictShapeTypeChecker(shapeTypes) {
|
|
|
function validate(props, propName, componentName, location, propFullName) {
|
|
|
var propValue = props[propName];
|
|
|
var propType = getPropType(propValue);
|
|
|
if (propType !== 'object') {
|
|
|
return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));
|
|
|
}
|
|
|
// We need to check all keys in case some are required but missing from
|
|
|
// props.
|
|
|
var allKeys = assign({}, props[propName], shapeTypes);
|
|
|
for (var key in allKeys) {
|
|
|
var checker = shapeTypes[key];
|
|
|
if (!checker) {
|
|
|
return new PropTypeError(
|
|
|
'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +
|
|
|
'\nBad object: ' + JSON.stringify(props[propName], null, ' ') +
|
|
|
'\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')
|
|
|
);
|
|
|
}
|
|
|
var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);
|
|
|
if (error) {
|
|
|
return error;
|
|
|
}
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
|
|
|
return createChainableTypeChecker(validate);
|
|
|
}
|
|
|
|
|
|
function isNode(propValue) {
|
|
|
switch (typeof propValue) {
|
|
|
case 'number':
|
|
|
case 'string':
|
|
|
case 'undefined':
|
|
|
return true;
|
|
|
case 'boolean':
|
|
|
return !propValue;
|
|
|
case 'object':
|
|
|
if (Array.isArray(propValue)) {
|
|
|
return propValue.every(isNode);
|
|
|
}
|
|
|
if (propValue === null || isValidElement(propValue)) {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
var iteratorFn = getIteratorFn(propValue);
|
|
|
if (iteratorFn) {
|
|
|
var iterator = iteratorFn.call(propValue);
|
|
|
var step;
|
|
|
if (iteratorFn !== propValue.entries) {
|
|
|
while (!(step = iterator.next()).done) {
|
|
|
if (!isNode(step.value)) {
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
// Iterator will provide entry [k,v] tuples rather than values.
|
|
|
while (!(step = iterator.next()).done) {
|
|
|
var entry = step.value;
|
|
|
if (entry) {
|
|
|
if (!isNode(entry[1])) {
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
return true;
|
|
|
default:
|
|
|
return false;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function isSymbol(propType, propValue) {
|
|
|
// Native Symbol.
|
|
|
if (propType === 'symbol') {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
// 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'
|
|
|
if (propValue['@@toStringTag'] === 'Symbol') {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
// Fallback for non-spec compliant Symbols which are polyfilled.
|
|
|
if (typeof Symbol === 'function' && propValue instanceof Symbol) {
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
// Equivalent of `typeof` but with special handling for array and regexp.
|
|
|
function getPropType(propValue) {
|
|
|
var propType = typeof propValue;
|
|
|
if (Array.isArray(propValue)) {
|
|
|
return 'array';
|
|
|
}
|
|
|
if (propValue instanceof RegExp) {
|
|
|
// Old webkits (at least until Android 4.0) return 'function' rather than
|
|
|
// 'object' for typeof a RegExp. We'll normalize this here so that /bla/
|
|
|
// passes PropTypes.object.
|
|
|
return 'object';
|
|
|
}
|
|
|
if (isSymbol(propType, propValue)) {
|
|
|
return 'symbol';
|
|
|
}
|
|
|
return propType;
|
|
|
}
|
|
|
|
|
|
// This handles more types than `getPropType`. Only used for error messages.
|
|
|
// See `createPrimitiveTypeChecker`.
|
|
|
function getPreciseType(propValue) {
|
|
|
if (typeof propValue === 'undefined' || propValue === null) {
|
|
|
return '' + propValue;
|
|
|
}
|
|
|
var propType = getPropType(propValue);
|
|
|
if (propType === 'object') {
|
|
|
if (propValue instanceof Date) {
|
|
|
return 'date';
|
|
|
} else if (propValue instanceof RegExp) {
|
|
|
return 'regexp';
|
|
|
}
|
|
|
}
|
|
|
return propType;
|
|
|
}
|
|
|
|
|
|
// Returns a string that is postfixed to a warning about an invalid type.
|
|
|
// For example, "undefined" or "of type array"
|
|
|
function getPostfixForTypeWarning(value) {
|
|
|
var type = getPreciseType(value);
|
|
|
switch (type) {
|
|
|
case 'array':
|
|
|
case 'object':
|
|
|
return 'an ' + type;
|
|
|
case 'boolean':
|
|
|
case 'date':
|
|
|
case 'regexp':
|
|
|
return 'a ' + type;
|
|
|
default:
|
|
|
return type;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// Returns class name of the object, if any.
|
|
|
function getClassName(propValue) {
|
|
|
if (!propValue.constructor || !propValue.constructor.name) {
|
|
|
return ANONYMOUS;
|
|
|
}
|
|
|
return propValue.constructor.name;
|
|
|
}
|
|
|
|
|
|
ReactPropTypes.checkPropTypes = checkPropTypes;
|
|
|
ReactPropTypes.PropTypes = ReactPropTypes;
|
|
|
|
|
|
return ReactPropTypes;
|
|
|
};
|
|
|
|
|
|
/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(38)))
|
|
|
|
|
|
/***/ }),
|
|
|
/* 125 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__ = __webpack_require__(17);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty__ = __webpack_require__(76);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types__ = __webpack_require__(61);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_7_prop_types__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__ = __webpack_require__(127);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__AnimateChild__ = __webpack_require__(126);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__util_animate__ = __webpack_require__(62);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var defaultKey = 'rc_animate_' + Date.now();
|
|
|
|
|
|
function getChildrenFromProps(props) {
|
|
|
var children = props.children;
|
|
|
if (__WEBPACK_IMPORTED_MODULE_6_react___default.a.isValidElement(children)) {
|
|
|
if (!children.key) {
|
|
|
return __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement(children, {
|
|
|
key: defaultKey
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
return children;
|
|
|
}
|
|
|
|
|
|
function noop() {}
|
|
|
|
|
|
var Animate = function (_React$Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_5_babel_runtime_helpers_inherits___default()(Animate, _React$Component);
|
|
|
|
|
|
// eslint-disable-line
|
|
|
|
|
|
function Animate(props) {
|
|
|
__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_classCallCheck___default()(this, Animate);
|
|
|
|
|
|
var _this = __WEBPACK_IMPORTED_MODULE_4_babel_runtime_helpers_possibleConstructorReturn___default()(this, (Animate.__proto__ || Object.getPrototypeOf(Animate)).call(this, props));
|
|
|
|
|
|
_initialiseProps.call(_this);
|
|
|
|
|
|
_this.currentlyAnimatingKeys = {};
|
|
|
_this.keysToEnter = [];
|
|
|
_this.keysToLeave = [];
|
|
|
|
|
|
_this.state = {
|
|
|
children: __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* toArrayChildren */])(getChildrenFromProps(props))
|
|
|
};
|
|
|
|
|
|
_this.childrenRefs = {};
|
|
|
return _this;
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_createClass___default()(Animate, [{
|
|
|
key: 'componentDidMount',
|
|
|
value: function componentDidMount() {
|
|
|
var _this2 = this;
|
|
|
|
|
|
var showProp = this.props.showProp;
|
|
|
var children = this.state.children;
|
|
|
if (showProp) {
|
|
|
children = children.filter(function (child) {
|
|
|
return !!child.props[showProp];
|
|
|
});
|
|
|
}
|
|
|
children.forEach(function (child) {
|
|
|
if (child) {
|
|
|
_this2.performAppear(child.key);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillReceiveProps',
|
|
|
value: function componentWillReceiveProps(nextProps) {
|
|
|
var _this3 = this;
|
|
|
|
|
|
this.nextProps = nextProps;
|
|
|
var nextChildren = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* toArrayChildren */])(getChildrenFromProps(nextProps));
|
|
|
var props = this.props;
|
|
|
// exclusive needs immediate response
|
|
|
if (props.exclusive) {
|
|
|
Object.keys(this.currentlyAnimatingKeys).forEach(function (key) {
|
|
|
_this3.stop(key);
|
|
|
});
|
|
|
}
|
|
|
var showProp = props.showProp;
|
|
|
var currentlyAnimatingKeys = this.currentlyAnimatingKeys;
|
|
|
// last props children if exclusive
|
|
|
var currentChildren = props.exclusive ? __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* toArrayChildren */])(getChildrenFromProps(props)) : this.state.children;
|
|
|
// in case destroy in showProp mode
|
|
|
var newChildren = [];
|
|
|
if (showProp) {
|
|
|
currentChildren.forEach(function (currentChild) {
|
|
|
var nextChild = currentChild && __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findChildInChildrenByKey */])(nextChildren, currentChild.key);
|
|
|
var newChild = void 0;
|
|
|
if ((!nextChild || !nextChild.props[showProp]) && currentChild.props[showProp]) {
|
|
|
newChild = __WEBPACK_IMPORTED_MODULE_6_react___default.a.cloneElement(nextChild || currentChild, __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_defineProperty___default()({}, showProp, true));
|
|
|
} else {
|
|
|
newChild = nextChild;
|
|
|
}
|
|
|
if (newChild) {
|
|
|
newChildren.push(newChild);
|
|
|
}
|
|
|
});
|
|
|
nextChildren.forEach(function (nextChild) {
|
|
|
if (!nextChild || !__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findChildInChildrenByKey */])(currentChildren, nextChild.key)) {
|
|
|
newChildren.push(nextChild);
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
newChildren = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["c" /* mergeChildren */])(currentChildren, nextChildren);
|
|
|
}
|
|
|
|
|
|
// need render to avoid update
|
|
|
this.setState({
|
|
|
children: newChildren
|
|
|
});
|
|
|
|
|
|
nextChildren.forEach(function (child) {
|
|
|
var key = child && child.key;
|
|
|
if (child && currentlyAnimatingKeys[key]) {
|
|
|
return;
|
|
|
}
|
|
|
var hasPrev = child && __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findChildInChildrenByKey */])(currentChildren, key);
|
|
|
if (showProp) {
|
|
|
var showInNext = child.props[showProp];
|
|
|
if (hasPrev) {
|
|
|
var showInNow = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["d" /* findShownChildInChildrenByKey */])(currentChildren, key, showProp);
|
|
|
if (!showInNow && showInNext) {
|
|
|
_this3.keysToEnter.push(key);
|
|
|
}
|
|
|
} else if (showInNext) {
|
|
|
_this3.keysToEnter.push(key);
|
|
|
}
|
|
|
} else if (!hasPrev) {
|
|
|
_this3.keysToEnter.push(key);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
currentChildren.forEach(function (child) {
|
|
|
var key = child && child.key;
|
|
|
if (child && currentlyAnimatingKeys[key]) {
|
|
|
return;
|
|
|
}
|
|
|
var hasNext = child && __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findChildInChildrenByKey */])(nextChildren, key);
|
|
|
if (showProp) {
|
|
|
var showInNow = child.props[showProp];
|
|
|
if (hasNext) {
|
|
|
var showInNext = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["d" /* findShownChildInChildrenByKey */])(nextChildren, key, showProp);
|
|
|
if (!showInNext && showInNow) {
|
|
|
_this3.keysToLeave.push(key);
|
|
|
}
|
|
|
} else if (showInNow) {
|
|
|
_this3.keysToLeave.push(key);
|
|
|
}
|
|
|
} else if (!hasNext) {
|
|
|
_this3.keysToLeave.push(key);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentDidUpdate',
|
|
|
value: function componentDidUpdate() {
|
|
|
var keysToEnter = this.keysToEnter;
|
|
|
this.keysToEnter = [];
|
|
|
keysToEnter.forEach(this.performEnter);
|
|
|
var keysToLeave = this.keysToLeave;
|
|
|
this.keysToLeave = [];
|
|
|
keysToLeave.forEach(this.performLeave);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'isValidChildByKey',
|
|
|
value: function isValidChildByKey(currentChildren, key) {
|
|
|
var showProp = this.props.showProp;
|
|
|
if (showProp) {
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["d" /* findShownChildInChildrenByKey */])(currentChildren, key, showProp);
|
|
|
}
|
|
|
return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["b" /* findChildInChildrenByKey */])(currentChildren, key);
|
|
|
}
|
|
|
}, {
|
|
|
key: 'stop',
|
|
|
value: function stop(key) {
|
|
|
delete this.currentlyAnimatingKeys[key];
|
|
|
var component = this.childrenRefs[key];
|
|
|
if (component) {
|
|
|
component.stop();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
var _this4 = this;
|
|
|
|
|
|
var props = this.props;
|
|
|
this.nextProps = props;
|
|
|
var stateChildren = this.state.children;
|
|
|
var children = null;
|
|
|
if (stateChildren) {
|
|
|
children = stateChildren.map(function (child) {
|
|
|
if (child === null || child === undefined) {
|
|
|
return child;
|
|
|
}
|
|
|
if (!child.key) {
|
|
|
throw new Error('must set key for <rc-animate> children');
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
|
|
|
__WEBPACK_IMPORTED_MODULE_9__AnimateChild__["a" /* default */],
|
|
|
{
|
|
|
key: child.key,
|
|
|
ref: function ref(node) {
|
|
|
_this4.childrenRefs[child.key] = node;
|
|
|
},
|
|
|
animation: props.animation,
|
|
|
transitionName: props.transitionName,
|
|
|
transitionEnter: props.transitionEnter,
|
|
|
transitionAppear: props.transitionAppear,
|
|
|
transitionLeave: props.transitionLeave
|
|
|
},
|
|
|
child
|
|
|
);
|
|
|
});
|
|
|
}
|
|
|
var Component = props.component;
|
|
|
if (Component) {
|
|
|
var passedProps = props;
|
|
|
if (typeof Component === 'string') {
|
|
|
passedProps = __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_extends___default()({
|
|
|
className: props.className,
|
|
|
style: props.style
|
|
|
}, props.componentProps);
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_6_react___default.a.createElement(
|
|
|
Component,
|
|
|
passedProps,
|
|
|
children
|
|
|
);
|
|
|
}
|
|
|
return children[0] || null;
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return Animate;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_6_react___default.a.Component);
|
|
|
|
|
|
Animate.isAnimate = true;
|
|
|
Animate.propTypes = {
|
|
|
component: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.any,
|
|
|
componentProps: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object,
|
|
|
animation: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object,
|
|
|
transitionName: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.oneOfType([__WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string, __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.object]),
|
|
|
transitionEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,
|
|
|
transitionAppear: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,
|
|
|
exclusive: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,
|
|
|
transitionLeave: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.bool,
|
|
|
onEnd: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func,
|
|
|
onEnter: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func,
|
|
|
onLeave: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func,
|
|
|
onAppear: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.func,
|
|
|
showProp: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.string,
|
|
|
children: __WEBPACK_IMPORTED_MODULE_7_prop_types___default.a.node
|
|
|
};
|
|
|
Animate.defaultProps = {
|
|
|
animation: {},
|
|
|
component: 'span',
|
|
|
componentProps: {},
|
|
|
transitionEnter: true,
|
|
|
transitionLeave: true,
|
|
|
transitionAppear: false,
|
|
|
onEnd: noop,
|
|
|
onEnter: noop,
|
|
|
onLeave: noop,
|
|
|
onAppear: noop
|
|
|
};
|
|
|
|
|
|
var _initialiseProps = function _initialiseProps() {
|
|
|
var _this5 = this;
|
|
|
|
|
|
this.performEnter = function (key) {
|
|
|
// may already remove by exclusive
|
|
|
if (_this5.childrenRefs[key]) {
|
|
|
_this5.currentlyAnimatingKeys[key] = true;
|
|
|
_this5.childrenRefs[key].componentWillEnter(_this5.handleDoneAdding.bind(_this5, key, 'enter'));
|
|
|
}
|
|
|
};
|
|
|
|
|
|
this.performAppear = function (key) {
|
|
|
if (_this5.childrenRefs[key]) {
|
|
|
_this5.currentlyAnimatingKeys[key] = true;
|
|
|
_this5.childrenRefs[key].componentWillAppear(_this5.handleDoneAdding.bind(_this5, key, 'appear'));
|
|
|
}
|
|
|
};
|
|
|
|
|
|
this.handleDoneAdding = function (key, type) {
|
|
|
var props = _this5.props;
|
|
|
delete _this5.currentlyAnimatingKeys[key];
|
|
|
// if update on exclusive mode, skip check
|
|
|
if (props.exclusive && props !== _this5.nextProps) {
|
|
|
return;
|
|
|
}
|
|
|
var currentChildren = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* toArrayChildren */])(getChildrenFromProps(props));
|
|
|
if (!_this5.isValidChildByKey(currentChildren, key)) {
|
|
|
// exclusive will not need this
|
|
|
_this5.performLeave(key);
|
|
|
} else if (type === 'appear') {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowAppearCallback(props)) {
|
|
|
props.onAppear(key);
|
|
|
props.onEnd(key, true);
|
|
|
}
|
|
|
} else if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowEnterCallback(props)) {
|
|
|
props.onEnter(key);
|
|
|
props.onEnd(key, true);
|
|
|
}
|
|
|
};
|
|
|
|
|
|
this.performLeave = function (key) {
|
|
|
// may already remove by exclusive
|
|
|
if (_this5.childrenRefs[key]) {
|
|
|
_this5.currentlyAnimatingKeys[key] = true;
|
|
|
_this5.childrenRefs[key].componentWillLeave(_this5.handleDoneLeaving.bind(_this5, key));
|
|
|
}
|
|
|
};
|
|
|
|
|
|
this.handleDoneLeaving = function (key) {
|
|
|
var props = _this5.props;
|
|
|
delete _this5.currentlyAnimatingKeys[key];
|
|
|
// if update on exclusive mode, skip check
|
|
|
if (props.exclusive && props !== _this5.nextProps) {
|
|
|
return;
|
|
|
}
|
|
|
var currentChildren = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["a" /* toArrayChildren */])(getChildrenFromProps(props));
|
|
|
// in case state change is too fast
|
|
|
if (_this5.isValidChildByKey(currentChildren, key)) {
|
|
|
_this5.performEnter(key);
|
|
|
} else {
|
|
|
var end = function end() {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_10__util_animate__["a" /* default */].allowLeaveCallback(props)) {
|
|
|
props.onLeave(key);
|
|
|
props.onEnd(key, false);
|
|
|
}
|
|
|
};
|
|
|
if (!__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_8__ChildrenUtils__["e" /* isSameChildren */])(_this5.state.children, currentChildren, props.showProp)) {
|
|
|
_this5.setState({
|
|
|
children: currentChildren
|
|
|
}, end);
|
|
|
} else {
|
|
|
end();
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (Animate);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 126 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__ = __webpack_require__(3);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__ = __webpack_require__(4);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__ = __webpack_require__(6);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__ = __webpack_require__(5);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_4_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_dom__ = __webpack_require__(16);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_5_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_5_react_dom__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types__ = __webpack_require__(61);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_6_prop_types___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_6_prop_types__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_7_css_animation__ = __webpack_require__(113);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__util_animate__ = __webpack_require__(62);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var transitionMap = {
|
|
|
enter: 'transitionEnter',
|
|
|
appear: 'transitionAppear',
|
|
|
leave: 'transitionLeave'
|
|
|
};
|
|
|
|
|
|
var AnimateChild = function (_React$Component) {
|
|
|
__WEBPACK_IMPORTED_MODULE_3_babel_runtime_helpers_inherits___default()(AnimateChild, _React$Component);
|
|
|
|
|
|
function AnimateChild() {
|
|
|
__WEBPACK_IMPORTED_MODULE_0_babel_runtime_helpers_classCallCheck___default()(this, AnimateChild);
|
|
|
|
|
|
return __WEBPACK_IMPORTED_MODULE_2_babel_runtime_helpers_possibleConstructorReturn___default()(this, (AnimateChild.__proto__ || Object.getPrototypeOf(AnimateChild)).apply(this, arguments));
|
|
|
}
|
|
|
|
|
|
__WEBPACK_IMPORTED_MODULE_1_babel_runtime_helpers_createClass___default()(AnimateChild, [{
|
|
|
key: 'componentWillUnmount',
|
|
|
value: function componentWillUnmount() {
|
|
|
this.stop();
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillEnter',
|
|
|
value: function componentWillEnter(done) {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_8__util_animate__["a" /* default */].isEnterSupported(this.props)) {
|
|
|
this.transition('enter', done);
|
|
|
} else {
|
|
|
done();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillAppear',
|
|
|
value: function componentWillAppear(done) {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_8__util_animate__["a" /* default */].isAppearSupported(this.props)) {
|
|
|
this.transition('appear', done);
|
|
|
} else {
|
|
|
done();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillLeave',
|
|
|
value: function componentWillLeave(done) {
|
|
|
if (__WEBPACK_IMPORTED_MODULE_8__util_animate__["a" /* default */].isLeaveSupported(this.props)) {
|
|
|
this.transition('leave', done);
|
|
|
} else {
|
|
|
// always sync, do not interupt with react component life cycle
|
|
|
// update hidden -> animate hidden ->
|
|
|
// didUpdate -> animate leave -> unmount (if animate is none)
|
|
|
done();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'transition',
|
|
|
value: function transition(animationType, finishCallback) {
|
|
|
var _this2 = this;
|
|
|
|
|
|
var node = __WEBPACK_IMPORTED_MODULE_5_react_dom___default.a.findDOMNode(this);
|
|
|
var props = this.props;
|
|
|
var transitionName = props.transitionName;
|
|
|
var nameIsObj = typeof transitionName === 'object';
|
|
|
this.stop();
|
|
|
var end = function end() {
|
|
|
_this2.stopper = null;
|
|
|
finishCallback();
|
|
|
};
|
|
|
if ((__WEBPACK_IMPORTED_MODULE_7_css_animation__["a" /* isCssAnimationSupported */] || !props.animation[animationType]) && transitionName && props[transitionMap[animationType]]) {
|
|
|
var name = nameIsObj ? transitionName[animationType] : transitionName + '-' + animationType;
|
|
|
var activeName = name + '-active';
|
|
|
if (nameIsObj && transitionName[animationType + 'Active']) {
|
|
|
activeName = transitionName[animationType + 'Active'];
|
|
|
}
|
|
|
this.stopper = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_7_css_animation__["b" /* default */])(node, {
|
|
|
name: name,
|
|
|
active: activeName
|
|
|
}, end);
|
|
|
} else {
|
|
|
this.stopper = props.animation[animationType](node, end);
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'stop',
|
|
|
value: function stop() {
|
|
|
var stopper = this.stopper;
|
|
|
if (stopper) {
|
|
|
this.stopper = null;
|
|
|
stopper.stop();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
return this.props.children;
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return AnimateChild;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_4_react___default.a.Component);
|
|
|
|
|
|
AnimateChild.propTypes = {
|
|
|
children: __WEBPACK_IMPORTED_MODULE_6_prop_types___default.a.any
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (AnimateChild);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 127 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = toArrayChildren;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["b"] = findChildInChildrenByKey;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["d"] = findShownChildInChildrenByKey;
|
|
|
/* unused harmony export findHiddenChildInChildrenByKey */
|
|
|
/* harmony export (immutable) */ __webpack_exports__["e"] = isSameChildren;
|
|
|
/* harmony export (immutable) */ __webpack_exports__["c"] = mergeChildren;
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);
|
|
|
|
|
|
|
|
|
function toArrayChildren(children) {
|
|
|
var ret = [];
|
|
|
__WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.forEach(children, function (child) {
|
|
|
ret.push(child);
|
|
|
});
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function findChildInChildrenByKey(children, key) {
|
|
|
var ret = null;
|
|
|
if (children) {
|
|
|
children.forEach(function (child) {
|
|
|
if (ret) {
|
|
|
return;
|
|
|
}
|
|
|
if (child && child.key === key) {
|
|
|
ret = child;
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function findShownChildInChildrenByKey(children, key, showProp) {
|
|
|
var ret = null;
|
|
|
if (children) {
|
|
|
children.forEach(function (child) {
|
|
|
if (child && child.key === key && child.props[showProp]) {
|
|
|
if (ret) {
|
|
|
throw new Error('two child with same key for <rc-animate> children');
|
|
|
}
|
|
|
ret = child;
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
function findHiddenChildInChildrenByKey(children, key, showProp) {
|
|
|
var found = 0;
|
|
|
if (children) {
|
|
|
children.forEach(function (child) {
|
|
|
if (found) {
|
|
|
return;
|
|
|
}
|
|
|
found = child && child.key === key && !child.props[showProp];
|
|
|
});
|
|
|
}
|
|
|
return found;
|
|
|
}
|
|
|
|
|
|
function isSameChildren(c1, c2, showProp) {
|
|
|
var same = c1.length === c2.length;
|
|
|
if (same) {
|
|
|
c1.forEach(function (child, index) {
|
|
|
var child2 = c2[index];
|
|
|
if (child && child2) {
|
|
|
if (child && !child2 || !child && child2) {
|
|
|
same = false;
|
|
|
} else if (child.key !== child2.key) {
|
|
|
same = false;
|
|
|
} else if (showProp && child.props[showProp] !== child2.props[showProp]) {
|
|
|
same = false;
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
return same;
|
|
|
}
|
|
|
|
|
|
function mergeChildren(prev, next) {
|
|
|
var ret = [];
|
|
|
|
|
|
// For each key of `next`, the list of keys to insert before that key in
|
|
|
// the combined list
|
|
|
var nextChildrenPending = {};
|
|
|
var pendingChildren = [];
|
|
|
prev.forEach(function (child) {
|
|
|
if (child && findChildInChildrenByKey(next, child.key)) {
|
|
|
if (pendingChildren.length) {
|
|
|
nextChildrenPending[child.key] = pendingChildren;
|
|
|
pendingChildren = [];
|
|
|
}
|
|
|
} else {
|
|
|
pendingChildren.push(child);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
next.forEach(function (child) {
|
|
|
if (child && Object.prototype.hasOwnProperty.call(nextChildrenPending, child.key)) {
|
|
|
ret = ret.concat(nextChildrenPending[child.key]);
|
|
|
}
|
|
|
ret.push(child);
|
|
|
});
|
|
|
|
|
|
ret = ret.concat(pendingChildren);
|
|
|
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 128 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = addEventListenerWrap;
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_add_dom_event_listener__ = __webpack_require__(40);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_add_dom_event_listener___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_add_dom_event_listener__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_dom__ = __webpack_require__(16);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react_dom__);
|
|
|
|
|
|
|
|
|
|
|
|
function addEventListenerWrap(target, eventType, cb, option) {
|
|
|
/* eslint camelcase: 2 */
|
|
|
var callback = __WEBPACK_IMPORTED_MODULE_1_react_dom___default.a.unstable_batchedUpdates ? function run(e) {
|
|
|
__WEBPACK_IMPORTED_MODULE_1_react_dom___default.a.unstable_batchedUpdates(cb, e);
|
|
|
} : cb;
|
|
|
return __WEBPACK_IMPORTED_MODULE_0_add_dom_event_listener___default()(target, eventType, callback, option);
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 129 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
|
value: true
|
|
|
});
|
|
|
exports['default'] = addEventListenerWrap;
|
|
|
|
|
|
var _addDomEventListener = __webpack_require__(40);
|
|
|
|
|
|
var _addDomEventListener2 = _interopRequireDefault(_addDomEventListener);
|
|
|
|
|
|
var _reactDom = __webpack_require__(16);
|
|
|
|
|
|
var _reactDom2 = _interopRequireDefault(_reactDom);
|
|
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
|
|
|
|
|
|
function addEventListenerWrap(target, eventType, cb, option) {
|
|
|
/* eslint camelcase: 2 */
|
|
|
var callback = _reactDom2['default'].unstable_batchedUpdates ? function run(e) {
|
|
|
_reactDom2['default'].unstable_batchedUpdates(cb, e);
|
|
|
} : cb;
|
|
|
return (0, _addDomEventListener2['default'])(target, eventType, callback, option);
|
|
|
}
|
|
|
module.exports = exports['default'];
|
|
|
|
|
|
/***/ }),
|
|
|
/* 130 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
|
value: true
|
|
|
});
|
|
|
exports["default"] = contains;
|
|
|
function contains(root, n) {
|
|
|
var node = n;
|
|
|
while (node) {
|
|
|
if (node === root) {
|
|
|
return true;
|
|
|
}
|
|
|
node = node.parentNode;
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
}
|
|
|
module.exports = exports['default'];
|
|
|
|
|
|
/***/ }),
|
|
|
/* 131 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(0);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_dom__ = __webpack_require__(16);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_1_react_dom___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1_react_dom__);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_2_dom_align__ = __webpack_require__(119);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_3_rc_util_es_Dom_addEventListener__ = __webpack_require__(128);
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__isWindow__ = __webpack_require__(133);
|
|
|
var _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; }; }();
|
|
|
|
|
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
|
|
|
|
function _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; }
|
|
|
|
|
|
function _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; }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function buffer(fn, ms) {
|
|
|
var timer = void 0;
|
|
|
function clear() {
|
|
|
if (timer) {
|
|
|
clearTimeout(timer);
|
|
|
timer = null;
|
|
|
}
|
|
|
}
|
|
|
function bufferFn() {
|
|
|
clear();
|
|
|
timer = setTimeout(fn, ms);
|
|
|
}
|
|
|
bufferFn.clear = clear;
|
|
|
return bufferFn;
|
|
|
}
|
|
|
|
|
|
var Align = function (_Component) {
|
|
|
_inherits(Align, _Component);
|
|
|
|
|
|
function Align() {
|
|
|
_classCallCheck(this, Align);
|
|
|
|
|
|
var _this = _possibleConstructorReturn(this, (Align.__proto__ || Object.getPrototypeOf(Align)).apply(this, arguments));
|
|
|
|
|
|
_this.forceAlign = function () {
|
|
|
var props = _this.props;
|
|
|
if (!props.disabled) {
|
|
|
var source = __WEBPACK_IMPORTED_MODULE_1_react_dom___default.a.findDOMNode(_this);
|
|
|
props.onAlign(source, __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_2_dom_align__["a" /* default */])(source, props.target(), props.align));
|
|
|
}
|
|
|
};
|
|
|
return _this;
|
|
|
}
|
|
|
|
|
|
_createClass(Align, [{
|
|
|
key: 'componentDidMount',
|
|
|
value: function componentDidMount() {
|
|
|
var props = this.props;
|
|
|
this.forceAlign();
|
|
|
if (!props.disabled && props.monitorWindowResize) {
|
|
|
this.startMonitorWindowResize();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentDidUpdate',
|
|
|
value: function componentDidUpdate(prevProps) {
|
|
|
var reAlign = false;
|
|
|
var props = this.props;
|
|
|
if (!props.disabled) {
|
|
|
if (prevProps.disabled || prevProps.align !== props.align) {
|
|
|
reAlign = true;
|
|
|
} else {
|
|
|
var lastTarget = prevProps.target();
|
|
|
var currentTarget = props.target();
|
|
|
if (__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__isWindow__["a" /* default */])(lastTarget) && __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__isWindow__["a" /* default */])(currentTarget)) {
|
|
|
reAlign = false;
|
|
|
} else if (lastTarget !== currentTarget) {
|
|
|
reAlign = true;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (reAlign) {
|
|
|
this.forceAlign();
|
|
|
}
|
|
|
if (props.monitorWindowResize && !props.disabled) {
|
|
|
this.startMonitorWindowResize();
|
|
|
} else {
|
|
|
this.stopMonitorWindowResize();
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'componentWillUnmount',
|
|
|
value: function componentWillUnmount() {
|
|
|
this.stopMonitorWindowResize();
|
|
|
}
|
|
|
}, {
|
|
|
key: 'startMonitorWindowResize',
|
|
|
value: function startMonitorWindowResize() {
|
|
|
if (!this.resizeHandler) {
|
|
|
this.bufferMonitor = buffer(this.forceAlign, this.props.monitorBufferTime);
|
|
|
this.resizeHandler = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3_rc_util_es_Dom_addEventListener__["a" /* default */])(window, 'resize', this.bufferMonitor);
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'stopMonitorWindowResize',
|
|
|
value: function stopMonitorWindowResize() {
|
|
|
if (this.resizeHandler) {
|
|
|
this.bufferMonitor.clear();
|
|
|
this.resizeHandler.remove();
|
|
|
this.resizeHandler = null;
|
|
|
}
|
|
|
}
|
|
|
}, {
|
|
|
key: 'render',
|
|
|
value: function render() {
|
|
|
var _props = this.props,
|
|
|
childrenProps = _props.childrenProps,
|
|
|
children = _props.children;
|
|
|
|
|
|
var child = __WEBPACK_IMPORTED_MODULE_0_react___default.a.Children.only(children);
|
|
|
if (childrenProps) {
|
|
|
var newProps = {};
|
|
|
for (var prop in childrenProps) {
|
|
|
if (childrenProps.hasOwnProperty(prop)) {
|
|
|
newProps[prop] = this.props[childrenProps[prop]];
|
|
|
}
|
|
|
}
|
|
|
return __WEBPACK_IMPORTED_MODULE_0_react___default.a.cloneElement(child, newProps);
|
|
|
}
|
|
|
return child;
|
|
|
}
|
|
|
}]);
|
|
|
|
|
|
return Align;
|
|
|
}(__WEBPACK_IMPORTED_MODULE_0_react__["Component"]);
|
|
|
|
|
|
Align.defaultProps = {
|
|
|
target: function target() {
|
|
|
return window;
|
|
|
},
|
|
|
onAlign: function onAlign() {},
|
|
|
monitorBufferTime: 50,
|
|
|
monitorWindowResize: false,
|
|
|
disabled: false
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (Align);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 132 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__Align__ = __webpack_require__(131);
|
|
|
// export this package's api
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__["a"] = (__WEBPACK_IMPORTED_MODULE_0__Align__["a" /* default */]);
|
|
|
|
|
|
/***/ }),
|
|
|
/* 133 */
|
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export (immutable) */ __webpack_exports__["a"] = isWindow;
|
|
|
/* eslint no-eq-null: 0 */
|
|
|
/* eslint eqeqeq: 0 */
|
|
|
/* tslint:disable:triple-equals */
|
|
|
function isWindow(obj) {
|
|
|
return obj != null && obj == obj.window;
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
/* 134 */
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
__webpack_require__(63);
|
|
|
module.exports = __webpack_require__(64);
|
|
|
|
|
|
|
|
|
/***/ })
|
|
|
/******/ ]);
|
|
|
});
|
|
|
//# sourceMappingURL=rmc-trigger.js.map
|