UNPKG

react-css-transition

Version:
1,143 lines (1,030 loc) 141 kB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("react")); else if(typeof define === 'function' && define.amd) define(["react"], factory); else if(typeof exports === 'object') exports["ReactCSSTransition"] = factory(require("react")); else root["ReactCSSTransition"] = factory(root["React"]); })(this, function(__WEBPACK_EXTERNAL_MODULE_2__) { 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 = 77); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__combine__ = __webpack_require__(7); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__utils_resolveValue__ = __webpack_require__(5); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return lazyLoadCallback; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return propsCallback; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return stateCallback; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return childContextCallback; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return skipCallback; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return renderCallback; }); /* unused harmony export componentWillMountCallback */ /* unused harmony export componentDidMountCallback */ /* unused harmony export componentWillUnmountCallback */ /* unused harmony export componentWillReceivePropsCallback */ /* unused harmony export shouldComponentUpdateCallback */ /* unused harmony export componentWillUpdateCallback */ /* unused harmony export componentDidUpdateCallback */ /* harmony export (immutable) */ __webpack_exports__["g"] = createBlueprint; var lazyLoadCallback = function (callback) { return ({ kind: "lazyLoadCallback", callback: callback }); }; var propsCallback = function (callback) { return ({ kind: "propsCallback", callback: callback }); }; var stateCallback = function (callback) { return ({ kind: "stateCallback", callback: callback }); }; var childContextCallback = function (callback) { return ({ kind: "childContextCallback", callback: callback }); }; var skipCallback = function (callback) { return ({ kind: "skipCallback", callback: callback }); }; var renderCallback = function (callback) { return ({ kind: "renderCallback", callback: callback }); }; var componentWillMountCallback = function (callback) { return ({ kind: "componentWillMountCallback", callback: callback }); }; var componentDidMountCallback = function (callback) { return ({ kind: "componentDidMountCallback", callback: callback }); }; var componentWillUnmountCallback = function (callback) { return ({ kind: "componentWillUnmountCallback", callback: callback }); }; var componentWillReceivePropsCallback = function (callback) { return ({ kind: "componentWillReceivePropsCallback", callback: callback }); }; var shouldComponentUpdateCallback = function (callback) { return ({ kind: "shouldComponentUpdateCallback", callback: callback }); }; var componentWillUpdateCallback = function (callback) { return ({ kind: "componentWillUpdateCallback", callback: callback }); }; var componentDidUpdateCallback = function (callback) { return ({ kind: "componentDidUpdateCallback", callback: callback }); }; function createBlueprint() { var composables = []; for (var _i = 0; _i < arguments.length; _i++) { composables[_i] = arguments[_i]; } var componentCallbacks = __WEBPACK_IMPORTED_MODULE_0__combine__["a" /* default */].apply(void 0, composables); return { staticCallbacks: componentCallbacks.filter(function (c) { return c.staticCallback; }).map(function (c) { return c.staticCallback; }), instanceCallbacks: function () { var result = []; componentCallbacks.forEach(function (c) { if (!c.instanceCallbacks) { return; } var instanceCallbacks = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_1__utils_resolveValue__["a" /* default */])(c.instanceCallbacks); if (!instanceCallbacks) { return; } result.push.apply(result, instanceCallbacks); }); return result; }, }; } //# sourceMappingURL=blueprint.js.map /***/ }), /* 1 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__assemble__ = __webpack_require__(16); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "c", function() { return __WEBPACK_IMPORTED_MODULE_0__assemble__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__blueprint__ = __webpack_require__(0); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__combine__ = __webpack_require__(7); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "j", function() { return __WEBPACK_IMPORTED_MODULE_2__combine__["b"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__compose__ = __webpack_require__(43); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__debug__ = __webpack_require__(44); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_5__defaultProps__ = __webpack_require__(45); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "a", function() { return __WEBPACK_IMPORTED_MODULE_5__defaultProps__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_6__flattenProp__ = __webpack_require__(46); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_7__setStatic__ = __webpack_require__(8); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_8__setDisplayName__ = __webpack_require__(62); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "d", function() { return __WEBPACK_IMPORTED_MODULE_8__setDisplayName__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_9__setPropTypes__ = __webpack_require__(63); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_10__wrapDisplayName__ = __webpack_require__(76); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_11__mapProps__ = __webpack_require__(4); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_12__omitProps__ = __webpack_require__(50); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "b", function() { return __WEBPACK_IMPORTED_MODULE_12__omitProps__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_13__getContext__ = __webpack_require__(47); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_14__branch__ = __webpack_require__(42); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_15__isolate__ = __webpack_require__(49); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "e", function() { return __WEBPACK_IMPORTED_MODULE_15__isolate__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_16__integrate__ = __webpack_require__(48); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "i", function() { return __WEBPACK_IMPORTED_MODULE_16__integrate__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_17__noOp__ = __webpack_require__(17); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_18__renameProp__ = __webpack_require__(59); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_19__renameProps__ = __webpack_require__(60); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_20__withContext__ = __webpack_require__(70); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_21__withHandlers__ = __webpack_require__(71); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "f", function() { return __WEBPACK_IMPORTED_MODULE_21__withHandlers__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_22__withProps__ = __webpack_require__(72); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "k", function() { return __WEBPACK_IMPORTED_MODULE_22__withProps__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_23__withPropsOnChange__ = __webpack_require__(73); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_24__withState__ = __webpack_require__(75); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "m", function() { return __WEBPACK_IMPORTED_MODULE_24__withState__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_25__withReducer__ = __webpack_require__(74); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_26__onWillMount__ = __webpack_require__(53); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_27__onDidMount__ = __webpack_require__(51); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "n", function() { return __WEBPACK_IMPORTED_MODULE_27__onDidMount__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_28__onWillUnmount__ = __webpack_require__(55); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "l", function() { return __WEBPACK_IMPORTED_MODULE_28__onWillUnmount__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_29__onWillReceiveProps__ = __webpack_require__(54); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "g", function() { return __WEBPACK_IMPORTED_MODULE_29__onWillReceiveProps__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_30__onWillUpdate__ = __webpack_require__(56); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_31__onDidUpdate__ = __webpack_require__(52); /* harmony namespace reexport (by used) */ __webpack_require__.d(__webpack_exports__, "h", function() { return __WEBPACK_IMPORTED_MODULE_31__onDidUpdate__["a"]; }); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_32__shouldUpdate__ = __webpack_require__(9); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_33__toClass__ = __webpack_require__(64); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_34__pure__ = __webpack_require__(58); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_35__onlyUpdateForKeys__ = __webpack_require__(57); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_36__renderComponent__ = __webpack_require__(18); /* unused harmony namespace reexport */ /* harmony import */ var __WEBPACK_IMPORTED_MODULE_37__renderNothing__ = __webpack_require__(61); /* unused harmony namespace reexport */ //# sourceMappingURL=index.js.map /***/ }), /* 2 */ /***/ (function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE_2__; /***/ }), /* 3 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__blueprint__ = __webpack_require__(0); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return createSimpleLifecycle; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createComparingLifecycle; }); var createSimpleLifecycle = function (kind, callback) { return ({ instanceCallbacks: [{ kind: kind, callback: function (props) { return function () { return callback(props); }; } }] }); }; var createComparingLifecycle = function (kind, callback) { return ({ instanceCallbacks: function () { var prevProps; return [ __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__blueprint__["b" /* propsCallback */])(function (props) { if (prevProps === undefined) { prevProps = props; } return props; }), { kind: kind, callback: function (props) { return function () { var prevPropsTmp = prevProps; prevProps = props; var result = callback(prevPropsTmp, props); return result; }; }, }, ]; }, }); }; //# sourceMappingURL=lifecycle.js.map /***/ }), /* 4 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__blueprint__ = __webpack_require__(0); /* unused harmony export mapProps */ function mapProps(propsMapper) { return { instanceCallbacks: [ __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__blueprint__["b" /* propsCallback */])(function (props) { return (propsMapper(props)); }), ], }; } /* harmony default export */ __webpack_exports__["a"] = mapProps; //# sourceMappingURL=mapProps.js.map /***/ }), /* 5 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export resolveValue */ function resolveValue(valueOrCallback) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } return typeof valueOrCallback === "function" ? (_a = valueOrCallback).call.apply(_a, [null].concat(args)) : valueOrCallback; var _a; } /* harmony default export */ __webpack_exports__["a"] = resolveValue; //# sourceMappingURL=resolveValue.js.map /***/ }), /* 6 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export pick */ function pick(obj) { var keys = []; for (var _i = 1; _i < arguments.length; _i++) { keys[_i - 1] = arguments[_i]; } var result = {}; for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (obj.hasOwnProperty(key)) { result[key] = obj[key]; } } return result; } ; /* harmony default export */ __webpack_exports__["a"] = pick; //# sourceMappingURL=pick.js.map /***/ }), /* 7 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (immutable) */ __webpack_exports__["b"] = combine; function combine() { var composables = []; for (var _i = 0; _i < arguments.length; _i++) { composables[_i] = arguments[_i]; } var callbacks = []; composables.forEach(function (composable) { if (Array.isArray(composable)) { callbacks.push.apply(callbacks, composable); } else { callbacks.push(composable); } }); return callbacks; } /* harmony default export */ __webpack_exports__["a"] = combine; //# sourceMappingURL=combine.js.map /***/ }), /* 8 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export setStatic */ function setStatic(key, value) { return { staticCallback: function (componentClass) { componentClass[key] = value; }, }; } /* harmony default export */ __webpack_exports__["a"] = setStatic; //# sourceMappingURL=setStatic.js.map /***/ }), /* 9 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__lifecycle__ = __webpack_require__(3); /* unused harmony export shouldUpdate */ function shouldUpdate(callback) { return __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__lifecycle__["a" /* createComparingLifecycle */])("shouldComponentUpdateCallback", callback); } /* harmony default export */ __webpack_exports__["a"] = shouldUpdate; //# sourceMappingURL=shouldUpdate.js.map /***/ }), /* 10 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export getKeysAndSymbols */ var keys = Object.keys, getOwnPropertySymbols = Object.getOwnPropertySymbols; var getKeysAndSymbols = function (obj) { var result = keys(obj); if (getOwnPropertySymbols !== undefined) { result = result.concat(getOwnPropertySymbols(obj)); } return result; }; /* harmony default export */ __webpack_exports__["a"] = getKeysAndSymbols; //# sourceMappingURL=getKeysAndSymbols.js.map /***/ }), /* 11 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export omit */ var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; function omit(obj) { var keys = []; for (var _i = 1; _i < arguments.length; _i++) { keys[_i - 1] = arguments[_i]; } var result = __assign({}, obj); for (var i = 0; i < keys.length; i++) { var key = keys[i]; if (obj.hasOwnProperty(key)) { delete result[key]; } } return result; } ; /* harmony default export */ __webpack_exports__["a"] = omit; //# sourceMappingURL=omit.js.map /***/ }), /* 12 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_shallowEqual__ = __webpack_require__(38); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_shallowEqual___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_fbjs_lib_shallowEqual__); /* unused harmony reexport shallowEqual */ /* harmony default export */ __webpack_exports__["a"] = __WEBPACK_IMPORTED_MODULE_0_fbjs_lib_shallowEqual__; //# sourceMappingURL=shallowEqual.js.map /***/ }), /* 13 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__utils_convertToCSSPrefix__ = __webpack_require__(30); /* harmony export (immutable) */ __webpack_exports__["a"] = transit; /* harmony export (immutable) */ __webpack_exports__["b"] = resolveTransit; var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; ; function transit(value, duration, timing, delay) { var ret = [value]; ret.transitParams = { duration: duration, timing: timing || "ease", delay: delay !== undefined ? delay : 0, }; return ret; } var nonWebkitPrefixRegexp = /^-(moz|ms|o)-/; function resolveTransit(style, extraDelay) { if (extraDelay === void 0) { extraDelay = 0; } var transitionList = []; var propertyList = []; var processedStyle = __assign({}, style); for (var property in style) { var val = style[property]; if (Array.isArray(val) && val.transitParams) { var _a = val.transitParams, duration = _a.duration, timing = _a.timing, delay = _a.delay; var name_1 = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__utils_convertToCSSPrefix__["a" /* default */])(property); var transition = name_1 + " " + duration + "ms " + timing + " " + (delay + extraDelay) + "ms"; transitionList.push(transition); propertyList.push(name_1); processedStyle[property] = val[0]; } } if (transitionList.length > 0) { processedStyle.transition = transitionList.join(", "); processedStyle.WebkitTransition = transitionList. filter(function (item, i) { return !propertyList[i].match(nonWebkitPrefixRegexp) && propertyList.indexOf("-webkit-" + propertyList[i]) < 0; }). join(", "); } return processedStyle; } /***/ }), /* 14 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0__transit__ = __webpack_require__(13); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return StateID; }); /* unused harmony export StateIDList */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return ActionID; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return actionPropKeys; }); /* unused harmony export transitionNames */ /* unused harmony export hasTransition */ /* unused harmony export getDelay */ /* unused harmony export getState */ /* unused harmony export stateFunc */ /* unused harmony export activeNewState */ /* unused harmony export defaultNewState */ /* unused harmony export appearNewState */ /* unused harmony export activeState */ /* unused harmony export defaultState */ /* unused harmony export appearInitState */ /* unused harmony export enterInitState */ /* unused harmony export leaveInitState */ /* unused harmony export appearPrepareState */ /* unused harmony export enterPrepareState */ /* unused harmony export leavePrepareState */ /* unused harmony export appearTriggeredState */ /* unused harmony export enterTriggeredState */ /* unused harmony export leaveTriggeredState */ /* unused harmony export appearStartedState */ /* unused harmony export enterStartedState */ /* unused harmony export leaveStartedState */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return reducer; }); /* tslint:disable: variable-name no-switch-case-fall-through */ var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; var StateID; (function (StateID) { StateID[StateID["EntryPoint"] = 0] = "EntryPoint"; StateID[StateID["DefaultNew"] = 1] = "DefaultNew"; StateID[StateID["ActiveNew"] = 2] = "ActiveNew"; StateID[StateID["AppearNew"] = 3] = "AppearNew"; StateID[StateID["Default"] = 4] = "Default"; StateID[StateID["Active"] = 5] = "Active"; StateID[StateID["AppearInit"] = 6] = "AppearInit"; StateID[StateID["AppearPrepare"] = 7] = "AppearPrepare"; StateID[StateID["AppearTriggered"] = 8] = "AppearTriggered"; StateID[StateID["AppearStarted"] = 9] = "AppearStarted"; StateID[StateID["EnterInit"] = 10] = "EnterInit"; StateID[StateID["EnterPrepare"] = 11] = "EnterPrepare"; StateID[StateID["EnterTriggered"] = 12] = "EnterTriggered"; StateID[StateID["EnterStarted"] = 13] = "EnterStarted"; StateID[StateID["LeaveInit"] = 14] = "LeaveInit"; StateID[StateID["LeavePrepare"] = 15] = "LeavePrepare"; StateID[StateID["LeaveTriggered"] = 16] = "LeaveTriggered"; StateID[StateID["LeaveStarted"] = 17] = "LeaveStarted"; })(StateID || (StateID = {})); var StateIDList = [ StateID.ActiveNew, StateID.DefaultNew, StateID.AppearNew, StateID.Active, StateID.Default, StateID.AppearInit, StateID.AppearTriggered, StateID.AppearStarted, StateID.EnterInit, StateID.EnterTriggered, StateID.EnterStarted, StateID.LeaveInit, StateID.LeaveTriggered, StateID.LeaveStarted, StateID.AppearPrepare, StateID.EnterPrepare, StateID.LeavePrepare, ]; var ActionID; (function (ActionID) { ActionID[ActionID["New"] = 0] = "New"; ActionID[ActionID["Mount"] = 1] = "Mount"; ActionID[ActionID["TransitionInit"] = 2] = "TransitionInit"; ActionID[ActionID["TransitionPrepare"] = 3] = "TransitionPrepare"; ActionID[ActionID["TransitionTrigger"] = 4] = "TransitionTrigger"; ActionID[ActionID["TransitionStart"] = 5] = "TransitionStart"; ActionID[ActionID["TransitionComplete"] = 6] = "TransitionComplete"; ActionID[ActionID["Timeout"] = 7] = "Timeout"; })(ActionID || (ActionID = {})); var actionPropKeys = [ "active", "transitionAppear", "transitionDelay", "defaultStyle", "activeStyle", "appearStyle", "enterStyle", "leaveStyle", "appearInitStyle", "enterInitStyle", "leaveInitStyle", "defaultClassName", "activeClassName", "appearClassName", "enterClassName", "leaveClassName", "appearInitClassName", "enterInitClassName", "leaveInitClassName", ]; var transitionNames = ["enter", "leave", "appear"]; function hasTransition(name, props) { var result = props[name + "Style"] !== undefined || props[name + "ClassName"] !== undefined; return !result && name === "appear" ? hasTransition("enter", props) : result; } function getDelay(name, delay) { if (!delay) { return 0; } if (typeof delay === "number") { return delay; } return delay[name] ? delay[name] : 0; } function getState(id, name, props, params) { if (params === void 0) { params = {}; } if (name === "appear" && !props.appearStyle && !props.appearClassName) { return getState(id, "enter", props, params); } var style; var className; var inTransition = false; if (params.mode === "init" || params.mode === "prepare") { style = props[name + "InitStyle"]; className = props[name + "InitClassName"]; if (style === undefined && className === undefined) { if (name === "enter" || name === "appear") { style = props.defaultStyle; className = props.defaultClassName; } else if (name === "leave") { style = props.activeStyle; className = props.activeClassName; } } // Setting transition before starting one fixes issues on IE & Edge... if (params.mode === "prepare" && style !== undefined) { var tmp = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__transit__["b" /* resolveTransit */])(props[name + "Style"], getDelay(name, props.transitionDelay)); if (tmp.transition) { style = __assign({}, style, { transition: tmp.transition }); } } } else { style = props[name + "Style"]; className = props[name + "ClassName"]; if (["enter", "appear", "leave"].indexOf(name) >= 0) { inTransition = true; style = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__transit__["b" /* resolveTransit */])(style, getDelay(name, props.transitionDelay)); } } style = style || {}; className = className || ""; return { id: id, style: style, className: className, inTransition: inTransition, }; } function stateFunc(id, name, params) { if (params === void 0) { params = {}; } return function (props) { return getState(id, name, props, params); }; } var activeNewState = stateFunc(StateID.ActiveNew, "active"); var defaultNewState = stateFunc(StateID.DefaultNew, "default"); var appearNewState = stateFunc(StateID.AppearNew, "appear", { mode: "init" }); var activeState = stateFunc(StateID.Active, "active"); var defaultState = stateFunc(StateID.Default, "default"); var appearInitState = stateFunc(StateID.AppearInit, "appear", { mode: "init" }); var enterInitState = stateFunc(StateID.EnterInit, "enter", { mode: "init" }); var leaveInitState = stateFunc(StateID.LeaveInit, "leave", { mode: "init" }); var appearPrepareState = stateFunc(StateID.AppearPrepare, "appear", { mode: "prepare" }); var enterPrepareState = stateFunc(StateID.EnterPrepare, "enter", { mode: "prepare" }); var leavePrepareState = stateFunc(StateID.LeavePrepare, "leave", { mode: "prepare" }); var appearTriggeredState = stateFunc(StateID.AppearTriggered, "appear"); var enterTriggeredState = stateFunc(StateID.EnterTriggered, "enter"); var leaveTriggeredState = stateFunc(StateID.LeaveTriggered, "leave"); var appearStartedState = stateFunc(StateID.AppearStarted, "appear"); var enterStartedState = stateFunc(StateID.EnterStarted, "enter"); var leaveStartedState = stateFunc(StateID.LeaveStarted, "leave"); var invalidTransitionError = function (stateID, actionID) { return new Error("invalid state transition from " + StateID[stateID] + " with " + ActionID[actionID]); }; var reducer = function (stateID, action) { var props = action.props; var nextState; switch (action.kind) { case ActionID.New: if (stateID !== StateID.EntryPoint) { throw new Error("invalid entrypoint"); } if (props.active) { if (props.transitionAppear) { return { state: appearNewState(props) }; } return { state: activeNewState(props) }; } if (!props.transitionAppear && props.active) { return { state: activeNewState(props) }; } return { state: defaultNewState(props) }; case ActionID.Mount: switch (stateID) { case StateID.AppearNew: return reducer(stateID, { kind: ActionID.TransitionTrigger, props: props }); default: return null; } case ActionID.TransitionInit: switch (stateID) { case StateID.DefaultNew: case StateID.Default: if (!hasTransition("enter", props)) { return { state: activeState(props), completed: true }; } nextState = enterInitState(props); break; case StateID.ActiveNew: case StateID.Active: if (!hasTransition("leave", props)) { return { state: defaultState(props), completed: true }; } nextState = leaveInitState(props); break; case StateID.AppearNew: if (!hasTransition("appear", props)) { return { state: activeState(props), completed: true }; } nextState = appearInitState(props); break; default: throw invalidTransitionError(stateID, action.kind); } ; return { state: nextState, pending: ActionID.TransitionPrepare }; case ActionID.TransitionPrepare: switch (stateID) { case StateID.EnterInit: if (!props.active) { return { state: defaultState(props), completed: true }; } nextState = enterPrepareState(props); break; case StateID.LeaveInit: if (props.active) { return { state: activeState(props), completed: true }; } nextState = leavePrepareState(props); break; case StateID.AppearInit: if (!props.active) { return { state: defaultState(props), completed: true }; } nextState = appearPrepareState(props); break; default: throw invalidTransitionError(stateID, action.kind); } ; return { state: nextState, pending: ActionID.TransitionTrigger }; case ActionID.TransitionStart: switch (stateID) { case StateID.EnterTriggered: return { state: enterStartedState(props) }; case StateID.LeaveTriggered: return { state: leaveStartedState(props) }; case StateID.AppearTriggered: return { state: appearStartedState(props) }; default: // We don't error out, because the workaround for transitionstart // could happen after transitionend. return null; } case ActionID.TransitionComplete: switch (stateID) { case StateID.AppearTriggered: case StateID.AppearStarted: case StateID.EnterTriggered: case StateID.EnterStarted: return { state: activeState(props), completed: true }; case StateID.LeaveTriggered: case StateID.LeaveStarted: return { state: defaultState(props), completed: true }; default: throw invalidTransitionError(stateID, action.kind); } case ActionID.TransitionTrigger: switch (stateID) { case StateID.ActiveNew: case StateID.Active: case StateID.DefaultNew: case StateID.Default: case StateID.AppearNew: return reducer(stateID, { kind: ActionID.TransitionInit, props: props }); case StateID.EnterInit: return { state: defaultState(props), completed: true }; case StateID.LeaveInit: return { state: activeState(props), completed: true }; case StateID.AppearInit: return { state: defaultState(props), completed: true }; case StateID.EnterPrepare: if (props.active) { return { state: enterTriggeredState(props) }; } return { state: defaultState(props), completed: true }; case StateID.LeavePrepare: if (!props.active) { return { state: leaveTriggeredState(props) }; } return { state: activeState(props), completed: true }; case StateID.AppearPrepare: if (props.active) { return { state: appearTriggeredState(props) }; } return { state: defaultState(props), completed: true }; case StateID.EnterTriggered: return { state: defaultState(props), completed: true }; case StateID.LeaveTriggered: return { state: activeState(props), completed: true }; case StateID.AppearTriggered: return { state: defaultState(props), completed: true }; case StateID.AppearStarted: case StateID.EnterStarted: return { state: leaveStartedState(props) }; case StateID.LeaveStarted: return { state: enterStartedState(props) }; default: throw invalidTransitionError(stateID, action.kind); } case ActionID.Timeout: switch (stateID) { case StateID.AppearTriggered: case StateID.AppearStarted: case StateID.EnterTriggered: case StateID.EnterStarted: return { state: activeState(props), completed: true }; case StateID.LeaveTriggered: case StateID.LeaveStarted: return { state: defaultState(props), completed: true }; default: throw invalidTransitionError(stateID, action.kind); } default: } throw new Error("unexpected error"); }; /***/ }), /* 15 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export parseDuration */ function parseDuration(duration) { var parsed = parseFloat(duration); if (duration.match(/ms$/)) { return parsed; } return parsed * 1000; } /* harmony default export */ __webpack_exports__["a"] = parseDuration; /***/ }), /* 16 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react__ = __webpack_require__(2); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_react___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_react__); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_1__blueprint__ = __webpack_require__(0); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_2__utils_getDisplayName__ = __webpack_require__(19); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_3__utils_getUniqueKey__ = __webpack_require__(65); /* harmony import */ var __WEBPACK_IMPORTED_MODULE_4__utils_isReferentiallyTransparentFunctionComponent__ = __webpack_require__(67); /* harmony export (immutable) */ __webpack_exports__["a"] = assemble; var __extends = (this && this.__extends) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; var hasWillReceivePropsCallback = function (e) { return e.kind === "componentWillReceivePropsCallback"; }; var AssemblyBase = (function (_super) { __extends(AssemblyBase, _super); function AssemblyBase(blueprint, target, isReferentiallyTransparent, props, context) { var _this = _super.call(this, props, context) || this; _this.pendingDataUpdate = false; _this.newestState = {}; _this.unmounted = false; _this.newestProps = props; _this.newestContext = context; _this.isReferentiallyTransparent = isReferentiallyTransparent; _this.target = target; _this.callbackList = blueprint.instanceCallbacks(); _this.hasWillReceivePropsCallback = _this.callbackList.some(hasWillReceivePropsCallback); _this.computed = _this.runInstanceCallbacks({ props: props, context: context, component: _this.target }); _this.state = _this.newestState; return _this; } AssemblyBase.prototype.getChildContext = function () { return this.computed.childContext; }; AssemblyBase.prototype.componentWillMount = function () { return this.runLifeCycleCallbacks("componentWillMountCallback"); }; AssemblyBase.prototype.componentDidMount = function () { return this.runLifeCycleCallbacks("componentDidMountCallback"); }; AssemblyBase.prototype.componentWillUnmount = function () { this.unmounted = true; return this.runLifeCycleCallbacks("componentWillUnmountCallback"); }; AssemblyBase.prototype.componentWillUpdate = function () { return this.runLifeCycleCallbacks("componentWillUpdateCallback"); }; AssemblyBase.prototype.componentDidUpdate = function () { return this.runLifeCycleCallbacks("componentDidUpdateCallback"); }; AssemblyBase.prototype.componentWillReceiveProps = function (nextProps, nextContext) { this.newestProps = nextProps; this.newestContext = nextContext; this.handleDataUpdate({ props: nextProps, context: nextContext, component: this.target, }); }; AssemblyBase.prototype.shouldComponentUpdate = function (nextProps, nextState, nextContext) { if (this.state !== nextState && !this.hasWillReceivePropsCallback) { // State based props was not computed before, do it now. this.handleDataUpdate({ props: nextProps, context: nextContext, component: this.target, }); } var callbacks = this.computed.lifeCycleCallbacks.shouldComponentUpdateCallback; if (callbacks) { for (var i = 0; i < callbacks.length; i++) { if (!callbacks[i]()) { return false; } } } return true; }; AssemblyBase.prototype.render = function () { var _a = this.computed, Component = _a.component, props = _a.props; if (!Component) { return null; } if (Component === this.target && this.isReferentiallyTransparent || __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_4__utils_isReferentiallyTransparentFunctionComponent__["a" /* default */])(Component)) { return Component(props); } return __WEBPACK_IMPORTED_MODULE_0_react__["createElement"](Component, __assign({}, props)); }; AssemblyBase.prototype.runLifeCycleCallbacks = function (name) { var callbacks = this.computed.lifeCycleCallbacks[name]; if (callbacks) { callbacks.forEach(function (cb) { return cb(); }); } }; AssemblyBase.prototype.applyStateDiff = function (stateDiff) { this.newestState = __assign({}, this.newestState, stateDiff); }; AssemblyBase.prototype.setStateWithLifeCycle = function (stateDiff, callback, init, startAt) { if (init === void 0) { init = this.defaultInit; } if (startAt === void 0) { startAt = 0; } if (this.pendingDataUpdate) { // we are in the middle of a data update. if (!this.pendingDataUpdate.dirty || startAt < this.pendingDataUpdate.startAt) { this.pendingDataUpdate.dirty = true; this.pendingDataUpdate.init = init; this.pendingDataUpdate.startAt = startAt; } if (callback) { this.pendingDataUpdate.callbacks.push(callback); } this.applyStateDiff(stateDiff); } else if (this.hasWillReceivePropsCallback) { // runs callbacks with the new state which will run the `componentWillReceiveProps` lifecycle this.handleDataUpdate(init, startAt, stateDiff, callback); } else { // state changes are batched and props will be recalculated in `shouldComponentUpdate`. this.applyStateDiff(stateDiff); this.setState(this.newestState, callback); } }; Object.defineProperty(AssemblyBase.prototype, "defaultInit", { get: function () { return { props: this.newestProps, context: this.newestContext, component: this.target, }; }, enumerable: true, configurable: true }); AssemblyBase.prototype.handleDataUpdate = function (init, startAt, stateDiff, callback) { if (init === void 0) { init = this.defaultInit; } if (startAt === void 0) { startAt = 0; } if (stateDiff === void 0) { stateDiff = {}; } if (callback === void 0) { callback = null; } var oldState = this.newestState; if (stateDiff) { this.applyStateDiff(stateDiff); } this.pendingDataUpdate = { callbacks: callback ? [callback] : [] }; this.computed = this.runInstanceCallbacks(init, startAt); var callbacks = this.pendingDataUpdate.callbacks; this.pendingDataUpdate = null; if (this.newestState !== oldState) { // Component could be unmounted because something during the lifecycle call can // cause a parent component to unmount this before it completed its data update. if (!this.unmounted) { this.setState(this.newestState, function () { return callbacks.forEach(function (cb) { return cb(); }); }); } } }; AssemblyBase.prototype.runInstanceCallbacks = function (init, startAt) { var _this = this; if (startAt === void 0) { startAt = 0; } var interim = __assign({}, init); if (!interim.lifeCycleCallbacks) { interim.lifeCycleCallbacks = {}; } var _loop_1 = function (idx) { var entry = this_1.callbackList[idx]; switch (entry.kind) { case "propsCallback": interim.props = entry.callback(interim.props, this_1.newestState, interim.context); break; case "stateCallback": { var sc_1 = entry; if (this_1.hasWillReceivePropsCallback) { sc_1.init = __assign({}, interim); sc_1.startAt = idx; } if (!sc_1.called) { sc_1.called = true; var initState = function (name, value) { var unique = __webpack_require__.i(__WEBPACK_IMPORTED_MODULE_3__utils_getUniqueKey__["a" /* default */])(name, _this.newestState); _this.applyStateDiff((_a = {}, _a[unique] = value, _a)); var updater = function (val, callback) { _this.setStateWithLifeCycle((_a = {}, _a[unique] = val, _a), callback, sc_1.init, sc_1.startAt); var _a; }; return { name: unique, updater: updater }; var _a; }; entry.callback(initState, interim.props, this_1.newestState, interim.context); } } break; case "childContextCallback": interim.childContext = entry.callback(interim.childContext, interim.props, this_1.newestState, interim.context); break; case "skipCallback": idx += entry.callback(interim.props, this_1.newestState, interim.context); break; case "renderCallback": interim.component = entry.callback(interim.component, interim.props, this_1.newestState, interim.context); break; case "lazyLoadCallback": var list = entry.callback(interim.props, this_1.newestState,