UNPKG

zustand-big

Version:

State management for vue based on zustand

2 lines (1 loc) 2.32 kB
var e,t;(e=self.document)&&!e.getElementById("livereloadscript")&&((t=e.createElement("script")).async=1,t.src="//"+(self.location.host||"localhost").split(":")[0]+":35729/livereload.js?snipver=1",t.id="livereloadscript",e.getElementsByTagName("head")[0].appendChild(t)),Object.defineProperty(exports,"__esModule",{value:!0});var r=require("vue"),n=require("zustand/vanilla");function o(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var c=o(r);const i=(e,t,r,n)=>{if(!r||!n)return!0;const o=r(t),c=r(e);return void 0!==n&&!n(o,c)};function s(e,t,r,n,o){const s=["__v_raw","__v_isReadonly","__v_isRef","toJSON","toString","valueOf",Symbol.toStringTag,"Symbol(Symbol.toStringTag)"],u=c.reactive(e);return new Proxy(u,{get:(e,c)=>(t[c]||s.includes(c)||(t[c]=r.subscribe(((e,t)=>{i(e,t,n,o)&&(u[c]=n?n(e)[c]:e[c])}))),e[c])})}function u(e,t,r,n,o,c){const s=Object.keys(e);t||(t={},s.forEach((s=>{if(r[s])return;let u=e[s];r[s]=n.subscribe(((e,r)=>{if(!i(e,r,o,c))return;if(e[s]===t[s])return;const n=e[s]instanceof Array;e[s];n?(t[s]||(t[s]=[]),t[s].splice(0,t[s].length,...e[s])):t[s]=e[s]})),Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>u,set:e=>{e!==u&&(u=e)}})})));return o?o(t):t}function a(e,t,r){var n;const o=e.getState(),a=t?t(o):o,l=(null==a?void 0:a.constructor)===Object,f="function"==typeof a,d={};if(c.set||(null===(n=c.default)||void 0===n?void 0:n.set)){let n;return u(o,n,d,e,t,r)}if(l)return"undefined"==typeof Proxy?(((e,t,r,n,o)=>{const c=Object.keys(e);c.forEach((s=>{let u=e[s];Object.defineProperty(e,s,{enumerable:!0,configurable:!0,get:()=>(c.includes(s)&&(t[s]||(t[s]=r.subscribe(((t,r)=>{i(t,r,n,o)&&(e[s]=n?n(t)[s]:t[s])})))),u),set:e=>{e!==u&&(u=e)}})}))})(a,d,e,t,r),c.reactive(a)):s(a,d,e,t,r);{const n=c.ref(a);return e.subscribe(((e,o)=>{i(e,o,t,r)&&(n.value=t?t(e):e)})),f?n.value:n}}const l=e=>{const t="function"==typeof e?n.createStore(e):e;return Object.assign(((e,r)=>a(t,e,r)),t)};Object.defineProperty(exports,"createStore",{enumerable:!0,get:function(){return n.createStore}}),exports.create=l,exports.default=l,exports.defineProxy=s,exports.defineSet=u;