@yakocloud/state-vocab 2.3.3 → 2.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),te=Symbol("state-def"),C=Symbol("state-path"),L=Symbol("state-ssr");function fe(t,a,s){if(!a)return t;const n=a.split(".");let r=t;for(const c of n)if(r!==null&&typeof r=="object"&&c in r)r=r[c];else return s;return r===void 0?s:r}function de(t,a,s){const n=a.replace(/\[(\d+)\]/g,".$1").split(".");let r=t;for(let c=0;c<n.length-1;c++){const i=n[c],b=n[c+1];(r[i]===void 0||r[i]===null)&&(r[i]=/^\d+$/.test(b)?[]:{}),r=r[i]}return r[n[n.length-1]]=s,t}function me(t,a=0){let s;return function(...n){s!==void 0&&clearTimeout(s),s=setTimeout(()=>{s=void 0,t.apply(this,n)},a)}}function be(t,a,s=[]){return S.useMemo(()=>me(t,a),s)}function ve(t){const a=JSON.stringify(t,null,2).split(`
2
- `),s=[],n=[];for(const r of a){const c=r.match(/^(\s*)"([^"]+)"(\s*:\s*)(.+)$/);if(c){const[,i,b,v,u]=c;s.push(`${i}%c"${b}"%c${v}%c${u}`),n.push("color: #9cdcfe; font-weight: bold","color: #cccccc","color: #ce9178")}else s.push(`%c${r}`),n.push("color: #cccccc")}console.log(s.join(`
3
- `),...n,t)}var V={exports:{}},x={};var B;function Ee(){if(B)return x;B=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function s(n,r,c){var i=null;if(c!==void 0&&(i=""+c),r.key!==void 0&&(i=""+r.key),"key"in r){c={};for(var b in r)b!=="key"&&(c[b]=r[b])}else c=r;return r=c.ref,{$$typeof:t,type:n,key:i,ref:r!==void 0?r:null,props:c}}return x.Fragment=a,x.jsx=s,x.jsxs=s,x}var O={};var H;function Se(){return H||(H=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ue?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case h:return"Fragment";case m:return"Profiler";case k:return"StrictMode";case oe:return"Suspense";case ae:return"SuspenseList";case ce:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case _:return"Portal";case $:return e.displayName||"Context";case g:return(e._context.displayName||"Context")+".Consumer";case w:var o=e.render;return e=e.displayName,e||(e=o.displayName||o.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case se:return o=e.displayName||null,o!==null?o:t(e.type)||"Memo";case I:o=e._payload,e=e._init;try{return t(e(o))}catch{}}return null}function a(e){return""+e}function s(e){try{a(e);var o=!1}catch{o=!0}if(o){o=console;var l=o.error,f=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return l.call(o,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",f),a(e)}}function n(e){if(e===h)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===I)return"<...>";try{var o=t(e);return o?"<"+o+">":"<...>"}catch{return"<...>"}}function r(){var e=M.A;return e===null?null:e.getOwner()}function c(){return Error("react-stack-top-frame")}function i(e){if(W.call(e,"key")){var o=Object.getOwnPropertyDescriptor(e,"key").get;if(o&&o.isReactWarning)return!1}return e.key!==void 0}function b(e,o){function l(){J||(J=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",o))}l.isReactWarning=!0,Object.defineProperty(e,"key",{get:l,configurable:!0})}function v(){var e=t(this.type);return U[e]||(U[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function u(e,o,l,f,j,D){var d=l.ref;return e={$$typeof:T,type:e,key:o,props:l,_owner:f},(d!==void 0?d:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:v}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:j}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:D}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function y(e,o,l,f,j,D){var d=o.children;if(d!==void 0)if(f)if(le(d)){for(f=0;f<d.length;f++)E(d[f]);Object.freeze&&Object.freeze(d)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else E(d);if(W.call(o,"key")){d=t(e);var P=Object.keys(o).filter(function(ie){return ie!=="key"});f=0<P.length?"{key: someKey, "+P.join(": ..., ")+": ...}":"{key: someKey}",X[d+f]||(P=0<P.length?"{"+P.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("react"),te=Symbol("state-def"),C=Symbol("state-path"),L=Symbol("state-ssr");function fe(t,a,r){if(!a)return t;const s=a.split(".");let n=t;for(const c of s)if(n!==null&&typeof n=="object"&&c in n)n=n[c];else return r;return n===void 0?r:n}function de(t,a,r){const s=a.replace(/\[(\d+)\]/g,".$1").split(".");let n=t;for(let c=0;c<s.length-1;c++){const d=s[c],b=s[c+1];(n[d]===void 0||n[d]===null)&&(n[d]=/^\d+$/.test(b)?[]:{}),n=n[d]}return n[s[s.length-1]]=r,t}function me(t,a=0){let r;return function(...s){r!==void 0&&clearTimeout(r),r=setTimeout(()=>{r=void 0,t.apply(this,s)},a)}}function be(t,a,r=[]){return S.useMemo(()=>me(t,a),r)}function ve(t){const a=JSON.stringify(t,null,2).split(`
2
+ `),r=[],s=[];for(const n of a){const c=n.match(/^(\s*)"([^"]+)"(\s*:\s*)(.+)$/);if(c){const[,d,b,v,u]=c;r.push(`${d}%c"${b}"%c${v}%c${u}`),s.push("color: #9cdcfe; font-weight: bold","color: #cccccc","color: #ce9178")}else r.push(`%c${n}`),s.push("color: #cccccc")}console.log(r.join(`
3
+ `),...s,t)}var j={exports:{}},x={};var B;function Ee(){if(B)return x;B=1;var t=Symbol.for("react.transitional.element"),a=Symbol.for("react.fragment");function r(s,n,c){var d=null;if(c!==void 0&&(d=""+c),n.key!==void 0&&(d=""+n.key),"key"in n){c={};for(var b in n)b!=="key"&&(c[b]=n[b])}else c=n;return n=c.ref,{$$typeof:t,type:s,key:d,ref:n!==void 0?n:null,props:c}}return x.Fragment=a,x.jsx=r,x.jsxs=r,x}var O={};var H;function Se(){return H||(H=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ue?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case h:return"Fragment";case m:return"Profiler";case k:return"StrictMode";case oe:return"Suspense";case ae:return"SuspenseList";case ce:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case p:return"Portal";case $:return e.displayName||"Context";case g:return(e._context.displayName||"Context")+".Consumer";case w:var o=e.render;return e=e.displayName,e||(e=o.displayName||o.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case se:return o=e.displayName||null,o!==null?o:t(e.type)||"Memo";case I:o=e._payload,e=e._init;try{return t(e(o))}catch{}}return null}function a(e){return""+e}function r(e){try{a(e);var o=!1}catch{o=!0}if(o){o=console;var l=o.error,i=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return l.call(o,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",i),a(e)}}function s(e){if(e===h)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===I)return"<...>";try{var o=t(e);return o?"<"+o+">":"<...>"}catch{return"<...>"}}function n(){var e=M.A;return e===null?null:e.getOwner()}function c(){return Error("react-stack-top-frame")}function d(e){if(W.call(e,"key")){var o=Object.getOwnPropertyDescriptor(e,"key").get;if(o&&o.isReactWarning)return!1}return e.key!==void 0}function b(e,o){function l(){J||(J=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",o))}l.isReactWarning=!0,Object.defineProperty(e,"key",{get:l,configurable:!0})}function v(){var e=t(this.type);return U[e]||(U[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function u(e,o,l,i,A,D){var f=l.ref;return e={$$typeof:T,type:e,key:o,props:l,_owner:i},(f!==void 0?f:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:v}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:A}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:D}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function y(e,o,l,i,A,D){var f=o.children;if(f!==void 0)if(i)if(le(f)){for(i=0;i<f.length;i++)E(f[i]);Object.freeze&&Object.freeze(f)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else E(f);if(W.call(o,"key")){f=t(e);var P=Object.keys(o).filter(function(ie){return ie!=="key"});i=0<P.length?"{key: someKey, "+P.join(": ..., ")+": ...}":"{key: someKey}",X[f+i]||(P=0<P.length?"{"+P.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
4
4
  let props = %s;
5
5
  <%s {...props} />
6
6
  React keys must be passed directly to JSX without using spread:
7
7
  let props = %s;
8
- <%s key={someKey} {...props} />`,f,d,P,d),X[d+f]=!0)}if(d=null,l!==void 0&&(s(l),d=""+l),i(o)&&(s(o.key),d=""+o.key),"key"in o){l={};for(var F in o)F!=="key"&&(l[F]=o[F])}else l=o;return d&&b(l,typeof e=="function"?e.displayName||e.name||"Unknown":e),u(e,d,l,r(),j,D)}function E(e){p(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===I&&(e._payload.status==="fulfilled"?p(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function p(e){return typeof e=="object"&&e!==null&&e.$$typeof===T}var R=S,T=Symbol.for("react.transitional.element"),_=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),g=Symbol.for("react.consumer"),$=Symbol.for("react.context"),w=Symbol.for("react.forward_ref"),oe=Symbol.for("react.suspense"),ae=Symbol.for("react.suspense_list"),se=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),ce=Symbol.for("react.activity"),ue=Symbol.for("react.client.reference"),M=R.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=Object.prototype.hasOwnProperty,le=Array.isArray,Y=console.createTask?console.createTask:function(){return null};R={react_stack_bottom_frame:function(e){return e()}};var J,U={},q=R.react_stack_bottom_frame.bind(R,c)(),G=Y(n(c)),X={};O.Fragment=h,O.jsx=function(e,o,l){var f=1e4>M.recentlyCreatedOwnerStacks++;return y(e,o,l,!1,f?Error("react-stack-top-frame"):q,f?Y(n(e)):G)},O.jsxs=function(e,o,l){var f=1e4>M.recentlyCreatedOwnerStacks++;return y(e,o,l,!0,f?Error("react-stack-top-frame"):q,f?Y(n(e)):G)}})()),O}var Z;function _e(){return Z||(Z=1,process.env.NODE_ENV==="production"?V.exports=Ee():V.exports=Se()),V.exports}var pe=_e();const re=S.createContext({stateVocab:{},setStateVocab:()=>{}});function Re(){return S.useContext(re)}const Te=t=>{const{children:a,verbose:s}=t,[n,r]=S.useState({});return s&&ve(n),pe.jsx(re.Provider,{value:{stateVocab:n,setStateVocab:r},children:a})},N=(t,a)=>s=>{const n={...s};return de(n,t,a),n},Q=t=>{const{serialized:a,deserialize:s}=t;return a===null?null:s(a)},ye=t=>typeof t=="function",ge=t=>typeof t=="function",z=t=>typeof t<"u",A=t=>ge(t)?t():t,he=typeof window>"u";function ke(t={}){const a=he?void 0:A(t.storage),s=t.bidirectional;return{[te]:!0,[L]:!1,[C]:"",useState(n){const r=t.serialize??JSON.stringify,c=t.deserialize??JSON.parse,i=t.defaultValue;n??={};const b=be(n.onSet??(()=>{}),n.delayedSet,[]),v=Re(),u=this[C],y=this[L],[E,p]=S.useState(!y);S.useEffect(()=>p(!0),[]);const R=S.useMemo(()=>{if(!E||!a)return;const m=a.getItem(u);return Q({deserialize:c,serialized:m})??A(n.defaultValue)??i},[E]),T=S.useMemo(()=>fe(v.stateVocab,u,R??A(n.defaultValue)??i),[v.stateVocab,R,u]);S.useEffect(()=>{z(T)&&v.setStateVocab(N(u,T))},[T]),S.useEffect(()=>{if(!n.bidirectional&&!s)return;const m=g=>{if(g.key!==u)return;const $=g.newValue,w=Q({serialized:$,deserialize:c})??A(n.defaultValue)??i;z(w)&&(v.setStateVocab(N(u,w)),b(w,_.current),_.current=w)};return window.addEventListener("storage",m),()=>window.removeEventListener("storage",m)},[u,n.bidirectional,s]);const _=S.useRef(T);return[T,m=>{const g=ye(m)?m(_.current):m;v.setStateVocab(N(u,g)),b(g,_.current),a&&a.setItem(u,r(g)),_.current=g},()=>{const m=A(n.defaultValue)??i;if(!z(m)){a?.removeItem(u);return}v.setStateVocab(N(u,m)),b(m,_.current),_.current=m,a&&a.setItem(u,r(m))}]},toString(){return this[C]}}}const K=new WeakMap,ee=new WeakMap;function ne(t,a){a??={};const{path:s="",ssr:n}=a;let r=K.get(t);r||(r=new Map,K.set(t,r));const c=r.get(s);if(c)return c;const i=new Proxy(t,{get(b,v){const u=b[v],y=s?`${s}.${String(v)}`:String(v);if(u&&typeof u=="object"&&te in u){const E=u;let p=ee.get(E);p||(p=new Map,ee.set(E,p));const R=p.get(y);if(R)return R;const T=Reflect.ownKeys(E).filter(k=>typeof E[k]=="function"),_=Object.fromEntries(T.map(k=>[k,(...m)=>E[k].call({...E,[C]:y,[L]:n},...m)])),h={...E,..._};return p.set(y,h),h}return u&&typeof u=="object"?ne(u,{path:y,ssr:n}):u}});return r.set(s,i),i}function we(t,a){return ne(t,a)}exports.StorageProvider=Te;exports.defineState=ke;exports.setupStorage=we;
8
+ <%s key={someKey} {...props} />`,i,f,P,f),X[f+i]=!0)}if(f=null,l!==void 0&&(r(l),f=""+l),d(o)&&(r(o.key),f=""+o.key),"key"in o){l={};for(var F in o)F!=="key"&&(l[F]=o[F])}else l=o;return f&&b(l,typeof e=="function"?e.displayName||e.name||"Unknown":e),u(e,f,l,n(),A,D)}function E(e){R(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===I&&(e._payload.status==="fulfilled"?R(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function R(e){return typeof e=="object"&&e!==null&&e.$$typeof===T}var _=S,T=Symbol.for("react.transitional.element"),p=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),m=Symbol.for("react.profiler"),g=Symbol.for("react.consumer"),$=Symbol.for("react.context"),w=Symbol.for("react.forward_ref"),oe=Symbol.for("react.suspense"),ae=Symbol.for("react.suspense_list"),se=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),ce=Symbol.for("react.activity"),ue=Symbol.for("react.client.reference"),M=_.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,W=Object.prototype.hasOwnProperty,le=Array.isArray,Y=console.createTask?console.createTask:function(){return null};_={react_stack_bottom_frame:function(e){return e()}};var J,U={},q=_.react_stack_bottom_frame.bind(_,c)(),G=Y(s(c)),X={};O.Fragment=h,O.jsx=function(e,o,l){var i=1e4>M.recentlyCreatedOwnerStacks++;return y(e,o,l,!1,i?Error("react-stack-top-frame"):q,i?Y(s(e)):G)},O.jsxs=function(e,o,l){var i=1e4>M.recentlyCreatedOwnerStacks++;return y(e,o,l,!0,i?Error("react-stack-top-frame"):q,i?Y(s(e)):G)}})()),O}var Z;function _e(){return Z||(Z=1,process.env.NODE_ENV==="production"?j.exports=Ee():j.exports=Se()),j.exports}var pe=_e();const re=S.createContext({stateVocab:{},setStateVocab:()=>{}});function Re(){return S.useContext(re)}const Te=t=>{const{children:a,verbose:r}=t,[s,n]=S.useState({});return r&&ve(s),pe.jsx(re.Provider,{value:{stateVocab:s,setStateVocab:n},children:a})},V=(t,a)=>r=>{const s={...r};return de(s,t,a),s},Q=t=>{const{serialized:a,deserialize:r}=t;return a===null?null:r(a)},ye=t=>typeof t=="function",ge=t=>typeof t=="function",z=t=>typeof t<"u",N=t=>ge(t)?t():t,he=typeof window>"u";function ke(t={}){return{[te]:!0,[L]:!1,[C]:"",useState(a){const r=he?void 0:N(t.storage),s=t.serialize??JSON.stringify,n=t.deserialize??JSON.parse,c=t.defaultValue,d=t.bidirectional;a??={};const b=be(a.onSet??(()=>{}),a.delayedSet,[]),v=Re(),u=this[C],y=this[L],[E,R]=S.useState(!y);S.useEffect(()=>R(!0),[]);const _=S.useMemo(()=>{if(!E||!r)return;const m=r.getItem(u);return Q({deserialize:n,serialized:m})},[E]),T=S.useMemo(()=>fe(v.stateVocab,u,_??N(a.defaultValue)??c),[v.stateVocab,_]);S.useEffect(()=>{z(T)&&(v.setStateVocab(V(u,T)),r&&_===null&&r.setItem(u,s(T)))},[]),S.useEffect(()=>{if(!a.bidirectional&&!d)return;const m=g=>{if(g.key!==u)return;const $=g.newValue,w=Q({serialized:$,deserialize:n})??N(a.defaultValue)??c;z(w)&&(v.setStateVocab(V(u,w)),b(w,p.current),p.current=w)};return window.addEventListener("storage",m),()=>window.removeEventListener("storage",m)},[a.bidirectional,d]);const p=S.useRef(T);return[T,m=>{const g=ye(m)?m(p.current):m;v.setStateVocab(V(u,g)),b(g,p.current),r&&r.setItem(u,s(g)),p.current=g},()=>{const m=N(a.defaultValue)??c;if(!z(m)){r?.removeItem(u);return}v.setStateVocab(V(u,m)),b(m,p.current),p.current=m,r&&r.setItem(u,s(m))}]},toString(){return this[C]}}}const K=new WeakMap,ee=new WeakMap;function ne(t,a){a??={};const{path:r="",ssr:s}=a;let n=K.get(t);n||(n=new Map,K.set(t,n));const c=n.get(r);if(c)return c;const d=new Proxy(t,{get(b,v){const u=b[v],y=r?`${r}.${String(v)}`:String(v);if(u&&typeof u=="object"&&te in u){const E=u;let R=ee.get(E);R||(R=new Map,ee.set(E,R));const _=R.get(y);if(_)return _;const T=Reflect.ownKeys(E).filter(k=>typeof E[k]=="function"),p=Object.fromEntries(T.map(k=>[k,(...m)=>E[k].call({...E,[C]:y,[L]:s},...m)])),h={...E,...p};return R.set(y,h),h}return u&&typeof u=="object"?ne(u,{path:y,ssr:s}):u}});return n.set(r,d),d}function we(t,a){return ne(t,a)}const Pe="2.3.4";exports.StorageProvider=Te;exports.defineState=ke;exports.setupStorage=we;exports.version=Pe;
@@ -1,81 +1,81 @@
1
1
  import me, { useMemo as L, createContext as be, useState as re, useContext as ve, useEffect as M, useRef as Ee } from "react";
2
2
  const ne = Symbol("state-def"), N = Symbol("state-path"), W = Symbol("state-ssr");
3
- function _e(t, a, s) {
3
+ function _e(t, a, r) {
4
4
  if (!a)
5
5
  return t;
6
- const n = a.split(".");
7
- let r = t;
8
- for (const c of n)
9
- if (r !== null && typeof r == "object" && c in r)
10
- r = r[c];
6
+ const s = a.split(".");
7
+ let n = t;
8
+ for (const c of s)
9
+ if (n !== null && typeof n == "object" && c in n)
10
+ n = n[c];
11
11
  else
12
- return s;
13
- return r === void 0 ? s : r;
12
+ return r;
13
+ return n === void 0 ? r : n;
14
14
  }
15
- function pe(t, a, s) {
16
- const n = a.replace(/\[(\d+)\]/g, ".$1").split(".");
17
- let r = t;
18
- for (let c = 0; c < n.length - 1; c++) {
19
- const i = n[c], b = n[c + 1];
20
- (r[i] === void 0 || r[i] === null) && (r[i] = /^\d+$/.test(b) ? [] : {}), r = r[i];
15
+ function pe(t, a, r) {
16
+ const s = a.replace(/\[(\d+)\]/g, ".$1").split(".");
17
+ let n = t;
18
+ for (let c = 0; c < s.length - 1; c++) {
19
+ const d = s[c], b = s[c + 1];
20
+ (n[d] === void 0 || n[d] === null) && (n[d] = /^\d+$/.test(b) ? [] : {}), n = n[d];
21
21
  }
22
- return r[n[n.length - 1]] = s, t;
22
+ return n[s[s.length - 1]] = r, t;
23
23
  }
24
24
  function Se(t, a = 0) {
25
- let s;
26
- return function(...n) {
27
- s !== void 0 && clearTimeout(s), s = setTimeout(() => {
28
- s = void 0, t.apply(this, n);
25
+ let r;
26
+ return function(...s) {
27
+ r !== void 0 && clearTimeout(r), r = setTimeout(() => {
28
+ r = void 0, t.apply(this, s);
29
29
  }, a);
30
30
  };
31
31
  }
32
- function Re(t, a, s = []) {
32
+ function Re(t, a, r = []) {
33
33
  return L(
34
34
  () => Se(t, a),
35
35
  // eslint-disable-next-line react-hooks/exhaustive-deps
36
- s
36
+ r
37
37
  );
38
38
  }
39
39
  function Te(t) {
40
40
  const a = JSON.stringify(t, null, 2).split(`
