Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

data-tier

Package Overview
Dependencies
Maintainers
1
Versions
123
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

data-tier - npm Package Compare versions

Comparing version 3.5.1 to 3.5.2

2

dist/data-tier.js

@@ -7,3 +7,3 @@ import { DOMProcessor } from './dom-processor.js';

export const version = '3.5.1';
export const version = '3.5.2';

@@ -10,0 +10,0 @@ const initStartTime = performance.now();

@@ -1,1 +0,1 @@

import{DOMProcessor as o}from"./dom-processor.min.js";import{Ties as s}from"./ties.min.js";import{Views as e}from"./views.min.js";export{Observable}from"./ties.min.js";export const version="3.5.1";const t=performance.now();console.info("DT (3.5.1): starting initialization...");const r=new class{constructor(){this.params=Object.freeze(Array.from(new URL(import.meta.url).searchParams).reduce((o,s)=>(o[s[0]]=s[1],o),{})),this.paramsKey=Symbol("view.params.key"),this.domProcessor=new o(this),this.ties=new s(this),this.views=new e(this),"false"!==this.params.autostart&&!1!==this.params.autostart&&this.domProcessor.addDocument(document)}};export const ties=r.ties;export const addDocument=r.domProcessor.addDocument.bind(r.domProcessor);export const removeDocument=r.domProcessor.removeDocument.bind(r.domProcessor);console.info(`DT (3.5.1): ... initialization DONE (took ${(performance.now()-t).toFixed(2)}ms)`);
import{DOMProcessor as o}from"./dom-processor.min.js";import{Ties as s}from"./ties.min.js";import{Views as e}from"./views.min.js";export{Observable}from"./ties.min.js";export const version="3.5.2";const t=performance.now();console.info("DT (3.5.2): starting initialization...");const r=new class{constructor(){this.params=Object.freeze(Array.from(new URL(import.meta.url).searchParams).reduce((o,s)=>(o[s[0]]=s[1],o),{})),this.paramsKey=Symbol("view.params.key"),this.domProcessor=new o(this),this.ties=new s(this),this.views=new e(this),"false"!==this.params.autostart&&!1!==this.params.autostart&&this.domProcessor.addDocument(document)}};export const ties=r.ties;export const addDocument=r.domProcessor.addDocument.bind(r.domProcessor);export const removeDocument=r.domProcessor.removeDocument.bind(r.domProcessor);console.info(`DT (3.5.2): ... initialization DONE (took ${(performance.now()-t).toFixed(2)}ms)`);

@@ -1,1 +0,1 @@

