UNPKG

resy

Version:
2 lines (1 loc) 17.9 kB
"use strict";var e=require("./platform.cjs"),t=require("use-sync-external-store/shim"),n=require("react");function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function o(e,t,n){return t=i(t),function(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,l()?Reflect.construct(t,n||[],i(e).constructor):t.apply(e,n))}function a(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function c(e,t,n){return t&&function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,d(r.key),r)}}(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function u(e,t,n){return(t=d(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function i(e){return i=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},i(e)}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&b(e,t)}function l(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(e){}return(l=function(){return!!e})()}function f(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function p(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?f(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):f(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function b(e,t){return b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},b(e,t)}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,c,u=[],i=!0,s=!1;try{if(a=(n=n.call(e)).next,0===t);else for(;!(i=(r=a.call(n)).done)&&(u.push(r.value),u.length!==t);i=!0);}catch(e){s=!0,o=e}finally{try{if(!i&&null!=n.return&&(c=n.return(),Object(c)!==c))return}finally{if(s)throw o}}return u}}(e,t)||v(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function d(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function v(e,t){if(e){if("string"==typeof e)return r(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?r(e,t):void 0}}var g=Symbol("regenerativeSystemKey"),m=Symbol("useStoreKey"),h=Symbol("storeNamespace"),S=process.env.NODE_ENV;S||console.error("NODE_ENV not set");var j="development"===S,_=e.unstable_batchedUpdates||function(e){return e()},w=Object.prototype.hasOwnProperty,O=Object.prototype.toString,E=function(e){var t,n=O.call(e);switch(n){case"[object Array]":return"Array";case"[object Object]":return"Object";case"[object String]":return"String";case"[object Number]":return"Number";case"[object Boolean]":return"Boolean";case"[object Set]":return"Set";case"[object Map]":return"Map";case"[object Function]":return"Function";case"[object Date]":return"Date";case"[object Symbol]":return"Symbol";case"[object WeakSet]":return"WeakSet";case"[object WeakMap]":return"WeakMap";case"[object RegExp]":return"RegExp";case"[object WeakRef]":return"WeakRef";case"[object BigInt]":return"BigInt";case"[object Null]":return"Null";case"[object Undefined]":return"Undefined";case"[object Promise]":return"Promise";case"[object AsyncFunction]":return"AsyncFunction";case"[object Array Iterator]":return"ArrayIterator";case"[object Set Iterator]":return"SetIterator";case"[object Map Iterator]":return"MapIterator";case"[object FormData]":return"FormData";case"[object Blob]":return"Blob";case"[object File]":return"File";case"[object Error]":return"Error";case"[object CustomEvent]":return"CustomEvent";case"[object Storage]":return"Storage";case"[object WebSocket]":return"WebSocket";case"[object ArrayBuffer]":return"ArrayBuffer";case"[object DataView]":return"DataView";case"[object Uint8Array]":return"Uint8Array";case"[object Int8Array]":return"Int8Array";case"[object Uint8ClampedArray]":return"Uint8ClampedArray";case"[object Int16Array]":return"Int16Array";case"[object Uint16Array]":return"Uint16Array";case"[object Int32Array]":return"Int32Array";case"[object Uint32Array]":return"Uint32Array";case"[object Float32Array]":return"Float32Array";case"[object Float64Array]":return"Float64Array";case"[object BigInt64Array]":return"BigInt64Array";case"[object BigUint64Array]":return"BigUint64Array";case"[object XMLHttpRequest]":return"XMLHttpRequest";case"[object Headers]":return"Headers";case"[object Request]":return"Request";case"[object Response]":return"Response";case"[object Window]":return"Window";case"[object Global]":case"[object global]":return"Global";case"[object Arguments]":return"Arguments";default:return null==n||null===(t=n.match(/\[object\s+(.*?)]/))||void 0===t?void 0:t[1]}},A=function(e,t){if(j&&(null==e||!e[g]))throw new Error("resy's ".concat(t,"(...): Expected the 'store' argument should be generated by resy's createStore(...). ")+"Instead received: ".concat(E(e).toLocaleLowerCase(),"."))},k=function(e){var t=e.state,n=e.fnName,r=e.options,o=E(t);if(j&&"Object"!==o){var a=null!=n?n:null==r?void 0:r.__functionName__;throw new Error("resy's ".concat(a,"(...): takes an object of state variables to update or")+" a function which returns an object of state variables."+" Instead received: ".concat(o.toLocaleLowerCase()))}j&&null!=t&&t[g]&&console.error("Warning: resy's setState、syncUpdate(...): takes a store of generated by resy's createStore that's has no update significance!")},x=function(e,t){var n=E(e),r=E(t);if(j&&"Function"!==n)throw new Error("resy's subscribe(...): Expected the first optional 'listener' argument to be a function. "+"Instead received: ".concat(n.toLocaleLowerCase(),"."));if(j&&"Undefined"!==r&&"Array"!==r)throw new Error("resy's subscribe(...): Expected the last optional 'stateKeys' argument to be a array. "+"Instead received: ".concat(r.toLocaleLowerCase(),"."))},M=function(e){var t,n={},r=function(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=v(e))||t){n&&(e=n);var r=0,o=function(){};return{s:o,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,c=!0,u=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return c=e.done,e},e:function(e){u=!0,a=e},f:function(){try{c||null==n.return||n.return()}finally{if(u)throw a}}}}(e);try{for(r.s();!(t=r.n()).done;){var o=y(t.value,2),a=o[0],c=o[1];n[a]=c}}catch(e){r.e(e)}finally{r.f()}return n},U=function(e){return Object.keys(e).reduce((function(t,n){return t.set(n,e[n]),t}),new Map)},P=function(e,t){var n=!1,r=t&&(null==t?void 0:t.length)>0;return(r&&Object.keys(e).some((function(e){return t.includes(e)}))||!r)&&(n=!0),n},I=function(){var e=new Map,t=new Map,n=new Set,r=new Map;return r.set("isUpdating",null),r.set("willUpdating",null),r.set("deferEffectDestructorExecFlag",null),r.set("pushTask",(function(n,r,o){e.set(n,r),t.set(n,o)})),r.set("pushCallbackStack",(function(e,t,r){if(void 0!==r){!function(e){var t=E(e);if(j&&"Undefined"!==t&&"Function"!==t)throw new Error("resy's stateCallback(...): Expected the last optional 'callback' argument to be a function. "+"Instead received: ".concat(t.toLocaleLowerCase(),"."))}(r);var o=Object.assign({},M(e),t);n.add({nextState:o,callback:r})}})),r.set("flushTask",(function(){e.clear(),t.clear()})),r.set("getSchedulerQueue",(function(){return{taskDataMap:e,taskQueueMap:t,callbackStackSet:n}})),r},C=Symbol("classConnectStoreKey"),R=Symbol("classThisPointerStoresKey"),D=Symbol("classStateRefSetKey"),B=Symbol("classUnmountProcessingKey"),N=Symbol("classInitialStateRetrieveKey"),F=function(e,t){return Array.from(new Set(Object.keys(e).concat(Array.from(t.keys()))))},L=function(e,t){var n;"function"==typeof t&&(n=e,Object.keys(n).forEach((function(e){delete n[e]})),Object.entries(t()).forEach((function(t){var n=y(t,2),r=n[0],o=n[1];e[r]=o})))},W=function(e,t,n){L(e,n),F(e,t).forEach((function(n){w.call(e,n)?t.set(n,e[n]):t.delete(n)}))},K=function(e,t,n,r){n.get("canExec")&&(n.set("canExec",null),W(e,t,r))};function T(e,t,n,r,o,a,c,u,i){o.get("deferEffectDestructorExecFlag")||o.set("deferEffectDestructorExecFlag",Promise.resolve().then((function(){o.set("deferEffectDestructorExecFlag",null),r.get("counter")||c.size||function(e,t,n,r,o,a,c){var u=!a.size&&!r.get("counter");e.unmountRestore&&u&&"function"!=typeof c&&W(t,n,c),"function"==typeof c&&u&&o.set("canExec",!0)}(e,t,n,r,a,c,u),null==i||i()})))}var z=t.useSyncExternalStore,V=function(e,t,n,r,o,a,c,u,i,s){if(a.has(e))return a;var l=new Map,f=new Set;return l.set("subscribe",(function(l){return f.add(l),o.set("counter",o.get("counter")+1),function(){f.delete(l),o.set("counter",o.get("counter")-1),T(t,n,r,o,c,u,i,s,(function(){f.size||a.delete(e)}))}})),l.set("getSnapshot",(function(){return r.get(e)})),l.set("useSyncExternalStore",(function(){return z(a.get(e).get("subscribe"),a.get(e).get("getSnapshot"),a.get(e).get("getSnapshot"))})),l.set("updater",(function(){f.forEach((function(e){e()}))})),a.set(e,l),a},q=function(e,t,n,r,o,a,c,u,i,s){return K(n,r,u,s),V(e,t,n,r,o,a,c,u,i,s).get(e).get("useSyncExternalStore")()};function H(e,t){return this[D].add(e),t.get(e)}var Q=function(e,t,n){null==n||n.forEach((function(r){var o;r.updater.isMounted(r)?(null===(o=r[D])||void 0===o?void 0:o.has(e))&&r.setState(u({},e,t)):n.delete(r)}))},G=function(e,t,n,r,o,a,c,u,i,s,l,f){f?n.delete(e):n.set(e,t),r.get("pushTask")(e,t,(function(){Q(e,t,s),V(e,o,a,n,c,u,r,i,s,l).get(e).get("updater")()}))},X=function(e,t,n,r){var o=e.get("getSchedulerQueue")(),a=o.taskDataMap,c=o.taskQueueMap,u=o.callbackStackSet;(a.size>0||u.size>0)&&!e.get("isUpdating")&&e.set("isUpdating",Promise.resolve().then((function(){e.set("isUpdating",null),e.set("willUpdating",null),_((function(){a.size>0&&c.forEach((function(e){e()}));var o,i,s=r.size>0?(o=a,i=new Map,o.forEach((function(e,t){i.set(t,e)})),i):void 0;if(e.get("flushTask")(),u.size>0&&(u.forEach((function(e){(0,e.callback)(e.nextState)})),u.clear()),r.size>0){var l=new Proxy({},{get:function(e,r){return"effectState"===r?M(s):"nextState"===r?M(n):"prevState"===r?M(t):void 0}});r.forEach((function(e){e(l)}))}}))})))},$=function(e,t,r){A(e,"useSubscription"),x(t,r);var o=n.useRef(null);if(o.current={listener:t,stateKeys:r},j){var a=e[h]?{namespace:e[h]}:null;n.useDebugValue(p({listener:t,stateKeys:r},a))}n.useEffect((function(){return e.subscribe((function(e){P(e.effectState,o.current.stateKeys)&&Promise.resolve(e).then((function(e){o.current.listener(e)}))}))}),[])},J=function(e,t,n,r){e.size>0&&!t.get("willUpdating")&&(t.set("willUpdating",!0),n.clear(),r.forEach((function(e,t){n.set(t,e)})))},Y=function(e,t){var r,o,a,c,u,i,s=void 0===e?{}:"function"==typeof e?e():e;!function(e){var t=E(e),n="Undefined"!==t,r=E(null==e?void 0:e.unmountRestore),o=E(null==e?void 0:e.__useConciseState__),a=E(null==e?void 0:e.namespace),c=E(null==e?void 0:e.__enableMacros__),u=E(null==e?void 0:e.enableMarcoActionStateful);if(j&&(n&&"Object"!==t||n&&"Object"===t&&("Boolean"!==r&&"Undefined"!==r||"Boolean"!==o&&"Undefined"!==o||"String"!==a&&"Undefined"!==a||"Boolean"!==c&&"Undefined"!==c||"Boolean"!==u&&"Undefined"!==u)))throw new Error("resy's createStore(...): Expected the last optional 'options' argument to be a StoreOptions type params."+" Instead received: ".concat(t.toLocaleLowerCase(),"."))}(t);var l={__useConciseState__:null!==(r=null==t?void 0:t.__useConciseState__)&&void 0!==r?r:void 0,unmountRestore:null===(o=null==t?void 0:t.unmountRestore)||void 0===o||o,namespace:null!==(a=null==t?void 0:t.namespace)&&void 0!==a?a:void 0,__enableMacros__:null!==(c=null==t?void 0:t.__enableMacros__)&&void 0!==c?c:void 0,enableMarcoActionStateful:null!==(u=null==t?void 0:t.enableMarcoActionStateful)&&void 0!==u?u:void 0,__functionName__:null!==(i=null==t?void 0:t.__functionName__)&&void 0!==i?i:Y.name};k({state:s,options:l});var f=I(),b=(new Map).set("counter",0),y=new Map,d=U(s),v=U(s),S=new Set,O=new Map,A=new Set,R=new Map;R.set(h,l.namespace);var D=function(t,n){J(S,f,v,d);var r=t;"function"==typeof t&&(r=t(M(d))),null!==r&&(k({state:r,fnName:"setState、syncUpdate"}),Object.keys(r).forEach((function(t){var n=r[t];Object.is(n,d.get(t))||G(t,n,d,f,l,s,b,O,y,A,e)}))),f.get("pushCallbackStack")(d,r,n),X(f,v,d,S)};R.set("setState",D),R.set("syncUpdate",(function(t,n){var r=t;"function"==typeof t&&(r=t(M(d))),D(r,n),null!==r&&_((function(){Object.keys(r).forEach((function(t){var n=r[t];Q(t,n,A),V(t,l,s,d,b,O,f,y,A,e).get(t).get("updater")()}))}))})),R.set("restore",(function(t){J(S,f,v,d),L(s,e);var n={};F(s,d).forEach((function(t){var r=s[t];Object.is(r,d.get(t))||(n[t]=r,G(t,r,d,f,l,s,b,O,y,A,e,!w.call(s,t)))})),f.get("pushCallbackStack")(d,n,t),X(f,v,d,S)})),R.set("subscribe",(function(e,t){x(e,t);var n=function(n){P(n.effectState,t)&&e(n)};return S.add(n),function(){return S.delete(n)}}));var W=function(t,n,r){return Object.is(n,d.get(t))||(J(S,f,v,d),G(t,n,d,f,l,s,b,O,y,A,e,r),X(f,v,d,S)),!0},z={set:function(e,t,n){return W(t,n)},deleteProperty:function(e,t){return W(t,void 0,!0)}},Z=function(e,t){var n=function(){for(var e=arguments.length,n=new Array(e),r=0;r<e;r++)n[r]=arguments[r];return t.apply(ee,n)};return n.__bound__=!0,d.set(e,n),n},ee=new Proxy(d,p({get:function(e,t,n){!function(e,t){j&&e!==t&&console.error("Warning: It's not recommended to set the store created by createStore as the prototype of some objects as the store internally hijacks the binding of this context for function properties!")}(n,ee);var r=d.get(t);return"function"!=typeof r||r.__bound__?R.get(t)||r:Z(t,r)}},z)),te=new Proxy(d,p({get:function(t,r){var o=d.get(r),a=!R.has(r);if(a&&"function"!=typeof o)return j&&n.useDebugValue(p({key:r,value:o},l.namespace?{namespace:l.namespace}:null)),q(r,l,s,d,b,O,f,y,A,e);if(a&&"function"==typeof o){o.__bound__||Z(r,o);var c=!l.__enableMacros__||l.enableMarcoActionStateful,u=d.get(r);return c&&j&&n.useDebugValue(p({key:r,value:u},l.namespace?{namespace:l.namespace}:null)),c&&q(r,l,s,d,b,O,f,y,A,e),u}return R.get(r)}},z));(l.__useConciseState__||l.__enableMacros__)&&R.set("store",ee),R.set(m,te),R.set(g,g);R.set("setOptions",(function(e){!function(e){var t=E(e),n=E(null==e?void 0:e.unmountRestore);if(j&&("Object"!==t||"Object"===t&&"Boolean"!==n))throw new Error("resy's setOptions(...): Expected the 'options' argument to be an object with a unmountRestore attribute."+" Instead received: ".concat(t.toLocaleLowerCase(),"."))}(e),l.unmountRestore=e.unmountRestore})),R.set("getOptions",(function(){return Object.assign({},l)}));R.set("useStore",(function(){return te})),R.set("useSubscription",(function(e,t){if(j){var r=l.namespace?{namespace:l.namespace}:null;n.useDebugValue(p({listener:e,stateKeys:t},r))}$(ee,e,t)}));return R.set(C,(function(){var e=this;A.add(this);var t=new Proxy(d,p({get:function(n,r){if("useStore"===r)return function(){return t};var o=d.get(r);return R.get(r)||("function"!=typeof o?H.apply(e,[r,d]):function(){for(var n=arguments.length,o=new Array(n),a=0;a<n;a++)o[a]=arguments[a];return H.apply(e,[r,d]).apply(t,o)})}},z));return t})),R.set(B,(function(){A.delete(this),T(l,s,d,b,f,y,A,e)})),R.set(N,(function(){K(s,d,y,e)})),ee},Z=function(e){return n.useMemo((function(){return Y(e,{__useConciseState__:!0,__functionName__:Z.name})}),[])[m]},ee=function(e,t){return Y(e,p(p({},t),{},{__enableMacros__:!0,__functionName__:ee.name})).useStore};function te(){var e=this,t=this.componentWillUnmount;this.componentWillUnmount=function(){null==t||t.apply(e),Promise.resolve().then((function(){e.updater.isMounted(e)||(e[D].clear(),e[R].forEach((function(t){t[B].apply(e)})))}))}}function ne(e){return A(e,"connectStore"),e[N](),this[R].add(e),this[C]=e[C],this[C]()}var re=function(){function e(t){var n;return a(this,e),u(n=o(this,e,[t]),D,new Set),u(n,C,void 0),u(n,R,new Set),te.apply(n),n}return s(e,n.Component),c(e,[{key:"connectStore",value:function(e){return ne.apply(this,[e])}}])}();u(re,"displayName",void 0);var oe=function(){function e(t){var n;return a(this,e),u(n=o(this,e,[t]),D,new Set),u(n,C,void 0),u(n,R,new Set),te.apply(n),n}return s(e,n.PureComponent),c(e,[{key:"connectStore",value:function(e){return ne.apply(this,[e])}}])}();u(oe,"displayName",void 0),exports.ComponentWithStore=re,exports.PureComponentWithStore=oe,exports.createStore=Y,exports.defineStore=ee,exports.useConciseState=Z,exports.useStore=function(e){return A(e,"useStore"),e[m]},exports.useSubscription=$;