mobx-react.umd.js 11 KB

12
  1. !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("mobx"),require("react"),require("react-dom"),require("mobx-react-lite")):"function"==typeof define&&define.amd?define(["exports","mobx","react","react-dom","mobx-react-lite"],r):r((e=e||self).mobxReact={},e.mobx,e.React,e.ReactDOM,e.mobxReactLite)}(this,(function(e,r,t,n,o){"use strict";var i="default"in t?t.default:t,a=0,c={};function u(e){return c[e]||(c[e]=function(e){if("function"==typeof Symbol)return Symbol(e);var r="__$mobx-react "+e+" ("+a+")";return a++,r}(e)),c[e]}function s(e,r){if(f(e,r))return!0;if("object"!=typeof e||null===e||"object"!=typeof r||null===r)return!1;var t=Object.keys(e),n=Object.keys(r);if(t.length!==n.length)return!1;for(var o=0;o<t.length;o++)if(!Object.hasOwnProperty.call(r,t[o])||!f(e[t[o]],r[t[o]]))return!1;return!0}function f(e,r){return e===r?0!==e||1/e==1/r:e!=e&&r!=r}var l={$$typeof:1,render:1,compare:1,type:1,childContextTypes:1,contextType:1,contextTypes:1,defaultProps:1,getDefaultProps:1,getDerivedStateFromError:1,getDerivedStateFromProps:1,mixins:1,propTypes:1};function p(e,r,t){Object.hasOwnProperty.call(e,r)?e[r]=t:Object.defineProperty(e,r,{enumerable:!1,configurable:!0,writable:!0,value:t})}var b=u("patchMixins"),d=u("patchedDefinition");function y(e,r){for(var t=this,n=arguments.length,o=new Array(n>2?n-2:0),i=2;i<n;i++)o[i-2]=arguments[i];r.locks++;try{var a;return null!=e&&(a=e.apply(this,o)),a}finally{r.locks--,0===r.locks&&r.methods.forEach((function(e){e.apply(t,o)}))}}function m(e,r){return function(){for(var t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];y.call.apply(y,[this,e,r].concat(n))}}function v(e,r,t){var n=function(e,r){var t=e[b]=e[b]||{},n=t[r]=t[r]||{};return n.locks=n.locks||0,n.methods=n.methods||[],n}(e,r);n.methods.indexOf(t)<0&&n.methods.push(t);var o=Object.getOwnPropertyDescriptor(e,r);if(!o||!o[d]){var i=function e(r,t,n,o,i){var a,c=m(i,o);return(a={})[d]=!0,a.get=function(){return c},a.set=function(i){if(this===r)c=m(i,o);else{var a=e(this,t,n,o,i);Object.defineProperty(this,t,a)}},a.configurable=!0,a.enumerable=n,a}(e,r,o?o.enumerable:void 0,n,e[r]);Object.defineProperty(e,r,i)}}var h=r.$mobx||"$mobx",O=u("isUnmounted"),g=u("skipRender"),w=u("isForcingUpdate");function j(e){var r=e.prototype;if(r.componentWillReact)throw new Error("The componentWillReact life-cycle event is no longer supported");if(e.__proto__!==t.PureComponent)if(r.shouldComponentUpdate){if(r.shouldComponentUpdate!==x)throw new Error("It is not allowed to use shouldComponentUpdate in observer based components.")}else r.shouldComponentUpdate=x;R(r,"props"),R(r,"state");var n=r.render;return r.render=function(){return P.call(this,n)},v(r,"componentWillUnmount",(function(){!0!==o.isUsingStaticRendering()&&(this.render[h]&&this.render[h].dispose(),this[O]=!0)})),e}function P(e){var n=this;if(!0===o.isUsingStaticRendering())return e.call(this);p(this,g,!1),p(this,w,!1);var i=this.displayName||this.name||this.constructor&&(this.constructor.displayName||this.constructor.name)||"<component>",a=e.bind(this),c=!1,u=new r.Reaction(i+".render()",(function(){if(!c&&(c=!0,!0!==n[O])){var e=!0;try{p(n,w,!0),n[g]||t.Component.prototype.forceUpdate.call(n),e=!1}finally{p(n,w,!1),e&&u.dispose()}}}));function s(){c=!1;var e=void 0,t=void 0;if(u.track((function(){try{t=r._allowStateChanges(!1,a)}catch(r){e=r}})),e)throw e;return t}return u.reactComponent=this,s[h]=u,this.render=s,s.call(this)}function x(e,r){return o.isUsingStaticRendering()&&console.warn("[mobx-react] It seems that a re-rendering of a React component is triggered while in static (server-side) mode. Please make sure components are rendered only once server-side."),this.state!==r||!s(this.props,e)}function R(e,t){var n=u("reactProp_"+t+"_valueHolder"),o=u("reactProp_"+t+"_atomHolder");function i(){return this[o]||p(this,o,r.createAtom("reactive "+t)),this[o]}Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:function(){var e=!1;return r._allowStateReadsStart&&r._allowStateReadsEnd&&(e=r._allowStateReadsStart(!0)),i.call(this).reportObserved(),r._allowStateReadsStart&&r._allowStateReadsEnd&&r._allowStateReadsEnd(e),this[n]},set:function(e){this[w]||s(this[n],e)?p(this,n,e):(p(this,n,e),p(this,g,!0),i.call(this).reportChanged(),p(this,g,!1))}})}var S="function"==typeof Symbol&&Symbol.for,E=S?Symbol.for("react.forward_ref"):"function"==typeof t.forwardRef&&t.forwardRef((function(e){return null})).$$typeof,C=S?Symbol.for("react.memo"):"function"==typeof t.memo&&t.memo((function(e){return null})).$$typeof;function A(e){if(!0===e.isMobxInjector&&console.warn("Mobx observer: You are trying to use 'observer' on a component that already has 'inject'. Please apply 'observer' before applying 'inject'"),C&&e.$$typeof===C)throw new Error("Mobx observer: You are trying to use 'observer' on function component wrapped to either another observer or 'React.memo'. The observer already applies 'React.memo' for you.");if(E&&e.$$typeof===E){var r=e.render;if("function"!=typeof r)throw new Error("render property of ForwardRef was not a function");return t.forwardRef((function(){var e=arguments;return t.createElement(o.Observer,null,(function(){return r.apply(void 0,e)}))}))}return"function"!=typeof e||e.prototype&&e.prototype.render||e.isReactClass||Object.prototype.isPrototypeOf.call(t.Component,e)?j(e):o.observer(e)}function U(){return(U=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e}).apply(this,arguments)}var _=i.createContext({});function k(e){var r=e.children,t=function(e,r){if(null==e)return{};var t,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r.indexOf(t=i[n])>=0||(o[t]=e[t]);return o}(e,["children"]),n=i.useContext(_),o=i.useRef(U({},n,{},t));return i.createElement(_.Provider,{value:o.current},r)}function M(e,r,t,n){var o,a,c,u=i.forwardRef((function(t,n){var o=U({},t),a=i.useContext(_);return Object.assign(o,e(a||{},o)||{}),n&&(o.ref=n),i.createElement(r,o)}));return n&&(u=A(u)),u.isMobxInjector=!0,o=r,a=u,c=Object.getOwnPropertyNames(Object.getPrototypeOf(o)),Object.getOwnPropertyNames(o).forEach((function(e){l[e]||-1!==c.indexOf(e)||Object.defineProperty(a,e,Object.getOwnPropertyDescriptor(o,e))})),u.wrappedComponent=r,u.displayName=function(e,r){var t=e.displayName||e.name||e.constructor&&e.constructor.name||"Component";return r?"inject-with-"+r+"("+t+")":"inject("+t+")"}(r,t),u}function $(e){return function(r,t){return e.forEach((function(e){if(!(e in t)){if(!(e in r))throw new Error("MobX injector: Store '"+e+"' is not available! Make sure it is provided by some Provider");t[e]=r[e]}})),t}}k.displayName="MobXProvider";var T=u("disposeOnUnmountProto"),q=u("disposeOnUnmountInst");function D(){var e=this;[].concat(this[T]||[],this[q]||[]).forEach((function(r){var t="string"==typeof r?e[r]:r;null!=t&&(Array.isArray(t)?t.map((function(e){return e()})):t())}))}function N(e){function t(t,n,o,i,a,c){for(var u=arguments.length,s=new Array(u>6?u-6:0),f=6;f<u;f++)s[f-6]=arguments[f];return r.untracked((function(){return i=i||"<<anonymous>>",c=c||o,null==n[o]?t?new Error("The "+a+" `"+c+"` is marked as required in `"+i+"`, but its value is `"+(null===n[o]?"null":"undefined")+"`."):null:e.apply(void 0,[n,o,i,a,c].concat(s))}))}var n=t.bind(null,!1);return n.isRequired=t.bind(null,!0),n}function I(e){var r=typeof e;return Array.isArray(e)?"array":e instanceof RegExp?"object":function(e,r){return"symbol"===e||"Symbol"===r["@@toStringTag"]||"function"==typeof Symbol&&r instanceof Symbol}(r,e)?"symbol":r}function L(e,t){return N((function(n,o,i,a,c){return r.untracked((function(){if(e&&I(n[o])===t.toLowerCase())return null;var a;switch(t){case"Array":a=r.isObservableArray;break;case"Object":a=r.isObservableObject;break;case"Map":a=r.isObservableMap;break;default:throw new Error("Unexpected mobxType: "+t)}var u=n[o];if(!a(u)){var s=function(e){var r=I(e);if("object"===r){if(e instanceof Date)return"date";if(e instanceof RegExp)return"regexp"}return r}(u),f=e?" or javascript `"+t.toLowerCase()+"`":"";return new Error("Invalid prop `"+c+"` of type `"+s+"` supplied to `"+i+"`, expected `mobx.Observable"+t+"`"+f+".")}return null}))}))}function F(e,t){return N((function(n,o,i,a,c){for(var u=arguments.length,s=new Array(u>5?u-5:0),f=5;f<u;f++)s[f-5]=arguments[f];return r.untracked((function(){if("function"!=typeof t)return new Error("Property `"+c+"` of component `"+i+"` has invalid PropType notation.");var r=L(e,"Array")(n,o,i,a,c);if(r instanceof Error)return r;for(var u=n[o],f=0;f<u.length;f++)if((r=t.apply(void 0,[u,f,i,a,c+"["+f+"]"].concat(s)))instanceof Error)return r;return null}))}))}var W={observableArray:L(!1,"Array"),observableArrayOf:F.bind(null,!1),observableMap:L(!1,"Map"),observableObject:L(!1,"Object"),arrayOrObservableArray:L(!0,"Array"),arrayOrObservableArrayOf:F.bind(null,!0),objectOrObservableObject:L(!0,"Object")};if(!t.Component)throw new Error("mobx-react requires React to be available");if(!r.observable)throw new Error("mobx-react requires mobx to be available");"function"==typeof n.unstable_batchedUpdates&&r.configure({reactionScheduler:n.unstable_batchedUpdates}),Object.defineProperty(e,"Observer",{enumerable:!0,get:function(){return o.Observer}}),Object.defineProperty(e,"isUsingStaticRendering",{enumerable:!0,get:function(){return o.isUsingStaticRendering}}),Object.defineProperty(e,"useAsObservableSource",{enumerable:!0,get:function(){return o.useAsObservableSource}}),Object.defineProperty(e,"useLocalStore",{enumerable:!0,get:function(){return o.useLocalStore}}),Object.defineProperty(e,"useObserver",{enumerable:!0,get:function(){return o.useObserver}}),Object.defineProperty(e,"useStaticRendering",{enumerable:!0,get:function(){return o.useStaticRendering}}),e.MobXProviderContext=_,e.PropTypes=W,e.Provider=k,e.disposeOnUnmount=function e(r,t){if(Array.isArray(t))return t.map((function(t){return e(r,t)}));var n=Object.getPrototypeOf(r).constructor||Object.getPrototypeOf(r.constructor),o=Object.getPrototypeOf(r.constructor);if(n!==i.Component&&n!==i.PureComponent&&o!==i.Component&&o!==i.PureComponent)throw new Error("[mobx-react] disposeOnUnmount only supports direct subclasses of React.Component or React.PureComponent.");if("string"!=typeof t&&"function"!=typeof t&&!Array.isArray(t))throw new Error("[mobx-react] disposeOnUnmount only works if the parameter is either a property key or a function.");var a=!!r[T]||!!r[q];return("string"==typeof t?r[T]||(r[T]=[]):r[q]||(r[q]=[])).push(t),a||v(r,"componentWillUnmount",D),"string"!=typeof t?t:void 0},e.inject=function(){for(var e=arguments.length,r=new Array(e),t=0;t<e;t++)r[t]=arguments[t];if("function"==typeof arguments[0]){var n=arguments[0];return function(e){return M(n,e,n.name,!0)}}return function(e){return M($(r),e,r.join("-"),!1)}},e.observer=A,Object.defineProperty(e,"__esModule",{value:!0})}));
  2. //# sourceMappingURL=mobxreact.umd.production.min.js.map