export{A as Observable,S as ObjectObserver};const t="insert",e="update",o="delete",n=Symbol.for("object-observer-meta-key-0"),r={async:1},s={[n]:{value:null},observe:{value:function(t,e){if("function"!=typeof t)throw new Error(`observer MUST be a function, got '${t}'`);const o=this[n].observers;o.some(e=>e[0]===t)?console.warn("observer may be bound to an observable only once; will NOT rebind"):o.push([t,(t=>{if(!t||"object"!=typeof t)return null;const e={},o=[];for(const[n,r]of Object.entries(t))if("path"===n){if("string"!=typeof r||""===r)throw new Error('"path" option, if/when provided, MUST be a non-empty string');e[n]=r}else if("pathsOf"===n){if(t.path)throw new Error('"pathsOf" option MAY NOT be specified together with "path" option');if("string"!=typeof r)throw new Error('"pathsOf" option, if/when provided, MUST be a string (MAY be empty)');e[n]=t.pathsOf.split(".").filter(Boolean)}else if("pathsFrom"===n){if(t.path||t.pathsOf)throw new Error('"pathsFrom" option MAY NOT be specified together with "path"/"pathsOf" option/s');if("string"!=typeof r||""===r)throw new Error('"pathsFrom" option, if/when provided, MUST be a non-empty string');e[n]=r}else o.push(n);if(o.length)throw new Error(`'${o.join(", ")}' is/are not a valid observer option/s`);return e})(e)])}},unobserve:{value:function(){const t=this[n].observers;let e=t.length;if(e){let o=arguments.length;if(o)for(;o--;){let n=e;for(;n--;)t[n][0]===arguments[o]&&(t.splice(n,1),e--)}else t.splice(0)}}}},i=(t,e)=>{s[n].value=e;const o=Object.defineProperties({},s);for(const[n,r]of Object.entries(t))o[n]=u(r,n,e);return o},h=(t,e)=>{let o=0,r=t.length;s[n].value=e;const i=Object.defineProperties(new Array(r),s);for(;o<r;o++)i[o]=u(t[o],o,e);return i},a=(t,e)=>(s[n].value=e,Object.defineProperties(t,s),t),l=(t,e)=>{let o=e;if(t)if(t.path){const n=t.path;o=e.filter(t=>t.path.join(".")===n)}else if(t.pathsOf){const n=t.pathsOf;o=e.filter(t=>t.path.length===n.length+1||t.path.length===n.length&&("reverse"===t.type||"shuffle"===t.type))}else if(t.pathsFrom){const n=t.pathsFrom;o=e.filter(t=>t.path.join(".").startsWith(n))}return o},c=(t,e)=>{try{t(e)}catch(o){console.error(`failed to notify listener ${t} with ${e}`,o)}},f=function(){const t=this.batches;this.batches=null;for(const[e,o]of t)c(e,o)},p=(t,e)=>{let o,n,r,s,i,h,a,p=t;const u=e.length;do{for(i=(o=p.observers).length;i--;)if([n,r]=o[i],(s=l(r,e)).length)if(p.options.async){let t;p.batches||(p.batches=[],queueMicrotask(f.bind(p)));for(const e of p.batches)if(e[0]===n){t=e;break}t||(t=[n,[]],p.batches.push(t)),Array.prototype.push.apply(t[1],s)}else c(n,s);let t;if(p.parent){t=new Array(u);for(let o=0;o<u;o++)a=e[o],h=[p.ownKey,...a.path],t[o]={type:a.type,path:h,value:a.value,oldValue:a.oldValue,object:a.object};e=t,p=p.parent}else p=null}while(p)},u=(t,e,o)=>t&&"object"==typeof t?Array.isArray(t)?new x({target:t,ownKey:e,parent:o}).proxy:ArrayBuffer.isView(t)?new M({target:t,ownKey:e,parent:o}).proxy:t instanceof Date||t instanceof Blob||t instanceof Error?t:new O({target:t,ownKey:e,parent:o}).proxy:t,y=function(){const t=this[n],e=t.target;let o,r,s;for(e.reverse(),o=0,r=e.length;o<r;o++)if((s=e[o])&&"object"==typeof s){const t=s[n];t&&(t.ownKey=o)}const i=[new j("reverse",[],void 0,void 0,this)];return p(t,i),this},b=function(t){const e=this[n],o=e.target;let r,s,i;for(o.sort(t),r=0,s=o.length;r<s;r++)if((i=o[r])&&"object"==typeof i){const t=i[n];t&&(t.ownKey=r)}const h=[new j("shuffle",[],void 0,void 0,this)];return p(e,h),this},w=function(o,r,s){const i=this[n],h=i.target,a=[],l=h.length,c=h.slice(0);if(r=void 0===r?0:r<0?Math.max(l+r,0):Math.min(r,l),s=void 0===s?l:s<0?Math.max(l+s,0):Math.min(s,l),r<l&&s>r){let l;h.fill(o,r,s);for(let o,f,p=r;p<s;p++)o=h[p],h[p]=u(o,p,i),p in c?((f=c[p])&&"object"==typeof f&&(l=f[n])&&(f=l.detach()),a.push(new j(e,[p],h[p],f,this))):a.push(new j(t,[p],h[p],void 0,this));p(i,a)}return this},d=function(t,o,r){const s=this[n],i=s.target,h=i.length;t=t<0?Math.max(h+t,0):t,o=void 0===o?0:o<0?Math.max(h+o,0):Math.min(o,h),r=void 0===r?h:r<0?Math.max(h+r,0):Math.min(r,h);const a=Math.min(r-o,h-t);if(t<h&&t!==o&&a>0){const h=i.slice(0),l=[];i.copyWithin(t,o,r);for(let o,r,c,f=t;f<t+a;f++)(o=i[f])&&"object"==typeof o&&(o=u(o,f,s),i[f]=o),(r=h[f])&&"object"==typeof r&&(c=r[n])&&(r=c.detach()),"object"!=typeof o&&o===r||l.push(new j(e,[f],o,r,this));p(s,l)}return this},v={pop:function(){const t=this[n],e=t.target,r=e.length-1;let s=e.pop();if(s&&"object"==typeof s){const t=s[n];t&&(s=t.detach())}const i=[new j(o,[r],void 0,s,this)];return p(t,i),s},push:function(){const e=this[n],o=e.target,r=arguments.length,s=new Array(r),i=o.length;for(let t=0;t<r;t++)s[t]=u(arguments[t],i+t,e);const h=Reflect.apply(o.push,o,s),a=[];for(let e=i,n=o.length;e<n;e++)a[e-i]=new j(t,[e],o[e],void 0,this);return p(e,a),h},shift:function(){const t=this[n],e=t.target;let r,s,i,h,a;for((r=e.shift())&&"object"==typeof r&&(a=r[n])&&(r=a.detach()),s=0,i=e.length;s<i;s++)(h=e[s])&&"object"==typeof h&&(a=h[n])&&(a.ownKey=s);const l=[new j(o,[0],void 0,r,this)];return p(t,l),r},unshift:function(){const e=this[n],o=e.target,r=arguments.length,s=new Array(r);for(let t=0;t<r;t++)s[t]=u(arguments[t],t,e);const i=Reflect.apply(o.unshift,o,s);for(let t,e=0,r=o.length;e<r;e++)if((t=o[e])&&"object"==typeof t){const o=t[n];o&&(o.ownKey=e)}const h=s.length,a=new Array(h);for(let e=0;e<h;e++)a[e]=new j(t,[e],o[e],void 0,this);return p(e,a),i},reverse:y,sort:b,fill:w,copyWithin:d,splice:function(){const r=this[n],s=r.target,i=arguments.length,h=new Array(i),a=s.length;for(let t=0;t<i;t++)h[t]=u(arguments[t],t,r);const l=0===i?0:h[0]<0?a+h[0]:h[0],c=i<2?a-l:h[1],f=Math.max(i-2,0),y=Reflect.apply(s.splice,s,h),b=s.length;let w,d,v,g;for(let t,e=0;e<b;e++)(t=s[e])&&"object"==typeof t&&(w=t[n])&&(w.ownKey=e);for(d=0,v=y.length;d<v;d++)(g=y[d])&&"object"==typeof g&&(w=g[n])&&(y[d]=w.detach());const m=[];let O;for(O=0;O<c;O++)O<f?m.push(new j(e,[l+O],s[l+O],y[O],this)):m.push(new j(o,[l+O],void 0,y[O],this));for(;O<f;O++)m.push(new j(t,[l+O],s[l+O],void 0,this));return p(r,m),y}},g={reverse:y,sort:b,fill:w,copyWithin:d,set:function(t,o){const r=this[n],s=r.target,i=t.length,h=s.slice(0);o=o||0,s.set(t,o);const a=new Array(i);for(let t=o;t<i+o;t++)a[t-o]=new j(e,[t],s[t],h[t],this);p(r,a)}};class j{constructor(t,e,o,n,r){this.type=t,this.path=e,this.value=o,this.oldValue=n,this.object=r}}class m{constructor(t,e){const{target:o,parent:n,ownKey:r}=t;n&&void 0!==r?(this.parent=n,this.ownKey=r):(this.parent=null,this.ownKey=null);const s=e(o,this);this.observers=[],this.revocable=Proxy.revocable(s,this),this.proxy=this.revocable.proxy,this.target=s,this.options=this.processOptions(t.options)}processOptions(t){if(t){if("object"!=typeof t)throw new Error(`Observable options if/when provided, MAY only be an object, got '${t}'`);const e=Object.keys(t).filter(t=>!(t in r));if(e.length)throw new Error(`'${e.join(", ")}' is/are not a valid Observable option/s`);return Object.assign({},t)}return{}}detach(){return this.parent=null,this.target}set(o,r,s){let i=o[r];if(s!==i){const h=u(s,r,this);if(o[r]=h,i&&"object"==typeof i){const t=i[n];t&&(i=t.detach())}const a=void 0===i?[new j(t,[r],h,void 0,this.proxy)]:[new j(e,[r],h,i,this.proxy)];p(this,a)}return!0}deleteProperty(t,e){let r=t[e];if(delete t[e],r&&"object"==typeof r){const t=r[n];t&&(r=t.detach())}const s=[new j(o,[e],void 0,r,this.proxy)];return p(this,s),!0}}class O extends m{constructor(t){super(t,i)}}class x extends m{constructor(t){super(t,h)}get(t,e){return v[e]||t[e]}}class M extends m{constructor(t){super(t,a)}get(t,e){return g[e]||t[e]}}const A=Object.freeze({from:(t,e)=>{if(t&&"object"==typeof t){if(t[n])return t;if(Array.isArray(t))return new x({target:t,ownKey:null,parent:null,options:e}).proxy;if(ArrayBuffer.isView(t))return new M({target:t,ownKey:null,parent:null,options:e}).proxy;if(t instanceof Date||t instanceof Blob||t instanceof Error)throw new Error(`${t} found to be one of a on-observable types`);return new O({target:t,ownKey:null,parent:null,options:e}).proxy}throw new Error("observable MAY ONLY be created from a non-null object")},isObservable:t=>!(!t||!t[n])}),K=Symbol("callback-key"),E=Symbol("targets-key");class S{constructor(t){this[K]=t,this[E]=new Set,Object.freeze(this)}observe(t,e){const o=A.from(t);return o.observe(this[K],e),this[E].add(o),o}unobserve(t){t.unobserve(this[K]),this[E].delete(t)}disconnect(){for(const t of this[E])t.unobserve(this[K]);this[E].clear()}}
function t(){const t=this[d],e=t.target;let o,r,n;for(e.reverse(),o=0,r=e.length;o<r;o++)if((n=e[o])&&"object"==typeof n){const i=n[d];i&&(i.ownKey=o)}var s=[new O(h,[],void 0,void 0,this)];return j(t,s),this}function e(t){const e=this[d],o=e.target;let r,n,s;for(o.sort(t),r=0,n=o.length;r<n;r++)if((s=o[r])&&"object"==typeof s){const i=s[d];i&&(i.ownKey=r)}return t=[new O(a,[],void 0,void 0,this)],j(e,t),this}function o(t,n,s){const i=this[d],h=i.target,a=[],e=h.length,l=h.slice(0);if(n=void 0===n?0:n<0?Math.max(e+n,0):Math.min(n,e),s=void 0===s?e:s<0?Math.max(e+s,0):Math.min(s,e),n<e&&n<s){h.fill(t,n,s);let r;for(let t=n,e,o;t<s;t++)e=h[t],h[t]=m(e,t,i),t in l?(o=l[t],o&&"object"==typeof o&&(r=o[d],r&&(o=r.detach())),a.push(new O(v,[t],h[t],o,this))):a.push(new O(w,[t],h[t],void 0,this));j(i,a)}return this}function r(n,t,e){const s=this[d],i=s.target,o=i.length;n=n<0?Math.max(o+n,0):n,t=void 0===t?0:t<0?Math.max(o+t,0):Math.min(t,o),e=void 0===e?o:e<0?Math.max(o+e,0):Math.min(e,o);var h=Math.min(e-t,o-n);if(n<o&&n!==t&&0<h){const a=i.slice(0),l=[];i.copyWithin(n,t,e);for(let t=n,e,o,r;t<n+h;t++)e=i[t],e&&"object"==typeof e&&(e=m(e,t,s),i[t]=e),o=a[t],o&&"object"==typeof o&&(r=o[d],r&&(o=r.detach())),"object"!=typeof e&&e===o||l.push(new O(v,[t],e,o,this));j(s,l)}return this}const w="insert",v="update",g="delete",h="reverse",a="shuffle",d=Symbol.for("object-observer-meta-key-0"),n={async:1},s={observe:{value:function(e,t){if("function"!=typeof e)throw new Error(`observer MUST be a function, got '${e}'`);const o=this[d].observers;o.some(t=>t[0]===e)?console.warn("observer may be bound to an observable only once; will NOT rebind"):o.push([e,(t=>{if(!t||"object"!=typeof t)return null;const e={},o=[];for(var[r,n]of Object.entries(t))if("path"===r){if("string"!=typeof n||""===n)throw new Error('"path" option, if/when provided, MUST be a non-empty string');e[r]=n}else if("pathsOf"===r){if(t.path)throw new Error('"pathsOf" option MAY NOT be specified together with "path" option');if("string"!=typeof n)throw new Error('"pathsOf" option, if/when provided, MUST be a string (MAY be empty)');e[r]=t.pathsOf.split(".").filter(Boolean)}else if("pathsFrom"===r){if(t.path||t.pathsOf)throw new Error('"pathsFrom" option MAY NOT be specified together with "path"/"pathsOf" option/s');if("string"!=typeof n||""===n)throw new Error('"pathsFrom" option, if/when provided, MUST be a non-empty string');e[r]=n}else o.push(r);if(o.length)throw new Error(`'${o.join(", ")}' is/are not a valid observer option/s`);return e})(t)])}},unobserve:{value:function(){const o=this[d].observers;let r=o.length;if(r){let e=arguments.length;if(e)for(;e--;){let t=r;for(;t--;)o[t][0]===arguments[e]&&(o.splice(t,1),r--)}else o.splice(0)}}}},i=(t,e)=>{const o=Object.defineProperties({},s);o[d]=e;for(const r in t)o[r]=m(t[r],r,e);return o},l=(e,o)=>{var r=e.length;const n=Object.defineProperties(new Array(r),s);n[d]=o;for(let t=0;t<r;t++)n[t]=m(e[t],t,o);return n},f=(t,e)=>(Object.defineProperties(t,s),t[d]=e,t),c=(t,e)=>{if(!t)return e;let o=e;if(t.path){const r=t.path;o=e.filter(t=>t.path.join(".")===r)}else if(t.pathsOf){const n=t.pathsOf,s=n.join(".");o=e.filter(t=>(t.path.length===n.length+1||t.path.length===n.length&&(t.type===h||t.type===a))&&t.path.join(".").startsWith(s))}else if(t.pathsFrom){const i=t.pathsFrom;o=e.filter(t=>t.path.join(".").startsWith(i))}return o},p=(e,o)=>{try{e(o)}catch(t){console.error(`failed to notify listener ${e} with `+o,t)}},u=function(){var t,e,o=this.batches;this.batches=null;for([t,e]of o)p(t,e)},j=(t,e)=>{let o=t,r,n,s,i,h;var a=e.length;do{for(r=o.observers,h=r.length;h--;)if([n,s]=r[h],(i=c(s,e)).length)if(o.options.async){o.batches||(o.batches=[],queueMicrotask(u.bind(o)));let t;for(const l of o.batches)if(l[0]===n){t=l;break}t||(t=[n,[]],o.batches.push(t)),Array.prototype.push.apply(t[1],i)}else p(n,i);if(o.parent){const f=new Array(a);for(let t=0;t<a;t++)f[t]={...e[t]},f[t].path=[o.ownKey,...f[t].path];e=f,o=o.parent}else o=null}while(o)},m=(t,e,o)=>t&&"object"==typeof t?Array.isArray(t)?new A({target:t,ownKey:e,parent:o}).proxy:ArrayBuffer.isView(t)?new K({target:t,ownKey:e,parent:o}).proxy:t instanceof Date||t instanceof Blob||t instanceof Error?t:new M({target:t,ownKey:e,parent:o}).proxy:t,y={pop:function(){const t=this[d],e=t.target,o=e.length-1;let r=e.pop();if(r&&"object"==typeof r){const s=r[d];s&&(r=s.detach())}var n=[new O(g,[o],void 0,r,this)];return j(t,n),r},push:function(){const e=this[d],o=e.target,r=arguments.length,n=new Array(r),s=o.length;for(let t=0;t<r;t++)n[t]=m(arguments[t],s+t,e);var t=Reflect.apply(o.push,o,n);const i=[];for(let t=s,e=o.length;t<e;t++)i[t-s]=new O(w,[t],o[t],void 0,this);return j(e,i),t},shift:function(){const t=this[d],e=t.target;let o,r,n,s,i;for(o=e.shift(),o&&"object"==typeof o&&(i=o[d],i&&(o=i.detach())),r=0,n=e.length;r<n;r++)(s=e[r])&&"object"==typeof s&&(i=s[d],i&&(i.ownKey=r));var h=[new O(g,[0],void 0,o,this)];return j(t,h),o},unshift:function(){const e=this[d],r=e.target,o=arguments.length,n=new Array(o);for(let t=0;t<o;t++)n[t]=m(arguments[t],t,e);var t=Reflect.apply(r.unshift,r,n);for(let t=0,e=r.length,o;t<e;t++)if((o=r[t])&&"object"==typeof o){const h=o[d];h&&(h.ownKey=t)}var s=n.length;const i=new Array(s);for(let t=0;t<s;t++)i[t]=new O(w,[t],r[t],void 0,this);return j(e,i),t},reverse:t,sort:e,fill:o,copyWithin:r,splice:function(){const e=this[d],o=e.target,r=arguments.length,n=new Array(r),t=o.length;for(let t=0;t<r;t++)n[t]=m(arguments[t],t,e);const s=0===r?0:n[0]<0?t+n[0]:n[0],i=r<2?t-s:n[1],h=Math.max(r-2,0),a=Reflect.apply(o.splice,o,n),l=o.length;let f;for(let t=0,e;t<l;t++)(e=o[t])&&"object"==typeof e&&(f=e[d],f&&(f.ownKey=t));let c,p,u;for(c=0,p=a.length;c<p;c++)(u=a[c])&&"object"==typeof u&&(f=u[d],f&&(a[c]=f.detach()));const y=[];let b;for(b=0;b<i;b++)b<h?y.push(new O(v,[s+b],o[s+b],a[b],this)):y.push(new O(g,[s+b],void 0,a[b],this));for(;b<h;b++)y.push(new O(w,[s+b],o[s+b],void 0,this));return j(e,y),a}},b={reverse:t,sort:e,fill:o,copyWithin:r,set:function(t,e){const o=this[d],r=o.target,n=t.length,s=r.slice(0);e=e||0,r.set(t,e);const i=new Array(n);for(let t=e;t<n+e;t++)i[t-e]=new O(v,[t],r[t],s[t],this);j(o,i)}};class O{constructor(t,e,o,r,n){this.type=t,this.path=e,this.value=o,this.oldValue=r,this.object=n}}class x{constructor(t,e){var{target:o,parent:r,ownKey:n}=t;r&&void 0!==n?(this.parent=r,this.ownKey=n):(this.parent=null,this.ownKey=null);o=e(o,this);this.observers=[],this.revocable=Proxy.revocable(o,this),this.proxy=this.revocable.proxy,this.target=o,this.options=this.processOptions(t.options)}processOptions(t){if(t){if("object"!=typeof t)throw new Error(`Observable options if/when provided, MAY only be an object, got '${t}'`);const e=Object.keys(t).filter(t=>!(t in n));if(e.length)throw new Error(`'${e.join(", ")}' is/are not a valid Observable option/s`);return Object.assign({},t)}return{}}detach(){return this.parent=null,this.target}set(t,e,o){let r=t[e];if(o!==r){o=m(o,e,this);if(t[e]=o,r&&"object"==typeof r){const n=r[d];n&&(r=n.detach())}o=void 0===r?[new O(w,[e],o,void 0,this.proxy)]:[new O(v,[e],o,r,this.proxy)];j(this,o)}return!0}deleteProperty(t,e){let o=t[e];if(delete t[e],o&&"object"==typeof o){const r=o[d];r&&(o=r.detach())}e=[new O(g,[e],void 0,o,this.proxy)];return j(this,e),!0}}class M extends x{constructor(t){super(t,i)}}class A extends x{constructor(t){super(t,l)}get(t,e){return y[e]||t[e]}}class K extends x{constructor(t){super(t,f)}get(t,e){return b[e]||t[e]}}const E=Object.freeze({from:(t,e)=>{if(t&&"object"==typeof t){if(t[d])return t;if(Array.isArray(t))return new A({target:t,ownKey:null,parent:null,options:e}).proxy;if(ArrayBuffer.isView(t))return new K({target:t,ownKey:null,parent:null,options:e}).proxy;if(t instanceof Date||t instanceof Blob||t instanceof Error)throw new Error(t+" found to be one of a on-observable types");return new M({target:t,ownKey:null,parent:null,options:e}).proxy}throw new Error("observable MAY ONLY be created from a non-null object")},isObservable:t=>!(!t||!t[d])}),S=Symbol("callback-key"),k=Symbol("targets-key");class T{constructor(t){this[S]=t,this[k]=new Set,Object.freeze(this)}observe(t,e){const o=E.from(t);return o.observe(this[S],e),this[k].add(o),o}unobserve(t){t.unobserve(this[S]),this[k].delete(t)}disconnect(){for(const t of this[k])t.unobserve(this[S]);this[k].clear()}}export{E as Observable,T as ObjectObserver};
{
"name": "data-tier",
"version": "3.5.1",
"version": "3.5.2",
"description": "Tiny and fast two way (MV-VM) data binding framework for browser environments.",

@@ -55,11 +55,11 @@ "type": "module",

"dependencies": {
"object-observer": "^4.3.2"
"object-observer": "^4.4.0"
},
"devDependencies": {
"eslint": "^7.30.0",
"eslint": "^8.2.0",
"fs-extra": "^10.0.0",
"just-test": "2.3.2",
"puppeteer": "^10.1.0",
"puppeteer": "^11.0.0",
"uglify-es": "^3.3.9"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc