index.min.js 4.0 KB

1
  1. !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("mobx"),require("react")):"function"==typeof define&&define.amd?define(["exports","mobx","react"],r):r((e=e||self).mobxReactLite={},e.mobx,e.React)}(this,function(e,r,n){"use strict";var t="default"in n?n.default:n;if(!n.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!r.spy)throw new Error("mobx-react-lite requires mobx at least version 4 to be available");var o=function(){};var u=!1;function i(){return u}var c=function(){return(c=Object.assign||function(e){for(var r,n=1,t=arguments.length;n<t;n++)for(var o in r=arguments[n])Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o]);return e}).apply(this,arguments)};function f(e,r){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var t,o,u=n.call(e),i=[];try{for(;(void 0===r||r-- >0)&&!(t=u.next()).done;)i.push(t.value)}catch(e){o={error:e}}finally{try{t&&!t.done&&(n=u.return)&&n.call(u)}finally{if(o)throw o.error}}return i}function a(e){return e.current?r.getDependencyTree(e.current):"<unknown>"}var s=[];function l(){var e=f(n.useState(0),2)[1];return n.useCallback(function(){e(function(e){return e+1})},[])}var p={};function d(e,t,o){if(void 0===t&&(t="observed"),void 0===o&&(o=p),i())return e();var u=(o.useForceUpdate||l)(),c=n.useRef(null);c.current||(c.current=new r.Reaction("observer("+t+")",function(){u()}));var f,d,v=function(){c.current&&!c.current.isDisposed&&(c.current.dispose(),c.current=null)};if(n.useDebugValue(c,a),function(e){n.useEffect(function(){return e},s)}(function(){v()}),c.current.track(function(){try{f=e()}catch(e){d=e}}),d)throw v(),d;return f}var v={$$typeof:!0,render:!0,compare:!0,type:!0};function b(e){var r=e.children,n=e.render,t=r||n;return"function"!=typeof t?null:d(t)}function y(e,r,n,t,o){var u="children"===r?"render":"children",i="function"==typeof e[r],c="function"==typeof e[u];return i&&c?new Error("MobX Observer: Do not use children and render in the same time in`"+n):i||c?null:new Error("Invalid prop `"+o+"` of type `"+typeof e[r]+"` supplied to `"+n+"`, expected `function`.")}function m(e,n){if(!n||void 0!==e){var o=f(t.useState(function(){return r.observable(e,{},{deep:!1})}),1)[0];return r.runInAction(function(){Object.assign(o,e)}),o}}b.propTypes={children:y,render:y},b.displayName="Observer";e.Observer=b,e.isUsingStaticRendering=i,e.observer=function(e,r){if(i())return e;var t,o,u,f=c({forwardRef:!1},r),a=e.displayName||e.name,s=function(r,n){return d(function(){return e(r,n)},a)};return s.displayName=a,t=f.forwardRef?n.memo(n.forwardRef(s)):n.memo(s),o=e,u=t,Object.keys(o).forEach(function(e){o.hasOwnProperty(e)&&!v[e]&&Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(o,e))}),t.displayName=a,t},e.optimizeScheduler=function(e){"function"==typeof e&&r.configure({reactionScheduler:e})},e.useAsObservableSource=function(e){return m(e,!1)},e.useComputed=function(e,t){return void 0===t&&(t=[]),n.useMemo(function(){return r.computed(e)},t).get()},e.useDisposable=function(e,r){void 0===r&&(r=[]);var t=n.useRef(null),u=n.useRef(!1);function i(r){if(u.current)return o;if(!t.current){var n=e();if("function"!=typeof n){var i=new Error("generated disposer must be a function");return console.error(i),o}t.current=n}return function(){t.current&&(t.current(),t.current=null),r&&(u.current=!0)}}return n.useEffect(function(){return i(!1)},r),i(!0)},e.useForceUpdate=l,e.useLocalStore=function(e,n){var o=m(n,!0);return t.useState(function(){var n=r.observable(e(o));return function(e){if(!e||"object"!=typeof e)return!1;var r=Object.getPrototypeOf(e);return!r||r===Object.prototype}(n)&&r.runInAction(function(){Object.keys(n).forEach(function(e){var t,o,u=n[e];"function"==typeof u&&(n[e]=(t=u,o=n,function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return r.transaction(function(){return t.apply(o,e)})}))})}),n})[0]},e.useObservable=function(e){var t=n.useRef(null);return t.current||(t.current=r.observable(e)),t.current},e.useObserver=d,e.useStaticRendering=function(e){u=e},Object.defineProperty(e,"__esModule",{value:!0})});