{"version":3,"sources":["../../../../src/sensors/useOnElementRemoval/index.ts"],"sourcesContent":["\"use client\";\nimport { useScope } from \"@usels/core\";\nimport { createOnElementRemoval } from \"./core\";\n\nexport { createOnElementRemoval } from \"./core\";\nexport type { UseOnElementRemovalOptions } from \"./core\";\n\nexport type UseOnElementRemoval = typeof createOnElementRemoval;\nexport const useOnElementRemoval: UseOnElementRemoval = (target, callback, options) => {\n  useScope(\n    (p) => {\n      // Callback freshness via scope props — latest closure on each mutation batch.\n      const fresh = (mutations: MutationRecord[]) => {\n        const latest = p.callback as typeof callback | undefined;\n        latest?.(mutations);\n      };\n      createOnElementRemoval(target, fresh, options);\n      return {};\n    },\n    { callback }\n  );\n};\n"],"mappings":";AACA,SAAS,gBAAgB;AACzB,SAAS,8BAA8B;AAEvC,SAAS,0BAAAA,+BAA8B;AAIhC,MAAM,sBAA2C,CAAC,QAAQ,UAAU,YAAY;AACrF;AAAA,IACE,CAAC,MAAM;AAEL,YAAM,QAAQ,CAAC,cAAgC;AAC7C,cAAM,SAAS,EAAE;AACjB,iBAAS,SAAS;AAAA,MACpB;AACA,6BAAuB,QAAQ,OAAO,OAAO;AAC7C,aAAO,CAAC;AAAA,IACV;AAAA,IACA,EAAE,SAAS;AAAA,EACb;AACF;","names":["createOnElementRemoval"]}