@lensmcp/memory-tracker 1.20.0 → 1.21.0

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.
package/lib/context.js CHANGED
@@ -1 +1 @@
1
- "use strict";var i=Object.defineProperty;var t=(e,o)=>i(e,"name",{value:o,configurable:!0});var l=Object.defineProperty,n=t((e,o)=>l(e,"name",{value:o,configurable:!0}),"t"),m=Object.defineProperty,r=n((e,o)=>m(e,"name",{value:o,configurable:!0}),"t");let a=r(()=>{},"contextGetter"),s;const c={leakItemThreshold:50,staleGenerationBytesThreshold:1024*1024,settleMs:1e3};export function configureMemoryTracker(e){return s={sessionId:e.sessionId,sink:e.sink,leakItemThreshold:e.leakItemThreshold??c.leakItemThreshold,staleGenerationBytesThreshold:e.staleGenerationBytesThreshold??c.staleGenerationBytesThreshold,settleMs:e.settleMs??c.settleMs},e.contextGetter&&(a=e.contextGetter),s}t(configureMemoryTracker,"configureMemoryTracker"),n(configureMemoryTracker,"configureMemoryTracker"),r(configureMemoryTracker,"configureMemoryTracker");export function activeMemoryOptions(){return s}t(activeMemoryOptions,"activeMemoryOptions"),n(activeMemoryOptions,"activeMemoryOptions"),r(activeMemoryOptions,"activeMemoryOptions");export function currentMemoryContext(){return a()}t(currentMemoryContext,"currentMemoryContext"),n(currentMemoryContext,"currentMemoryContext"),r(currentMemoryContext,"currentMemoryContext");export function resetMemoryTracker(){s=void 0,a=r(()=>{},"contextGetter")}t(resetMemoryTracker,"resetMemoryTracker"),n(resetMemoryTracker,"resetMemoryTracker"),r(resetMemoryTracker,"resetMemoryTracker");
1
+ "use strict";var a=Object.defineProperty;var t=(e,n)=>a(e,"name",{value:n,configurable:!0});var c=Object.defineProperty,r=t((e,n)=>c(e,"name",{value:n,configurable:!0}),"t");let s=r(()=>{},"contextGetter"),o;const l={leakItemThreshold:50,staleGenerationBytesThreshold:1024*1024,settleMs:1e3};export function configureMemoryTracker(e){return o={sessionId:e.sessionId,sink:e.sink,leakItemThreshold:e.leakItemThreshold??l.leakItemThreshold,staleGenerationBytesThreshold:e.staleGenerationBytesThreshold??l.staleGenerationBytesThreshold,settleMs:e.settleMs??l.settleMs},e.contextGetter&&(s=e.contextGetter),o}t(configureMemoryTracker,"configureMemoryTracker"),r(configureMemoryTracker,"configureMemoryTracker");export function activeMemoryOptions(){return o}t(activeMemoryOptions,"activeMemoryOptions"),r(activeMemoryOptions,"activeMemoryOptions");export function currentMemoryContext(){return s()}t(currentMemoryContext,"currentMemoryContext"),r(currentMemoryContext,"currentMemoryContext");export function resetMemoryTracker(){o=void 0,s=r(()=>{},"contextGetter")}t(resetMemoryTracker,"resetMemoryTracker"),r(resetMemoryTracker,"resetMemoryTracker");
package/lib/detectors.js CHANGED
@@ -1 +1 @@
1
- "use strict";var s=Object.defineProperty;var n=(t,e)=>s(t,"name",{value:e,configurable:!0});var c=Object.defineProperty,r=n((t,e)=>c(t,"name",{value:e,configurable:!0}),"n"),d=Object.defineProperty,a=r((t,e)=>d(t,"name",{value:e,configurable:!0}),"n");import{activeMemoryOptions as l}from"./context.js";import{clearFlowStart as w,flowGrowth as u,markFlowStart as f}from"./owners.js";import{emitRetention as h,emitStaleGeneration as m}from"./emit.js";export function onFlowStart(t){f(t)}n(onFlowStart,"onFlowStart"),r(onFlowStart,"onFlowStart"),a(onFlowStart,"onFlowStart");export function onFlowSettled(t){const e=l();if(!e)return[];const i=[];for(const o of u(t))o.growth>=e.leakItemThreshold&&o.endCount>=o.growth&&(h({options:e,ownerId:o.owner.ownerId,flowId:t,startCount:o.startCount,endCount:o.endCount,growth:o.growth}),i.push(o.owner.ownerId));return w(t),i}n(onFlowSettled,"onFlowSettled"),r(onFlowSettled,"onFlowSettled"),a(onFlowSettled,"onFlowSettled");export function checkStaleGeneration(t){const e=l();return e&&t.retainedBytes>e.staleGenerationBytesThreshold?(m({options:e,logicalId:t.logicalId,instanceId:t.instanceId,generation:t.generation,retainedBytes:t.retainedBytes}),!0):!1}n(checkStaleGeneration,"checkStaleGeneration"),r(checkStaleGeneration,"checkStaleGeneration"),a(checkStaleGeneration,"checkStaleGeneration");
1
+ "use strict";var s=Object.defineProperty;var n=(e,t)=>s(e,"name",{value:t,configurable:!0});var l=Object.defineProperty,r=n((e,t)=>l(e,"name",{value:t,configurable:!0}),"n");import{activeMemoryOptions as i}from"./context.js";import{clearFlowStart as c,flowGrowth as d,markFlowStart as w}from"./owners.js";import{emitRetention as u,emitStaleGeneration as f}from"./emit.js";export function onFlowStart(e){w(e)}n(onFlowStart,"onFlowStart"),r(onFlowStart,"onFlowStart");export function onFlowSettled(e){const t=i();if(!t)return[];const a=[];for(const o of d(e))o.growth>=t.leakItemThreshold&&o.endCount>=o.growth&&(u({options:t,ownerId:o.owner.ownerId,flowId:e,startCount:o.startCount,endCount:o.endCount,growth:o.growth}),a.push(o.owner.ownerId));return c(e),a}n(onFlowSettled,"onFlowSettled"),r(onFlowSettled,"onFlowSettled");export function checkStaleGeneration(e){const t=i();return t&&e.retainedBytes>t.staleGenerationBytesThreshold?(f({options:t,logicalId:e.logicalId,instanceId:e.instanceId,generation:e.generation,retainedBytes:e.retainedBytes}),!0):!1}n(checkStaleGeneration,"checkStaleGeneration"),r(checkStaleGeneration,"checkStaleGeneration");
package/lib/emit.js CHANGED
@@ -1 +1 @@
1
- "use strict";var I=Object.defineProperty;var o=(e,n)=>I(e,"name",{value:n,configurable:!0});var u=Object.defineProperty,t=o((e,n)=>u(e,"name",{value:n,configurable:!0}),"n"),l=Object.defineProperty,i=t((e,n)=>l(e,"name",{value:n,configurable:!0}),"n");let m=0;function s(e){return m=(m+1)%16777215,`${e}-${m.toString(36)}`}o(s,"r"),t(s,"d"),i(s,"memId");function d(e,n){return{sessionId:n?.sessionId??e.sessionId,...n?.flowId?{flowId:n.flowId}:{},...n?.requestId?{requestId:n.requestId}:{},...n?.originNodeId?{originNodeId:n.originNodeId}:{}}}o(d,"a"),t(d,"r"),i(d,"baseContext");export function emitMutation(e){const{options:n}=e,r={id:s("memmut"),sessionId:e.context?.sessionId??n.sessionId,timestamp:e.timestamp??a(),source:"memory",category:"memory",severity:"debug",context:d(n,e.context),fingerprint:`memory-mutation:${e.ownerId}:${e.operation}`,title:`${e.operation} ${e.ownerId}`,raw:{kind:"memory-mutation",mutation:{ownerNodeId:e.ownerId,operation:e.operation,beforeCount:e.beforeCount,afterCount:e.afterCount,estimatedDeltaBytes:e.estimatedDeltaBytes,keyPreview:e.keyPreview}}};n.sink(r)}o(emitMutation,"emitMutation"),t(emitMutation,"emitMutation"),i(emitMutation,"emitMutation");export function emitRetention(e){const{options:n}=e,r={id:s("memret"),sessionId:e.context?.sessionId??n.sessionId,timestamp:e.timestamp??a(),source:"memory",category:"memory",severity:"warning",context:{...d(n,e.context),flowId:e.flowId},fingerprint:`memory-retention:${e.ownerId}`,title:`Suspected leak: ${e.ownerId} grew by ${e.growth} and did not shrink`,raw:{kind:"memory-retention",retention:{ownerId:e.ownerId,flowId:e.flowId,startCount:e.startCount,endCount:e.endCount,growth:e.growth}}};n.sink(r)}o(emitRetention,"emitRetention"),t(emitRetention,"emitRetention"),i(emitRetention,"emitRetention");export function emitStaleGeneration(e){const{options:n}=e,r={id:s("memstale"),sessionId:n.sessionId,timestamp:e.timestamp??a(),source:"memory",category:"memory",severity:"warning",context:{sessionId:n.sessionId},fingerprint:`memory-stale-generation:${e.logicalId}`,title:`Stale generation retained: ${e.logicalId} gen ${e.generation} holds ${e.retainedBytes} bytes`,raw:{kind:"singleton-stale-generation",staleGeneration:{logicalId:e.logicalId,instanceId:e.instanceId,generation:e.generation,retainedBytes:e.retainedBytes}}};n.sink(r)}o(emitStaleGeneration,"emitStaleGeneration"),t(emitStaleGeneration,"emitStaleGeneration"),i(emitStaleGeneration,"emitStaleGeneration");function a(){return Date.now()}o(a,"s"),t(a,"s"),i(a,"nowMs");
1
+ "use strict";var m=Object.defineProperty;var n=(t,e)=>m(t,"name",{value:e,configurable:!0});var I=Object.defineProperty,o=n((t,e)=>I(t,"name",{value:e,configurable:!0}),"n");let d=0;function r(t){return d=(d+1)%16777215,`${t}-${d.toString(36)}`}n(r,"d"),o(r,"memId");function a(t,e){return{sessionId:e?.sessionId??t.sessionId,...e?.flowId?{flowId:e.flowId}:{},...e?.requestId?{requestId:e.requestId}:{},...e?.originNodeId?{originNodeId:e.originNodeId}:{}}}n(a,"r"),o(a,"baseContext");export function emitMutation(t){const{options:e}=t,i={id:r("memmut"),sessionId:t.context?.sessionId??e.sessionId,timestamp:t.timestamp??s(),source:"memory",category:"memory",severity:"debug",context:a(e,t.context),fingerprint:`memory-mutation:${t.ownerId}:${t.operation}`,title:`${t.operation} ${t.ownerId}`,raw:{kind:"memory-mutation",mutation:{ownerNodeId:t.ownerId,operation:t.operation,beforeCount:t.beforeCount,afterCount:t.afterCount,estimatedDeltaBytes:t.estimatedDeltaBytes,keyPreview:t.keyPreview}}};e.sink(i)}n(emitMutation,"emitMutation"),o(emitMutation,"emitMutation");export function emitRetention(t){const{options:e}=t,i={id:r("memret"),sessionId:t.context?.sessionId??e.sessionId,timestamp:t.timestamp??s(),source:"memory",category:"memory",severity:"warning",context:{...a(e,t.context),flowId:t.flowId},fingerprint:`memory-retention:${t.ownerId}`,title:`Suspected leak: ${t.ownerId} grew by ${t.growth} and did not shrink`,raw:{kind:"memory-retention",retention:{ownerId:t.ownerId,flowId:t.flowId,startCount:t.startCount,endCount:t.endCount,growth:t.growth}}};e.sink(i)}n(emitRetention,"emitRetention"),o(emitRetention,"emitRetention");export function emitStaleGeneration(t){const{options:e}=t,i={id:r("memstale"),sessionId:e.sessionId,timestamp:t.timestamp??s(),source:"memory",category:"memory",severity:"warning",context:{sessionId:e.sessionId},fingerprint:`memory-stale-generation:${t.logicalId}`,title:`Stale generation retained: ${t.logicalId} gen ${t.generation} holds ${t.retainedBytes} bytes`,raw:{kind:"singleton-stale-generation",staleGeneration:{logicalId:t.logicalId,instanceId:t.instanceId,generation:t.generation,retainedBytes:t.retainedBytes}}};e.sink(i)}n(emitStaleGeneration,"emitStaleGeneration"),o(emitStaleGeneration,"emitStaleGeneration");function s(){return Date.now()}n(s,"s"),o(s,"nowMs");
package/lib/owners.js CHANGED
@@ -1 +1 @@
1
- "use strict";var w=Object.defineProperty;var o=(t,e)=>w(t,"name",{value:e,configurable:!0});var u=Object.defineProperty,r=o((t,e)=>u(t,"name",{value:e,configurable:!0}),"o"),c=Object.defineProperty,a=r((t,e)=>c(t,"name",{value:e,configurable:!0}),"o");const l=new Map;export function ownerKey(t,e){return`${t}::${e}`}o(ownerKey,"ownerKey"),r(ownerKey,"ownerKey"),a(ownerKey,"ownerKey");export function ensureOwner(t){const e=ownerKey(t.ownerInstanceId,t.fieldName);let n=l.get(e);return n||(n={ownerId:e,ownerInstanceId:t.ownerInstanceId,containerKind:t.containerKind,fieldName:t.fieldName,itemCount:0,estimatedBytes:0,startCount:0,flowStartCounts:new Map,flowDeltas:new Map},l.set(e,n)),n}o(ensureOwner,"ensureOwner"),r(ensureOwner,"ensureOwner"),a(ensureOwner,"ensureOwner");export function recordCount(t,e,n){t.itemCount=e,t.estimatedBytes=n}o(recordCount,"recordCount"),r(recordCount,"recordCount"),a(recordCount,"recordCount");export function markFlowStart(t){for(const e of l.values())e.flowStartCounts.has(t)||e.flowStartCounts.set(t,e.itemCount)}o(markFlowStart,"markFlowStart"),r(markFlowStart,"markFlowStart"),a(markFlowStart,"markFlowStart");export function recordFlowDelta(t,e,n){t.flowDeltas.set(e,(t.flowDeltas.get(e)??0)+n)}o(recordFlowDelta,"recordFlowDelta"),r(recordFlowDelta,"recordFlowDelta"),a(recordFlowDelta,"recordFlowDelta");export function flowGrowth(t){const e=[];for(const n of l.values()){const s=n.flowDeltas.get(t);s!==void 0&&e.push({owner:n,startCount:n.flowStartCounts.get(t)??0,endCount:n.itemCount,growth:s})}return e}o(flowGrowth,"flowGrowth"),r(flowGrowth,"flowGrowth"),a(flowGrowth,"flowGrowth");export function clearFlowStart(t){for(const e of l.values())e.flowStartCounts.delete(t),e.flowDeltas.delete(t)}o(clearFlowStart,"clearFlowStart"),r(clearFlowStart,"clearFlowStart"),a(clearFlowStart,"clearFlowStart");export function allOwners(){return[...l.values()].map(t=>({ownerId:t.ownerId,ownerInstanceId:t.ownerInstanceId,containerKind:t.containerKind,fieldName:t.fieldName,itemCount:t.itemCount,estimatedBytes:t.estimatedBytes,growthSinceStart:t.itemCount-t.startCount}))}o(allOwners,"allOwners"),r(allOwners,"allOwners"),a(allOwners,"allOwners");export function getOwner(t){return l.get(t)}o(getOwner,"getOwner"),r(getOwner,"getOwner"),a(getOwner,"getOwner");export function resetOwners(){l.clear()}o(resetOwners,"resetOwners"),r(resetOwners,"resetOwners"),a(resetOwners,"resetOwners");
1
+ "use strict";var l=Object.defineProperty;var o=(e,t)=>l(e,"name",{value:t,configurable:!0});var w=Object.defineProperty,r=o((e,t)=>w(e,"name",{value:t,configurable:!0}),"o");const a=new Map;export function ownerKey(e,t){return`${e}::${t}`}o(ownerKey,"ownerKey"),r(ownerKey,"ownerKey");export function ensureOwner(e){const t=ownerKey(e.ownerInstanceId,e.fieldName);let n=a.get(t);return n||(n={ownerId:t,ownerInstanceId:e.ownerInstanceId,containerKind:e.containerKind,fieldName:e.fieldName,itemCount:0,estimatedBytes:0,startCount:0,flowStartCounts:new Map,flowDeltas:new Map},a.set(t,n)),n}o(ensureOwner,"ensureOwner"),r(ensureOwner,"ensureOwner");export function recordCount(e,t,n){e.itemCount=t,e.estimatedBytes=n}o(recordCount,"recordCount"),r(recordCount,"recordCount");export function markFlowStart(e){for(const t of a.values())t.flowStartCounts.has(e)||t.flowStartCounts.set(e,t.itemCount)}o(markFlowStart,"markFlowStart"),r(markFlowStart,"markFlowStart");export function recordFlowDelta(e,t,n){e.flowDeltas.set(t,(e.flowDeltas.get(t)??0)+n)}o(recordFlowDelta,"recordFlowDelta"),r(recordFlowDelta,"recordFlowDelta");export function flowGrowth(e){const t=[];for(const n of a.values()){const s=n.flowDeltas.get(e);s!==void 0&&t.push({owner:n,startCount:n.flowStartCounts.get(e)??0,endCount:n.itemCount,growth:s})}return t}o(flowGrowth,"flowGrowth"),r(flowGrowth,"flowGrowth");export function clearFlowStart(e){for(const t of a.values())t.flowStartCounts.delete(e),t.flowDeltas.delete(e)}o(clearFlowStart,"clearFlowStart"),r(clearFlowStart,"clearFlowStart");export function allOwners(){return[...a.values()].map(e=>({ownerId:e.ownerId,ownerInstanceId:e.ownerInstanceId,containerKind:e.containerKind,fieldName:e.fieldName,itemCount:e.itemCount,estimatedBytes:e.estimatedBytes,growthSinceStart:e.itemCount-e.startCount}))}o(allOwners,"allOwners"),r(allOwners,"allOwners");export function getOwner(e){return a.get(e)}o(getOwner,"getOwner"),r(getOwner,"getOwner");export function resetOwners(){a.clear()}o(resetOwners,"resetOwners"),r(resetOwners,"resetOwners");
@@ -1 +1 @@
1
- "use strict";var g=Object.defineProperty;var d=(n,e)=>g(n,"name",{value:e,configurable:!0});var z=Object.defineProperty,l=d((n,e)=>z(n,"name",{value:e,configurable:!0}),"s"),A=Object.defineProperty,u=l((n,e)=>A(n,"name",{value:e,configurable:!0}),"s");import{activeMemoryOptions as C,currentMemoryContext as k}from"./context.js";import{ensureOwner as M,recordCount as v,recordFlowDelta as O}from"./owners.js";import{emitMutation as N}from"./emit.js";const S=Symbol.for("@lensmcp/memory-tracker/patched"),y=64;export function trackContainer(n){const{container:e}=n;if(!e||typeof e!="object"||e[S])return;let i;if(e instanceof Map)i="Map",b(n,e);else if(e instanceof Set)i="Set",h(n,e);else if(Array.isArray(e))i="Array",w(n,e);else return;e[S]=!0;const o=m(e),c=M({ownerInstanceId:n.ownerInstanceId,fieldName:n.fieldName,containerKind:i});v(c,o,o*y)}d(trackContainer,"trackContainer"),l(trackContainer,"trackContainer"),u(trackContainer,"trackContainer");function m(n){return n instanceof Map||n instanceof Set?n.size:Array.isArray(n)?n.length:0}d(m,"m"),l(m,"w"),u(m,"sizeOf");function s(n,e,i,o,c){const t=C();if(!t)return;const r=m(n.container),a=M({ownerInstanceId:n.ownerInstanceId,fieldName:n.fieldName,containerKind:e});v(a,r,r*y);const f=k(),I=f?.requestId??f?.flowId;I&&O(a,I,r-o),N({options:t,ownerId:a.ownerId,operation:i,beforeCount:o,afterCount:r,estimatedDeltaBytes:(r-o)*y,keyPreview:c,context:f})}d(s,"d"),l(s,"d"),u(s,"afterMutation");function b(n,e){const i=e.set.bind(e),o=e.delete.bind(e),c=e.clear.bind(e);e.set=(t,r)=>{const a=e.size,f=i(t,r);return s(n,"Map","set",a,p(t)),f},e.delete=t=>{const r=e.size,a=o(t);return s(n,"Map","delete",r,p(t)),a},e.clear=()=>{const t=e.size;c(),s(n,"Map","clear",t)}}d(b,"w"),l(b,"m"),u(b,"patchMap");function h(n,e){const i=e.add.bind(e),o=e.delete.bind(e),c=e.clear.bind(e);e.add=t=>{const r=e.size,a=i(t);return s(n,"Set","add",r,p(t)),a},e.delete=t=>{const r=e.size,a=o(t);return s(n,"Set","delete",r,p(t)),a},e.clear=()=>{const t=e.size;c(),s(n,"Set","clear",t)}}d(h,"M"),l(h,"C"),u(h,"patchSet");function w(n,e){const i=e.push.bind(e),o=e.splice.bind(e);e.push=(...c)=>{const t=e.length,r=i(...c);return s(n,"Array","push",t),r},e.splice=((c,t,...r)=>{const a=e.length,f=t===void 0?o(c):o(c,t,...r);return s(n,"Array",r.length>0?"push":"delete",a),f})}d(w,"S"),l(w,"D"),u(w,"patchArray");function p(n){if(typeof n=="string")return n.slice(0,40);if(typeof n=="number"||typeof n=="boolean")return String(n)}d(p,"u"),l(p,"u"),u(p,"previewKey");
1
+ "use strict";var z=Object.defineProperty;var s=(t,e)=>z(t,"name",{value:e,configurable:!0});var A=Object.defineProperty,f=s((t,e)=>A(t,"name",{value:e,configurable:!0}),"s");import{activeMemoryOptions as g,currentMemoryContext as v}from"./context.js";import{ensureOwner as b,recordCount as h,recordFlowDelta as C}from"./owners.js";import{emitMutation as k}from"./emit.js";const I=Symbol.for("@lensmcp/memory-tracker/patched"),p=64;export function trackContainer(t){const{container:e}=t;if(!e||typeof e!="object"||e[I])return;let a;if(e instanceof Map)a="Map",w(t,e);else if(e instanceof Set)a="Set",M(t,e);else if(Array.isArray(e))a="Array",S(t,e);else return;e[I]=!0;const o=m(e),c=b({ownerInstanceId:t.ownerInstanceId,fieldName:t.fieldName,containerKind:a});h(c,o,o*p)}s(trackContainer,"trackContainer"),f(trackContainer,"trackContainer");function m(t){return t instanceof Map||t instanceof Set?t.size:Array.isArray(t)?t.length:0}s(m,"w"),f(m,"sizeOf");function d(t,e,a,o,c){const r=g();if(!r)return;const n=m(t.container),i=b({ownerInstanceId:t.ownerInstanceId,fieldName:t.fieldName,containerKind:e});h(i,n,n*p);const l=v(),y=l?.requestId??l?.flowId;y&&C(i,y,n-o),k({options:r,ownerId:i.ownerId,operation:a,beforeCount:o,afterCount:n,estimatedDeltaBytes:(n-o)*p,keyPreview:c,context:l})}s(d,"d"),f(d,"afterMutation");function w(t,e){const a=e.set.bind(e),o=e.delete.bind(e),c=e.clear.bind(e);e.set=(r,n)=>{const i=e.size,l=a(r,n);return d(t,"Map","set",i,u(r)),l},e.delete=r=>{const n=e.size,i=o(r);return d(t,"Map","delete",n,u(r)),i},e.clear=()=>{const r=e.size;c(),d(t,"Map","clear",r)}}s(w,"m"),f(w,"patchMap");function M(t,e){const a=e.add.bind(e),o=e.delete.bind(e),c=e.clear.bind(e);e.add=r=>{const n=e.size,i=a(r);return d(t,"Set","add",n,u(r)),i},e.delete=r=>{const n=e.size,i=o(r);return d(t,"Set","delete",n,u(r)),i},e.clear=()=>{const r=e.size;c(),d(t,"Set","clear",r)}}s(M,"C"),f(M,"patchSet");function S(t,e){const a=e.push.bind(e),o=e.splice.bind(e);e.push=(...c)=>{const r=e.length,n=a(...c);return d(t,"Array","push",r),n},e.splice=((c,r,...n)=>{const i=e.length,l=r===void 0?o(c):o(c,r,...n);return d(t,"Array",n.length>0?"push":"delete",i),l})}s(S,"D"),f(S,"patchArray");function u(t){if(typeof t=="string")return t.slice(0,40);if(typeof t=="number"||typeof t=="boolean")return String(t)}s(u,"u"),f(u,"previewKey");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lensmcp/memory-tracker",
3
- "version": "1.20.0",
3
+ "version": "1.21.0",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "module": "./index.js",
@@ -14,7 +14,7 @@
14
14
  }
15
15
  },
16
16
  "dependencies": {
17
- "@lensmcp/protocol-types": "1.20.0",
17
+ "@lensmcp/protocol-types": "1.21.0",
18
18
  "tslib": "^2.3.0"
19
19
  },
20
20
  "license": "Apache-2.0",