olova 2.0.12 → 2.0.13

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.
Files changed (2) hide show
  1. package/dist/olova.js +1 -1
  2. package/package.json +1 -1
package/dist/olova.js CHANGED
@@ -1 +1 @@
1
- const e=Symbol("BATCH_UPDATES"),t=Symbol("SIGNAL_TYPE");class n{constructor(){this.globalSubs=new Set,this.propSubs=new Map,this.weakPropSubs=new WeakMap,this.dependencies=new WeakMap,this.batchMode=!1,this.pendingDeps=new Set}subscribe(e,t){if(!t)return;this.dependencies.has(t)||this.dependencies.set(t,new Set);const n=this.dependencies.get(t);if(!n.has(e)){if(n.add(e),!e)return void this.globalSubs.add(t);const s="object"==typeof e?this.weakPropSubs:this.propSubs;s.has(e)||s.set(e,new Set),s.get(e).add(t)}}notify(e,t=new Set){if(this.batchMode)return this.pendingDeps.add(e),t;if(e){const n=this.propSubs.get(e);if(n&&this.notifyDependentSubs(n,e,t),"object"==typeof e){const n=this.weakPropSubs.get(e);n&&this.notifyDependentSubs(n,e,t)}}return this.notifyDependentSubs(this.globalSubs,e,t),t}startBatch(){this.batchMode=!0,this.pendingDeps.clear()}endBatch(){this.batchMode=!1;const e=new Set;for(const t of this.pendingDeps)this.notify(t,e);return this.pendingDeps.clear(),e}notifyDependentSubs(e,t,n){for(const s of e)if(!n.has(s)){const e=this.dependencies.get(s);t&&e&&!e.has(t)||(s(),n.add(s))}}cleanup(e){if(e){this.propSubs.delete(e);for(const[t,n]of this.dependencies)n.delete(e),0===n.size&&this.dependencies.delete(t)}}}class s{constructor(){this.updates=new Map,this.priorities=new Map,this.timeouts=new Map,this.debounceTime=16}add(e,t,n=0,s=!1){if(s)return this.timeouts.has(e)&&clearTimeout(this.timeouts.get(e)),void this.timeouts.set(e,setTimeout((()=>{this.addImmediate(e,t,n),this.timeouts.delete(e)}),this.debounceTime));this.addImmediate(e,t,n)}addImmediate(e,t,n){if(this.updates.has(e)){const s=this.updates.get(e),i=this.priorities.get(e)||0;"object"==typeof s&&"object"==typeof t&&(t={...s,...t}),n=Math.max(i,n)}this.updates.set(e,t),this.priorities.set(e,n)}process(e){0!==this.updates.size&&(this.timeouts.size>0?Promise.all(Array.from(this.timeouts.values()).map((e=>new Promise((t=>{const n=setInterval((()=>{this.timeouts.has(e)||(clearInterval(n),t())}),0)}))))).then((()=>this.processImmediate(e))):this.processImmediate(e))}processImmediate(e){const t=[...this.updates.entries()].sort(((e,t)=>(this.priorities.get(t[0])||0)-(this.priorities.get(e[0])||0)));e.startBatch();const n=new Set;for(const[s,i]of t)"function"==typeof i&&i(),e.notify(s,n);e.endBatch(),this.updates.clear(),this.priorities.clear()}clear(){this.timeouts.forEach((e=>clearTimeout(e))),this.timeouts.clear(),this.updates.clear(),this.priorities.clear()}}const i=(i,o={})=>{const{equals:r=Object.is,immediate:a=!0,batched:c=!1,debounce:l=!1}=o;let d=i;const u=new n,f=new s,p=e=>{const t=h();return t&&u.subscribe(e,t),e?d[e]:d};return p[e]=()=>(u.startBatch(),()=>{u.endBatch(),f.clear()}),p[t]=!0,[p,(e,t,n=0)=>{const s="function"==typeof e?e(t?d[t]:d):e;(t?!r(d[t],s):!r(d,s))&&(d=t?{...d,[t]:s}:s,c?(f.add(t,s,n,l),queueMicrotask((()=>{f.process(u)}))):u.notify(t))}]};function o(e,t={defer:!1}){let n=null,s=new Set;const i=()=>{n&&n(),s.clear(),f=i;try{n=e()||null}finally{f=null}};return t.defer||i(),i}function r(e,t={}){const[n,s]=i(void 0,t);let r=!1,a=new Set;return o((()=>{a.clear();const i=e();r&&t.equals&&t.equals(n(),i)||(s(i),r=!0)})),n}function a(e,t={}){const{initialValue:n=null,cacheTime:s=5e3,retries:o=3,retryDelay:r=1e3,lazy:a=!1}=t,[c,l]=i(n),[d,u]=i(!1),[f,h]=i(null);let p=new Map,m=new Map,y=0;const b=e=>{e?(p.delete(e),m.has(e)&&(clearTimeout(m.get(e)),m.delete(e))):(p.clear(),m.forEach((e=>clearTimeout(e))),m.clear())},g=async t=>{const n=JSON.stringify(t);if(p.has(n))return p.get(n);u(!0),h(null),y=0;const i=async()=>{try{const i=await e(t);return l(i),p.set(n,i),s>0&&m.set(n,setTimeout((()=>b(n)),s)),i}catch(e){if(y<o)return y++,await new Promise((e=>setTimeout(e,r*y))),i();throw h(e),e}finally{u(!1)}};return i()};return a||g(),{data:c,loading:d,error:f,refetch:g,clearCache:b}}function c(e,n,...s){if("function"==typeof e)return e({...n,children:s});if(e===l)return s.flat().filter(Boolean);const i=document.createElement(e);if(n)for(const[e,s]of Object.entries(n))if("ref"===e)"function"==typeof s?s(i):s&&(s.current=i);else if(e.startsWith("on")){const t=e.toLowerCase().slice(2);i.addEventListener(t,s)}else if("style"===e)"string"==typeof s?i.style.cssText=s:Object.assign(i.style,s);else if("classList"===e){if(Array.isArray(s))i.classList.add(...s.filter(Boolean));else if("object"==typeof s)for(const[e,t]of Object.entries(s))t?i.classList.add(e):i.classList.remove(e)}else"class"===e||"className"===e?i.className=s:["key"].includes(e)||("function"==typeof s&&s[t]?o((()=>{i[e]=s()})):i[e]=s);return s.flat().forEach((e=>{const t=g(e);t&&i.appendChild(t)})),i}new Map;const l=Symbol("Fragment");function d(t,n,s={}){const{hydrate:o=!1,onError:r=console.error,suspense:a=!0,beforeMount:c,afterMount:l}=s;if(!o)for(;n.firstChild;)n.removeChild(n.firstChild);const[d]=i(null),f=d[e]();c?.();try{let e=t();if(a&&e instanceof Promise)return void e.then((e=>{u(e,n,o),l?.()})).catch(r);u(e,n,o),l?.()}catch(e){r(e)}finally{f()}return()=>{for(;n.firstChild;)n.removeChild(n.firstChild)}}function u(e,t,n){if(!e)return;const s=Array.isArray(e)?e.flat(1/0):[e],i=Array.from(t.childNodes);let o=0;if(s.filter(Boolean).forEach((e=>{"string"==typeof e||"number"==typeof e?n&&i[o]?.nodeType===Node.TEXT_NODE?i[o].textContent=e+"":t.appendChild(document.createTextNode(e+"")):e instanceof Node?n&&i[o]?e.isEqualNode(i[o])||t.replaceChild(e,i[o]):t.appendChild(e):Array.isArray(e)?u(e,t,n):e&&"object"==typeof e&&t.appendChild(document.createTextNode(JSON.stringify(e))),o++})),!n)for(;o<i.length;)t.removeChild(i[o]),o++}let f=null;const h=()=>f;function p(e){const t=Symbol("context");return new Map,{Provider:({value:e,children:n})=>{const s=m(t);return f=e,f=s,n},Context:t,defaultValue:e}}function m(e){return f||e.defaultValue}function y({fallback:e,children:t}){try{return t}catch(t){return e(t)}}function b(e){let t=null,n=null;return function(s){if(!t)throw n||(n=e().then((e=>{t=e.default||e}))),n;return c(t,s)}}export{i as createSignal,o as createEffect,r as createMemo,a as createResource,p as createContext,m as useContext,c as h,l as Fragment,d as render,y as ErrorBoundary,b as lazy};const g=e=>{if(null==e||!1===e)return null;const n=()=>{const e=Math.random().toString(36).slice(2,8),t=document.createComment("start:"+e),n=document.createComment("end:"+e),s=document.createDocumentFragment();return s.appendChild(t),s.appendChild(n),{fragment:s,startNode:t,endNode:n}};if("function"==typeof e){const{fragment:s,startNode:i,endNode:r}=n();let a=null,c=null;return o((()=>{let n=(e[t],e());if(n===c)return;if(a){if(a.nodeType===Node.TEXT_NODE&&("string"==typeof n||"number"==typeof n)){const e=n+"";return a.textContent!==e&&(a.textContent=e),void(c=n)}if(a instanceof Element&&n instanceof Element&&a.tagName===n.tagName){const e=a.attributes,t=n.attributes;for(const t of e)n.hasAttribute(t.name)||a.removeAttribute(t.name);for(const e of t)a.getAttribute(e.name)!==e.value&&a.setAttribute(e.name,e.value);if(a.childNodes.length===n.childNodes.length){let e=!1;for(let t=0;t<a.childNodes.length;t++){const s=a.childNodes[t],i=n.childNodes[t];if(s.nodeType!==Node.TEXT_NODE||i.nodeType!==Node.TEXT_NODE){e=!0;break}s.textContent!==i.textContent&&(s.textContent=i.textContent)}if(!e)return void(c=n)}}}const s=r.parentNode,o=document.createDocumentFragment();if(null!=n){const e=S(n);e&&o.appendChild(e)}if(i.nextSibling!==r){let e=i.nextSibling;const t=[];for(;e&&e!==r;)t.push(e),e=e.nextSibling;t.forEach((e=>e.remove()))}o.firstChild?(s.insertBefore(o,r),a=i.nextSibling):a=null,c=n})),s}if(Array.isArray(e)){const{fragment:t,startNode:s,endNode:i}=n();let r=[],a=new Map;return o((()=>{const t=e.filter(Boolean);if(0===t.length){if(0===r.length)return;let e=s.nextSibling;const t=[];for(;e&&e!==i;)t.push(e),e=e.nextSibling;return t.forEach((e=>e.remove())),r=[],void a.clear()}if(r.length===t.length&&r.length<5){let e=!1;const n=[];let o=s.nextSibling;for(;o&&o!==i;)n.push(o),o=o.nextSibling;for(let s=0;s<t.length;s++){const i=r[s],o=t[s],a=n[s];if(i!==o){if(a.nodeType!==Node.TEXT_NODE||"string"!=typeof o&&"number"!=typeof o){e=!0;break}a.textContent=o+""}}if(!e)return void(r=[...t])}const n=document.createDocumentFragment(),o=new Map;t.forEach(((e,t)=>{const s=e?.key||`${typeof e}:${e+""}`;let i;a.has(s)?(i=a.get(s),a.delete(s)):i=g(e),i&&(o.set(s,i),n.appendChild(i))})),a.clear(),a=o;let c=s.nextSibling;const l=[];for(;c&&c!==i;)l.push(c),c=c.nextSibling;l.forEach((e=>e.remove())),i.parentNode.insertBefore(n,i),r=[...t]})),t}return e instanceof Node?e:document.createTextNode(e+"")},S=e=>{if(Array.isArray(e)){const t=document.createDocumentFragment();return e.forEach((e=>{const n=g(e);n&&t.appendChild(n)})),t}return e instanceof Node?e:document.createTextNode(e+"")};
1
+ let BATCH_UPDATES=Symbol("BATCH_UPDATES"),SIGNAL_TYPE=Symbol("SIGNAL_TYPE");class SubscriptionManager{constructor(){this.globalSubs=new Set,this.propSubs=new Map,this.weakPropSubs=new WeakMap,this.dependencies=new WeakMap,this.batchMode=!1,this.pendingDeps=new Set}subscribe(e,t){if(!t)return;this.dependencies.has(t)||this.dependencies.set(t,new Set);let n=this.dependencies.get(t);if(!n.has(e)){if(n.add(e),!e)return void this.globalSubs.add(t);let r="object"==typeof e?this.weakPropSubs:this.propSubs;r.has(e)||r.set(e,new Set),r.get(e).add(t)}}notify(e,t=new Set){if(this.batchMode)return this.pendingDeps.add(e),t;if(e){let n=this.propSubs.get(e);if(n&&this.notifyDependentSubs(n,e,t),"object"==typeof e){let n=this.weakPropSubs.get(e);n&&this.notifyDependentSubs(n,e,t)}}return this.notifyDependentSubs(this.globalSubs,e,t),t}startBatch(){this.batchMode=!0,this.pendingDeps.clear()}endBatch(){this.batchMode=!1;let e=new Set;for(let t of this.pendingDeps)this.notify(t,e);return this.pendingDeps.clear(),e}notifyDependentSubs(e,t,n){for(let r of e)if(!n.has(r)){let e=this.dependencies.get(r);(!t||!e||e.has(t))&&(r(),n.add(r))}}cleanup(e){if(e)for(let[t,n]of(this.propSubs.delete(e),this.dependencies))n.delete(e),0===n.size&&this.dependencies.delete(t)}}class BatchQueue{constructor(){this.updates=new Map,this.priorities=new Map,this.timeouts=new Map,this.debounceTime=16}add(e,t,n=0,r=!1){if(r)return this.timeouts.has(e)&&clearTimeout(this.timeouts.get(e)),void this.timeouts.set(e,setTimeout((()=>{this.addImmediate(e,t,n),this.timeouts.delete(e)}),this.debounceTime));this.addImmediate(e,t,n)}addImmediate(e,t,n){if(this.updates.has(e)){let r=this.updates.get(e),i=this.priorities.get(e)||0;"object"==typeof r&&"object"==typeof t&&(t={...r,...t}),n=Math.max(i,n)}this.updates.set(e,t),this.priorities.set(e,n)}process(e){if(0!==this.updates.size){if(this.timeouts.size>0)return void Promise.all(Array.from(this.timeouts.values()).map((e=>new Promise((t=>{let n=setInterval((()=>{this.timeouts.has(e)||(clearInterval(n),t())}),0)}))))).then((()=>this.processImmediate(e)));this.processImmediate(e)}}processImmediate(e){let t=[...this.updates.entries()].sort(((e,t)=>(this.priorities.get(t[0])||0)-(this.priorities.get(e[0])||0)));e.startBatch();let n=new Set;for(let[r,i]of t)"function"==typeof i&&i(),e.notify(r,n);e.endBatch(),this.updates.clear(),this.priorities.clear()}clear(){this.timeouts.forEach((e=>clearTimeout(e))),this.timeouts.clear(),this.updates.clear(),this.priorities.clear()}}let createSignal=(e,t={})=>{let{equals:n=Object.is,immediate:r=!0,batched:i=!1,debounce:o=!1}=t,a=e,l=new SubscriptionManager,s=new BatchQueue,c=e=>{let t=getCurrentContext();return t&&l.subscribe(e,t),e?a[e]:a};return c[BATCH_UPDATES]=()=>(l.startBatch(),()=>{l.endBatch(),s.clear()}),c[SIGNAL_TYPE]=!0,[c,(e,t,r=0)=>{let c="function"==typeof e?e(t?a[t]:a):e;(t?!n(a[t],c):!n(a,c))&&(a=t?{...a,[t]:c}:c,i?(s.add(t,c,r,o),queueMicrotask((()=>{s.process(l)}))):l.notify(t))}]};function createEffect(e,t={defer:!1}){let n=null,r=new Set,i=()=>{n&&n(),r.clear(),currentContext=i;try{n=e()||null}finally{currentContext=null}};return t.defer||i(),i}function createMemo(e,t={}){let[n,r]=createSignal(void 0,t),i=!1,o=new Set;return createEffect((()=>{o.clear();let a=e();i&&t.equals&&t.equals(n(),a)||(r(a),i=!0)})),n}function createResource(e,t={}){let{initialValue:n=null,cacheTime:r=5e3,retries:i=3,retryDelay:o=1e3,lazy:a=!1}=t,[l,s]=createSignal(n),[c,d]=createSignal(!1),[u,f]=createSignal(null),h=new Map,p=new Map,m=0,g=e=>{e?(h.delete(e),p.has(e)&&(clearTimeout(p.get(e)),p.delete(e))):(h.clear(),p.forEach((e=>clearTimeout(e))),p.clear())},y=async t=>{let n=JSON.stringify(t);if(h.has(n))return h.get(n);d(!0),f(null),m=0;let a=async()=>{try{let i=await e(t);return s(i),h.set(n,i),r>0&&p.set(n,setTimeout((()=>g(n)),r)),i}catch(e){if(m<i)return await new Promise((e=>setTimeout(e,o*++m))),a();throw f(e),e}finally{d(!1)}};return a()};return a||y(),{data:l,loading:c,error:u,refetch:y,clearCache:g}}let eventDelegation=new Map;function delegateEvent(e,t,n){if(!eventDelegation.has(e)){let t=t=>{let n=eventDelegation.get(e);for(let[e,r]of n)t.target.matches(e)&&r(t)};document.addEventListener(e,t),eventDelegation.set(e,new Map)}eventDelegation.get(e).set(t,n)}function h(e,t,...n){let r="http://www.w3.org/2000/svg",i=new Set(["svg","path","circle","rect","line","polygon","polyline","ellipse","g","text","tspan","defs","use","mask","clipPath"]);if("function"==typeof e)return e({...t,children:n});if(e===Fragment){let e=document.createDocumentFragment();return n.flat().forEach((t=>{let n=processChild(t);n&&e.appendChild(n)})),e}if("string"!=typeof e)throw Error(`Invalid element type: ${e}`);let o=i.has(e.toLowerCase())||t&&t.xmlns===r,a=o?document.createElementNS(r,e):document.createElement(e);if(t)for(let[e,n]of Object.entries(t))if("ref"===e)"function"==typeof n?n(a):n&&(n.current=a);else if(e.startsWith("on")){let t=e.slice(2).toLowerCase();a.addEventListener(t,n)}else if("style"===e)"string"==typeof n?a.style.cssText=n:Object.assign(a.style,n);else if("classList"===e){if(Array.isArray(n))a.classList.add(...n.filter(Boolean));else if("object"==typeof n)for(let[e,t]of Object.entries(n))t?a.classList.add(e):a.classList.remove(e)}else"class"===e||"className"===e?a.setAttribute("class",n):["key"].includes(e)||("function"==typeof n&&n[SIGNAL_TYPE]?createEffect((()=>{o?a.setAttribute(e,n()):a[e]=n()})):o?!0===n?a.setAttribute(e,""):!1!==n&&null!=n&&a.setAttribute(e,n):a[e]=n);return n.flat().forEach((e=>{if(null==e)return;let t=processChild(e);t&&(o&&t instanceof SVGElement||t instanceof Node?a.appendChild(t):a.appendChild(document.createTextNode(String(t))))})),a}let Fragment=Symbol("Fragment");function render(e,t,n={}){let{hydrate:r=!1,onError:i=console.error,suspense:o=!0,beforeMount:a,afterMount:l}=n;if(!r)for(;t.firstChild;)t.removeChild(t.firstChild);let[s]=createSignal(null),c=s[BATCH_UPDATES]();a?.();try{let n=e();if(o&&n instanceof Promise)return void n.then((e=>{mountChildren(e,t,r),l?.()})).catch(i);mountChildren(n,t,r),l?.()}catch(e){i(e)}finally{c()}return()=>{for(;t.firstChild;)t.removeChild(t.firstChild)}}function mountChildren(e,t,n){if(!e)return;let r=Array.isArray(e)?e.flat(1/0):[e],i=Array.from(t.childNodes),o=0;if(r.filter(Boolean).forEach((e=>{"string"==typeof e||"number"==typeof e?n&&i[o]?.nodeType===Node.TEXT_NODE?i[o].textContent=String(e):t.appendChild(document.createTextNode(String(e))):e instanceof Node?n&&i[o]?e.isEqualNode(i[o])||t.replaceChild(e,i[o]):t.appendChild(e):Array.isArray(e)?mountChildren(e,t,n):e&&"object"==typeof e&&t.appendChild(document.createTextNode(JSON.stringify(e))),o++})),!n)for(;o<i.length;)t.removeChild(i[o]),o++}let currentContext=null,getCurrentContext=()=>currentContext;function createContext(e){let t=Symbol("context");return{Provider({value:e,children:n}){let r=useContext(t);return currentContext=e,currentContext=r,n},Context:t,defaultValue:e}}function useContext(e){return currentContext||e.defaultValue}function ErrorBoundary({fallback:e,children:t}){try{return t}catch(t){return e(t)}}function lazy(e){let t=null,n=null;return function(r){if(!t)throw n||(n=e().then((e=>{t=e.default||e}))),n;return h(t,r)}}"undefined"!=typeof window?(window.h=h,window.Fragment=Fragment):"undefined"!=typeof global&&(global.h=h,global.Fragment=Fragment);export default{h:h,Fragment:Fragment};let processChild=e=>{if(null==e||!1===e||!0===e)return null;let t=()=>{let e=Math.random().toString(36).slice(2,8),t=document.createComment(`start:${e}`),n=document.createComment(`end:${e}`),r=document.createDocumentFragment();return r.appendChild(t),r.appendChild(n),{fragment:r,startNode:t,endNode:n}};if("function"==typeof e){let{fragment:n,startNode:r,endNode:i}=t(),o=null,a=null;return createEffect((()=>{let t=(e[SIGNAL_TYPE],e());if((null==t||!1===t||!0===t)&&(t=null),t===a)return;if(o){if(o.nodeType===Node.TEXT_NODE&&("string"==typeof t||"number"==typeof t)){let e=String(t);return o.textContent!==e&&(o.textContent=e),void(a=t)}if(o instanceof Element&&t instanceof Element&&o.tagName===t.tagName){let e=o.attributes,n=t.attributes;for(let n of e)t.hasAttribute(n.name)||o.removeAttribute(n.name);for(let e of n)o.getAttribute(e.name)!==e.value&&o.setAttribute(e.name,e.value);if(o.childNodes.length===t.childNodes.length){let e=!1;for(let n=0;n<o.childNodes.length;n++){let r=o.childNodes[n],i=t.childNodes[n];if(r.nodeType!==Node.TEXT_NODE||i.nodeType!==Node.TEXT_NODE){e=!0;break}r.textContent!==i.textContent&&(r.textContent=i.textContent)}if(!e)return void(a=t)}}}let n=i.parentNode,l=document.createDocumentFragment();if(null!=t){let e=processContent(t);e&&l.appendChild(e)}if(r.nextSibling!==i){let e=r.nextSibling,t=[];for(;e&&e!==i;)t.push(e),e=e.nextSibling;t.forEach((e=>e.remove()))}l.firstChild?(n.insertBefore(l,i),o=r.nextSibling):o=null,a=t})),n}if(Array.isArray(e)){let{fragment:n,startNode:r,endNode:i}=t(),o=[],a=new Map;return createEffect((()=>{let t=e.filter(Boolean);if(0===t.length){if(0===o.length)return;let e=r.nextSibling,t=[];for(;e&&e!==i;)t.push(e),e=e.nextSibling;return t.forEach((e=>e.remove())),o=[],void a.clear()}if(o.length===t.length&&o.length<5){let e=!1,n=[],a=r.nextSibling;for(;a&&a!==i;)n.push(a),a=a.nextSibling;for(let r=0;r<t.length;r++){let i=o[r],a=t[r],l=n[r];if(i!==a){if(l.nodeType!==Node.TEXT_NODE||"string"!=typeof a&&"number"!=typeof a){e=!0;break}l.textContent=String(a)}}if(!e)return void(o=[...t])}let n=document.createDocumentFragment(),l=new Map;t.forEach(((e,t)=>{let r,i=e?.key||`${typeof e}:${String(e)}`;a.has(i)?(r=a.get(i),a.delete(i)):r=processChild(e),r&&(l.set(i,r),n.appendChild(r))})),a.clear(),a=l;let s=r.nextSibling,c=[];for(;s&&s!==i;)c.push(s),s=s.nextSibling;c.forEach((e=>e.remove())),i.parentNode.insertBefore(n,i),o=[...t]})),n}return e instanceof Node?e:document.createTextNode(String(e))},processContent=e=>{if(Array.isArray(e)){let t=document.createDocumentFragment();return e.forEach((e=>{let n=processChild(e);n&&t.appendChild(n)})),t}return e instanceof Node?e:document.createTextNode(String(e))};export{createSignal,createEffect,createMemo,createResource,createContext,useContext,h,Fragment,render,ErrorBoundary,lazy};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "olova",
3
- "version": "2.0.12",
3
+ "version": "2.0.13",
4
4
  "description": "A lightweight JavaScript framework for building reactive applications.",
5
5
  "main": "dist/olova.js",
6
6
  "keywords": [