41
- `), s = [], n = [];
42
- for (const r of a) {
43
- const c = r.match(/^(\s*)"([^"]+)"(\s*:\s*)(.+)$/);
41
+ `), r = [], s = [];
42
+ for (const n of a) {
43
+ const c = n.match(/^(\s*)"([^"]+)"(\s*:\s*)(.+)$/);
44
44
  if (c) {
45
- const [, i, b, v, u] = c;
46
- s.push(`${i}%c"${b}"%c${v}%c${u}`), n.push(
45
+ const [, d, b, v, u] = c;
46
+ r.push(`${d}%c"${b}"%c${v}%c${u}`), s.push(
47
47
  "color: #9cdcfe; font-weight: bold",
48
48
  "color: #cccccc",
49
49
  "color: #ce9178"
50
50
  );
51
51
  } else
52
- s.push(`%c${r}`), n.push("color: #cccccc");
52
+ r.push(`%c${n}`), s.push("color: #cccccc");
53
53
  }
54
- console.log(s.join(`
55
- `), ...n, t);
54
+ console.log(r.join(`
55
+ `), ...s, t);
56
56
  }
57
- var j = { exports: {} }, P = {};
57
+ var O = { exports: {} }, P = {};
58
58
  var H;
59
59
  function ye() {
60
60
  if (H) return P;
61
61
  H = 1;
62
62
  var t = Symbol.for("react.transitional.element"), a = Symbol.for("react.fragment");
63
- function s(n, r, c) {
64
- var i = null;
65
- if (c !== void 0 && (i = "" + c), r.key !== void 0 && (i = "" + r.key), "key" in r) {
63
+ function r(s, n, c) {
64
+ var d = null;
65
+ if (c !== void 0 && (d = "" + c), n.key !== void 0 && (d = "" + n.key), "key" in n) {
66
66
  c = {};
67
- for (var b in r)
68
- b !== "key" && (c[b] = r[b]);
69
- } else c = r;
70
- return r = c.ref, {
67
+ for (var b in n)
68
+ b !== "key" && (c[b] = n[b]);
69
+ } else c = n;
70
+ return n = c.ref, {
71
71
  $$typeof: t,
72
- type: n,
73
- key: i,
74
- ref: r !== void 0 ? r : null,
72
+ type: s,
73
+ key: d,
74
+ ref: n !== void 0 ? n : null,
75
75
  props: c
76
76
  };
77
77
  }
78
- return P.Fragment = a, P.jsx = s, P.jsxs = s, P;
78
+ return P.Fragment = a, P.jsx = r, P.jsxs = r, P;
79
79
  }
80
80
  var x = {};
81
81
  var Z;
@@ -104,7 +104,7 @@ function he() {
104
104
  switch (typeof e.tag == "number" && console.error(
105
105
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
106
106
  ), e.$$typeof) {
107
- case _:
107
+ case p:
108
108
  return "Portal";
109
109
  case C:
110
110
  return e.displayName || "Context";
@@ -127,7 +127,7 @@ function he() {
127
127
  function a(e) {
128
128
  return "" + e;
129
129
  }
130
- function s(e) {
130
+ function r(e) {
131
131
  try {
132
132
  a(e);
133
133
  var o = !1;
@@ -136,15 +136,15 @@ function he() {
136
136
  }
137
137
  if (o) {
138
138
  o = console;
139
- var l = o.error, f = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
139
+ var l = o.error, i = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
140
140
  return l.call(
141
141
  o,
142
142
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
143
- f
143
+ i
144
144
  ), a(e);
145
145
  }
146
146
  }
147
- function n(e) {
147
+ function s(e) {
148
148
  if (e === h) return "<>";
149
149
  if (typeof e == "object" && e !== null && e.$$typeof === $)
150
150
  return "<...>";
@@ -155,14 +155,14 @@ function he() {
155
155
  return "<...>";
156
156
  }
157
157
  }
158
- function r() {
158
+ function n() {
159
159
  var e = I.A;
160
160
  return e === null ? null : e.getOwner();
161
161
  }
162
162
  function c() {
163
163
  return Error("react-stack-top-frame");
164
164
  }
165
- function i(e) {
165
+ function d(e) {
166
166
  if (J.call(e, "key")) {
167
167
  var o = Object.getOwnPropertyDescriptor(e, "key").get;
168
168
  if (o && o.isReactWarning) return !1;
@@ -187,15 +187,15 @@ function he() {
187
187
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
188
188
  )), e = this.props.ref, e !== void 0 ? e : null;
189
189
  }
190
- function u(e, o, l, f, O, D) {
191
- var d = l.ref;
190
+ function u(e, o, l, i, A, D) {
191
+ var f = l.ref;
192
192
  return e = {
193
193
  $$typeof: R,
194
194
  type: e,
195
195
  key: o,
196
196
  props: l,
197
- _owner: f
198
- }, (d !== void 0 ? d : null) !== null ? Object.defineProperty(e, "ref", {
197
+ _owner: i
198
+ }, (f !== void 0 ? f : null) !== null ? Object.defineProperty(e, "ref", {
199
199
  enumerable: !1,
200
200
  get: v
201
201
  }) : Object.defineProperty(e, "ref", { enumerable: !1, value: null }), e._store = {}, Object.defineProperty(e._store, "validated", {
@@ -212,7 +212,7 @@ function he() {
212
212
  configurable: !1,
213
213
  enumerable: !1,
214
214
  writable: !0,
215
- value: O
215
+ value: A
216
216
  }), Object.defineProperty(e, "_debugTask", {
217
217
  configurable: !1,
218
218
  enumerable: !1,
@@ -220,98 +220,98 @@ function he() {
220
220
  value: D
221
221
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
222
222
  }
223
- function T(e, o, l, f, O, D) {
224
- var d = o.children;
225
- if (d !== void 0)
226
- if (f)
227
- if (fe(d)) {
228
- for (f = 0; f < d.length; f++)
229
- E(d[f]);
230
- Object.freeze && Object.freeze(d);
223
+ function T(e, o, l, i, A, D) {
224
+ var f = o.children;
225
+ if (f !== void 0)
226
+ if (i)
227
+ if (fe(f)) {
228
+ for (i = 0; i < f.length; i++)
229
+ E(f[i]);
230
+ Object.freeze && Object.freeze(f);
231
231
  } else
232
232
  console.error(
233
233
  "React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead."
234
234
  );
235
- else E(d);
235
+ else E(f);
236
236
  if (J.call(o, "key")) {
237
- d = t(e);
237
+ f = t(e);
238
238
  var w = Object.keys(o).filter(function(de) {
239
239
  return de !== "key";
240
240
  });
241
- f = 0 < w.length ? "{key: someKey, " + w.join(": ..., ") + ": ...}" : "{key: someKey}", B[d + f] || (w = 0 < w.length ? "{" + w.join(": ..., ") + ": ...}" : "{}", console.error(
241
+ i = 0 < w.length ? "{key: someKey, " + w.join(": ..., ") + ": ...}" : "{key: someKey}", B[f + i] || (w = 0 < w.length ? "{" + w.join(": ..., ") + ": ...}" : "{}", console.error(
242
242
  `A props object containing a "key" prop is being spread into JSX:
243
243
  let props = %s;
244
244
  <%s {...props} />
245
245
  React keys must be passed directly to JSX without using spread:
246
246
  let props = %s;
247
247
  <%s key={someKey} {...props} />`,
248
+ i,
248
249
  f,
249
- d,
250
250
  w,
251
- d
252
- ), B[d + f] = !0);
251
+ f
252
+ ), B[f + i] = !0);
253
253
  }
254
- if (d = null, l !== void 0 && (s(l), d = "" + l), i(o) && (s(o.key), d = "" + o.key), "key" in o) {
254
+ if (f = null, l !== void 0 && (r(l), f = "" + l), d(o) && (r(o.key), f = "" + o.key), "key" in o) {
255
255
  l = {};
256
256
  for (var F in o)
257
257
  F !== "key" && (l[F] = o[F]);
258
258
  } else l = o;
259
- return d && b(
259
+ return f && b(
260
260
  l,
261
261
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
262
262
  ), u(
263
263
  e,
264
- d,
264
+ f,
265
265
  l,
266
- r(),
267
- O,
266
+ n(),
267
+ A,
268
268
  D
269
269
  );
270
270
  }
271
271
  function E(e) {
272
- p(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === $ && (e._payload.status === "fulfilled" ? p(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
272
+ S(e) ? e._store && (e._store.validated = 1) : typeof e == "object" && e !== null && e.$$typeof === $ && (e._payload.status === "fulfilled" ? S(e._payload.value) && e._payload.value._store && (e._payload.value._store.validated = 1) : e._store && (e._store.validated = 1));
273
273
  }
274
- function p(e) {
274
+ function S(e) {
275
275
  return typeof e == "object" && e !== null && e.$$typeof === R;
276
276
  }
277
- var S = me, R = Symbol.for("react.transitional.element"), _ = Symbol.for("react.portal"), h = Symbol.for("react.fragment"), g = Symbol.for("react.strict_mode"), m = Symbol.for("react.profiler"), y = Symbol.for("react.consumer"), C = Symbol.for("react.context"), k = Symbol.for("react.forward_ref"), se = Symbol.for("react.suspense"), ce = Symbol.for("react.suspense_list"), ue = Symbol.for("react.memo"), $ = Symbol.for("react.lazy"), le = Symbol.for("react.activity"), ie = Symbol.for("react.client.reference"), I = S.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, J = Object.prototype.hasOwnProperty, fe = Array.isArray, Y = console.createTask ? console.createTask : function() {
277
+ var _ = me, R = Symbol.for("react.transitional.element"), p = Symbol.for("react.portal"), h = Symbol.for("react.fragment"), g = Symbol.for("react.strict_mode"), m = Symbol.for("react.profiler"), y = Symbol.for("react.consumer"), C = Symbol.for("react.context"), k = Symbol.for("react.forward_ref"), se = Symbol.for("react.suspense"), ce = Symbol.for("react.suspense_list"), ue = Symbol.for("react.memo"), $ = Symbol.for("react.lazy"), le = Symbol.for("react.activity"), ie = Symbol.for("react.client.reference"), I = _.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, J = Object.prototype.hasOwnProperty, fe = Array.isArray, Y = console.createTask ? console.createTask : function() {
278
278
  return null;
279
279
  };
280
- S = {
280
+ _ = {
281
281
  react_stack_bottom_frame: function(e) {
282
282
  return e();
283
283
  }
284
284
  };
285
- var U, q = {}, G = S.react_stack_bottom_frame.bind(
286
- S,
285
+ var U, q = {}, G = _.react_stack_bottom_frame.bind(
286
+ _,
287
287
  c
288
- )(), X = Y(n(c)), B = {};
288
+ )(), X = Y(s(c)), B = {};
289
289
  x.Fragment = h, x.jsx = function(e, o, l) {
290
- var f = 1e4 > I.recentlyCreatedOwnerStacks++;
290
+ var i = 1e4 > I.recentlyCreatedOwnerStacks++;
291
291
  return T(
292
292
  e,
293
293
  o,
294
294
  l,
295
295
  !1,
296
- f ? Error("react-stack-top-frame") : G,
297
- f ? Y(n(e)) : X
296
+ i ? Error("react-stack-top-frame") : G,
297
+ i ? Y(s(e)) : X
298
298
  );
299
299
  }, x.jsxs = function(e, o, l) {
300
- var f = 1e4 > I.recentlyCreatedOwnerStacks++;
300
+ var i = 1e4 > I.recentlyCreatedOwnerStacks++;
301
301
  return T(
302
302
  e,
303
303
  o,
304
304
  l,
305
305
  !0,
306
- f ? Error("react-stack-top-frame") : G,
307
- f ? Y(n(e)) : X
306
+ i ? Error("react-stack-top-frame") : G,
307
+ i ? Y(s(e)) : X
308
308
  );
309
309
  };
310
310
  })()), x;
311
311
  }
312
312
  var Q;
313
313
  function ge() {
314
- return Q || (Q = 1, process.env.NODE_ENV === "production" ? j.exports = ye() : j.exports = he()), j.exports;
314
+ return Q || (Q = 1, process.env.NODE_ENV === "production" ? O.exports = ye() : O.exports = he()), O.exports;
315
315
  }
316
316
  var ke = ge();
317
317
  const oe = be({
@@ -323,17 +323,16 @@ function we() {
323
323
  return ve(oe);
324
324
  }
325
325
  const je = (t) => {
326
- const { children: a, verbose: s } = t, [n, r] = re({});
327
- return s && Te(n), /* @__PURE__ */ ke.jsx(oe.Provider, { value: { stateVocab: n, setStateVocab: r }, children: a });
328
- }, V = (t, a) => (s) => {
329
- const n = { ...s };
330
- return pe(n, t, a), n;
326
+ const { children: a, verbose: r } = t, [s, n] = re({});
327
+ return r && Te(s), /* @__PURE__ */ ke.jsx(oe.Provider, { value: { stateVocab: s, setStateVocab: n }, children: a });
328
+ }, j = (t, a) => (r) => {
329
+ const s = { ...r };
330
+ return pe(s, t, a), s;
331
331
  }, K = (t) => {
332
- const { serialized: a, deserialize: s } = t;
333
- return a === null ? null : s(a);
334
- }, Pe = (t) => typeof t == "function", xe = (t) => typeof t == "function", z = (t) => typeof t < "u", A = (t) => xe(t) ? t() : t, Ae = typeof window > "u";
332
+ const { serialized: a, deserialize: r } = t;
333
+ return a === null ? null : r(a);
334
+ }, Pe = (t) => typeof t == "function", xe = (t) => typeof t == "function", z = (t) => typeof t < "u", V = (t) => xe(t) ? t() : t, Ae = typeof window > "u";
335
335
  function Ve(t = {}) {
336
- const a = Ae ? void 0 : A(t.storage), s = t.bidirectional;
337
336
  return {
338
337
  [ne]: !0,
339
338
  // marks this object as a leaf in the router tree
@@ -341,22 +340,22 @@ function Ve(t = {}) {
341
340
  // placeholder; injected at runtime by injectPaths()
342
341
  [N]: "",
343
342
  // placeholder; injected at runtime by injectPaths()
344
- useState(n) {
345
- const r = t.serialize ?? JSON.stringify, c = t.deserialize ?? JSON.parse, i = t.defaultValue;
346
- n ??= {};
343
+ useState(a) {
344
+ const r = Ae ? void 0 : V(t.storage), s = t.serialize ?? JSON.stringify, n = t.deserialize ?? JSON.parse, c = t.defaultValue, d = t.bidirectional;
345
+ a ??= {};
347
346
  const b = Re(
348
- n.onSet ?? (() => {
347
+ a.onSet ?? (() => {
349
348
  }),
350
- n.delayedSet,
349
+ a.delayedSet,
351
350
  []
352
- ), v = we(), u = this[N], T = this[W], [E, p] = re(!T);
353
- M(() => p(!0), []);
354
- const S = L(
351
+ ), v = we(), u = this[N], T = this[W], [E, S] = re(!T);
352
+ M(() => S(!0), []);
353
+ const _ = L(
355
354
  () => {
356
- if (!E || !a)
355
+ if (!E || !r)
357
356
  return;
358
- const m = a.getItem(u);
359
- return K({ deserialize: c, serialized: m }) ?? A(n.defaultValue) ?? i;
357
+ const m = r.getItem(u);
358
+ return K({ deserialize: n, serialized: m });
360
359
  },
361
360
  // eslint-disable-next-line react-hooks/exhaustive-deps
362
361
  [E]
@@ -365,50 +364,48 @@ function Ve(t = {}) {
365
364
  v.stateVocab,
366
365
  u,
367
366
  // 3rd argument in order to avoid waiting for useEffect execution
368
- S ?? A(n.defaultValue) ?? i
367
+ _ ?? V(a.defaultValue) ?? c
369
368
  ),
370
369
  // eslint-disable-next-line react-hooks/exhaustive-deps
371
370
  [
372
371
  v.stateVocab,
373
- S,
374
- u
372
+ _
375
373
  ]
376
374
  );
377
375
  M(
378
376
  () => {
379
- z(R) && v.setStateVocab(V(u, R));
377
+ z(R) && (v.setStateVocab(j(u, R)), r && _ === null && r.setItem(u, s(R)));
380
378
  },
381
379
  // eslint-disable-next-line react-hooks/exhaustive-deps
382
- [R]
380
+ []
383
381
  ), M(() => {
384
- if (!n.bidirectional && !s)
382
+ if (!a.bidirectional && !d)
385
383
  return;
386
384
  const m = (y) => {
387
385
  if (y.key !== u)
388
386
  return;
389
- const C = y.newValue, k = K({ serialized: C, deserialize: c }) ?? A(n.defaultValue) ?? i;
390
- z(k) && (v.setStateVocab(V(u, k)), b(k, _.current), _.current = k);
387
+ const C = y.newValue, k = K({ serialized: C, deserialize: n }) ?? V(a.defaultValue) ?? c;
388
+ z(k) && (v.setStateVocab(j(u, k)), b(k, p.current), p.current = k);
391
389
  };
392
390
  return window.addEventListener("storage", m), () => window.removeEventListener("storage", m);
393
391
  }, [
394
- u,
395
- n.bidirectional,
396
- s
392
+ a.bidirectional,
393
+ d
397
394
  ]);
398
- const _ = Ee(R);
395
+ const p = Ee(R);
399
396
  return [
400
397
  R,
401
398
  (m) => {
402
- const y = Pe(m) ? m(_.current) : m;
403
- v.setStateVocab(V(u, y)), b(y, _.current), a && a.setItem(u, r(y)), _.current = y;
399
+ const y = Pe(m) ? m(p.current) : m;
400
+ v.setStateVocab(j(u, y)), b(y, p.current), r && r.setItem(u, s(y)), p.current = y;
404
401
  },
405
402
  () => {
406
- const m = A(n.defaultValue) ?? i;
403
+ const m = V(a.defaultValue) ?? c;
407
404
  if (!z(m)) {
408
- a?.removeItem(u);
405
+ r?.removeItem(u);
409
406
  return;
410
407
  }
411
- v.setStateVocab(V(u, m)), b(m, _.current), _.current = m, a && a.setItem(u, r(m));
408
+ v.setStateVocab(j(u, m)), b(m, p.current), p.current = m, r && r.setItem(u, s(m));
412
409
  }
413
410
  ];
414
411
  },
@@ -422,54 +419,56 @@ const ee = /* @__PURE__ */ new WeakMap(), te = /* @__PURE__ */ new WeakMap();
422
419
  function ae(t, a) {
423
420
  a ??= {};
424
421
  const {
425
- path: s = "",
426
- ssr: n
422
+ path: r = "",
423
+ ssr: s
427
424
  } = a;
428
- let r = ee.get(t);
429
- r || (r = /* @__PURE__ */ new Map(), ee.set(t, r));
430
- const c = r.get(s);
425
+ let n = ee.get(t);
426
+ n || (n = /* @__PURE__ */ new Map(), ee.set(t, n));
427
+ const c = n.get(r);
431
428
  if (c)
432
429
  return c;
433
- const i = new Proxy(t, {
430
+ const d = new Proxy(t, {
434
431
  get(b, v) {
435
- const u = b[v], T = s ? `${s}.${String(v)}` : String(v);
432
+ const u = b[v], T = r ? `${r}.${String(v)}` : String(v);
436
433
  if (u && typeof u == "object" && ne in u) {
437
434
  const E = u;
438
- let p = te.get(E);
439
- p || (p = /* @__PURE__ */ new Map(), te.set(E, p));
440
- const S = p.get(T);
441
- if (S)
442
- return S;
435
+ let S = te.get(E);
436
+ S || (S = /* @__PURE__ */ new Map(), te.set(E, S));
437
+ const _ = S.get(T);
438
+ if (_)
439
+ return _;
443
440
  const R = Reflect.ownKeys(E).filter(
444
441
  (g) => typeof E[g] == "function"
445
- ), _ = Object.fromEntries(
442
+ ), p = Object.fromEntries(
446
443
  R.map((g) => [
447
444
  g,
448
445
  (...m) => E[g].call(
449
446
  {
450
447
  ...E,
451
448
  [N]: T,
452
- [W]: n
449
+ [W]: s
453
450
  },
454
451
  ...m
455
452
  )
456
453
  ])
457
- ), h = { ...E, ..._ };
458
- return p.set(T, h), h;
454
+ ), h = { ...E, ...p };
455
+ return S.set(T, h), h;
459
456
  }
460
457
  return u && typeof u == "object" ? ae(u, {
461
458
  path: T,
462
- ssr: n
459
+ ssr: s
463
460
  }) : u;
464
461
  }
465
462
  });
466
- return r.set(s, i), i;
463
+ return n.set(r, d), d;
467
464
  }
468
465
  function Ne(t, a) {
469
466
  return ae(t, a);
470
467
  }
468
+ const Ce = "2.3.4";
471
469
  export {
472
470
  je as StorageProvider,
473
471
  Ve as defineState,
474
- Ne as setupStorage
472
+ Ne as setupStorage,
473
+ Ce as version
475
474
  };
@@ -1,3 +1,4 @@
1
1
  export { defineState } from "./state";
2
2
  export { setupStorage } from "./setup";
3
3
  export { StateVocabContextProvider as StorageProvider } from "./context";
4
+ export { version } from "../package.json";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yakocloud/state-vocab",
3
- "version": "2.3.3",
3
+ "version": "2.3.4",
4
4
  "main": "dist/state-vocab.cjs.js",
5
5
  "module": "dist/state-vocab.es.js",
6
6
  "types": "dist/types/index.d.ts",
File without changes
File without changes
File without changes
File without changes